デプロイ後にアプリケーションを確認する
このクイックスタートでは、デリバリー パイプラインの一部として、Cloud Deploy を使用してデプロイしたアプリケーションを確認する方法について説明します。
このクイックスタートでは、以下の内容を行います。
GKE クラスタを 1 つ、または Cloud Run サービスを 1 つ作成します。
GKE 接続クラスタでもデプロイ検証を使用できますが、このクイックスタートでは GKE と Cloud Run のみを使用します。
Cloud Deploy デリバリー パイプラインとデプロイ ターゲットを定義します。
デリバリー パイプラインには 1 つのステージのみが含まれ、1 つのターゲットのみが使用されます。 デプロイ検証の構成は、
stageスタンザで定義します。リリースに必要な Skaffold 構成と、Kubernetes マニフェストまたは Cloud Run サービス定義のいずれかを作成します。
リリースを作成します。リリースは自動的にターゲットにデプロイされます。
コンソールで Cloud Deploy の [ロールアウトの詳細] ページを使用して、Cloud Build ログで検証の結果を表示します。Google Cloud
始める前に
- アカウントにログインします Google Cloud を初めて使用する場合は、 アカウントを作成して、実際のシナリオで Google プロダクトのパフォーマンスを評価してください。 Google Cloud新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud Deploy, Cloud Build, GKE, Cloud Run, and Cloud Storage APIs.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Google Cloud CLI をインストールします。
-
外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。
-
gcloud CLI を初期化するには、次のコマンドを実行します:
gcloud init -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud Deploy, Cloud Build, GKE, Cloud Run, and Cloud Storage APIs.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Google Cloud CLI をインストールします。
-
外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。
-
gcloud CLI を初期化するには、次のコマンドを実行します:
gcloud init - デフォルトの Compute Engine サービス アカウントに十分な権限があることを確認します。
このサービス アカウントにはすでに必要な権限が付与されている場合があります。これらの手順は、デフォルトのサービス アカウントの自動的なロール付与を無効にするプロジェクトに含まれています。
- 最初に、
clouddeploy.jobRunnerロールを追加します。gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:$(gcloud projects describe PROJECT_ID \ --format="value(projectNumber)")-compute@developer.gserviceaccount.com \ --role="roles/clouddeploy.jobRunner" - 特定のランタイム向けのデベロッパー ロールを追加します。
- GKE の場合:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:$(gcloud projects describe PROJECT_ID \ --format="value(projectNumber)")-compute@developer.gserviceaccount.com \ --role="roles/container.developer" - Cloud Run の場合:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:$(gcloud projects describe PROJECT_ID \ --format="value(projectNumber)")-compute@developer.gserviceaccount.com \ --role="roles/run.developer" -
iam.serviceAccountUserロールを追加します。これには、ランタイムにデプロイするactAs権限が含まれます。gcloud iam service-accounts add-iam-policy-binding $(gcloud projects describe PROJECT_ID \ --format="value(projectNumber)")-compute@developer.gserviceaccount.com \ --member=serviceAccount:$(gcloud projects describe PROJECT_ID \ --format="value(projectNumber)")-compute@developer.gserviceaccount.com \ --role="roles/iam.serviceAccountUser" \ --project=PROJECT_ID
CLI がすでにインストールされている場合は、最新バージョンを実行していることを確認してください。
gcloud components update
ランタイム環境を作成する
Cloud Run にデプロイする場合は、以下のコマンドをスキップできます。
GKE の場合は、デフォルト設定でクラスタ deploy-verification-cluster を 1 つ作成します。クラスタの Kubernetes API エンドポイントは、公共のインターネットからネットワークに到達可能である必要があります。GKE クラスタには、デフォルトで外部からアクセス可能です。
gcloud container clusters create-auto deploy-verification-cluster \
--project=PROJECT_ID \
--region=us-central1
デリバリー パイプラインとターゲットの作成
パイプラインとターゲットは、1 つのファイルまたは個別のファイルで定義できます。このクイックスタートでは、1 つのファイルを作成します。
ターミナル ウィンドウを開きます。
新しいディレクトリを作成し、そのディレクトリに移動します。
GKE
mkdir deploy-verification-gke-quickstart cd deploy-verification-gke-quickstartCloud Run
mkdir deploy-verification-run-quickstart cd deploy-verification-run-quickstartデリバリー パイプラインとターゲット定義を作成:
GKE
deploy-verification-gke-quickstartディレクトリに、次の内容を含む新しいclouddeploy.yamlファイルを作成します。apiVersion: deploy.cloud.google.com/v1 kind: DeliveryPipeline metadata: name: deploy-verification-demo-app-gke-1 description: main application pipeline serialPipeline: stages