Beispiele für die Verwendung der AWS CLI mit Amazon MSK
Die folgenden Codebeispiele zeigen, wie Sie Aktionen durchführen und gängige Szenarien implementieren, indem Sie die AWS Command Line Interface mit Amazon MSK nutzen.
Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Während Aktionen Ihnen zeigen, wie Sie einzelne Service-Funktionen aufrufen, können Sie Aktionen im Kontext der zugehörigen Szenarien anzeigen.
Jedes Beispiel enthält einen Link zum vollständigen Quellcode, wo Sie Anleitungen zum Einrichten und Ausführen des Codes im Kontext finden.
Themen
Aktionen
Das folgende Codebeispiel zeigt, wie create-cluster verwendet wird.
- AWS CLI
-
So erstellen Sie einen Amazon-MSK-Cluster
Im folgenden Beispiel für
create-clusterwird ein MSK-Cluster mit dem NamenMessagingClustermit drei Broker-Knoten erstellt. Eine JSON-Datei mit dem Namenbrokernodegroupinfo.jsongibt die drei Subnetze an, über die Amazon MSK die Broker-Knoten verteilen soll. In diesem Beispiel wird die Überwachungsebene nicht angegeben, sodass der Cluster die EbeneDEFAULTerhält.aws kafka create-cluster \ --cluster-name"MessagingCluster"\ --broker-node-group-infofile://brokernodegroupinfo.json\ --kafka-version"2.2.1"\ --number-of-broker-nodes3Inhalt von
brokernodegroupinfo.json:{ "InstanceType": "kafka.m5.xlarge", "BrokerAZDistribution": "DEFAULT", "ClientSubnets": [ "subnet-0123456789111abcd", "subnet-0123456789222abcd", "subnet-0123456789333abcd" ] }Ausgabe:
{ "ClusterArn": "arn:aws:kafka:us-west-2:123456789012:cluster/MessagingCluster/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE-2", "ClusterName": "MessagingCluster", "State": "CREATING" }Weitere Informationen finden Sie unter Erstellen eines Amazon-MSK-Clusters in Amazon Managed Streaming für Apache Kafka.
-
API-Details finden Sie unter CreateCluster
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie create-configuration verwendet wird.
- AWS CLI
-
So erstellen Sie eine benutzerdefinierte Amazon-MSK-Konfiguration
Im folgenden Beispiel für
create-configurationwird eine benutzerdefinierte MSK-Konfiguration mit den Servereigenschaften erstellt, die in der Eingabedatei angegeben sind.aws kafka create-configuration \ --name"CustomConfiguration"\ --description"Topic autocreation enabled; Apache ZooKeeper timeout 2000 ms; Log rolling 604800000 ms."\ --kafka-versions"2.2.1"\ --server-propertiesfile://configuration.txtInhalt von
configuration.txt:auto.create.topics.enable = true zookeeper.connection.timeout.ms = 2000 log.roll.ms = 604800000Mit diesem Befehl wird keine Ausgabe zurückgegeben. Ausgabe:
{ "Arn": "arn:aws:kafka:us-west-2:123456789012:configuration/CustomConfiguration/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE-2", "CreationTime": "2019-10-09T15:26:05.548Z", "LatestRevision": { "CreationTime": "2019-10-09T15:26:05.548Z", "Description": "Topic autocreation enabled; Apache ZooKeeper timeout 2000 ms; Log rolling 604800000 ms.", "Revision": 1 }, "Name": "CustomConfiguration" }Weitere Informationen finden Sie unter Amazon-MSK-Konfigurationsvorgänge im Entwicklerhandbuch zu Amazon Managed Streaming für Apache Kafka.
-
API-Details finden Sie unter CreateConfiguration
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie describe-cluster verwendet wird.
- AWS CLI
-
So beschreiben Sie einen Cluster
Mit dem folgenden Beispiel für
describe-clusterwird ein Amazon-MSK-Cluster beschrieben.aws kafka describe-cluster \ --cluster-arnarn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5Ausgabe:
{ "ClusterInfo": { "BrokerNodeGroupInfo": { "BrokerAZDistribution": "DEFAULT", "ClientSubnets": [ "subnet-cbfff283", "subnet-6746046b" ], "InstanceType": "kafka.m5.large", "SecurityGroups": [ "sg-f839b688" ], "StorageInfo": { "EbsStorageInfo": { "VolumeSize": 100 } } }, "ClusterArn": "arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5", "ClusterName": "demo-cluster-1", "CreationTime": "2020-07-09T02:31:36.223000+00:00", "CurrentBrokerSoftwareInfo": { "KafkaVersion": "2.2.1" }, "CurrentVersion": "K3AEGXETSR30VB", "EncryptionInfo": { "EncryptionAtRest": { "DataVolumeKMSKeyId": "arn:aws:kms:us-east-1:123456789012:key/a7ca56d5-0768-4b64-a670-339a9fbef81c" }, "EncryptionInTransit": { "ClientBroker": "TLS_PLAINTEXT", "InCluster": true } }, "EnhancedMonitoring": "DEFAULT", "OpenMonitoring": { "Prometheus": { "JmxExporter": { "EnabledInBroker": false }, "NodeExporter": { "EnabledInBroker": false } } }, "NumberOfBrokerNodes": 2, "State": "ACTIVE", "Tags": {}, "ZookeeperConnectString": "z-2.demo-cluster-1.xuy0sb.c5.kafka.us-east-1.amazonaws.com:2181,z-1.demo-cluster-1.xuy0sb.c5.kafka.us-east-1.amazonaws.com:2181,z-3.demo-cluster-1.xuy0sb.c5.kafka.us-east-1.amazonaws.com:2181" } }Weitere Informationen finden Sie unter Auflisten von Amazon-MSK-Clustern im Entwicklerhandbuch zu Amazon Managed Streaming für Apache Kafka.
-
API-Details finden Sie unter DescribeCluster
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie get-bootstrap-brokers verwendet wird.
- AWS CLI
-
So rufen Sie Bootstrap-Broker ab
Im folgenden Beispiel für
get-bootstrap-brokerswerden die Bootstrap-Brokerinformationen für einen Amazon-MSK-Cluster abgerufen.aws kafka get-bootstrap-brokers \ --cluster-arnarn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5Ausgabe:
{ "BootstrapBrokerString": "b-1.demo-cluster-1.xuy0sb.c5.kafka.us-east-1.amazonaws.com:9092,b-2.demo-cluster-1.xuy0sb.c5.kafka.us-east-1.amazonaws.com:9092", "BootstrapBrokerStringTls": "b-1.demo-cluster-1.xuy0sb.c5.kafka.us-east-1.amazonaws.com:9094,b-2.demo-cluster-1.xuy0sb.c5.kafka.us-east-1.amazonaws.com:9094" }Weitere Informationen finden Sie unter Abrufen der Bootstrap-Broker im Entwicklerhandbuch zu Amazon Managed Streaming für Apache Kafka.
-
API-Details finden Sie unter GetBootstrapBrokers
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-clusters verwendet wird.
- AWS CLI
-
So listen Sie die verfügbaren Cluster auf
Im folgenden Beispiel für
list-clusterswerden die Amazon-MSK-Cluster in Ihrem AWS-Konto aufgeführt.aws kafka list-clustersAusgabe:
{ "ClusterInfoList": [ { "BrokerNodeGroupInfo": { "BrokerAZDistribution": "DEFAULT", "ClientSubnets": [ "subnet-cbfff283", "subnet-6746046b" ], "InstanceType": "kafka.m5.large", "SecurityGroups": [ "sg-f839b688" ], "StorageInfo": { "EbsStorageInfo": { "VolumeSize": 100 } } }, "ClusterArn": "arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5", "ClusterName": "demo-cluster-1", "CreationTime": "2020-07-09T02:31:36.223000+00:00", "CurrentBrokerSoftwareInfo": { "KafkaVersion": "2.2.1" }, "CurrentVersion": "K3AEGXETSR30VB", "EncryptionInfo": { "EncryptionAtRest": { "DataVolumeKMSKeyId": "arn:aws:kms:us-east-1:123456789012:key/a7ca56d5-0768-4b64-a670-339a9fbef81c" }, "EncryptionInTransit": { "ClientBroker": "TLS_PLAINTEXT", "InCluster": true } }, "EnhancedMonitoring": "DEFAULT", "OpenMonitoring": { "Prometheus": { "JmxExporter": { "EnabledInBroker": false }, "NodeExporter": { "EnabledInBroker": false } } }, "NumberOfBrokerNodes": 2, "State": "ACTIVE", "Tags": {}, "ZookeeperConnectString": "z-2.demo-cluster-1.xuy0sb.c5.kafka.us-east-1.amazonaws.com:2181,z-1.demo-cluster-1.xuy0sb.c5.kafka.us-east-1.amazonaws.com:2181,z-3.demo-cluster-1.xuy0sb.c5.kafka.us-east-1.amazonaws.com:2181" } ] }Weitere Informationen finden Sie unter Auflisten von Amazon-MSK-Clustern im Entwicklerhandbuch zu Amazon Managed Streaming für Apache Kafka.
-
API-Details finden Sie unter ListClusters
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie update-broker-storage verwendet wird.
- AWS CLI
-
So aktualisieren Sie den EBS-Speicher für Broker
Im folgenden Beispiel für
update-broker-storagewird die Menge des EBS-Speichers für alle Broker im Cluster aktualisiert. Amazon MSK legt den Zielspeicherbetrag für jeden Broker auf den im Beispiel angegebenen Betrag fest. Sie können die aktuelle Version des Clusters abrufen, indem Sie den Cluster beschreiben oder alle Cluster auflisten.aws kafka update-broker-storage \ --cluster-arn"arn:aws:kafka:us-west-2:123456789012:cluster/MessagingCluster/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE-2"\ --current-version"K21V3IB1VIZYYH"\ --target-broker-ebs-volume-info"KafkaBrokerNodeId=ALL,VolumeSizeGB=1100"Die Ausgabe gibt einen ARN für diesen
update-broker-storage-Vorgang zurück. Um festzustellen, ob dieser Vorgang abgeschlossen ist, verwenden Sie den Befehldescribe-cluster-operationmit diesem ARN als Eingabe.{ "ClusterArn": "arn:aws:kafka:us-west-2:123456789012:cluster/MessagingCluster/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE-2", "ClusterOperationArn": "arn:aws:kafka:us-west-2:123456789012:cluster-operation/V123450123/a1b2c3d4-1234-abcd-cdef-22222EXAMPLE-2/a1b2c3d4-abcd-1234-bcde-33333EXAMPLE" }Weitere Informationen finden Sie unter EBS-Speicher für Broker aktualisieren im Entwicklerhandbuch zu Amazon Managed Streaming for Apache Kafka.
-
API-Details zur API finden Sie unter UpdateBrokerStorage
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie update-cluster-configuration verwendet wird.
- AWS CLI
-
So aktualisieren Sie die Konfiguration eines Amazon-MSK-Clusters
Im folgenden Beispiel für
update-cluster-configurationwird die Konfiguration des angegebenen vorhandenen MSK-Clusters aktualisiert. Es verwendet eine benutzerdefinierte MSK-Konfiguration.aws kafka update-cluster-configuration \ --cluster-arn"arn:aws:kafka:us-west-2:123456789012:cluster/MessagingCluster/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE-2"\ --configuration-infofile://configuration-info.json\ --current-version"K21V3IB1VIZYYH"Inhalt von
configuration-info.json:{ "Arn": "arn:aws:kafka:us-west-2:123456789012:configuration/CustomConfiguration/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE-2", "Revision": 1 }Die Ausgabe gibt einen ARN für diesen
update-cluster-configuration-Vorgang zurück. Um festzustellen, ob dieser Vorgang abgeschlossen ist, verwenden Sie den Befehldescribe-cluster-operationmit diesem ARN als Eingabe.{ "ClusterArn": "arn:aws:kafka:us-west-2:123456789012:cluster/MessagingCluster/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE-2", "ClusterOperationArn": "arn:aws:kafka:us-west-2:123456789012:cluster-operation/V123450123/a1b2c3d4-1234-abcd-cdef-22222EXAMPLE-2/a1b2c3d4-abcd-1234-bcde-33333EXAMPLE" }Weitere Informationen finden Sie unter Aktualisieren der Cluster-Konfiguration eines Amazon-MSK-Clusters im Entwicklerhandbuch zu Amazon Managed Streaming for Apache Kafka.
-
API-Details finden Sie unter UpdateClusterConfiguration
in der AWS CLI-Befehlsreferenz.
-