翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS.コンピューティング。EKSManagedNode
AWS TNB は、Amazon Kubernetes クラスターのノード (Amazon EC2インスタンス) のプロビジョニングとライフサイクル管理を自動化する EKS Managed Node EKS グループをサポートしています。EKS Node グループを作成するには、以下を実行します。
-
AMI または AMIタイプの ID を指定して、クラスターワーカーノードの 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
scaling:
properties:
desired_size: Integer
min_size: Integer
max_size: Integer
properties:
node_role: String
tags: List
requirements:
cluster: String
subnets: List
network_interfaces: List
security_groups: List
placement_group: String
user_data: String
labels: List
機能
compute
Amazon インスタンスタイプや Amazon EC2インスタンス など、Amazon EC2 EKSマネージドノードグループのコンピューティングパラメータを定義するプロパティAMIs。
-
ami_type
-
Amazon EKSがサポートするAMIタイプ。
必須: はい
型: 文字列
使用できる値:
AL2_x86_64
|AL2_x86_64_GPU
|AL2_ARM_64
|CUSTOM
|BOTTLEROCKET_ARM_64
|BOTTLEROCKET_x86_64
|BOTTLEROCKET_ARM_64_NVIDIA
|BOTTLEROCKET_x86_64_NVIDIA
-
ami_id
-
の IDAMI。
必須: いいえ
型: 文字列
注記
テンプレートで
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 キーARNの 。 AWS TNB は、通常のキー ARN、マルチリージョンキー ARN、およびエイリアス をサポートしますARN。
必須: いいえ
型: 文字列
注記
-
root_volume_encryption
が false の場合、 を含めないでくださいroot_volume_encryption_key_arn
。 -
AWS TNB は、Amazon EBSでバックアップされた AMIのルートボリューム暗号化をサポートします。
-
AMIのルートボリュームが既に暗号化されている場合は、ルートボリュームを再暗号化するには、
root_volume_encryption_key_arn
の AWS TNB を含める必要があります。 -
AMIのルートボリュームが暗号化されていない場合、 AWS TNBは
root_volume_encryption_key_arn
を使用してルートボリュームを暗号化します。を含めない場合
root_volume_encryption_key_arn
、 AWS TNBは によって提供されたデフォルトキー AWS Key Management Service を使用してルートボリュームを暗号化します。 -
AWS TNB は暗号化された を復号しませんAMI。
-
scaling
Amazon EKSマネージド型ノードグループのスケーリングパラメータを定義するプロパティ。例えば、必要な Amazon EC2インスタンスの数、ノードグループ内の Amazon EC2 インスタンスの最小数と最大数などです。
-
desired_size
-
この のインスタンス数 NodeGroup。
必須: はい
型: 整数
-
min_size
-
この の最小インスタンス数 NodeGroup。
必須: はい
型: 整数
-
max_size
-
この 内のインスタンスの最大数 NodeGroup。
必須: はい
型: 整数
プロパティ
-
node_role
-
Amazon EC2インスタンスにアタッチされているIAMロールARNの 。
必須: はい
型: 文字列
-
tags
-
リソースにアタッチするタグ。
必須:いいえ
タイプ: リスト
要件
-
cluster
-
AWS.Compute.EKS ノード。
必須: はい
型: 文字列
-
subnets
-
必須:はい
タイプ: リスト
-
network_interfaces
-
AWS.Networking.ENI ノード。ネットワークインターフェイスとサブネットが同じアベイラビリティーゾーンに設定されていることを確認してください。異なる場合は、インスタンス化が失敗します。
を設定すると
network_interfaces
、. AWS TNBAWSCompute.EKS ノードにmultus_role
プロパティを含めると、 はmultus
プロパティENIsから に関連するアクセス許可を取得します。それ以外の場合、 は node_role プロパティENIsから に関連するアクセス許可 AWS TNBを取得します。必須:いいえ
タイプ: リスト
-
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
" scaling: 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" requirements: cluster: SampleEKS subnets: - SampleSubnet network_interfaces: - SampleENI01 - SampleENI02 security_groups: - SampleSecurityGroup01 - SampleSecurityGroup02 placement_group: SamplePlacementGroup user_data: CustomUserData labels: - "sampleLabelName001=sampleLabelValue001" - "sampleLabelName002=sampleLabelValue002"