INVALID コンピューティング環境 - AWS Batch

INVALID コンピューティング環境

マネージド型コンピューティング環境を誤って設定した可能性があります。設定した場合、コンピューティング環境は INVALID の状態になり、配置するジョブを受け入れられなくなります。以下のセクションでは、考えられる原因と、その原因に基づいトラブルシューティング方法について説明します。

サポート対象外の Kubernetes バージョン

CreateComputeEnvironment API オペレーションまたは API オペレーション UpdateComputeEnvironment を使用してコンピュート環境を作成または更新すると、次のようなエラーメッセージが表示されることがあります。この問題は、Kubernetes でサポートされていないバージョンを EC2Configuration で指定した場合に発生します。

At least one imageKubernetesVersion in EC2Configuration is not supported.

この問題を解決するには、コンピュート環境を削除し、サポートされている Kubernetes バージョンで再作成してください。

Amazon EKS クラスターでマイナーバージョンアップグレードを実行できます。例えば、イナーバージョンがサポートされていない場合でも、クラスターを 1.xx から 1.yy マにアップグレードできます。

ただし、INVALID メジャーバージョンを更新すると、コンピュート環境のステータスがに変わることがあります。例えば、1.xx から 2.yy へのメジャーバージョンアップグレードを実行する場合などです。メジャーバージョンが AWS Batch でサポートされていない場合、次のようなエラーメッセージが表示されます。

reason=CLIENT_ERROR - ... EKS Cluster version [2.yy] is unsupported

この問題を解決するには、API オペレーションを使用してコンピューティング環境を作成または更新するときに、Kubernetes サポートされているバージョンを指定してください。

Kubernetesは、現在、Amazon EKS の以下のAWS Batchバージョンをサポートしています。

  • 1.33

  • 1.32

  • 1.31

  • 1.30

  • 1.29

  • 1.28

  • 1.27

  • 1.26

  • 1.25

インスタンスプロファイルが存在しません

指定したインスタンスプロファイルが存在しない場合、AWS Batch Amazon EKS コンピューティング環境のステータスは INVALID に変わります。statusReason パラメータに次のようなエラーセットが表示されます。

CLIENT_ERROR - Instance profile arn:aws:iam::...:instance-profile/<name> does not exist

この問題を解決するには、ワーキングインスタンスプロファイルを指定または作成します。詳細については、Amazon EKS ユーザーガイドの「Amazon EKS ノードの IAM ロール」を参照してください。

無効な Kubernetes 名前空間が

Amazon EKS で AWS Batchが、コンピュート環境の名前空間を検証できない場合、コンピューティング環境のステータスは INVALID に変更されます。例えば、この問題は名前空間が存在しない場合に発生する可能性があります。

statusReason パラメータには、次のようなエラーメッセージが設定されています。

CLIENT_ERROR - Unable to validate Kubernetes Namespace

この問題は、次のいずれかに該当する場合に発生する可能性があります:

  • CreateComputeEnvironment 呼び出し中のKubernetes 名前空間文字列は存在しません。詳細については、CreateComputeEnvironment を参照してください。

  • 名前空間の管理に、必要なロールベースのアクセス制御 (RBAC) 権限が正しく設定されていません。

  • AWS Batch Amazon EKS Kubernetes API サーバーエンドポイントにアクセスできない。

この問題を解決するには、aws-auth ConfigMap のフィールドが正しく設定されていることを確認しますをご参照ください。詳細については、Amazon EKS で AWS Batch のご利用開始にあたって を参照してください。

削除されたコンピューティング環境

Amazon EKS コンピューティング環境でアタッチされている AWS Batch を削除する前に、Amazon EKS クラスターを削除するとします。そうすると、コンピューティング環境のステータスは INVALID に変わります。このシナリオでは、Amazon EKS クラスターを同じ名前で再作成すると、コンピューティング環境は正しく機能しません。

この問題を解決するには、を Amazon EKS コンピューティング環境から削除して AWS Batch から再作成してください。

ノードは Amazon EKS クラスターに加わりません

Amazon EKS でAWS Batch は、すべてのノードが Amazon EKS クラスターに参加しているわけではないと判断された場合、Amazon EKS コンピューティング環境をスケールダウンします。Amazon EKS AWS Batch でコンピューティング環境をスケールダウンすると、コンピューティング環境のステータスは INVALID に変わります。

注記

AWS Batch コンピューティング環境のステータスはすぐには変更されないため、問題をデバッグできます。

statusReason パラメータには、次のようなエラーメッセージが設定されています。

Your compute environment has been INVALIDATED and scaled down because none of the instances joined the underlying ECS Cluster. Common issues preventing instances joining are the following: VPC/Subnet configuration preventing communication to ECS, incorrect Instance Profile policy preventing authorization to ECS, or customized AMI or LaunchTemplate configurations affecting ECS agent.

Your compute environment has been INVALIDATED and scaled down because none of the nodes joined the underlying Amazon EKS Cluster. Common issues preventing nodes joining are the following: networking configuration preventing communication to Amazon EKS Cluster, incorrect Amazon EKS Instance Profile or Kubernetes RBAC policy preventing authorization to Amazon EKS Cluster, customized AMI or LaunchTemplate configurations affecting Amazon EKS/Kubernetes node bootstrap.

デフォルトの Amazon EKS AMI を使用する場合、この問題の最も一般的な原因は次のとおりです: