拡張ランタイム

Migrate for Anthos and GKE 用の拡張ランタイムの一般公開プレビュー リリースには、移行済みのコンテナ ワークロードを次の場所にデプロイする新機能が追加されています。

  • GKE Autopilot クラスタ

  • Cloud Run

また、拡張ランタイムでは、Kubernetes プラグインとの互換性の問題も解決されています。たとえば、現在のランタイムでは、Workload Identity を使用する Anthos clusters on AWS にコンテナをデプロイする際に、追加の構成変更が必要です。

GKE Autopilot クラスタについて

Autopilot は、Google Kubernetes Engine(GKE)の運用モードで、クラスタの管理コストの削減、本番環境に合わせたクラスタの最適化、ワークロードの可用性の向上を目的として設計されています。Autopilot モードの GKE は、ノードやノードプールなどのクラスタの基盤となるインフラストラクチャをプロビジョニングして管理します。また、ユーザーによる操作が不要な最適化されたクラスタを提供します。

詳細については、Autopilot の概要をご覧ください。

Cloud Run について

Cloud Run はマネージド コンピューティング プラットフォームで、ウェブ リクエストまたは Pub/Sub イベントで呼び出し可能なステートレス コンテナを実行できます。拡張コンテナ ランタイムを使用すると、移行済みのコンテナ ワークロードを Cloud Run にデプロイできます。

Anthos clusters on AWS と Workload Identity について

AWS の Anthos クラスタのワークロード ID を使用すると、特定の権限で Kubernetes サービス アカウントを AWS IAM アカウントにバインドできます。ワークロード ID は、AWS IAM 権限を使用して、クラウド リソースへの不正なアクセスをブロックします。

現在のランタイムでは、移行済みのワークロードを、Workload Identity を使用する Anthos clusters on AWS にデプロイできます。ただし、独自の init システムに対して次の環境変数を設定して、デプロイ環境を構成するために、追加の手順を行う必要があります。

  • AWS_ROLE_ARN: IAM ロールの Amazon Resource Name(ARN)。
  • AWS_WEB_IDENTITY_TOKEN_FILE: トークンが保存されるパス。

拡張ランタイムでは、この追加構成を行わずにコンテナをデプロイできます。

既存のランタイムからの変更

拡張ランタイムを使用するには、既存のランタイムからの次の変更と制限を認識する必要があります。

新しく追加された config.yaml アーティファクト ファイル

拡張ランタイムを有効にした場合、移行アーティファクトを生成する際に、Migrate for Anthos and GKE によって新しいアーティファクト ファイル(config.yaml)が作成されます。このファイルを使用して、デプロイされたコンテナでのアプリケーションの初期化を制御します。詳細については、config.yaml の使用をご覧ください。

Readiness プローブ

現在のランタイムを使用する場合、Migrate for Anthos and GKE は deployment_spec.yaml ファイルに readiness プローブを追加します。拡張ランタイムを有効にしても、readiness プローブは追加されません。

readiness プローブを追加する場合は、HTTP readiness プローブを使用することをおすすめします。詳細については、readiness プローブを定義するをご覧ください。

        readinessProbe:
          exec:
            command:
            - /.m4a/gamma status

ただし、このプローブでは偽陰性の結果が返されることがあります。

syslog のサポート

拡張ランタイムは、syslog をサポートする /dev/log に Unix ソケットを作成します。拡張ランタイムは、これらのログメッセージを stdout に転送し、Kubernetes によってコンテナログとして記録されるようにします。

制限事項

拡張ランタイムの一般公開プレビュー リリースを使用する場合は、次の制限事項に注意してください。

ワークロードの制限事項

この公開プレビューは、次のタイプのワークロードに最適です。

  • Apache
  • Tomcat
  • Redis
  • mysql

systemd の制限事項

init システムとして systemd を使用している場合は、次の制限事項にご注意ください。

  • simpleexecnotifysystemd サービス タイプは、exec サービスとして扱われます。つまり、exec が成功した場合、サービスは開始されたとみなされます。

  • 通知ソケットはサポートされていません。notify タイプのサービスには NOTIFY_SOCKET 環境変数がありません。sd_notify には何も行いません。

    必要に応じて、他の readiness チェックを行う必要があります。たとえば、HTTP チェックやその他のタイプのチェックです。

  • ソケットタイプの単位ファイルはサポートされていません。ソケットは作成されず、環境変数も作成されません。