翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS.Compute.EKSManagedNode
AWS TNB は EKS Managed Node グループをサポートし、Amazon EKS Kubernetes クラスターのノード (Amazon EC2 インスタンス) のプロビジョニングとライフサイクル管理を自動化します。EKS ノードグループを作成するには、以下を実行します。
-
AMI の ID または AMI タイプを指定して、クラスターワーカーノードの Amazon マシンイメージ (AMI) を選択します。
-
SSH アクセス用の Amazon EC2 キーペアと、ノードグループのスケーリングプロパティを指定します。
-
ノードグループが Amazon EKS クラスターに関連付けられていることを確認します。
-
ワーカーノードのサブネットを指定します。
-
必要に応じて、セキュリティグループ、ノードラベル、プレイスメントグループをノードグループにアタッチします。
構文
tosca.nodes.AWS.Compute.EKSManagedNode:
capabilities:
compute:
properties:
ami_type: String
ami_id: String
instance_types: List
key_pair: String
root_volume_encryption: Boolean
root_volume_encryption_key_arn: String
root_volume_size: Integer
scaling:
properties:
desired_size: Integer
min_size: Integer
max_size: Integer
properties:
node_role: String
tags: List
kubernetes_version: String
requirements:
cluster: String
subnets: List
network_interfaces: List
security_groups: List
placement_group: String
user_data: String
labels: List
機能
compute
Amazon EKS マネージド型ノードグループのコンピューティングパラメータを定義するプロパティ (Amazon EC2 インスタンスタイプや Amazon EC2 インスタンス AMI など)。
-
ami_type -
Amazon EKS がサポートする AMI タイプ。
必須: はい
タイプ: 文字列
指定できる値:
AL2_x86_64|AL2_x86_64_GPU|AL2_ARM_64|AL2023_x86_64|AL2023_ARM_64| |AL2023_x86_64_NVIDIA|AL2023_x86_64_NEURON|CUSTOM|BOTTLEROCKET_ARM_64|BOTTLEROCKET_x86_64BOTTLEROCKET_ARM_64_NVIDIA|BOTTLEROCKET_x86_64_NVIDIA -
ami_id -
AMI の ID。
必須: いいえ
タイプ: 文字列
注記
テンプレートで
ami_typeと の両方が指定されami_idている場合、 AWS TNB はami_id値のみを使用して を作成しますEKSManagedNode。 -
instance_types -
インスタンスのサイズ。
必須: はい
タイプ: リスト
-
key_pair -
SSH アクセスを有効にする EC2 キーペア。
必須: はい
タイプ: 文字列
-
root_volume_encryption -
Amazon EBS ルートボリュームの Amazon EBS 暗号化を有効にします。このプロパティが指定されていない場合、 AWS TNB はデフォルトで Amazon EBS ルートボリュームを暗号化します。
必須: いいえ
デフォルト: true
型: ブール値
-
root_volume_encryption_key_arn -
AWS KMS key. AWS TNB の ARN は、通常のキー ARN、マルチリージョンキー ARN、エイリアス ARN をサポートしています。
必須: いいえ
タイプ: 文字列
注記
-
root_volume_encryptionが false の場合、 を含めないでくださいroot_volume_encryption_key_arn。 -
AWS TNB は、Amazon EBS-backed AMI のルートボリューム暗号化をサポートしています。
-
AMI のルートボリュームがすでに暗号化されている場合は、 AWS TTB
root_volume_encryption_key_arnがルートボリュームを再暗号化するための を含める必要があります。 -
AMI のルートボリュームが暗号化されていない場合、 AWS TNB は
root_volume_encryption_key_arnを使用してルートボリュームを暗号化します。を含めない場合
root_volume_encryption_key_arn、 AWS TNB は が提供するデフォルトキー AWS Key Management Service を使用してルートボリュームを暗号化します。 -
AWS TNB は暗号化された AMI を復号しません。
-
-
root_volume_size -
Amazon Elastic Block Store ルートボリュームのサイズを GiBs。
必須: いいえ
デフォルト: 20
タイプ: 整数
指定できる値: 1~16,384
scaling
Amazon EKS マネージド型ノードグループのスケーリングパラメータ (必要な Amazon EC2 インスタンスの数、ノードグループ内の Amazon EC2 インスタンスの最小数と最大数など) を定義するプロパティ。
-
desired_size -
この NodeGroup のインスタンスの数。
必須: はい
型: 整数
-
min_size -
この NodeGroup のインスタンスの最小数。
必須: はい
型: 整数
-
max_size -
この NodeGroup のインスタンスの最大数。
必須: はい
型: 整数
プロパティ
-
node_role -
Amazon EC2 インスタンスにアタッチされた IAM ロールの ARN。
必須: はい
タイプ: 文字列
-
tags -
リソースにアタッチするタグ。
必須: いいえ
タイプ: リスト
-
kubernetes_version -
Managed Node group. AWS TNB の Kubernetes バージョンは、Kubernetes バージョン 1.25 から 1.32 をサポートしています。以下の点を考慮してください。
-
kubernetes_versionまたは を指定しますami_id。両方を指定することはできません。 -
は、 AWS.Compute.EKSManagedNode バージョン以下
kubernetes_versionである必要があります。 -
AWS.Compute.EKSManagedNode バージョンと の間には 3 つのバージョンがあります
kubernetes_version。 -
kubernetes_versionまたはami_idが指定されていない場合、 AWS TNB はAWS.Compute.EKSManagedNode最新バージョンの AMI を使用して を作成します。EKSManagedNode
必須: いいえ
タイプ: 文字列
指定できる値: 1.25 | 1.26 | 1.27 | 1.28 | 1.29 | 1.30 | 1.31 | 1.32
-
要件
-
cluster -
AWS.Compute.EKS ノード。
必須: はい
タイプ: 文字列
-
subnets -
必須: はい
タイプ: リスト
-
network_interfaces -
AWS.Networking.ENI ノード。ネットワークインターフェイスとサブネットが同じアベイラビリティーゾーンに設定されていることを確認してください。異なる場合は、インスタンス化が失敗します。
を設定すると
network_interfaces、AWS.Compute.EKS ノードにmultus_roleプロパティを含めると、 AWS TNB はmultusプロパティから ENIs に関連するアクセス許可を取得します。それ以外の場合、 AWS TNB は node_role プロパティから ENI に関連するアクセス許可を取得します。必須: いいえ
タイプ: リスト
-
security_groups -
AWS.Networking.SecurityGroup ノード。
必須: いいえ
タイプ: リスト
-
placement_group -
tosca.nodes.AWS.Compute.PlacementGroup ノード。
必須: いいえ
タイプ: 文字列
-
user_data -
tosca.nodes.AWS.Compute.UserData ノードのリファレンス。ユーザーデータスクリプトは、マネージド型ノードグループによって起動される Amazon EC2 インスタンスに渡されます。カスタムユーザーデータの実行に必要なアクセス許可を、ノードグループに渡される node_role に追加します。
必須: いいえ
タイプ: 文字列
-
labels -
ノードラベルのリスト。ノードラベルには名前と値が必要です。次の条件を使用してラベルを作成します。
-
名前と値は で区切る必要があります
=。 -
名前と値の長さはそれぞれ最大 63 文字です。
-
ラベルには、文字 (A~Z、a~z)、数字 (0~9)、および次の文字を含めることができます。
[-, _, ., *, ?] -
名前と値は、英数字、、
?または*文字で始まる必要があります。
例:
myLabelName1=*NodeLabelValue1必須: いいえ
タイプ: リスト
-
例
SampleEKSManagedNode: type: tosca.nodes.AWS.Compute.EKSManagedNode capabilities: compute: properties: ami_type: "AL2_x86_64" instance_types: - "t3.xlarge" key_pair: "SampleKeyPair" root_volume_encryption: true root_volume_encryption_key_arn: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" root_volume_size:1500scaling: properties: desired_size: 1 min_size: 1 max_size: 1 properties: node_role: "arn:aws:iam::${AWS::TNB::AccountId}:role/SampleRole" tags: - "Name=SampleVPC" - "Environment=Testing" kubernetes_version: - "1.30" requirements: cluster: SampleEKS subnets: - SampleSubnet network_interfaces: - SampleENI01 - SampleENI02 security_groups: - SampleSecurityGroup01 - SampleSecurityGroup02 placement_group: SamplePlacementGroup user_data: CustomUserData labels: - "sampleLabelName001=sampleLabelValue001" - "sampleLabelName002=sampleLabelValue002"