アプリケーションを GKE Autopilot クラスタに移行およびデプロイする
移行したコンテナ ワークロードを GKE Autopilot クラスタにデプロイするには、既存のアーキテクチャの場合と同じ手順でワークロードを移行します。唯一の変更点は次のとおりです。
コンテナ アーティファクトを生成する前に、移行計画で
v2kServiceManager
をtrue
に設定する必要があります。新しい
services-config.yaml
ファイルを確認して、初期化サービスを編集する必要があります。services-config.yaml の使用をご覧ください。
移行を行うには:
必要に応じて、移行計画をカスタマイズします。
移行計画をダウンロードします。移行計画は AppXGenerateArtifactsFlow で表されます。
たとえば、「my-migration」という名前の移行の場合は、次のようになります。
migctl migration get my-migration
テキスト エディタで、ダウンロードした移行計画(
my-migration.yaml
)を開きます。強化された Linux サービス マネージャーを確認します。
v2kServiceManager
フラグはデフォルトでtrue
に設定されています。ただし、Migrate to Containers が、サービス マネージャーでサポートされていないシステム サービスを検出した場合はアラートが返され、v2kServiceManager
フラグはfalse
に設定されます。フラグがfalse
の場合、移行はサービスをサポートする従来のランタイムを使用します。サポートされていないサービスとともに、次のアラートが表示されます。
Service is not supported by v2k service manager, therefore legacy runtime will be used instead of v2k service manager, and migrated workload would not fit running on Autopilot clusters of Cloudrun.
サポートされていないサービスが見つかった場合は、フラグを手動で
true
に設定することもできます。この場合、実行されない可能性のあるサポート対象外のサービスを生成イメージで維持することも、サービスを移行計画から削除して除外することもできます。新しいサービス マネージャーを有効にするには、フラグを
true
にリセットします。v2kServiceManager: true
移行計画のカスタマイズに説明されているように、移行に必要なその他のカスタマイズを行います。
編集が終わったら、編集したファイルを保存します。
編集した移行計画をアップロードします。
migctl migration update my-migration --main-config my-migration.yaml
これまでと同様に既存のランタイムを使用して、移行アーティファクトを生成し、それを確認します。
新しい
services-config.yaml
ファイルを編集して、コンテナの初期化プロパティを構成します。ファイルを保存してコンテナ イメージを再ビルドし、変更を適用します。詳細については、services-config.yaml の使用をご覧ください。
kubectl
を使用して GKE Autopilot クラスタにコンテナをデプロイします。kubectl apply -f deployment_spec.yaml
例: Autopilot にクイックスタート コンテナをデプロイする
最新のクイックスタート ガイドに沿って、シンプル ウェブサーバーを含むコンテナを移行し、Autopilot にデプロイします。クイックスタート プロセスには、次の変更のみを行う必要があります。
VM を移行するのステップ 3(移行計画の確認)で、移行計画の
v2kServiceManager
をtrue
に設定して、計画を保存します。v2kServiceManager: true
コンテナをデプロイする前に、移行したワークロードのデプロイ セクションで、GKE Autopilot クラスタを作成して接続します。
GKE Autopilot クラスタを作成します。
gcloud container clusters create-auto "CLUSTER_NAME" --project "PROJECT_NAME" --region "REGION" --release-channel "regular" --subnetwork "projects/PROJECT_NAME/regions/us-central1/subnetworks/default"
クラスタに接続します。
gcloud container clusters get-credentials CLUSTER_NAME --zone REGION --project PROJECT_NAME
移行されたワークロードをデプロイするセクションの説明に従い、コンテナをデプロイします。
AppXGenerateArtifactsFlow CRD に対する変更
CRD ファイルを使用して移行を制御する場合は、AppXGenerateArtifactsFlow CRD を編集して、v2kServiceManager
を true
に設定します。CRD ファイルを使用して移行を制御する詳しい方法については、移行計画のカスタマイズをご覧ください。
次のステップ
- コンテナを Cloud Run にデプロイする方法を学習します。