血と汗となみだを流す

個人の思ったこと、やったことの吐き出し口です。

EKS Auto Mode で NodeClaim が Error getting launch template configs になる

現象

$ kubectl describe nodeclaim (nodeclaim name) すると以下のような感じで「Error getting launch template configs」が発生して NodeClaim リソースが Unknown になる。

Status:
  Conditions:
    Last Transition Time:  2024-12-18T04:37:19Z
    Message:               object is awaiting reconciliation
    Observed Generation:   1
    Reason:                AwaitingReconciliation
    Status:                Unknown
    Type:                  Initialized
    Last Transition Time:  2024-12-18T04:37:19Z
    Message:               Error getting launch template configs
    Observed Generation:   1
    Reason:                LaunchFailed
    Status:                Unknown
    Type:                  Launched
    Last Transition Time:  2024-12-18T04:37:19Z
    Message:               Node not registered with cluster
    Observed Generation:   1
    Reason:                NodeNotFound
    Status:                Unknown
    Type:                  Registered
    Last Transition Time:  2024-12-18T04:37:19Z
    Message:               Initialized=Unknown, Launched=Unknown, Registered=Unknown
    Observed Generation:   1
    Reason:                ReconcilingDependents
    Status:                Unknown
    Type:                  Ready

原因

以下のページの NodeClass の定義にある「Optional: Additional EC2 tags」でタグを付与する場合、クラスター IAM ロールに追加の IAM ポリシーが必要になる。

docs.aws.amazon.com

apiVersion: eks.amazonaws.com/v1
kind: NodeClass
metadata:
  name: default
spec:
〜略〜
  # Optional: Additional EC2 tags
  tags:
    Environment: "production"
    Team: "platform"

ユーザーがタグを付与したい場合、クラスター IAM ロールに以下の IAM ポリシーを追加する。

docs.aws.amazon.com

プライバシーポリシー