Cloud Build の機能
このページでは、サービス アカウントの作成、特定のリージョンでのビルド、プライベート ワーカープールの使用など、Cloud Build 機能を使用して Cortex Framework Data Foundation をビルドするためのオプションの構成について説明します。これらの構成は、データのプライバシー、パフォーマンス、セキュリティ、カスタマイズに関して大きなメリットがあります。最適なアプローチは、具体的な要件とアプリケーションの性質によって異なります。
ユーザー作成のサービス アカウントを使用したデプロイ
置換パラメータ _BUILD_ACCOUNT
を追加することで、サービス アカウントでデプロイを実行できます。
gcloud builds submit \
--config=./cloudbuild.yaml \
--substitutions=_GCS_BUCKET=<BUCKET_FOR_LOGS>, \
_BUILD_ACCOUNT='projects/SOURCE_PROJECT/serviceAccounts/SERVICE_ACCOUNT@SOURCE_PROJECT.iam.gserviceaccount.com'
次のように置き換えます。
BUCKET_FOR_LOGS
は、ログのバケット名に置き換えます。SERVICE_ACCOUNT
は、Cortex Framework Data Foundation のデプロイ用のサービス アカウントに置き換えます。SOURCE_PROJECT
は、Cortex Framework Data Foundation のデプロイ用ソース プロジェクトに置き換えます。
このサービス アカウントは Cloud Build ジョブをトリガーし、Cloud Build サービス アカウントで特定のステップを実行します。これにより、リソースに直接アクセスしなくてもデプロイ プロセスをトリガーできます。
新しいサービス アカウントを作成するには、次の操作を行います。
Console
[サービス アカウント] ページに移動します。
このサービス アカウントにプロジェクトへのアクセス権を付与します。
ユーザーにこのサービス アカウントへのアクセスを許可します。
- サービス アカウントを使用してデプロイを実行できるすべてのユーザー(自分自身を含む)の ID を追加します。
- サービス アカウント トークン作成者のロールを割り当てます。このロールの詳細については、サービス アカウントのロールをご覧ください。
サービス アカウントがすでにある場合は、次の操作を行います。
- [サービス アカウント] に移動
- [サービス アカウント] をクリックします。
- [権限] タブをクリックします。
- [アクセス権を付与] をクリックします。
- サービス アカウントを使用してデプロイを実行できるすべてのユーザー(自分自身を含む)の ID を追加します。
- サービス アカウント トークン作成者のロールを割り当てます。
gcloud
次のコマンドを使用して、IAM ポリシーでサービス アカウントを作成します。
gcloud iam service-accounts create SERVICE_ACCOUNT \ --description="Service account for Cortex Framework Data Foundation deployment" \ --display-name="my-cortex-service-account"
次のコマンドを使用して、IAM ポリシーをプロジェクトに追加します。 Google Cloud
gcloud projects add-iam-policy-binding SOURCE_PROJECT \ --member="serviceAccount:SERVICE_ACCOUNT@SOURCE_PROJECT.iam.gserviceaccount.com" \ --role="roles/cloudbuild.builds.editor"
サービス アカウントを介してデプロイを実行できるすべてのユーザー(自分自身を含む)の ID を追加し、次のコマンドを使用してサービス アカウント トークン作成者ロールを割り当てます。
gcloud iam service-accounts add-iam-policy-binding SERVICE_ACCOUNT\ --member="user:USER_EMAIL" \ --role="roles/iam.serviceAccountTokenCreator"
次のように置き換えます。
SERVICE_ACCOUNT
は、Cortex Framework Data Foundation のデプロイ用のサービス アカウントに置き換えます。SOURCE_PROJECT
は、Cortex Framework Data Foundation のデプロイ用ソース プロジェクトに置き換えます。USER_EMAIL
は、実行したユーザーのメールアドレスに置き換えます。
特定のリージョンでビルドする
リージョンビルディングでは、データが特定の地理的位置内に確実に保持されます。これにより、ローカルのデータ プライバシー規制に準拠し、可用性とレイテンシを低減できます。詳細については、Cloud Build のロケーションをご覧ください。
特定のリージョンでデプロイを実行するには、次のコマンドのように、置換パラメータ _CLOUD_BUILD_REGION
を --region
bash パラメータに追加します。
gcloud builds submit \
--config=./cloudbuild.yaml \
--substitutions=_GCS_BUCKET=BUCKET_FOR_LOGS,_CLOUD_BUILD_REGION=REGION \
--region=REGION
次のように置き換えます。
BUCKET_FOR_LOGS
は、ログのバケット名に置き換えます。REGION
: デプロイのリージョン。使用可能なリージョンの詳細については、地域とリージョンをご覧ください。
プライベート ワーカープールでビルドする
プライベート ワーカープールを使用すると、ビルドの環境をより安全にできます。プライベート プールは、プライベート ネットワーク内のリソースへのアクセスなど、ビルド環境のカスタマイズを強化するワーカーのプライベート専用プールです。詳細については、プライベート プールの概要をご覧ください。
限定公開ワーカーを構成するには、次のコマンドのように、対応する _CLOUD_BUILD_REGION
パラメータを使用して _WORKER_POOL_NAME
を追加します。
gcloud builds submit \
--config=./cloudbuild.yaml
--substitutions=_GCS_BUCKET=BUCKET_FOR_LOGS,_WORKER_POOL_NAME='projects/SOURCE_PROJECT/locations/us-central1/workerPools/YOUR_WORKER_POOL_NAME',_CLOUD_BUILD_REGION=REGION \
--region=REGION
次のように置き換えます。
BUCKET_FOR_LOGS
は、ログのバケット名に置き換えます。SOURCE_PROJECT
は、Cortex Framework Data Foundation のデプロイ用ソース プロジェクトに置き換えます。YOUR_WORKER_POOL_NAME
は、ワーカープールの名前に置き換えます。REGION
: デプロイのリージョン。使用可能なリージョンの詳細については、地域とリージョンをご覧ください。