パイプラインのフィードバック統合

以降のセクションでは、パイプラインのフィードバック・リリース・マーカーをご使用の CI/CD パイプラインと統合する方法について説明します。

リリース API

Releases APIは、リリースの作成、読み込み、更新、削除を行うためのエンドポイントを提供します。 リリース・マーカーは、以下の 4 つの異なるスコープで作成できます。

  • グローバル
  • アプリケーション・パースペクティブ
  • サービス
  • アプリケーション・パースペクティブ内のサービス

次の例では、curl コマンドを使用して、指定した時点 (ミリ秒単位の UNIX タイム・スタンプ) に My First Global Release という名前の新しいグローバル・リリース・マーカーを作成します。

curl --location --request POST "{{base}}/api/releases" \
  --header "Authorization: apiToken {{apiToken}}" \
  --header "Content-Type: application/json" \
  --data "{
        \"name\": \"My First Global Release\",
        \"start\": 1601890420046,
}"
注意: "start "の値はミリ秒単位のタイムスタンプでなければならない。

このリリース・マーカーは、アプリケーション、サービス、およびエンドポイントのすべてのダッシュボード・ページに表示されます。

既存のアプリケーション・パースペクティブに基づいてリリース・マーカーを作成するには、要求本文にアプリケーション名のリストとともに applications を追加します。

curl --location --request POST "{{base}}/api/releases" \
  --header "Authorization: apiToken {{apiToken}}" \
  --header "Content-Type: application/json" \
  --data "{
        \"name\": \"My First Application Scoped Release\",
        \"start\": 1601890420046,
        \"applications\": [
      {
        \"name\": \"My Application\" 
      }
    ]
}"

このリリース・マーカーは、アプリケーション マイ・アプリケーションのダッシュボードに表示されます。

特定のサービスに対するリリース・マーカーの作成方法を次のスニペットに示します。

curl --location --request POST "{{base}}/api/releases" \
  --header "Authorization: apiToken {{apiToken}}" \
  --header "Content-Type: application/json" \
  --data "{
        \"name\": \"My First Service Scoped Release\",
        \"start\": 1601890420046,
        \"services\": [
      {
        \"name\": "\"my-service\"
      }
    ]
}"

このサービス・スコープのリリース・マーカーは、サービスのダッシュボード マイ・サービス およびサービスを含むすべてのアプリケーション・ダッシュボード マイ・サービスに表示されます。 スコープをサービスに限定したリリース・マーカーは、特定のアプリケーションのセットに対して作成することもできます。

curl --location --request POST "{{base}}/api/releases" \
  --header "Authorization: apiToken {{apiToken}}" \
  --header "Content-Type: application/json" \
  --data "{
        \"name\": \"My First Service Scoped Release\",
        \"start\": 1601890420046,
        \"services\": [
      {
        \"name\": \"my-service\",
        \"scopedTo\": {
          \"applications\": [
            {
              \"name\": \"My Application\"
            }
          ]
        }
      }
    ]
}"

ここで示したリリース・マーカーは、特定のアプリケーション My Application 内のサービス my-service に対してのみ表示され、アプリケーション内の他のサービスには表示されません。

注意: 使用される API トークンには、 リリースの構成権限が必要です。

統合

Harness

Harnessは、お客様のデプロイメントと本番アプリケーションを監視するために、Instanaとの継続的検証統合を構築しました。

Jenkins

また、既存のCI/CDツールとのスムーズな統合を可能にするため、 Jenkins プラグインを提供しています。 このプラグインと詳細情報は GitHub.

BOSH デプロイメント

注: この機能にアクセスするには、 Instana Microservices Application Monitoring for Pivotal Platform tile バージョン 1.166.1 以降が必要です。

重要: パイプライン・フィードバック機能の状況は、現在 実験的です。 多くのサービスインスタンスがあり、それぞれに専用のBOSHデプロイメントがあるような環境では、少しおしゃべりになりすぎるかもしれない。 ご意見をお聞かせください。

Instana タイルは、Pivotal Platform 基盤全体で実行されている BOSH デプロイメントを自動的に検出し、Instana 内のパイプライン フィードバック機能の一部として、これらのデプロイメントが releases として報告されます。

詳しくは、 Pipeline Feedbackのドキュメントをご覧ください。

BOSH デプロイメント用のパイプライン フィードバック機能にオプトインするには、 OpsManager の Instana タイル構成内で、 Agent 自動構成 > [Experimental] Pipeline Feedback for BOSH オプションを有効にします。

次の設定を正しく構成するようにしてください。

  • 「バックエンド接続」>「API エンドポイント URL」: Instana のテナント・ユニットを指定する必要があります。
  • バックエンド接続 > APIトークン : 少なくとも Configuration of releases のパーミッションを持つAPIトークンが必要です。 詳細については、 APIトークンのドキュメントを参照してください。

変更をロールアウトするには、OpsManager で VMware Tanzu Application Service for VMs (旧称: Pivotal Application Service (PAS)) タイルまたは VMware Tanzu Kubernetes Grid (旧称: Pivotal Container Service (PKS)) タイルに対する「変更の適用」を選択します。