Creazione di un cluster Amazon MSK - Amazon Managed Streaming per Apache Kafka

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

Creazione di un cluster Amazon MSK

Importante

Non sarà possibile modificare il VPC per un cluster Amazon MSK dopo aver creato il cluster.

Prima di poter creare un cluster Amazon MSK, è necessario disporre di un Amazon Virtual Private Cloud (VPC) e configurare le sottoreti all'interno di tale cloud VPC.

Sono necessarie due sottoreti in due diverse zone di disponibilità nella regione Stati Uniti occidentali (California settentrionale). In tutte le altre Regioni in cui Amazon MSK è disponibile, è possibile specificare due o tre sottoreti. Le sottoreti devono trovarsi tutte in zone di disponibilità differenti. Quando crei un cluster, Amazon MSK distribuisce i nodi broker in modo uniforme sulle sottoreti specificate.

Tipi di broker

Quando crei un cluster Amazon MSK, specificare il tipo di broker che desideri assegnare. Amazon MSK supporta i seguenti tipi di broker:

  • kafka.t3.small

  • kafka.m5.large, kafka.m5.xlarge, kafka.m5.2xlarge, kafka.m5.8xlarge, kafka.m5.12xlarge, kafka.m5.12xlarge, kafka.m5.16xlarge, kafka.m5.24xlarge

Le prestazioni di throughput di base dei broker M5 sono superiori rispetto ai broker T3 e sono consigliati per carichi di lavoro di produzione. È anche possibile che il numero di partizioni per broker dei broker M5 sia superiore rispetto ai broker T3. Utilizza i broker M5 se esegui carichi di lavoro di livello di produzione più grandi o se è richiesto un numero più elevato di partizioni. Per ulteriori informazioni sui tipi di istanza M5, consulta Istanze M5 di Amazon EC2.

I broker T3 possono utilizzare i crediti della CPU per incrementare temporaneamente le prestazioni. Utilizza i broker T3 per lo sviluppo a basso costo, se stai provando carichi di lavoro di streaming di piccole e medie dimensioni o se disponi di carichi di lavoro di streaming a throughput basso con picchi temporanei di throughput. Ti consigliamo di eseguire un proof-of-concept test per determinare se i broker T3 sono sufficienti per la produzione o il carico di lavoro critico. Per ulteriori informazioni sui tipi di istanza T3, consulta Istanze Amazon EC2T3.

Per ulteriori informazioni su come scegliere i tipi di broker, consultaBest practice.

Creazione di un cluster utilizzando AWS Management Console

  1. Apri la console Amazon MSK all'indirizzo. https://console.aws.amazon.com/msk/

  2. Scegli Crea cluster.

  3. Specificare un nome per il cluster.

  4. Nell'elenco VPC scegliere il VPC che si desidera utilizzare per il cluster. Puoi anche specificare quale versione di Apache Kafka desideri che Amazon MSK utilizzi per creare il cluster. La versione 2.8.1 è quella predefinita mostrata nella console ed è la versione consigliata.

  5. Se si utilizza la regione Stati Uniti occidentali (California settentrionale), specificare due sottoreti. In altre Regioni in cui Amazon MSK è disponibile, è possibile specificare due o tre sottoreti. Le sottoreti specificate devono trovarsi in zone di disponibilità differenti.

  6. Scegliere il tipo di configurazione desiderato. Per informazioni sulle configurazioni Amazon MSK, consulta. Configurazione Amazon MSK

  7. Specificare il tipo e il numero di broker che devono essere creati da MSK in ogni zona di disponibilità. Il minimo è un broker per zona di disponibilità e il massimo è di 30 broker per cluster.

  8. (Facoltativo) Assegnare tag al cluster. I tag sono opzionali. Per ulteriori informazioni, consulta Tagging di un cluster Amazon MSK.

  9. È possibile regolare il volume di storage per broker. Dopo aver creato il cluster, è possibile aumentare il volume di storage per broker ma non ridurlo.

  10. Scegliere le impostazioni desiderate per la crittografia dei dati in transito. Per impostazione predefinita, Amazon MSK crittografa i dati durante il transito tra broker all'interno di un cluster. Se non si desidera crittografare i dati mentre si spostano tra i broker, deselezionare la casella di controllo etichettata Enable encryption within the cluster (Abilita crittografia all'interno del cluster).

  11. Scegliere una delle tre impostazioni per la crittografia dei dati mentre si spostano tra client e broker. Per ulteriori informazioni, consulta Crittografia dei dati in transito.

  12. Scegli il tipo di chiave KMS che desideri utilizzare per crittografare i dati a riposo. Per ulteriori informazioni, consulta Crittografia dei dati inattivi.

  13. Se si desidera autenticare l'identità dei client, scegliere Enable TLS client authentication (Abilita autenticazione client TLS) selezionando la casella accanto a esso. Per ulteriori informazioni sull'autenticazione, consulta Autenticazione TLS reciproca.

  14. Scegliere il livello di monitoraggio desiderato. Questo determina il set di parametri che si ottiene. Per ulteriori informazioni, consulta Monitoraggio di un cluster Amazon MSK.

  15. (Facoltativo) Scegli Impostazioni avanzate, quindi scegli Personalizza impostazioni. È possibile specificare uno o più gruppi di sicurezza a cui si desidera concedere l'accesso al cluster (ad esempio, i gruppi di sicurezza dei computer client). Se specifichi gruppi di sicurezza condivisi con te, devi verificare di disporre delle autorizzazioni per gli stessi. Nello specifico, è necessaria l'autorizzazione ec2:DescribeSecurityGroups. Per un esempio, vedi Amazon EC2: consente di gestire i gruppi di sicurezza Amazon EC2 associati a uno specifico VPC, a livello di programmazione e nella console.

  16. Scegli Crea cluster.

  17. Controlla lo stato del cluster nella pagina di riepilogo del cluster. Lo stato passa da Creating a Active man mano che Amazon MSK effettua il provisioning del cluster. Quando lo stato è Attivo, è possibile connettersi al cluster. Per ulteriori informazioni sullo stato del cluster, consultaStati dei cluster.

Creazione di un cluster utilizzando AWS CLI

  1. Copiare il JSON seguente e salvarlo in un file. Assegnare un nome al file brokernodegroupinfo.json. Sostituire gli ID di sottorete nel JSON con i valori corrispondenti alle sottoreti. Le sottoreti devono trovarsi in zone di disponibilità differenti. Sostituire "Security-Group-ID" con l'ID di uno o più gruppi di sicurezza del client VPC. I client associati a questi gruppi di sicurezza ottengono l'accesso al cluster. Se specifichi gruppi di sicurezza condivisi con te, devi verificare di disporre delle autorizzazioni per gli stessi. Nello specifico, è necessaria l'autorizzazione ec2:DescribeSecurityGroups. Per un esempio, vedi Amazon EC2: consente di gestire i gruppi di sicurezza Amazon EC2 associati a uno specifico VPC, a livello di programmazione e nella console. Infine, salvare il file JSON aggiornato sul computer in cui è stato installato AWS CLI.

    { "InstanceType": "kafka.m5.large", "ClientSubnets": [ "Subnet-1-ID", "Subnet-2-ID" ], "SecurityGroups": [ "Security-Group-ID" ] }
    Importante

    Se si utilizza la Regione Stati Uniti occidentali (California settentrionale), specificare esattamente due sottoreti. Per altre Regioni in cui Amazon MSK è disponibile, è possibile specificare due o tre sottoreti. Le sottoreti specificate devono trovarsi in zone di disponibilità distinte. Quando crei un cluster, Amazon MSK distribuisce i nodi broker in modo uniforme sulle sottoreti specificate.

  2. Eseguire il seguente comando AWS CLI nella directory in cui è stato salvato il file brokernodegroupinfo.json, sostituendo "Your-Cluster-Name" con un nome a scelta. Per "Monitoring-Level", è possibile specificare uno dei seguenti tre valori: DEFAULT, PER_BROKER o PER_TOPIC_PER_BROKER. Per informazioni su questi tre diversi livelli di monitoraggio, consulta Monitoraggio di un cluster Amazon MSK. Il parametro enhanced-monitoring è facoltativo. Se non viene specificato nel comando create-cluster, si ottiene il livello di monitoraggio DEFAULT.

    aws kafka create-cluster --cluster-name "Your-Cluster-Name" --broker-node-group-info file://brokernodegroupinfo.json --kafka-version "2.8.1" --number-of-broker-nodes 3 --enhanced-monitoring "Monitoring-Level"

    L'output del comando è simile al JSON seguente:

    { "ClusterArn": "...", "ClusterName": "AWSKafkaTutorialCluster", "State": "CREATING" }
    Nota

    Il comando create-cluster potrebbe restituire un errore che indica che una o più sottoreti appartengono a zone di disponibilità non supportate. Quando ciò si verifica, l'errore indica quali zone di disponibilità non sono supportate. Crea sottoreti che non utilizzano le zone di disponibilità non supportate e riprova a eseguire nuovamente il comando create-cluster.

  3. Salvare il valore della chiave ClusterArn perché è necessario per eseguire altre operazioni nel cluster.

  4. Per controllare il cluster, eseguire il comando della seguenteSTATE. Il STATE valore cambia da CREATING a ACTIVE quando Amazon MSK effettua il provisioning del cluster. Quando lo stato èACTIVE, puoi connetterti al cluster. Per ulteriori informazioni sullo stato del cluster, consultaStati dei cluster.

    aws kafka describe-cluster --cluster-arn <your-cluster-ARN>

Creazione di un cluster con una configurazione Amazon MSK personalizzata utilizzando AWS CLI

Per informazioni sulle configurazioni Amazon MSK personalizzate e su come crearle, consulta. Configurazione Amazon MSK

  1. Salva il JSON seguente in un file, sostituendo configuration-arn con l'ARN della configurazione che desideri utilizzare per creare il cluster.

    { "Arn": configuration-arn, "Revision": 1 }
  2. Esegui il comando create-cluster e utilizza l'opzione configuration-info per puntare al file JSON salvato nella fase precedente. Di seguito è riportato un esempio.

    aws kafka create-cluster --cluster-name ExampleClusterName --broker-node-group-info file://brokernodegroupinfo.json --kafka-version "2.8.1" --number-of-broker-nodes 3 --enhanced-monitoring PER_TOPIC_PER_BROKER --configuration-info file://configuration.json

    Di seguito è riportato un esempio di una risposta corretta dopo l'esecuzione di questo comando.

    { "ClusterArn": "arn:aws:kafka:us-east-1:123456789012:cluster/CustomConfigExampleCluster/abcd1234-abcd-dcba-4321-a1b2abcd9f9f-2", "ClusterName": "CustomConfigExampleCluster", "State": "CREATING" }

Creazione di un cluster mediante l'API

Per creare un cluster utilizzando l'API, vedere CreateCluster.