Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
AWS.Calcola. EKSSelfManagedNode
AWS TNBsupporta i nodi EKS autogestiti di Amazon per automatizzare il provisioning e la gestione del ciclo di vita dei nodi (istanze AmazonEC2) per i cluster Amazon Kubernetes. EKS Per creare un gruppo di EKS nodi Amazon, procedi come segue:
-
Scegli Amazon Machine Images (AMI) per i tuoi nodi di lavoro del cluster fornendo l'ID diAMI.
-
Fornisci una coppia di EC2 chiavi Amazon per SSH l'accesso.
-
Assicurati che il tuo gruppo di nodi sia associato a un EKS cluster Amazon.
-
Fornisci il tipo di istanza e le dimensioni desiderate, minime e massime.
-
Fornisci le sottoreti per i nodi di lavoro.
-
Facoltativamente, allega gruppi di sicurezza, etichette di nodi e un gruppo di posizionamento al tuo gruppo di nodi.
Sintassi
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
Funzionalità
compute
Proprietà che definiscono i parametri di calcolo per i nodi EKS autogestiti di Amazon, come i tipi di EC2 istanze Amazon e le EC2 istanze AMIs Amazon.
-
ami_id
-
L'AMIID utilizzato per avviare l'istanza. AWS TNBsupporta istanze che IMDSv2 sfruttano. Per ulteriori informazioni, consulta IMDSversione.
Campo obbligatorio: sì
Tipo: stringa
-
instance_type
-
La dimensione dell'istanza.
Campo obbligatorio: sì
Tipo: stringa
-
key_pair
-
La coppia di EC2 chiavi Amazon per abilitare SSH l'accesso.
Campo obbligatorio: sì
Tipo: stringa
-
root_volume_encryption
-
Abilita EBS la crittografia Amazon per il volume EBS root di Amazon. Se questa proprietà non viene fornita, AWS TNB crittografa i volumi EBS root di Amazon per impostazione predefinita.
Campo obbligatorio: no
Impostazione predefinita: true
Tipo: Booleano
-
root_volume_encryption_key_arn
-
La ARN AWS KMS chiave. AWS TNBsupporta chiavi normaliARN, chiavi multiregionali ARN e aliasARN.
Required: No
Tipo: stringa
Nota
-
Se
root_volume_encryption
è falso, non includerlo.root_volume_encryption_key_arn
-
AWS TNBsupporta la crittografia del volume root di Amazon EBS -backedAMI.
-
Se il volume root AMI è già crittografato, è necessario includere il modulo
root_volume_encryption_key_arn
per AWS TNB ricrittografare il volume root. -
Se il AMI volume principale non è crittografato, AWS TNB utilizza il
root_volume_encryption_key_arn
per crittografare il volume principale.Se non lo includi
root_volume_encryption_key_arn
, AWS TNB viene utilizzato AWS Managed Services per crittografare il volume root. -
AWS TNBnon decrittografa un file crittografato. AMI
-
scaling
Proprietà che definiscono i parametri di scalabilità per i nodi EKS autogestiti di Amazon, ad esempio il numero desiderato di EC2 istanze Amazon e il numero minimo e massimo di EC2 istanze Amazon nel gruppo di nodi.
-
desired_size
-
Il numero di istanze in esso contenute. NodeGroup
Campo obbligatorio: sì
Tipo: integer
-
min_size
-
Il numero minimo di istanze in questo campo. NodeGroup
Campo obbligatorio: sì
Tipo: integer
-
max_size
-
Il numero massimo di istanze in questo campo. NodeGroup
Campo obbligatorio: sì
Tipo: integer
Proprietà
-
node_role
-
Il ARN IAM ruolo associato all'EC2istanza Amazon.
Campo obbligatorio: sì
Tipo: stringa
-
tags
-
I tag da allegare alla risorsa. I tag verranno propagati alle istanze create dalla risorsa.
Campo obbligatorio: no
Tipo: List
Requisiti
-
cluster
-
Un AWS.Compute. EKSnodo.
Campo obbligatorio: sì
Tipo: stringa
-
subnets
-
Un nodo AWS.Networking.Subnet.
Campo obbligatorio: sì
Tipo: List
-
network_interfaces
-
Un AWS.Networking. ENInodo. Assicurati che le interfacce di rete e le sottoreti siano impostate sulla stessa zona di disponibilità o l'istanziazione avrà esito negativo.
Quando si imposta
network_interfaces
, AWS TNB ottiene l'autorizzazione relativa alla ENIsmultus_role
proprietà se è stata inclusa la proprietà in .Compute.multus
AWS EKSnodo. Altrimenti, AWS TNB ottiene l'autorizzazione relativa alla ENIs proprietà node_role.Campo obbligatorio: no
Tipo: List
-
security_groups
-
Un .Networking.AWS SecurityGroupnodo.
Campo obbligatorio: no
Tipo: List
-
placement_group
-
Un tosca.nodes.AWS.Calcola. PlacementGroupnodo.
Required: No
Tipo: stringa
-
user_data
-
Un tosca.nodes.AWS.Calcola. UserDatariferimento al nodo. Uno script di dati utente viene passato alle EC2 istanze Amazon lanciate dal gruppo di nodi autogestito. Aggiungi le autorizzazioni necessarie per l'esecuzione di dati utente personalizzati al node_role passato al gruppo di nodi.
Required: No
Tipo: stringa
-
labels
-
Un elenco di etichette di nodi. L'etichetta di un nodo deve avere un nome e un valore. Crea un'etichetta utilizzando i seguenti criteri:
-
Il nome e il valore devono essere separati da
=
. -
Il nome e il valore possono avere ciascuno una lunghezza massima di 63 caratteri.
-
L'etichetta può includere lettere (A-Z, a-z), numeri (0-9) e i seguenti caratteri:
[-, _, ., *, ?]
-
Il nome e il valore devono iniziare e terminare con un carattere alfanumerico o.
?
*
Ad esempio,
myLabelName1=*NodeLabelValue1
.Campo obbligatorio: no
Tipo: List
-
Esempio
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"