

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à.

# Modello di descrittore del servizio di rete
<a name="nsd-template"></a>

Definisce un modello NSD (Network Service Descriptor).

## Sintassi
<a name="nsd-template-syntax"></a>

```
tosca_definitions_version: tnb_simple_yaml_1_0

vnfds:
  - descriptor\$1id: String
    namespace: String

topology_template:

  inputs:
    SampleInputParameter:
      type: String
      description: "Sample parameter description"
      default: "DefaultSampleValue"

  node\$1templates:
    SampleNode1: tosca.nodes.AWS.NS
```

## Utilizzo di parametri definiti
<a name="using-defined-parameters"></a>

Quando si desidera passare dinamicamente un parametro, ad esempio il blocco CIDR per il nodo VPC, è possibile utilizzare la `{ get_input: input-parameter-name }` sintassi e definire i parametri nel modello NSD. Quindi riutilizzate il parametro sullo stesso modello NSD.

L'esempio seguente mostra come definire e utilizzare i parametri:

```
tosca_definitions_version: tnb_simple_yaml_1_0

topology_template:

  inputs:
    cidr_block:
      type: String
      description: "CIDR Block for VPC"
      default: "10.0.0.0/24"

  node_templates:
    ExampleSingleClusterNS:
      type: tosca.nodes.AWS.NS
      properties:
        descriptor_id: "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
         .....

    ExampleVPC:
      type: tosca.nodes.AWS.Networking.VPC
      properties:
        cidr_block: { get_input: cidr_block }
```

## Importazione VNFD
<a name="vnfd-import"></a>

 `descriptor_id`    
L'UUID del descrittore.  
Campo obbligatorio: sì  
Tipo: stringa  
Modello: `[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}`

 `namespace`    
Il nome univoco.  
Campo obbligatorio: sì  
Tipo: stringa

## Modello di topologia
<a name="nsd-topology-template"></a>

 `node_templates`    
I possibili AWS nodi TOSCA sono:  
+ [AWS.NS](node-ns.md)
+ [AWS.Compute.eks](node-eks.md)
+ [AWS.Compute.eks. AuthRole](node-eks-authrole.md)
+ [AWS.Calcola. EKSManaged](node-eks-managed-node.md)Nodo
+ [AWS.Calcola. EKSSelfManagedNode](node-eks-self-managed.md)
+ [AWS.Calcola. PlacementGroup](node-compute-placement-group.md)
+ [AWS.Calcola. UserData](node-compute-user-data.md)
+ [AWS.Rete. SecurityGroup](node-networking-security-group.md)
+ [AWS.Rete. SecurityGroupEgressRule](node-networking-security-group-egress-rule.md)
+ [AWS.Rete. SecurityGroupIngressRule](node-networking-security-group-ingress-rule.md)
+ [AWS.Risorsa. Importazione](node-resource-import.md)
+ [AWS.Networking.eni](node-eni.md)
+ [AWS.HookExecution](node-hook-execution.md)
+ [AWS.Rete. InternetGateway](node-internet-gateway.md)
+ [AWS.Rete. RouteTable](node-route-table.md)
+ [AWS.Networking.Subnet](node-subnet.md)
+ [AWS.Distribuzione. VNFDeployment](node-vnf-deployment.md)
+ [AWS.Networking.vpc](node-vpc.md)
+ [AWS.Rete. NATGateway](node-nat-gateway.md)
+ [AWS.Rete. Percorso](node-route.md)

# AWS.NS
<a name="node-ns"></a>

Definisce un nodo AWS di servizio di rete (NS).

## Sintassi
<a name="node-ns-syntax"></a>

```
tosca.nodes.AWS.NS:
  properties:
    descriptor\$1id: String
    descriptor\$1version: String
    descriptor\$1name: String
```

## Proprietà
<a name="node-ns-properties"></a>

 `descriptor_id`    
L'UUID del descrittore.  
Campo obbligatorio: sì  
Tipo: stringa  
Modello: `[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}`

 `descriptor_version`    
La versione dell'NSD.  
Campo obbligatorio: sì  
Tipo: stringa  
Modello: `^[0-9]{1,5}\\.[0-9]{1,5}\\.[0-9]{1,5}.*`

 `descriptor_name`    
Il nome del descrittore.  
Campo obbligatorio: sì  
Tipo: stringa

## Esempio
<a name="node-ns-example"></a>

```
SampleNS:
  type: tosca.nodes.AWS.NS
  properties:
    descriptor_id: "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
    descriptor_version: "1.0.0"
    descriptor_name: "Test NS Template"
```

# AWS.compute.eks
<a name="node-eks"></a>

Fornisci il nome del cluster, la versione di Kubernetes desiderata e un ruolo che consenta al piano di controllo Kubernetes di gestire le risorse necessarie per il tuo. AWS NFs I plugin Multus Container Network Interface (CNI) sono abilitati. È possibile collegare più interfacce di rete e applicare una configurazione di rete avanzata alle funzioni di rete basate su Kubernetes. È inoltre necessario specificare l'accesso agli endpoint del cluster e le sottoreti per il cluster.

## Sintassi
<a name="node-eks-syntax"></a>

```
tosca.nodes.AWS.Compute.EKS:
  capabilities:
    multus:
      properties:
        enabled: Boolean
        multus\$1role: String
    ebs\$1csi:
      properties:
        enabled: Boolean
        version: String      
  properties:
    version: String
    access: String
    cluster\$1role: String
    tags: List
    ip\$1family: String        
  requirements:
    subnets: List
```

## Funzionalità
<a name="node-eks-capabilities"></a><a name="node_eks_multus"></a>`multus`

Facoltativo. Proprietà che definiscono l'utilizzo dell'interfaccia di rete Multus Container (CNI). 

Se includi`multus`, specifica le proprietà `enabled` and`multus_role`.

 `enabled`    
Indica se la funzionalità Multus predefinita è abilitata.  
Campo obbligatorio: sì  
Tipo: Booleano

 `multus_role`    
Il ruolo della gestione dell'interfaccia di rete Multus.  
Campo obbligatorio: sì  
Tipo: stringa<a name="node_eks_ebs_csi"></a>`ebs_csi`

Proprietà che definiscono il driver Amazon EBS Container Storage Interface (CSI) installato nel cluster Amazon EKS.

Abilita questo plug-in per utilizzare i nodi autogestiti di Amazon EKS su AWS Outposts, AWS Local Zones o Regioni AWS. Per ulteriori informazioni, consulta il [driver CSI di Amazon Elastic Block Store](https://docs.aws.amazon.com/eks/latest/userguide/ebs-csi.html) nella **Guida per l'utente di Amazon EKS**.

 `enabled`    
Indica se è installato il driver Amazon EBS CSI predefinito.  
Campo obbligatorio: no  
Tipo: Booleano

 `version`    
La versione del componente aggiuntivo del driver CSI di Amazon EBS. La versione deve corrispondere a una delle versioni restituite dall'azione. *DescribeAddonVersions* Per ulteriori informazioni, [DescribeAddonVersions](https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html)consulta *Amazon EKS API Reference*   
Required: No  
Tipo: stringa

## Proprietà
<a name="node-eks-properties"></a>

 `version`    
La versione Kubernetes per il cluster. AWS Telco Network Builder supporta le versioni di Kubernetes da 1.25 a 1.32.  
Campo obbligatorio: sì  
Tipo: stringa  
Valori possibili: 1,25 \$1 1,26 \$1 1,27 \$1 1,28 \$1 1,29 \$1 1,30 \$1 1,31 \$1 1,32

 `access`    
L'accesso agli endpoint del cluster.  
Campo obbligatorio: sì  
Tipo: stringa  
Valori possibili: `PRIVATE` \$1 `PUBLIC` \$1 `ALL`

 `cluster_role`    
Il ruolo della gestione dei cluster.  
Campo obbligatorio: sì  
Tipo: stringa

 `tags`    
Tag da allegare alla risorsa.  
Campo obbligatorio: no  
Tipo: List

 `ip_family`    
Indica la famiglia IP per gli indirizzi di servizio e pod nel cluster.  
Valore consentito:`IPv4`, `IPv6`  
Valore predefinito: `IPv4`  
Required: No  
Tipo: stringa

## Requisiti
<a name="node-eks-requirements"></a>

 `subnets`    
Un nodo [AWS.Networking.Subnet](node-subnet.md).  
Campo obbligatorio: sì  
Tipo: List

## Esempio
<a name="node-eks-example"></a>

```
SampleEKS:
  type: tosca.nodes.AWS.Compute.EKS
  properties:
    version: "1.26"
    access: "ALL"
    cluster_role: "arn:aws:iam::${AWS::TNB::AccountId}:role/SampleRole"
    ip_family: "IPv6"
    tags:
      - "Name=SampleVPC"
      - "Environment=Testing" 
  capabilities:
    multus:
      properties:
        enabled: true
        multus_role: "arn:aws:iam::${AWS::TNB::AccountId}:role/MultusRole"
    ebs_csi:
      properties:
        enabled: true
        version: "v1.16.0-eksbuild.1"        
  requirements:
    subnets:
    - SampleSubnet01
    - SampleSubnet02
```

# AWS.Compute.eks. AuthRole
<a name="node-eks-authrole"></a>

An AuthRole consente di aggiungere ruoli IAM al cluster Amazon EKS `aws-auth` `ConfigMap` in modo che gli utenti possano accedere al cluster Amazon EKS utilizzando un ruolo IAM.

## Sintassi
<a name="node-eks-authrole-syntax"></a>

```
tosca.nodes.AWS.Compute.EKS.AuthRole:
  properties:
    role\$1mappings: List
      arn: String
      groups: List  
  requirements:
    clusters: List
```

## Proprietà
<a name="node-eks-authrole-properties"></a>

 `role_mappings`    
Elenco di mappature che definiscono i ruoli IAM che devono essere aggiunti al cluster Amazon EKS. `aws-auth` `ConfigMap`    
 `arn`    
L'ARN del ruolo IAM.  
Campo obbligatorio: sì  
Tipo: stringa  
 `groups`    
Gruppi Kubernetes da assegnare al ruolo definito in. `arn`  
Campo obbligatorio: no  
Tipo: List

## Requisiti
<a name="node-eks-authrole-requirements"></a>

 `clusters`    
[Un nodo .compute.eks.AWS](node-eks.md)  
Campo obbligatorio: sì  
Tipo: List

## Esempio
<a name="node-eks-authrole-example"></a>

```
EKSAuthMapRoles:
    type: tosca.nodes.AWS.Compute.EKS.AuthRole
    properties:
        role_mappings:
        - arn: arn:aws:iam::${AWS::TNB::AccountId}:role/TNBHookRole1
          groups:
          - system:nodes
          - system:bootstrappers
        - arn: arn:aws:iam::${AWS::TNB::AccountId}:role/TNBHookRole2
          groups:
          - system:nodes
          - system:bootstrappers
    requirements:
         clusters: 
         - Free5GCEKS1
         - Free5GCEKS2
```

# AWS.Calcola. EKSManagedNodo
<a name="node-eks-managed-node"></a>

AWS TNB supporta i gruppi di nodi gestiti EKS per automatizzare il provisioning e la gestione del ciclo di vita dei nodi (istanze Amazon EC2 ) per i cluster Amazon EKS Kubernetes. Per creare un gruppo di nodi EKS, procedi come segue:
+ Scegli Amazon Machine Images (AMI) per i tuoi nodi cluster worker fornendo l'ID dell'AMI o il tipo di AMI.
+ Fornisci una coppia di EC2 chiavi Amazon per l'accesso SSH e le proprietà di scalabilità per il tuo gruppo di nodi.
+ Assicurati che il tuo gruppo di nodi sia associato a un cluster Amazon EKS.
+ 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
<a name="node-eks-managed-node-syntax"></a>

```
tosca.nodes.AWS.Compute.EKSManagedNode:
  capabilities:
    compute:
      properties:
        ami\$1type: String
        ami\$1id: String
        instance\$1types: List
        key\$1pair: String
        root\$1volume\$1encryption: Boolean
        root\$1volume\$1encryption\$1key\$1arn: String
        root\$1volume\$1size: Integer 
    scaling:
      properties:
        desired\$1size: Integer
        min\$1size: Integer
        max\$1size: Integer       
  properties:
    node\$1role: String
    tags: List
    kubernetes\$1version: String        
  requirements:
    cluster: String
    subnets: List
    network\$1interfaces: List
    security\$1groups: List
    placement\$1group: String
    user\$1data: String
    labels: List
```

## Funzionalità
<a name="node-eks-managed-node-capabilities"></a><a name="node_eks_managed_node_compute"></a>`compute`

Proprietà che definiscono i parametri di calcolo per il gruppo di nodi gestiti di Amazon EKS, ad esempio i tipi di EC2 istanze Amazon e le EC2 istanze Amazon AMIs.

 `ami_type`    
Il tipo di AMI supportato da Amazon EKS.  
Campo obbligatorio: sì  
Tipo: stringa  
Valori possibili: `AL2_x86_64` \$1 \$1 `AL2_x86_64_GPU` \$1 `AL2_ARM_64` \$1 `AL2023_x86_64` \$1 `AL2023_ARM_64` \$1 `AL2023_x86_64_NVIDIA` \$1 \$1 `AL2023_x86_64_NEURON` \$1 `CUSTOM` \$1 `BOTTLEROCKET_ARM_64` \$1 `BOTTLEROCKET_x86_64` `BOTTLEROCKET_ARM_64_NVIDIA` `BOTTLEROCKET_x86_64_NVIDIA`

 `ami_id`    
L'ID dell'AMI.  
Required: No  
Tipo: stringa  
Se entrambi `ami_type` `ami_id` sono specificati nel modello, AWS TNB utilizzerà solo il `ami_id` valore da creare`EKSManagedNode`.

 `instance_types`    
La dimensione dell'istanza.  
Campo obbligatorio: sì  
Tipo: List

 `key_pair`    
La coppia di EC2 chiavi per abilitare l'accesso SSH.  
Campo obbligatorio: sì  
Tipo: stringa

 `root_volume_encryption`    
Abilita la crittografia Amazon EBS per il volume root di Amazon EBS. Se questa proprietà non viene fornita, AWS TNB crittografa i volumi root di Amazon EBS per impostazione predefinita.  
Campo obbligatorio: no  
Impostazione predefinita: true  
Tipo: Booleano

 `root_volume_encryption_key_arn`    
L'ARN della chiave. AWS KMS AWS TNB supporta ARN a chiave normale, ARN a chiave multiregione e alias ARN.  
Required: No  
Tipo: stringa  
+ Se `root_volume_encryption` è falso, non includerlo. `root_volume_encryption_key_arn`
+ AWS TNB supporta la crittografia del volume principale delle AMI supportate da Amazon EBS.
+ Se il volume root dell'AMI è già crittografato, devi includere il codice `root_volume_encryption_key_arn` per consentire a AWS TNB di ricrittografare il volume root.
+  Se il volume root dell'AMI non è crittografato, AWS TNB utilizza il `root_volume_encryption_key_arn` per crittografare il volume root.

  Se non lo includi`root_volume_encryption_key_arn`, AWS TNB utilizza la chiave predefinita fornita da AWS Key Management Service per crittografare il volume root.
+ AWS TNB non decrittografa un AMI crittografato.

 `root_volume_size`    
La dimensione del volume root di Amazon Elastic Block Store in GiBs.  
Campo obbligatorio: no  
Impostazione predefinita: 20  
Tipo: integer  
Valori possibili: da 1 a 16.384<a name="node_eks_managed_node_scaling"></a>`scaling`

Proprietà che definiscono i parametri di scalabilità per il gruppo di nodi gestiti Amazon EKS, 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à
<a name="node_eks_managed_node-properties"></a>

 `node_role`    
L'ARN del ruolo IAM collegato all'istanza Amazon EC2 .  
Campo obbligatorio: sì  
Tipo: stringa

 `tags`    
I tag da allegare alla risorsa.  
Campo obbligatorio: no  
Tipo: List

 `kubernetes_version`    
La versione Kubernetes per il gruppo Managed Node. AWS TNB supporta le versioni di Kubernetes da 1.25 a 1.32. Considera i seguenti aspetti:  
+ `kubernetes_version``ami_id`Specificare o. Non specificare entrambi.
+ `kubernetes_version`Deve essere minore o uguale a AWS.Compute. EKSManagedVersione del nodo.
+ Può esserci una differenza di 3 versioni tra AWS.Compute. EKSManagedVersione del nodo e. `kubernetes_version`
+ Se non viene specificato nessuno dei due `kubernetes_version` o`ami_id`, AWS TNB utilizzerà l'AMI più recente della `AWS.Compute.EKSManagedNode` versione per creare `EKSManagedNode`
Required: No  
Tipo: stringa  
Valori possibili: 1,25 \$1 1,26 \$1 1,27 \$1 1,28 \$1 1,29 \$1 1,30 \$1 1,31 \$1 1,32

## Requisiti
<a name="node-eks-managed-node-requirements"></a>

 `cluster`    
[AWS Un](node-eks.md) nodo .compute.eks.  
Campo obbligatorio: sì  
Tipo: stringa

 `subnets`    
[Un AWS nodo .Networking.Subnet.](node-subnet.md)  
Campo obbligatorio: sì  
Tipo: List

 `network_interfaces`    
Un nodo [AWS.Networking.eni](node-eni.md). 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 ENIs `multus_role` proprietà se è stata inclusa la proprietà nel nodo AWS.Compute.eks. `multus`](https://docs.aws.amazon.com/tnb/latest/ug/node-eks.html) [Altrimenti, AWS TNB ottiene l'autorizzazione relativa alla proprietà node\$1role. ENIs ](#node_eks_managed_node_node_role)  
Campo obbligatorio: no  
Tipo: List

 `security_groups`    
[Un .Networking.AWS SecurityGroup](node-networking-security-group.md)nodo.  
Campo obbligatorio: no  
Tipo: List

 `placement_group`    
Un [tosca.nodes.AWS.Calcola. PlacementGroup](node-compute-placement-group.md)nodo.  
Required: No  
Tipo: stringa

 `user_data`    
Un [tosca.nodes.AWS.Calcola. UserData](node-compute-user-data.md)riferimento al nodo. Uno script di dati utente viene passato alle EC2 istanze Amazon lanciate dal gruppo di nodi gestiti. Aggiungi le autorizzazioni necessarie per eseguire dati utente personalizzati al node\$1role 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
<a name="node-eks-managed-node-example"></a>

```
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: 1500    
    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" 
    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"
```

# AWS.Calcola. EKSSelfManagedNode
<a name="node-eks-self-managed"></a>

AWS TNB supporta i nodi autogestiti di Amazon EKS per automatizzare il provisioning e la gestione del ciclo di vita dei nodi (istanze Amazon EC2 ) per i cluster Amazon EKS Kubernetes. Per creare un gruppo di nodi Amazon EKS, procedi come segue:
+ Scegli Amazon Machine Images (AMI) per i tuoi nodi cluster worker fornendo l'ID dell'AMI.
+ Fornisci una coppia di EC2 chiavi Amazon per l'accesso SSH.
+ Assicurati che il tuo gruppo di nodi sia associato a un cluster Amazon EKS.
+ 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
<a name="node-eks-self-managed-node-syntax"></a>

```
tosca.nodes.AWS.Compute.EKSSelfManagedNode:
  capabilities:
    compute:
      properties:
        ami\$1id: String
        instance\$1type: String
        key\$1pair: String
        root\$1volume\$1encryption: Boolean
        root\$1volume\$1encryption\$1key\$1arn: String    
        root\$1volume\$1size: Integer
    scaling:
      properties:
        desired\$1size: Integer
        min\$1size: Integer
        max\$1size: Integer  
  properties:
    node\$1role: String    
    tags: List          
  requirements:
    cluster: String
    subnets: List
    network\$1interfaces: List
    security\$1groups: List
    placement\$1group: String
    user\$1data: String
    labels: List
```

## Funzionalità
<a name="node-eks-self-managed-node-capabilities"></a><a name="node_eks_self_managed_node_compute"></a>`compute`

Proprietà che definiscono i parametri di calcolo per i nodi autogestiti di Amazon EKS, ad esempio i tipi di EC2 istanze Amazon e le EC2 istanze AMIs Amazon.

 `ami_id`    
L'ID AMI utilizzato per avviare l'istanza. AWS TNB supporta istanze che sfruttano. IMDSv2 Per ulteriori informazioni, consulta [Versione IMDS](imds-version.md).  
Puoi aggiornare l'ID AMI per`EKSSelfManagedNode`. La versione Amazon EKS dell'AMI deve essere uguale o inferiore a due versioni rispetto alla versione del cluster Amazon EKS. Ad esempio, se la versione del cluster Amazon EKS è 1.31, la versione dell'AMI Amazon EKS deve essere 1.31, 1.30 o 1.29.
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 l'accesso SSH.  
Campo obbligatorio: sì  
Tipo: stringa

 `root_volume_encryption`    
Abilita la crittografia Amazon EBS per il volume root di Amazon EBS. Se questa proprietà non viene fornita, AWS TNB crittografa i volumi root di Amazon EBS per impostazione predefinita.  
Campo obbligatorio: no  
Impostazione predefinita: true  
Tipo: Booleano

 `root_volume_encryption_key_arn`    
L'ARN della chiave. AWS KMS AWS TNB supporta ARN a chiave normale, ARN a chiave multiregione e alias ARN.  
Required: No  
Tipo: stringa  
+ Se `root_volume_encryption` è falso, non includerlo. `root_volume_encryption_key_arn`
+ AWS TNB supporta la crittografia del volume principale delle AMI supportate da Amazon EBS.
+ Se il volume root dell'AMI è già crittografato, devi includere il codice `root_volume_encryption_key_arn` per consentire a AWS TNB di ricrittografare il volume root.
+  Se il volume root dell'AMI non è crittografato, AWS TNB utilizza il `root_volume_encryption_key_arn` per crittografare il volume root.

  Se non lo includi`root_volume_encryption_key_arn`, AWS TNB lo utilizza AWS Managed Services per crittografare il volume root.
+ AWS TNB non decrittografa un AMI crittografato.

 `root_volume_size`    
La dimensione del volume root di Amazon Elastic Block Store in GiBs.  
Campo obbligatorio: no  
Impostazione predefinita: 20  
Tipo: integer  
Valori possibili: da 1 a 16.384<a name="node_eks_self_managed_node_scaling"></a>`scaling`

Proprietà che definiscono i parametri di scalabilità per i nodi autogestiti di Amazon EKS, 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à
<a name="node-eks-self-managed-node-properties"></a>

 `node_role`    
L'ARN del ruolo IAM collegato all'istanza Amazon EC2 .  
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
<a name="node-eks-self-managed-node-requirements"></a>

 `cluster`    
Un nodo [AWS.compute.eks.](node-eks.md)  
Campo obbligatorio: sì  
Tipo: stringa

 `subnets`    
[Un AWS nodo .Networking.Subnet.](node-subnet.md)  
Campo obbligatorio: sì  
Tipo: List

 `network_interfaces`    
Un nodo [AWS.Networking.eni](node-eni.md). 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 ENIs `multus_role` proprietà se è stata inclusa la proprietà nel nodo AWS.Compute.eks. `multus`](https://docs.aws.amazon.com/tnb/latest/ug/node-eks.html) [Altrimenti, AWS TNB ottiene l'autorizzazione relativa alla proprietà node\$1role. ENIs ](#node_eks_self_managed_node_role)  
Campo obbligatorio: no  
Tipo: List

 `security_groups`    
[Un .Networking.AWS SecurityGroup](node-networking-security-group.md)nodo.  
Campo obbligatorio: no  
Tipo: List

 `placement_group`    
Un [tosca.nodes.AWS.Calcola. PlacementGroup](node-compute-placement-group.md)nodo.  
Required: No  
Tipo: stringa

 `user_data`    
Un [tosca.nodes.AWS.Calcola. UserData](node-compute-user-data.md)riferimento 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\$1role 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
<a name="node-eks-self-managed-node-example"></a>

```
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"
        root_volume_size: 1500
    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"
```

# AWS.Calcola. PlacementGroup
<a name="node-compute-placement-group"></a>

Un PlacementGroup nodo supporta diverse strategie per posizionare le EC2 istanze Amazon.

Quando avvii un nuovo Amazon EC2instance, il EC2 servizio Amazon tenta di collocare l'istanza in modo tale che tutte le istanze siano distribuite sull'hardware sottostante per ridurre al minimo i guasti correlati. I *gruppi di collocamento* consentono comunque di influire sul collocamento di un gruppo di istanze *interdipendenti* per soddisfare le esigenze del carico di lavoro.

## Sintassi
<a name="node-compute-placement-group-syntax"></a>

```
tosca.nodes.AWS.Compute.PlacementGroup
  properties:
    strategy: String
    partition\$1count: Integer
    tags: List
```

## Proprietà
<a name="node-compute-placement-group-properties"></a>

 `strategy`    
La strategia da utilizzare per posizionare le EC2 istanze Amazon.  
Campo obbligatorio: sì  
Tipo: stringa  
Valori possibili: CLUSTER \$1 PARTITION \$1 SPREAD\$1HOST \$1 SPREAD\$1RACK  
+ **CLUSTER: raggruppa** le istanze ravvicinate all'interno di una zona di disponibilità. Questa strategia consente ai carichi di lavoro di raggiungere le prestazioni di rete a bassa latenza necessarie per node-to-node comunicazioni strettamente accoppiate tipiche delle applicazioni HPC (High Performance Computing).
+ **PARTIZIONE**: distribuisce le istanze su partizioni logiche in modo che i gruppi di istanze in una partizione non condividano l'hardware sottostante con gruppi di istanze in partizioni diverse. Questa strategia di solito viene utilizzata in grandi carichi di lavoro distribuiti e replicati, come Hadoop, Cassandra e Kafka.
+ **SPREAD\$1RACK**: posiziona un piccolo gruppo di istanze su hardware sottostante distinto per ridurre i guasti correlati.
+ **SPREAD\$1HOST** — utilizzato solo con i gruppi di posizionamento Outpost. Posiziona un piccolo gruppo di istanze su hardware sottostante distinto per ridurre i guasti correlati.

 `partition_count`    
Il numero di partizioni.  
Obbligatorio: richiesto solo quando `strategy` è impostato su. `PARTITION`  
Tipo: integer  
Valori possibili: 1 \$1 2 \$1 3 \$1 4 \$1 5 \$1 6 \$1 7

 `tags`    
I tag che potete allegare alla risorsa del gruppo di collocamento.  
Campo obbligatorio: no  
Tipo: List

## Esempio
<a name="node-compute-placement-group-example"></a>

```
ExamplePlacementGroup:
  type: tosca.nodes.AWS.Compute.PlacementGroup
  properties:
    strategy: "PARTITION"
    partition_count: 5
    tags: 
      - tag_key=tag_value
```

# AWS.Calcola. UserData
<a name="node-compute-user-data"></a>

AWS TNB supporta l'avvio di EC2 istanze Amazon con dati utente personalizzati, tramite il UserData nodo di Network Service Descriptor (NSD). Per ulteriori informazioni sui dati utente personalizzati, consulta [Dati utente e script di shell](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html#user-data-shell-scripts) nella *Amazon EC2 User Guide*.

Durante la creazione di istanze di rete, AWS TNB fornisce la registrazione dell' EC2 istanza Amazon al cluster tramite uno script di dati utente. Quando vengono forniti anche dati utente personalizzati, AWS TNB unisce entrambi gli script e li trasmette come [script multimima ad Amazon](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html#user-data-mime-multi). EC2 Lo script personalizzato per i dati utente viene eseguito prima dello script di registrazione Amazon EKS.

Per utilizzare variabili personalizzate nello script dei dati utente, aggiungi un punto esclamativo `!` dopo la parentesi riccia aperta. `{` Ad esempio, per utilizzarle `MyVariable` nello script, inserisci: `{!MyVariable}`

**Nota**  
AWS TNB supporta script di dati utente di dimensioni fino a 7 KB.
Poiché AWS TNB utilizza CloudFormation per elaborare e rendere lo script `multimime` dei dati utente, assicurati che lo script rispetti tutte le regole. CloudFormation 

## Sintassi
<a name="node-compute-user-data-syntax"></a>

```
tosca.nodes.AWS.Compute.UserData:
  properties:
    implementation: String
    content\$1type: String
```

## Proprietà
<a name="node-compute-user-data-properties"></a>

 `implementation`    
Il percorso relativo alla definizione dello script dei dati utente. Il formato deve essere: `./scripts/script_name.sh`  
Campo obbligatorio: sì  
Tipo: stringa

 `content_type`    
Tipo di contenuto dello script di dati utente.  
Campo obbligatorio: sì  
Tipo: stringa  
Valori possibili: `x-shellscript`

## Esempio
<a name="node-compute-user-data-example"></a>

```
ExampleUserData:
  type: tosca.nodes.AWS.Compute.UserData
  properties:
    content_type: "text/x-shellscript"
    implementation: "./scripts/customUserData.sh"
```

# AWS.Rete. SecurityGroup
<a name="node-networking-security-group"></a>

AWS TNB supporta i gruppi di sicurezza per automatizzare il provisioning di [Amazon EC2 Security Groups che puoi collegare ai gruppi](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-security-groups.html) di nodi del cluster Amazon EKS Kubernetes.

## Sintassi
<a name="node-networking-security-group-syntax"></a>

```
tosca.nodes.AWS.Networking.SecurityGroup
  properties:
    description: String
    name: String
    tags: List
  requirements:
    vpc: String
```

## Proprietà
<a name="node-networking-security-group-properties"></a>

 `description`    
La descrizione del gruppo di sicurezza. È possibile utilizzare fino a 255 caratteri per descrivere il gruppo. È possibile includere solo lettere (A-Z e a-z), numeri (0-9), spazi e i seguenti caratteri speciali: .\$1-:/() \$1, @ [] \$1=&; \$1\$1\$1 \$1\$1  
Campo obbligatorio: sì  
Tipo: stringa

 `name`    
Un nome per il gruppo di sicurezza. È possibile utilizzare fino a 255 caratteri per il nome. È possibile includere solo lettere (A-Z e a-z), numeri (0-9), spazi e i seguenti caratteri speciali: .\$1-:/() \$1, @ [] \$1=&; \$1\$1\$1 \$1\$1  
Campo obbligatorio: sì  
Tipo: stringa

 `tags`    
I tag che puoi allegare alla risorsa del gruppo di sicurezza.  
Campo obbligatorio: no  
Tipo: List

## Requisiti
<a name="node-networking-security-group-requirements"></a>

 `vpc`    
Un nodo [AWS.networking.vpc](node-vpc.md).  
Campo obbligatorio: sì  
Tipo: stringa

## Esempio
<a name="node-networking-security-group-example"></a>

```
SampleSecurityGroup001:
  type: tosca.nodes.AWS.Networking.SecurityGroup
  properties:
        description: "Sample Security Group for Testing"
        name: "SampleSecurityGroup"
        tags:
          - "Name=SecurityGroup"
          - "Environment=Testing"
      requirements:
        vpc: SampleVPC
```

# AWS.Rete. SecurityGroupEgressRule
<a name="node-networking-security-group-egress-rule"></a>

AWS TNB supporta le regole di uscita dei gruppi di sicurezza per automatizzare il provisioning delle EC2 Amazon Security Group Egress Rules che possono essere collegate a .Networking. AWS SecurityGroup. Tieni presente che devi fornire un cidr\$1 ip/destination\$1security\$1group/destination \$1prefix\$1list come destinazione per il traffico in uscita.

## Sintassi
<a name="node-networking-security-group-egress-rule-syntax"></a>

```
AWS.Networking.SecurityGroupEgressRule
  properties:
    ip\$1protocol: String
    from\$1port: Integer
    to\$1port: Integer
    description: String
    destination\$1prefix\$1list: String
    cidr\$1ip: String
    cidr\$1ipv6: String
  requirements:
    security\$1group: String
    destination\$1security\$1group: String
```

## Proprietà
<a name="node-networking-security-group-egress-rule-properties"></a>

 `cidr_ip`    
L'intervallo di indirizzi in formato CIDR. IPv4 È necessario specificare un intervallo CIDR che consenta il traffico in uscita.  
Required: No  
Tipo: stringa

 `cidr_ipv6`    
L'intervallo di IPv6 indirizzi in formato CIDR, per il traffico in uscita. Devi specificare un gruppo di sicurezza di destinazione (`destination_security_group` o `destination_prefix_list`) o un intervallo CIDR (`cidr_ip` o `cidr_ipv6`).  
Required: No  
Tipo: stringa

 `description`    
La descrizione di una regola in uscita del gruppo di sicurezza. È possibile utilizzare fino a 255 caratteri per descrivere la regola.  
Required: No  
Tipo: stringa

 `destination_prefix_list`    
L'ID dell'elenco di prefissi di un elenco di prefissi gestiti Amazon VPC esistente. Questa è la destinazione delle istanze del gruppo di nodi associate al gruppo di sicurezza. Per ulteriori informazioni sugli elenchi di prefissi gestiti, consulta [Managed prefix lists](https://docs.aws.amazon.com/vpc/latest/userguide/managed-prefix-lists.html) nella Amazon *VPC* User Guide.  
Required: No  
Tipo: stringa

 `from_port`    
Se il protocollo è TCP o UDP, questo è l'inizio dell'intervallo di porte. Se il protocollo è ICMP o ICMPv6, questo è il tipo di numero. Il valore -1 indica tutti e ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all ICMP/ICMPv 6 i codici.  
Campo obbligatorio: no  
Tipo: integer

 `ip_protocol`    
Il nome del protocollo IP (tcp, udp, icmp, icmpv6) o il numero di protocollo. Usare -1 per specificare tutti i protocolli. Quando si autorizzano le regole del gruppo di sicurezza, specificando -1 o un numero di protocollo diverso da tcp, udp, icmp o icmpv6 si consente il traffico su tutte le porte, indipendentemente dall'intervallo di porte specificato. Per tcp, udp e icmp, è necessario specificare un intervallo di porte. Per icmpv6, l'intervallo di porte è facoltativo; se si omette l'intervallo di porte, è consentito il traffico per tutti i tipi e codici.  
Campo obbligatorio: sì  
Tipo: stringa

 `to_port`    
Se il protocollo è TCP o UDP, questa è la fine dell'intervallo di porte. Se il protocollo è ICMP o ICMPv6, questo è il codice. Il valore -1 indica tutti e ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all ICMP/ICMPv 6 i codici.  
Campo obbligatorio: no  
Tipo: integer

## Requisiti
<a name="node-networking-security-group-egress-rule-requirements"></a>

 `security_group`    
L'ID del gruppo di sicurezza a cui aggiungere questa regola.  
Campo obbligatorio: sì  
Tipo: stringa

 `destination_security_group`    
L'ID o il riferimento TOSCA del gruppo di sicurezza di destinazione a cui è consentito il traffico in uscita.  
Required: No  
Tipo: stringa

## Esempio
<a name="node-networking-security-group-egress-rule-example"></a>

```
SampleSecurityGroupEgressRule:
      type: tosca.nodes.AWS.Networking.SecurityGroupEgressRule
      properties:
        ip_protocol: "tcp"
        from_port: 8000
        to_port: 9000
        description: "Egress Rule for sample security group"
        cidr_ipv6: "2600:1f14:3758:ca00::/64"    
      requirements:
        security_group: SampleSecurityGroup001
        destination_security_group: SampleSecurityGroup002
```

# AWS.Rete. SecurityGroupIngressRule
<a name="node-networking-security-group-ingress-rule"></a>

AWS TNB supporta le regole di ingresso dei gruppi di sicurezza per automatizzare il provisioning delle EC2 Amazon Security Group Ingress Rules che possono essere allegate a .Networking. AWS SecurityGroup. Nota che devi fornire un cidr\$1 ip/source\$1security\$1group/source \$1prefix\$1list come fonte per il traffico in ingresso.

## Sintassi
<a name="node-networking-security-group-ingress-rule-syntax"></a>

```
AWS.Networking.SecurityGroupIngressRule
  properties:
    ip\$1protocol: String
    from\$1port: Integer
    to\$1port: Integer
    description: String
    source\$1prefix\$1list: String
    cidr\$1ip: String
    cidr\$1ipv6: String
  requirements:
    security\$1group: String
    source\$1security\$1group: String
```

## Proprietà
<a name="node-networking-security-group-ingress-rule-properties"></a>

 `cidr_ip`    
L'intervallo di indirizzi in formato CIDR. IPv4 È necessario specificare un intervallo CIDR che consenta il traffico in ingresso.  
Required: No  
Tipo: stringa

 `cidr_ipv6`    
L'intervallo di IPv6 indirizzi in formato CIDR, per il traffico in ingresso. È necessario specificare un gruppo di sicurezza di origine (`source_security_group` o `source_prefix_list`) o un intervallo CIDR (`cidr_ip` o `cidr_ipv6`).  
Required: No  
Tipo: stringa

 `description`    
La descrizione di una regola del gruppo di sicurezza in ingresso (in entrata). È possibile utilizzare fino a 255 caratteri per descrivere la regola.  
Required: No  
Tipo: stringa

 `source_prefix_list`    
L'ID dell'elenco di prefissi di un elenco di prefissi gestiti Amazon VPC esistente. Questa è la fonte da cui le istanze del gruppo di nodi associate al gruppo di sicurezza potranno ricevere traffico. Per ulteriori informazioni sugli elenchi di prefissi gestiti, consulta [Managed prefix lists](https://docs.aws.amazon.com/vpc/latest/userguide/managed-prefix-lists.html) nella Amazon *VPC* User Guide.  
Required: No  
Tipo: stringa

 `from_port`    
Se il protocollo è TCP o UDP, questo è l'inizio dell'intervallo di porte. Se il protocollo è ICMP o ICMPv6, questo è il tipo di numero. Il valore -1 indica tutti e ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all ICMP/ICMPv 6 i codici.  
Campo obbligatorio: no  
Tipo: integer

 `ip_protocol`    
Il nome del protocollo IP (tcp, udp, icmp, icmpv6) o il numero di protocollo. Usare -1 per specificare tutti i protocolli. Quando si autorizzano le regole del gruppo di sicurezza, specificando -1 o un numero di protocollo diverso da tcp, udp, icmp o icmpv6 si consente il traffico su tutte le porte, indipendentemente dall'intervallo di porte specificato. Per tcp, udp e icmp, è necessario specificare un intervallo di porte. Per icmpv6, l'intervallo di porte è facoltativo; se si omette l'intervallo di porte, è consentito il traffico per tutti i tipi e codici.  
Campo obbligatorio: sì  
Tipo: stringa

 `to_port`    
Se il protocollo è TCP o UDP, questa è la fine dell'intervallo di porte. Se il protocollo è ICMP o ICMPv6, questo è il codice. Il valore -1 indica tutti e ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all ICMP/ICMPv 6 i codici.  
Campo obbligatorio: no  
Tipo: integer

## Requisiti
<a name="node-networking-security-group-ingress-rule-requirements"></a>

 `security_group`    
L'ID del gruppo di sicurezza a cui aggiungere questa regola.  
Campo obbligatorio: sì  
Tipo: stringa

 `source_security_group`    
L'ID o il riferimento TOSCA del gruppo di sicurezza di origine da cui deve essere consentito il traffico in ingresso.  
Required: No  
Tipo: stringa

## Esempio
<a name="node-networking-security-group-ingress-rule-example"></a>

```
SampleSecurityGroupIngressRule:
      type: tosca.nodes.AWS.Networking.SecurityGroupIngressRule
      properties:
        ip_protocol: "tcp"
        from_port: 8000
        to_port: 9000
        description: "Ingress Rule for free5GC cluster on IPv6"
        cidr_ipv6: "2600:1f14:3758:ca00::/64"    
      requirements:
        security_group: SampleSecurityGroup1
        source_security_group: SampleSecurityGroup2
```

# AWS.Risorsa. Importazione
<a name="node-resource-import"></a>

È possibile importare le seguenti AWS risorse in AWS TNB:
+ VPC
+ Sottorete
+ Tabella di routing
+ Internet Gateway
+ Gruppo di sicurezza

## Sintassi
<a name="node-resource-import-syntax"></a>

```
tosca.nodes.AWS.Resource.Import
  properties:
    resource\$1type: String
    resource\$1id: String
```

## Proprietà
<a name="node-resource-import-properties"></a>

 `resource_type`    
Il tipo di risorsa che viene importata in AWS TNB.  
Campo obbligatorio: no  
Tipo: List

 `resource_id`    
L'ID della risorsa che viene importata in AWS TNB.  
Campo obbligatorio: no  
Tipo: List

## Esempio
<a name="node-resource-import-example"></a>

```
SampleImportedVPC:
  type: tosca.nodes.AWS.Resource.Import
  properties:
    resource_type: "tosca.nodes.AWS.Networking.VPC"
    resource_id: "vpc-123456"
```

# AWS.Networking.eni
<a name="node-eni"></a>

Un'interfaccia di rete è un componente di rete logico in un VPC che rappresenta una scheda di rete virtuale. A un'interfaccia di rete viene assegnato un indirizzo IP automaticamente o manualmente in base alla relativa sottorete. Dopo aver distribuito un' EC2 istanza Amazon in una sottorete, puoi collegare un'interfaccia di rete ad essa oppure scollegare un'interfaccia di rete da quell'istanza Amazon e ricollegarla a un'altra EC2 istanza Amazon EC2 in quella sottorete. L'indice dei dispositivi identifica la posizione nell'ordine degli allegati.

## Sintassi
<a name="node-eni-syntax"></a>

```
tosca.nodes.AWS.Networking.ENI:
  properties:
    device\$1index: Integer
    source\$1dest\$1check: Boolean
    tags: List
  requirements:
    subnet: String
    security\$1groups: List
```

## Proprietà
<a name="node-eni-properties"></a>

 `device_index`    
L'indice del dispositivo deve essere maggiore di zero.  
Campo obbligatorio: sì  
Tipo: integer

 `source_dest_check`    
Indica se l'interfaccia di rete esegue il controllo di origine/destinazione. Un valore di `true` indica che il controllo è abilitato, mentre `false` indica che il controllo è disabilitato.  
Valore consentito: vero, falso  
Impostazione predefinita: true  
Campo obbligatorio: no  
Tipo: Booleano

 `tags`    
I tag da allegare alla risorsa.  
Campo obbligatorio: no  
Tipo: List

## Requisiti
<a name="node-eni-requirements"></a>

 `subnet`    
Un nodo [AWS.Networking.Subnet](node-subnet.md).  
Campo obbligatorio: sì  
Tipo: stringa

 `security_groups`    
Un [AWS.Networking. SecurityGroup](node-networking-security-group.md)nodo.  
Required: No  
Tipo: stringa

## Esempio
<a name="node-eni-example"></a>

```
SampleENI:
  type: tosca.nodes.AWS.Networking.ENI
  properties:
    device_index: 5
    source_dest_check: true
    tags:
      - "Name=SampleVPC"
      - "Environment=Testing" 
  requirements:
    subnet: SampleSubnet
    security_groups:
      - SampleSecurityGroup01
      - SampleSecurityGroup02
```

# AWS.HookExecution
<a name="node-hook-execution"></a>

Un lifecycle hook ti offre la possibilità di eseguire i tuoi script come parte dell'infrastruttura e della creazione di istanze di rete.

## Sintassi
<a name="node-hook-execution-syntax"></a>

```
tosca.nodes.AWS.HookExecution:
  capabilities:
    execution:
      properties:
        type: String
  requirements:
    definition: String
    vpc: String
```

## Funzionalità
<a name="node-hook-execution-capabilities"></a><a name="node_hook_execution"></a>`execution`

Proprietà del motore di esecuzione degli hook che esegue gli script hook.

 `type`    
Il tipo di motore di esecuzione degli hook.  
Required: No  
Tipo: stringa  
Valori possibili: `CODE_BUILD` 

## Requisiti
<a name="node-hook-execution-requirements"></a>

 `definition`    
Un [AWS. HookDefinition.nodo Bash.](node-hook-bash.md)  
Campo obbligatorio: sì  
Tipo: stringa

 `vpc`    
Un nodo [AWS.Networking.vpc.](node-vpc.md)  
Campo obbligatorio: sì  
Tipo: stringa

## Esempio
<a name="node-hook-execution-example"></a>

```
SampleHookExecution:
  type: tosca.nodes.AWS.HookExecution
  requirements:
    definition: SampleHookScript
    vpc: SampleVPC
```

# AWS.Rete. InternetGateway
<a name="node-internet-gateway"></a>

Definisce un nodo AWS Internet Gateway.

## Sintassi
<a name="node-internet-gateway-syntax"></a>

```
tosca.nodes.AWS.Networking.InternetGateway:
  capabilities:
    routing:
      properties:
        dest\$1cidr: String
        ipv6\$1dest\$1cidr: String    
  properties:
    tags: List
    egress\$1only: Boolean
  requirements:
    vpc: String
    route\$1table: String
```

## Funzionalità
<a name="node-internet-gateway-capabilities"></a><a name="node_internet_gateway_routing"></a>`routing`

Proprietà che definiscono la connessione di routing all'interno del VPC. È necessario includere la proprietà `dest_cidr` o`ipv6_dest_cidr`.

 `dest_cidr`    
Il blocco IPv4 CIDR utilizzato per la partita di destinazione. Questa proprietà viene utilizzata per creare un percorso in `RouteTable` e il suo valore viene utilizzato come. `DestinationCidrBlock`  
Obbligatorio: No se hai incluso la `ipv6_dest_cidr` proprietà.  
Tipo: stringa

 `ipv6_dest_cidr`    
Il blocco IPv6 CIDR utilizzato per la partita di destinazione.  
Obbligatorio: No se hai incluso la `dest_cidr` proprietà.  
Tipo: stringa

## Proprietà
<a name="node-internet-gateway-properties"></a>

 `tags`    
I tag da allegare alla risorsa.  
Campo obbligatorio: no  
Tipo: List

 `egress_only`    
Una proprietà IPv6 specifica. Indica se il gateway Internet serve solo per le comunicazioni in uscita o meno. Quando `egress_only` è vero, è necessario definire la `ipv6_dest_cidr` proprietà.  
Campo obbligatorio: no  
Tipo: Booleano

## Requisiti
<a name="node-internet-gateway-requirements"></a>

 `vpc`    
Un nodo [AWS.networking.vpc](node-vpc.md).  
Campo obbligatorio: sì  
Tipo: stringa

 `route_table`    
Un [AWS.Networking. RouteTable](node-route-table.md)nodo.  
Campo obbligatorio: sì  
Tipo: stringa

## Esempio
<a name="node-internet-gateway-example"></a>

```
Free5GCIGW:
  type: tosca.nodes.AWS.Networking.InternetGateway
  properties:
    egress_only: false
  capabilities:
    routing:
      properties:
        dest_cidr: "0.0.0.0/0"
        ipv6_dest_cidr: "::/0"
  requirements:
    route_table: Free5GCRouteTable
    vpc: Free5GCVPC
Free5GCEGW:
  type: tosca.nodes.AWS.Networking.InternetGateway
  properties:
    egress_only: true
  capabilities:
    routing:
      properties:
        ipv6_dest_cidr: "::/0"
  requirements:
    route_table: Free5GCPrivateRouteTable
    vpc: Free5GCVPC
```

# AWS.Rete. RouteTable
<a name="node-route-table"></a>

Una tabella di routing contiene un insieme di regole, chiamate route, che determinano dove viene diretto il traffico di rete proveniente dalle sottoreti all'interno del VPC o del gateway. È necessario associare una tabella di routing a un VPC.

## Sintassi
<a name="node-route-table-syntax"></a>

```
tosca.nodes.AWS.Networking.RouteTable:
  properties:
    tags: List
  requirements:
    vpc: String
```

## Proprietà
<a name="node-route-table-properties"></a>

 `tags`    
Tag da allegare alla risorsa.  
Campo obbligatorio: no  
Tipo: List

## Requisiti
<a name="node-route-table-requirements"></a>

 `vpc`    
Un nodo [AWS.networking.vpc](node-vpc.md).  
Campo obbligatorio: sì  
Tipo: stringa

## Esempio
<a name="node-route-table-example"></a>

```
SampleRouteTable:
  type: tosca.nodes.AWS.Networking.RouteTable
  properties: 
    tags:
      - "Name=SampleVPC"
      - "Environment=Testing"
  requirements:
    vpc: SampleVPC
```

# AWS.Networking.Subnet
<a name="node-subnet"></a>

Una sottorete è un intervallo di indirizzi IP nel tuo VPC e deve risiedere interamente all'interno di una zona di disponibilità. È necessario specificare un VPC, un blocco CIDR, una zona di disponibilità e una tabella di routing per la sottorete. È inoltre necessario definire se la sottorete è privata o pubblica.

## Sintassi
<a name="node-subnet-syntax"></a>

```
tosca.nodes.AWS.Networking.Subnet:
  properties:
    type: String
    availability\$1zone: String
    cidr\$1block: String
    ipv6\$1cidr\$1block: String
    ipv6\$1cidr\$1block\$1suffix: String        
    outpost\$1arn: String
    tags: List
  requirements:
    vpc: String
    route\$1table: String
```

## Proprietà
<a name="node-subnet-properties"></a>

 `type`    
Indica se le istanze avviate in questa sottorete ricevono un indirizzo pubblico. IPv4  
Campo obbligatorio: sì  
Tipo: stringa  
Valori possibili: `PUBLIC` \$1 `PRIVATE`

 `availability_zone`    
La zona di disponibilità per la sottorete. Questo campo supporta le zone di AWS disponibilità all'interno di una AWS regione, ad esempio `us-west-2` (Stati Uniti occidentali (Oregon)). Supporta anche AWS Local Zones all'interno della Availability Zone, ad esempio`us-west-2-lax-1a`.  
Campo obbligatorio: sì  
Tipo: stringa

 `cidr_block`    
Il blocco CIDR per la sottorete.  
Required: No  
Tipo: stringa

 `ipv6_cidr_block`    
Il blocco CIDR utilizzato per creare la sottorete. IPv6 Se includi questa proprietà, non includerla. `ipv6_cidr_block_suffix`  
Required: No  
Tipo: stringa

 `ipv6_cidr_block_suffix`    
Il suffisso esadecimale a 2 cifre del blocco IPv6 CIDR per la sottorete creata su Amazon VPC. Utilizza il seguente formato: `2-digit hexadecimal::/subnetMask`  
Se includi questa proprietà, non includerla. `ipv6_cidr_block`  
Required: No  
Tipo: stringa

 `outpost_arn`    
L'ARN in AWS Outposts cui verrà creata la sottorete. Aggiungi questa proprietà al modello NSD se desideri avviare nodi autogestiti di Amazon EKS su. AWS Outposts Per ulteriori informazioni, consulta [Amazon EKS AWS Outposts nella](https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts.html) *Guida per l'utente di Amazon EKS*.  
Se aggiungi questa proprietà al modello NSD, devi impostare il valore della `availability_zone` proprietà nella zona di disponibilità di AWS Outposts.  
Required: No  
Tipo: stringa

 `tags`    
I tag da allegare alla risorsa.  
Campo obbligatorio: no  
Tipo: List

## Requisiti
<a name="node-subnet-requirements"></a>

 `vpc`    
Un nodo [AWS.networking.vpc](node-vpc.md).  
Campo obbligatorio: sì  
Tipo: stringa

 `route_table`    
Un [AWS.Networking. RouteTable](node-route-table.md)nodo.  
Campo obbligatorio: sì  
Tipo: stringa

## Esempio
<a name="node-subnet-example"></a>

```
SampleSubnet01:
  type: tosca.nodes.AWS.Networking.Subnet
  properties:
    type: "PUBLIC"
    availability_zone: "us-east-1a"
    cidr_block: "10.100.50.0/24"
    ipv6_cidr_block_suffix: "aa::/64"
    outpost_arn: "arn:aws:outposts:region:accountId:outpost/op-11223344EXAMPLE"
    tags:
      - "Name=SampleVPC"
      - "Environment=Testing"
  requirements:
    vpc: SampleVPC
    route_table: SampleRouteTable
         
SampleSubnet02:
  type: tosca.nodes.AWS.Networking.Subnet
  properties:
    type: "PUBLIC"
    availability_zone: "us-west-2b"
    cidr_block: "10.100.50.0/24"
    ipv6_cidr_block: "2600:1f14:3758:ca00::/64"
  requirements:
    route_table: SampleRouteTable
    vpc: SampleVPC
```

# AWS.Implementazione. VNFDeployment
<a name="node-vnf-deployment"></a>

Le implementazioni NF sono modellate fornendo l'infrastruttura e l'applicazione ad essa associate. L'attributo [cluster](#node_vnf_deployment_cluster) specifica il cluster EKS su cui ospitare il tuo. NFs L'attributo [vnfs](#node_vnf_deployment_vnfs) specifica le funzioni di rete per la distribuzione. Puoi anche fornire operazioni opzionali di lifecycle hook di tipo [pre\$1create e post\$1create](#node_vnf_deployment_pre_create) [per eseguire istruzioni specifiche per la tua implementazione, ad esempio richiamare un'](#node_vnf_deployment_post_create)API del sistema di gestione dell'inventario.

## Sintassi
<a name="node-vnf-deployment-syntax"></a>

```
tosca.nodes.AWS.Deployment.VNFDeployment:
  requirements:
    deployment: String
    cluster: String
    vnfs: List
  interfaces:
    Hook:
      pre\$1create: String
      post\$1create: String
```

## Requisiti
<a name="node-vnf-deployment-requirements"></a>

 `deployment`    
[Un .Deployment.AWS VNFDeployment](node-vnf.md)nodo.  
Required: No  
Tipo: stringa

 `cluster`    
Un nodo [AWS.compute.eks.](node-eks.md)  
Campo obbligatorio: sì  
Tipo: stringa

 `vnfs`    
[Un AWS nodo .VNF.](node-vnf.md)  
Campo obbligatorio: sì  
Tipo: stringa

## Interfacce
<a name="node-vnf-deployment-interfaces"></a>

### Ganci
<a name="node-vnf-deployment-hooks"></a>

Definisce la fase in cui vengono eseguiti i lifecycle hook.

 `pre_create`    
[Un.AWS HookExecution](node-hook-execution.md)nodo. Questo hook viene eseguito prima della distribuzione del `VNFDeployment` nodo.  
Required: No  
Tipo: stringa

 `post_create`    
[Un AWS. HookExecution](node-hook-execution.md)nodo. Questo hook viene eseguito dopo la distribuzione del `VNFDeployment` nodo.  
Required: No  
Tipo: stringa

## Esempio
<a name="node-vnf-deployment-example"></a>

```
SampleHelmDeploy:
  type: tosca.nodes.AWS.Deployment.VNFDeployment
  requirements:
    deployment: SampleHelmDeploy2
    cluster: SampleEKS
    vnfs:
      - vnf.SampleVNF
  interfaces:
    Hook:
      pre_create: SampleHook
```

# AWS.Networking.vpc
<a name="node-vpc"></a>

È necessario specificare un blocco CIDR per il cloud privato virtuale (VPC).

## Sintassi
<a name="node-vpc-syntax"></a>

```
tosca.nodes.AWS.Networking.VPC:
  properties:
    cidr\$1block: String
    ipv6\$1cidr\$1block: String        
    dns\$1support: String
    tags: List
```

## Proprietà
<a name="node-vpc-properties"></a>

 `cidr_block`    
L'intervallo di IPv4 rete per il VPC, in notazione CIDR.  
Campo obbligatorio: sì  
Tipo: stringa

 `ipv6_cidr_block`    
Il blocco IPv6 CIDR utilizzato per creare il VPC.  
Valore consentito: `AMAZON_PROVIDED`  
Required: No  
Tipo: stringa

 `dns_support`    
Indica se le istanze avviate nel VPC ricevono nomi host DNS.  
Campo obbligatorio: no  
Tipo: Booleano  
Impostazione predefinita: `false` 

 `tags`    
Tag da allegare alla risorsa.  
Campo obbligatorio: no  
Tipo: List

## Esempio
<a name="node-vpc-example"></a>

```
SampleVPC:
  type: tosca.nodes.AWS.Networking.VPC
  properties:
    cidr_block: "10.100.0.0/16"
    ipv6_cidr_block: "AMAZON_PROVIDED"
    dns_support: true
    tags:
      - "Name=SampleVPC"
      - "Environment=Testing"
```

# AWS.Rete. NATGateway
<a name="node-nat-gateway"></a>

È possibile definire un nodo Gateway NAT pubblico o privato su una sottorete. Per un gateway pubblico, se non fornisci un ID di allocazione IP elastico, AWS TNB assegnerà un IP elastico per il tuo account e lo assocerà al gateway.

## Sintassi
<a name="node-nat-gateway-syntax"></a>

```
tosca.nodes.AWS.Networking.NATGateway:
  requirements:
    subnet: String
    internet\$1gateway: String
  properties:
    type: String
    eip\$1allocation\$1id: String
    tags: List
```

## Proprietà
<a name="node-nat-gateway-requirements"></a>

 `subnet`    
Il riferimento al nodo [AWS.Networking.Subnet.](https://docs.aws.amazon.com/tnb/latest/ug/node-subnet.html)  
Campo obbligatorio: sì  
Tipo: stringa

 `internet_gateway`    
Il [AWS file .Networking. InternetGateway](https://docs.aws.amazon.com/tnb/latest/ug/node-internet-gateway.html)riferimento al nodo.  
Campo obbligatorio: sì  
Tipo: stringa

## Proprietà
<a name="node-nat-gateway-properties"></a>

 `type`    
Indica se il gateway è pubblico o privato.  
Valore consentito:`PUBLIC`, `PRIVATE`  
Campo obbligatorio: sì  
Tipo: stringa

 `eip_allocation_id`    
L'ID che rappresenta l'allocazione dell'indirizzo IP elastico.  
Required: No  
Tipo: stringa

 `tags`    
Tag da allegare alla risorsa.  
Campo obbligatorio: no  
Tipo: List

## Esempio
<a name="node-nat-gateway-example"></a>

```
Free5GCNatGateway01:
  type: tosca.nodes.AWS.Networking.NATGateway
    requirements:
       subnet: Free5GCSubnet01
       internet_gateway: Free5GCIGW
    properties:
       type: PUBLIC
       eip_allocation_id: eipalloc-12345
```

# AWS.Rete. Percorso
<a name="node-route"></a>

È possibile definire un nodo di routing che associ la route di destinazione al NAT Gateway come risorsa di destinazione e aggiunga la route alla tabella di route associata.

## Sintassi
<a name="node-route-syntax"></a>

```
tosca.nodes.AWS.Networking.Route:
  properties:
    dest\$1cidr\$1blocks: List          
  requirements:
    nat\$1gateway: String
    route\$1table: String
```

## Proprietà
<a name="node-route-properties"></a>

 `dest_cidr_blocks`    
L'elenco dei IPv4 percorsi di destinazione verso la risorsa di destinazione.  
Campo obbligatorio: sì  
Tipo: List  
Tipo di membro: String

## Requisiti
<a name="node-route-requirements"></a>

 `nat_gateway`    
L'[AWS.Networking. NATGateway](https://docs.aws.amazon.com/tnb/latest/ug/node-nat-gateway.html)riferimento al nodo.  
Campo obbligatorio: sì  
Tipo: stringa

 `route_table`    
L'[AWS.Networking. RouteTable](https://docs.aws.amazon.com/tnb/latest/ug/node-route-table.html)riferimento al nodo.  
Campo obbligatorio: sì  
Tipo: stringa

## Esempio
<a name="node-route-example"></a>

```
Free5GCRoute:
  type: tosca.nodes.AWS.Networking.Route
  properties: 
    dest_cidr_blocks: 
      - 0.0.0.0/0
      - 10.0.0.0/28    
  requirements:
    nat_gateway: Free5GCNatGateway01
    route_table: Free5GCRouteTable
```

# AWS.Negozio. SSMParameters
<a name="node-ssm"></a>

È possibile creare parametri SSM tramite TNB. AWS I parametri SSM che crei vengono creati in SSM e preceduti dall'ID dell'istanza di rete TNB. AWS Ciò impedisce che i valori dei parametri vengano sostituiti quando più istanze vengono istanziate e aggiornate utilizzando lo stesso modello NSD.

## Sintassi
<a name="node-ssm-syntax"></a>

```
tosca.nodes.AWS.Store.SSMParameters
  properties:
    parameters:
      name: String
      value: String         
    tags: List
```

## Proprietà
<a name="node-ssm-properties"></a>Parametri

 `name`    
Il nome della proprietà ssm. Utilizza il seguente formato: `^[a-zA-Z0-9]+[a-zA-Z0-9\-\_]*[a-zA-Z0-9]+$`  
Il nome di ogni parametro deve contenere meno di 256 caratteri.  
Campo obbligatorio: sì  
Tipo: stringa

 `value`    
Il valore della proprietà ssm. Utilizza uno dei seguenti formati:  
+ Per valori senza riferimenti: `^[a-zA-Z0-9]+[a-zA-Z0-9\-\_]*[a-zA-Z0-9]+$`
+ Per riferimenti statici: `^\$\{[a-zA-Z0-9]+\.(properties|capabilities|requirements)(\.([a-zA-Z0-9\-_]+))+\}$`
+ Per riferimenti dinamici: `^\$\{[a-zA-Z0-9]+\.(name|id|arn)\}$`
Il valore di ogni parametro deve essere inferiore a 4 KB.  
Campo obbligatorio: sì  
Tipo: stringa

 `tags`    
I tag che puoi allegare a una proprietà SSM.  
Campo obbligatorio: no  
Tipo: List

## Esempio
<a name="node-ssm-example"></a>

```
SampleSSM
    type: tosca.nodes.AWS.Store.SSMParameters
    properties:
        parameters:
            - name: "Name1"
              value: "Value1"
            - name: "EKS_VERSION"
              value: "${SampleEKS.properties.version}"
            - name: "VPC_ID"
              value: "${SampleVPC.id}
            - name: "REGION"
              value: "${AWS::Region}
        tags:
            - "tagKey=tagValue"
```