Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Azure Managed Instance for Apache Cassandra ist ein vollständig verwalteter Service für reine Open-Source Apache Cassandra-Cluster. Der Dienst ermöglicht außerdem, konfigurationen abhängig von den spezifischen Anforderungen jeder Workload außer Kraft zu setzen, um maximale Flexibilität und Kontrolle zu gewährleisten.
In diesem Schnellstart wird veranschaulicht, wie Sie die Azure CLI-Befehle zum Konfigurieren eines regionsübergreifenden Clusters verwenden.
Voraussetzungen
Verwenden Sie die Bash-Umgebung in Azure Cloud Shell. Weitere Informationen finden Sie unter "Erste Schritte mit Azure Cloud Shell".
Wenn Sie CLI-Referenzbefehle lieber lokal ausführen, installieren Sie die Azure CLI. Wenn Sie Windows oder macOS ausführen, sollten Sie die Azure CLI in einem Docker-Container ausführen. Weitere Informationen finden Sie unter Ausführen der Azure CLI in einem Docker-Container.
Wenn Sie eine lokale Installation verwenden, melden Sie sich mithilfe des Befehls az login bei der Azure CLI an. Um den Authentifizierungsprozess abzuschließen, führen Sie die in Ihrem Terminal angezeigten Schritte aus. Weitere Anmeldeoptionen finden Sie unter Authentifizieren bei Azure mithilfe der Azure CLI.
Installieren Sie die Azure CLI-Erweiterung bei der ersten Verwendung, wenn Sie dazu aufgefordert werden. Weitere Informationen zu Erweiterungen finden Sie unter Verwenden und Verwalten von Erweiterungen mit der Azure CLI.
Führen Sie az version aus, um die installierte Version und die abhängigen Bibliotheken zu ermitteln. Führen Sie az upgrade aus, um das Upgrade auf die aktuelle Version durchzuführen.
- Dieser Artikel erfordert die Azure CLI-Version 2.30.0 oder höher. Bei Verwendung von Azure Cloud Shell ist die aktuelle Version bereits installiert.
- Verwenden Sie ein virtuelles Azure-Netzwerk mit Konnektivität zu Ihrer selbst gehosteten oder lokalen Umgebung. Weitere Informationen zum Verbinden lokaler Umgebungen mit Azure finden Sie unter Verbinden eines lokalen Netzwerks mit Azure.
Einrichten der Netzwerkumgebung
Da alle Rechenzentren, die mit diesem Dienst ausgestattet sind, in dedizierten Subnetzen unter Verwendung der VNet-Einschleusung verwendet werden müssen, konfigurieren Sie vor der Bereitstellung ein entsprechendes Netzwerkpeering. Für diesen Schnellstart erstellen Sie einen Cluster mit zwei Rechenzentren in separaten Regionen: „USA, Osten“ und „USA, Osten 2“. Erstellen Sie zunächst die virtuellen Netzwerke für jede Region.
Melden Sie sich beim Azure-Portal an.
Erstellen einer Ressourcengruppe mit dem Namen
cassandra-mi-multi-region:az group create --location eastus2 --name cassandra-mi-multi-regionErstellen Sie das erste virtuelle Netzwerk in Ost-US 2 mit einem dedizierten Subnetz:
az network vnet create \ --name vnetEastUs2 \ --location eastus2 \ --resource-group cassandra-mi-multi-region \ --address-prefix 10.0.0.0/16 \ --subnet-name dedicated-subnetErstellen Sie das zweite virtuelle Netzwerk in Ost-US, auch mit einem dedizierten Subnetz:
az network vnet create \ --name vnetEastUs \ --location eastus \ --resource-group cassandra-mi-multi-region \ --address-prefix 192.168.0.0/16 \ --subnet-name dedicated-subnetWir fügen explizit verschiedene IP-Adressbereiche hinzu, um sicherzustellen, dass keine Fehler mit Peering auftreten.
Führen Sie ein Peering zwischen dem ersten virtuellen Netzwerk und dem zweiten virtuellen Netzwerk durch:
az network vnet peering create \ --resource-group cassandra-mi-multi-region \ --name MyVnet1ToMyVnet2 \ --vnet-name vnetEastUs2 \ --remote-vnet vnetEastUs \ --allow-vnet-access \ --allow-forwarded-trafficUm die beiden virtuellen Netzwerke zu verbinden, erstellen Sie ein weiteres Peering zwischen dem zweiten virtuellen Netzwerk und dem ersten:
az network vnet peering create \ --resource-group cassandra-mi-multi-region \ --name MyVnet2ToMyVnet1 \ --vnet-name vnetEastUs \ --remote-vnet vnetEastUs2 \ --allow-vnet-access \ --allow-forwarded-trafficWenn Sie weitere Regionen hinzufügen, erfordert jedes virtuelle Netzwerk Peering von ihm zu allen anderen virtuellen Netzwerken und von allen anderen virtuellen Netzwerken zu ihm.
Überprüfen Sie die Ausgabe des vorherigen Befehls. Stellen Sie sicher, dass der Wert von
peeringStatejetztConnectedist. Sie können dieses Ergebnis auch überprüfen, indem Sie den folgenden Befehl ausführen:az network vnet peering show \ --name MyVnet1ToMyVnet2 \ --resource-group cassandra-mi-multi-region \ --vnet-name vnetEastUs2 \ --query peeringStateWenden Sie einige spezielle Berechtigungen auf beide virtuelle Netzwerke an. Azure Managed Instance for Apache Cassandra erfordert diese Berechtigungen. Führen Sie den folgenden Befehl aus. Ersetzen Sie
<SubscriptionID>durch Ihre Abonnement-ID:az role assignment create \ --assignee a232010e-820c-4083-83bb-3ace5fc29d0b \ --role 4d97b98b-1d4f-4787-a291-c67834d212e7 \ --scope /subscriptions/<SubscriptionID>/resourceGroups/cassandra-mi-multi-region/providers/Microsoft.Network/virtualNetworks/vnetEastUs2 az role assignment create \ --assignee a232010e-820c-4083-83bb-3ace5fc29d0b \ --role 4d97b98b-1d4f-4787-a291-c67834d212e7 \ --scope /subscriptions/<SubscriptionID>/resourceGroups/cassandra-mi-multi-region/providers/Microsoft.Network/virtualNetworks/vnetEastUsDie
assignee- undrole-Werte im vorherigen Befehl sind feste Werte. Geben Sie diese Werte genau wie im Befehl dargestellt ein.
Wenn beim Ausführen von az role assignment create Fehler auftreten, haben Sie möglicherweise keine Berechtigung zum Ausführen. Erkundigen Sie sich bei Ihrem Administrator nach den Berechtigungen.
Erstellen eines regionsübergreifenden Clusters
Stellen Sie die Clusterressource bereit. Ersetzen Sie
<Subscription ID>durch Ihre Abonnement-ID. Die Bereitstellung kann 5 bis 10 Minuten dauern.resourceGroupName='cassandra-mi-multi-region' clusterName='test-multi-region' location='eastus2' delegatedManagementSubnetId='/subscriptions/<SubscriptionID>/resourceGroups/cassandra-mi-multi-region/providers/Microsoft.Network/virtualNetworks/vnetEastUs2/subnets/dedicated-subnet' initialCassandraAdminPassword='myPassword' az managed-cassandra cluster create \ --cluster-name $clusterName \ --resource-group $resourceGroupName \ --location $location \ --delegated-management-subnet-id $delegatedManagementSubnetId \ --initial-cassandra-admin-password $initialCassandraAdminPassword \ --debugNachdem die Clusterressource erstellt wurde, können Sie ein Rechenzentrum erstellen. Erstellen Sie zunächst ein Rechenzentrum in „USA, Osten 2“. Ersetzen Sie
<SubscriptionID>durch Ihre Abonnement-ID. Diese Aktion kann bis zu 10 Minuten dauern.resourceGroupName='cassandra-mi-multi-region' clusterName='test-multi-region' dataCenterName='dc-eastus2' dataCenterLocation='eastus2' delegatedManagementSubnetId='/subscriptions/<SubscriptionID>/resourceGroups/cassandra-mi-multi-region/providers/Microsoft.Network/virtualNetworks/vnetEastUs2/subnets/dedicated-subnet' az managed-cassandra datacenter create \ --resource-group $resourceGroupName \ --cluster-name $clusterName \ --data-center-name $dataCenterName \ --data-center-location $dataCenterLocation \ --delegated-subnet-id $delegatedManagementSubnetId \ --node-count 3Erstellen Sie ein Rechenzentrum in „USA, Osten“. Ersetzen Sie
<SubscriptionID>durch Ihre Abonnement-ID:resourceGroupName='cassandra-mi-multi-region' clusterName='test-multi-region' dataCenterName='dc-eastus' dataCenterLocation='eastus' delegatedManagementSubnetId='/subscriptions/<SubscriptionID>/resourceGroups/cassandra-mi-multi-region/providers/Microsoft.Network/virtualNetworks/vnetEastUs/subnets/dedicated-subnet' virtualMachineSKU='Standard_D8s_v4' noOfDisksPerNode=4 az managed-cassandra datacenter create \ --resource-group $resourceGroupName \ --cluster-name $clusterName \ --data-center-name $dataCenterName \ --data-center-location $dataCenterLocation \ --delegated-subnet-id $delegatedManagementSubnetId \ --node-count 3 --sku $virtualMachineSKU \ --disk-capacity $noOfDisksPerNode \ --availability-zone falseSie können den Wert für
--skuaus den folgenden verfügbaren Produktstufen auswählen:- Standard_E8s_v4
- Standard_E16s_v4
- Standard_E20s_v4
- Standard_E32s_v4
- Standard_DS13_v2
- Standard_DS14_v2
- Standard_D8s_v4
- Standard_D16s_v4
- Standard_D32s_v4
Beachten Sie auch, dass
--availability-zoneauffalsefestgelegt ist. Um Verfügbarkeitszonen zu aktivieren, legen Sie sie auftrue. Verfügbarkeitszonen erhöhen den Verfügbarkeitsgrad der Service-Level-Vereinbarung (SLA) für den Dienst. Weitere Informationen finden Sie unter Service level agreements for Azure Managed Instance for Apache Cassandra.Verfügbarkeitszonen werden in allen Regionen nicht unterstützt. Bereitstellungen schlagen fehl, wenn Sie eine Region auswählen, in der Verfügbarkeitszonen nicht unterstützt werden. Unterstützte Regionen finden Sie unter Azure-Regionen mit Verfügbarkeitszonen.
Die erfolgreiche Bereitstellung von Verfügbarkeitszonen unterliegt auch der Verfügbarkeit von Computeressourcen in allen Zonen in der jeweiligen Region. Bereitstellungen können fehlschlagen, wenn die ausgewählte Produktebene oder Kapazität nicht in allen Zonen verfügbar ist.
Nachdem das zweite Rechenzentrum erstellt wurde, rufen Sie den Knotenstatus ab, um zu überprüfen, ob alle Cassandra-Knoten erfolgreich aufgetreten sind:
resourceGroupName='cassandra-mi-multi-region' clusterName='test-multi-region' az managed-cassandra cluster status\ --cluster-name $clusterName \ --resource-group $resourceGroupNameVerwenden Sie dann CQLSH, um eine Verbindung mit Ihrem Cluster herzustellen. Verwenden Sie die folgende CQL-Abfrage, um die Replikationsstrategie in jedem Schlüsselbereich zu aktualisieren, um alle Rechenzentren im gesamten Cluster einzuschließen (Systemtabellen werden automatisch aktualisiert):
ALTER KEYSPACE "ks" WITH REPLICATION = {'class': 'NetworkTopologyStrategy', 'dc-eastus2': 3, 'dc-eastus': 3};Wenn Sie einem Cluster, der bereits Daten enthält, ein Rechenzentrum hinzufügen, müssen Sie
rebuildausführen, um die historischen Daten zu replizieren. Gehen Sie in diesem Fall davon aus, dass dasdc-eastus2Rechenzentrum bereits Daten enthält. Führen Sie in der Azure CLI den folgenden Befehl aus:nodetool rebuild, um diesen auf jedem Knoten in Ihrem neuendc-eastusRechenzentrum auszuführen. Ersetzen Sie<ip address>durch die IP-Adresse des Knotens.az managed-cassandra cluster invoke-command \ --resource-group $resourceGroupName \ --cluster-name $clusterName \ --host <ip address> \ --command-name nodetool --arguments rebuild="" "dc-eastus2"=""Erlauben Sie Anwendungsclients nicht, in das neue Rechenzentrum zu schreiben, bevor Sie Keyspace-Replikationsänderungen anwenden. Andernfalls funktioniert der Neuaufbau nicht. Anschließend müssen Sie eine Supportanfrage erstellen, damit unser Team
repairfür Sie ausführen kann.
Problembehandlung
Wenn beim Anwenden von Berechtigungen für Ihr virtuelles Netzwerk mithilfe der Azure CLI ein Fehler auftritt, können Sie dieselbe Berechtigung manuell über das Azure-Portal anwenden. Ein Beispiel für einen solchen Fehler ist „Der Benutzer oder Dienstprinzipal in der Graphdatenbank für e5007d2c-4b13-4a74-9b6a-605d99f03501 kann nicht gefunden werden“. Weitere Informationen finden Sie unter Hinzufügen von Azure Cosmos DB-Dienstprinzipalen über das Azure-Portal.
Die Azure Cosmos DB-Rollenzuweisung wird nur für Bereitstellungszwecke verwendet. Azure Managed Instanced for Apache Cassandra hat keine Back-End-Abhängigkeiten von Azure Cosmos DB.
Bereinigen von Ressourcen
Wenn Sie diesen verwalteten Instanzcluster nicht weiterhin verwenden werden, führen Sie die folgenden Schritte aus, um ihn zu löschen:
- Wählen Sie im Azure-Portal im Menü auf der linken Seite die Option Ressourcengruppen aus.
- Wählen Sie in der Liste die Ressourcengruppe aus, die Sie für diese Schnellstartanleitung erstellt haben.
- Wählen Sie im Ressourcengruppenbereich Übersicht die Option Ressourcengruppe löschen aus.
- Geben Sie im nächsten Bereich den Namen der zu löschenden Ressourcengruppe ein, und wählen Sie dann "Löschen" aus.
Nächster Schritt
In dieser Schnellstartanleitung haben Sie erfahren, wie Sie mithilfe der Azure CLI und der azure Managed Instance für Apache Cassandra einen Multi-Region-Cluster erstellen. Sie können nun mit der Nutzung des Clusters beginnen.