Schnellstart: Erstellen eines Clusters vom Typ „Azure Managed Instance for Apache Cassandra“ mithilfe der Azure CLI (Vorschau)Quickstart: Create an Azure Managed Instance for Apache Cassandra cluster using Azure CLI (Preview)

Azure Managed Instance for Apache Cassandra bietet automatisierte Bereitstellungs- und Skalierungsvorgänge für verwaltete Open-Source-basierte Apache Cassandra-Rechenzentren.Azure Managed Instance for Apache Cassandra provides automated deployment and scaling operations for managed open-source Apache Cassandra datacenters. Dieser Dienst unterstützt Sie dabei, Hybridszenarien zu beschleunigen und die laufende Wartung zu verringern.This service helps you accelerate hybrid scenarios and reduce ongoing maintenance.

Wichtig

Azure Managed Instance for Apache Cassandra befindet sich derzeit in der Public Preview-Phase.Azure Managed Instance for Apache Cassandra is currently in public preview. Diese Vorschauversion wird ohne Vereinbarung zum Servicelevel bereitgestellt und ist nicht für Produktionsworkloads vorgesehen.This preview version is provided without a service level agreement, and it's not recommended for production workloads. Manche Features werden möglicherweise nicht unterstützt oder sind nur eingeschränkt verwendbar.Certain features might not be supported or might have constrained capabilities. Weitere Informationen finden Sie unter Zusätzliche Nutzungsbestimmungen für Microsoft Azure-Vorschauen.For more information, see Supplemental Terms of Use for Microsoft Azure Previews.

In dieser Schnellstartanleitung erfahren Sie, wie Sie mithilfe der Azure CLI einen Cluster mit Azure Managed Instance for Apache Cassandra erstellen.This quickstart demonstrates how to use the Azure CLI commands to create a cluster with Azure Managed Instance for Apache Cassandra. Außerdem wird gezeigt, wie Sie ein Rechenzentrum erstellen und Knoten im Rechenzentrum hoch- oder herunterskalieren.It also shows to create a datacenter, and scale nodes up or down within the datacenter.

VoraussetzungenPrerequisites

  • Verwenden Sie die Bash-Umgebung in Azure Cloud Shell.Use the Bash environment in Azure Cloud Shell.

    Starten von Cloud Shell in einem neuen FensterLaunch Cloud Shell in a new window

  • Wenn Sie möchten, können Sie auch die Azure CLI installieren, um CLI-Verweisbefehle auszuführen.If you prefer, install the Azure CLI to run CLI reference commands.

    • Wenn Sie eine lokale Installation verwenden, melden Sie sich mithilfe des Befehls az login bei der Azure CLI an.If you're using a local installation, sign in to the Azure CLI by using the az login command. Führen Sie die in Ihrem Terminal angezeigten Schritte aus, um den Authentifizierungsprozess abzuschließen.To finish the authentication process, follow the steps displayed in your terminal. Weitere Anmeldeoptionen finden Sie unter Anmelden mit der Azure CLI.For additional sign-in options, see Sign in with the Azure CLI.

    • Installieren Sie die Azure CLI-Erweiterungen bei der ersten Verwendung, wenn Sie dazu aufgefordert werden.When you're prompted, install Azure CLI extensions on first use. Weitere Informationen zu Erweiterungen finden Sie unter Verwenden von Erweiterungen mit der Azure CLI.For more information about extensions, see Use extensions with the Azure CLI.

    • Führen Sie az version aus, um die installierte Version und die abhängigen Bibliotheken zu ermitteln.Run az version to find the version and dependent libraries that are installed. Führen Sie az upgrade aus, um das Upgrade auf die aktuelle Version durchzuführen.To upgrade to the latest version, run az upgrade.

Wichtig

Für diesen Artikel ist die Azure CLI-Version 2.17.1 oder höher erforderlich.This article requires the Azure CLI version 2.17.1 or higher. Wenn Sie Azure Cloud Shell verwenden, ist die neueste Version bereits installiert.If you are using Azure Cloud Shell, the latest version is already installed.

Erstellen eines Managed Instance-ClustersCreate a managed instance cluster

  1. Melden Sie sich beim Azure-PortalSign in to the Azure portal

  2. Legen Sie Ihre Abonnement-ID über die Azure CLI fest:Set your subscription ID in Azure CLI:

    az account set -s <Subscription_ID>
    
  3. Erstellen Sie als Nächstes ein virtuelles Netzwerk mit einem dedizierten Subnetz in Ihrer Ressourcengruppe:Next, create a Virtual Network with a dedicated subnet in your resource group:

    az network vnet create -n <VNet_Name> -l eastus2 -g <Resource_Group_Name> --subnet-name <Subnet Name>
    

    Hinweis

    Für die Bereitstellung einer Instanz von Azure Managed Instance for Apache Cassandra ist Internetzugriff erforderlich.The Deployment of a Azure Managed Instance for Apache Cassandra requires internet access. In Umgebungen, in denen der Internetzugriff eingeschränkt ist, tritt ein Fehler bei der Bereitstellung auf.Deployment fails in environments where internet access is restricted. Stellen Sie sicher, dass der Zugriff im VNet auf die folgenden wichtigen Azure-Dienste, die für die richtige Funktionsweise von Managed Cassandra erforderlich sind, nicht blockiert ist:Make sure you aren't blocking access within your VNet to the following vital Azure services that are necessary for Managed Cassandra to work properly:

    • Azure StorageAzure Storage
    • Azure Key VaultAzure KeyVault
    • Skalierungsgruppen für virtuelle Azure-ComputerAzure Virtual Machine Scale Sets
    • Azure-ÜberwachungAzure Monitoring
    • Azure Active DirectoryAzure Active Directory
    • Azure SecurityAzure Security
  4. Wenden Sie einige spezielle Berechtigungen auf das virtuelle Netzwerk an, die für die verwaltete Instanz erforderlich sind.Apply some special permissions to the Virtual Network, which are required by the managed instance. Verwenden Sie den Befehl az role assignment create, und ersetzen Sie <subscription ID>, <resource group name> und <VNet name> durch die entsprechenden Werte:Use the az role assignment create command, replacing <subscription ID>, <resource group name>, and <VNet name> with the appropriate values:

    az role assignment create --assignee a232010e-820c-4083-83bb-3ace5fc29d0b --role 4d97b98b-1d4f-4787-a291-c67834d212e7 --scope /subscriptions/<subscription ID>/resourceGroups/<resource group name>/providers/Microsoft.Network/virtualNetworks/<VNet name>
    

    Hinweis

    Die Werte assignee und role im vorherigen Befehl sind feste Werte. Geben Sie diese Werte daher genau so ein, wie im Befehl angegeben.The assignee and role values in the previous command are fixed values, enter these values exactly as mentioned in the command. Andernfalls treten beim Erstellen des Clusters Fehler auf.Not doing so will lead to errors when creating the cluster. Treten beim Ausführen dieses Befehls Fehler auf, verfügen Sie möglicherweise nicht über die Berechtigungen zum Ausführen des Befehls. Wenden Sie sich an Ihren Administrator, um die entsprechenden Berechtigungen zu erhalten.If you encounter any errors when executing this command, you may not have permissions to run it, please reach out to your admin for permissions.

  5. Erstellen Sie als Nächstes mithilfe des Befehls az managed-cassandra cluster create den Cluster in dem neu erstellten virtuellen Netzwerk.Next create the cluster in your newly created Virtual Network by using the az managed-cassandra cluster create command. Führen Sie den folgenden Befehl mit dem Wert der Variablen delegatedManagementSubnetId aus:Run the following command the value of delegatedManagementSubnetId variable:

    Hinweis

    Der Wert der von Ihnen unten angegebenen Variablen delegatedManagementSubnetId stimmt exakt mit dem Wert von --scope überein, den Sie im obigen Befehl angegeben haben:The value of the delegatedManagementSubnetId variable you will supply below is exactly the same as the value of --scope that you supplied in the command above:

    resourceGroupName='<Resource_Group_Name>'
    clusterName='<Cluster_Name>'
    location='eastus2'
    delegatedManagementSubnetId='/subscriptions/<subscription ID>/resourceGroups/<resource group name>/providers/Microsoft.Network/virtualNetworks/<VNet name>/subnets/<subnet name>'
    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 \
       --debug
    
  6. Erstellen Sie abschließend mithilfe des Befehls az managed-cassandra datacenter create ein Rechenzentrum für den Cluster mit drei Knoten.Finally, create a datacenter for the cluster, with three nodes by using the az managed-cassandra datacenter create command:

    dataCenterName='dc1'
    dataCenterLocation='eastus2'
    
    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 
    
  7. Die Knoten des erstellten Rechenzentrums können bei Bedarf mithilfe des Befehls az managed-cassandra datacenter update hoch- oder herunterskaliert werden.Once the datacenter is created, if you want to scale up, or scale down the nodes in the datacenter, run the az managed-cassandra datacenter update command. Ändern Sie den Wert des Parameters node-count in den gewünschten Wert:Change the value of node-count parameter to the desired value:

    resourceGroupName='<Resource_Group_Name>'
    clusterName='<Cluster Name>'
    dataCenterName='dc1'
    dataCenterLocation='eastus2'
    
    az managed-cassandra datacenter update \
       --resource-group $resourceGroupName \
       --cluster-name $clusterName \
       --data-center-name $dataCenterName \
       --node-count 9 
    

Herstellen einer ClusterverbindungConnect to your cluster

Von Azure Managed Instance for Apache Cassandra werden keine Knoten mit öffentlicher IP-Adresse erstellt.Azure Managed Instance for Apache Cassandra does not create nodes with public IP addresses. Wenn Sie eine Verbindung mit dem neu erstellten Cassandra-Cluster herstellen möchten, müssen Sie eine weitere Ressource innerhalb des virtuellen Netzwerks erstellen.To connect to your newly created Cassandra cluster, you must create another resource inside the virtual network. Bei dieser Ressource kann es sich um eine Anwendung handeln oder um einen virtuellen Computer, auf dem das Open-Source-Abfragetool CQLSH von Apache installiert ist.This resource can be an application, or a virtual machine with Apache's open-source query tool CQLSH installed. Sie können eine Resource Manager-Vorlage verwenden, um einen virtuellen Ubuntu-Computer bereitzustellen.You can use a Resource Manager template to deploy an Ubuntu virtual machine. Stellen Sie nach dessen Bereitstellung eine SSH-Verbindung mit dem Computer her, und installieren Sie CQLSH, wie in den folgenden Befehlen gezeigt:After it's deployed, use SSH to connect to the machine and install CQLSH as shown in the following commands:

# Install default-jre and default-jdk
sudo apt update
sudo apt install openjdk-8-jdk openjdk-8-jre

# Install the Cassandra libraries in order to get CQLSH:
echo "deb http://www.apache.org/dist/cassandra/debian 311x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list
curl https://downloads.apache.org/cassandra/KEYS | sudo apt-key add -
sudo apt-get update
sudo apt-get install cassandra

# Export the SSL variables:
export SSL_VERSION=TLSv1_2
export SSL_VALIDATE=false

# Connect to CQLSH (replace <IP> with the private IP addresses of the nodes in your Datacenter):
host=("<IP>" "<IP>" "<IP>")
cqlsh $host 9042 -u cassandra -p cassandra --ssl

ProblembehandlungTroubleshooting

Wenn beim Anwenden von Berechtigungen für Ihre Virtual Network-Instanz ein Fehler mit dem Hinweis auftritt, dass der Benutzer oder Dienstprinzipal in der Graphdatenbank für „e5007d2c-4b13-4a74-9b6a-605d99f03501“ nicht gefunden werden kann, können Sie die gleiche Berechtigung manuell über das Azure-Portal anwenden.If you encounter an error when applying permissions to your Virtual Network, such as Cannot find user or service principal in graph database for 'e5007d2c-4b13-4a74-9b6a-605d99f03501', you can apply the same permission manually from the Azure portal. Navigieren Sie zum Anwenden von Berechtigungen über das Portal zum Bereich Zugriffssteuerung (IAM) Ihres vorhandenen virtuellen Netzwerks, und fügen Sie der Rolle „Netzwerkadministrator“ eine Rollenzuweisung für „Azure Cosmos DB“ hinzu.To apply permissions from the portal, go to the Access control (IAM) pane of your existing virtual network and add a role assignment for "Azure Cosmos DB" to the "Network Administrator" role. Werden bei der Suche nach „Azure Cosmos DB“ zwei Einträge angezeigt, fügen Sie beide Einträge hinzu wie in der folgenden Abbildung gezeigt:If two entries appear when you search for "Azure Cosmos DB", add both the entries as shown in the following image:

Anwenden von Berechtigungen

Hinweis

Die Azure Cosmos DB-Rollenzuweisung wird nur für Bereitstellungszwecke verwendet.The Azure Cosmos DB role assignment is used for deployment purposes only. Azure Managed Instance for Apache Cassandra verfügt über keine Back-End-Abhängigkeiten von Azure Cosmos DB.Azure Managed Instanced for Apache Cassandra has no backend dependencies on Azure Cosmos DB.

Bereinigen von RessourcenClean up resources

Wenn Sie die Ressourcen nicht mehr benötigen, führen Sie den Befehl az group delete aus, um die Ressourcengruppe, die verwaltete Instanz und alle zugehörigen Ressourcen zu löschen:When no longer needed, you can use the az group delete command to remove the resource group, the managed instance, and all related resources:

az group delete --name <Resource_Group_Name>

Nächste SchritteNext steps

In dieser Schnellstartanleitung haben Sie gelernt, wie Sie mithilfe der Azure CLI einen Cluster vom Typ „Azure Managed Instance for Apache Cassandra“ erstellen.In this quickstart, you learned how to create an Azure Managed Instance for Apache Cassandra cluster using Azure CLI. Nun können Sie mit der Nutzung des Clusters beginnen:You can now start working with the cluster: