スキップしてコンテンツを表示

EKSノードに使用するAL2の起動テンプレートをAL2023のテンプレートに移行する

0

EKSノードに使用するAL2の起動テンプレート作成のコードは使用しています。このテンプレートをAL2023で使用できるように修正したいです。 どのように修正すればよいか教えていただけますでしょうか。

aws ec2 create-launch-template
--launch-template-name test
--version-description "test template"
--launch-template-data '{ "ImageId": "ami-0e4dbdf4c1758cd37", "InstanceType": "t3a.medium", "KeyName": "KeyPair_EKS", "SecurityGroupIds": ["sg-??????????????????"], "UserData": "IyEvYmluL2Jhc2gKc2V0IC1vIHh0cmFjZQovZXRjL2Vrcy9ib290c3RyYXAuc2ggS2lueXUtU0FTVml5YS1FS1NDbHVzdGVyCg==", "BlockDeviceMappings": [ { "DeviceName": "/dev/xvda", "Ebs": { "VolumeSize": 50, "VolumeType": "gp3", "DeleteOnTermination": true } } ] }'

UserDataの内容は以下となります。 #!/bin/bash set -o xtrace /etc/eks/bootstrap.sh {クラスタ名}

これは最大pod数を緩和するために設定しています。

質問済み 3ヶ月前90ビュー
1回答
1
承認された回答

ami-0e4dbdf4c1758cd37はAmazon Linux2のAMIなのでami-052d3c739ad8ad1e8に変更する必要があるのではないかと思いました。
手元の環境で試してないので動かない可能性はありますが、以下のGitHubのAMI NamesでAMIを検索する限りはamazon-eks-node-al2023-x86_64-standard-1.33-v20250807が一番新しいAMIのようです。
https://github.com/awslabs/amazon-eks-ami/releases

以下のブログを見る限りEKS最適化AMIを使用している場合ユーザーデータで「#!/bin/bash set -o xtrace /etc/eks/bootstrap.sh」を実行しなくてもよさそうでした。
https://zenn.dev/tsuzucle_tech/articles/0437af82c0a9c6

エキスパート
回答済み 3ヶ月前
  • 回答ありがとうございます。AMIを変更しなければならないこと理解できました。 ユーザーデータで「#!/bin/bash set -o xtrace /etc/eks/bootstrap.sh」を指定しているのは最大Pod数を緩和するためです。 AL2023ではこの指定ができないようで、どのように指定すればよいか悩んでおります。

  • どうやらAmazon Linux2023からはnodeadmと呼ばれるもので初期化プロセスが行われているようです。 以下のドキュメントを見るとnodeadmではyaml形式でいろいろ設定するようなのでここら辺が参考になるかもしれません。 https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html#launch-template-user-data https://docs.aws.amazon.com/eks/latest/userguide/al2023.html https://repost.aws/ja/knowledge-center/custom-user-eks-2023

    ---
    apiVersion: node.eks.aws/v1alpha1
    kind: NodeConfig
    spec:
      cluster:
        name: test-cluster
        apiServerEndpoint: https://example.com
        certificateAuthority: Y2VydGlmaWNhdGVBdXRob3JpdHk=
        cidr: 10.100.0.0/16
      kubelet:
        config:
          maxPods: 110
        flags:
          - --node-labels=karpenter.sh/capacity-type=on-demand,karpenter.sh/nodepool=test
    
  • ありがとうございます。 追加情報を参考に最大Pod数を緩和したAL2023ベースの起動テンプレートが作成でき、EKSノードも起動できました。(describe nodeで「Pods:110」も確認できました。)

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

関連するコンテンツ