AWS.Compute.EKSSelfManagedNode - AWS 電信網路建置器

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS.Compute.EKSSelfManagedNode

AWS TNB 支援 Amazon EKS 自我管理節點,以自動化 Amazon EKS Kubernetes 叢集節點 (Amazon EC2 執行個體) 的佈建和生命週期管理。若要建立 Amazon EKS 節點群組,請執行下列動作:

  • 提供 AMI 的 ID,為您的叢集工作者節點選擇 Amazon Machine Image (AMI)。

  • 為 SSH 存取提供 Amazon EC2 金鑰對。

  • 確保您的節點群組與 Amazon EKS 叢集相關聯。

  • 提供執行個體類型和所需、最小和最大大小。

  • 提供工作者節點的子網路。

  • 或者,將安全群組、節點標籤和置放群組連接到節點群組。

語法

tosca.nodes.AWS.Compute.EKSSelfManagedNode: capabilities: compute: properties: ami_id: String instance_type: String 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 EKS 自我管理節點運算參數的屬性,例如 Amazon EC2 執行個體類型和 Amazon EC2 執行個體 AMIs。

ami_id

用來啟動執行個體的 AMI ID。 AWS TNB 支援利用 IMDSv2 的執行個體。如需詳細資訊,請參閱IMDS 版本

必要:是

類型:字串

instance_type

執行個體大小。

必要:是

類型:字串

key_pair

啟用 SSH 存取的 Amazon EC2 金鑰對。

必要:是

類型:字串

root_volume_encryption

啟用 Amazon EBS 根磁碟區的 Amazon EBS 加密。如果未提供此屬性, AWS TNB 預設會加密 Amazon EBS 根磁碟區。

必要:否

預設:true

類型:布林值

root_volume_encryption_key_arn

key AWS KMS . AWS TNB 的 ARN 支援一般金鑰 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 Managed Services 來加密根磁碟區。

  • 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

AWS.Networking.Subnet 節點。

必要:是

類型:清單

network_interfaces

AWS.Networking.ENI 節點。確保網路介面和子網路設定為相同的可用區域,否則執行個體化將會失敗。

當您設定 時network_interfaces,如果您在 AWS.Compute.EKS 節點中包含 multus 屬性, AWS TNB 會從 multus_role 屬性取得與 ENIs 相關的許可。否則, AWS TNB 會從 node_role 屬性取得與 ENIs相關的許可。

必要:否

類型:清單

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

必要:否

類型:清單

範例

SampleEKSSelfManagedNode: type: tosca.nodes.AWS.Compute.EKSSelfManagedNode capabilities: compute: properties: ami_id: "ami-123123EXAMPLE" instance_type: "c5.large" 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/SampleNodeRole" tags: - "Name=SampleVPC" - "Environment=Testing" requirements: cluster: SampleEKSCluster subnets: - SampleSubnet network_interfaces: - SampleNetworkInterface01 - SampleNetworkInterface02 security_groups: - SampleSecurityGroup01 - SampleSecurityGroup02 placement_group: SamplePlacementGroup user_data: CustomUserData labels: - "sampleLabelName001=sampleLabelValue001" - "sampleLabelName002=sampleLabelValue002"