Azure Managed Instance voor Apache Cassandra-resources beheren met behulp van Azure CLI

In dit artikel worden algemene opdrachten beschreven voor het automatiseren van het beheer van uw Azure Managed Instance voor Apache Cassandra-clusters met behulp van Azure CLI.

Vereisten

  • Gebruik de bash-omgeving in Azure Cloud shell.

    Cloud Shell starten in een nieuw venster

  • Installeer de Azure CLI, indien gewenst, om CLI-referentieopdrachten uit te voeren.

    • Als u een lokale installatie gebruikt, meldt u zich aan bij Azure CLI met behulp van de opdracht AZ login. Volg de stappen die worden weergegeven in de terminal, om het verificatieproces te voltooien. Raadpleeg Aanmelden bij de Azure CLI voor aanvullende aanmeldingsopties.

    • Installeer de Azure CLI-extensie bij het eerste gebruik, wanneer u hierom wordt gevraagd. Raadpleeg Extensies gebruiken met Azure CLI voor meer informatie over extensies.

    • Voer az version uit om de geïnstalleerde versie en afhankelijke bibliotheken te vinden. Voer az upgrade uit om te upgraden naar de nieuwste versie.

Belangrijk

Voor dit artikel is versie 2.30.0 of hoger van Azure CLI vereist. Als u een Azure Cloud Shell, is de meest recente versie al geïnstalleerd.

De naam van Azure Managed Instance voor Apache Cassandra-resources kan niet worden gewijzigd, omdat dit in strijd is met hoe Azure Resource Manager met resource-URI's werkt.

Azure Managed Instance voor Apache Cassandra-clusters

In de volgende secties wordt gedemonstreerd hoe u Azure Managed Instance voor Apache Cassandra-clusters beheert, waaronder:

Een beheerd exemplaarcluster maken

Maak een Azure Managed Instance voor Een Apache Cassandra-cluster met behulp van de opdracht az managed-cassandra cluster create:

resourceGroupName='MyResourceGroup'
clusterName='cassandra-hybrid-cluster'
location='West US'
delegatedManagementSubnetId='/subscriptions/<subscription id>/resourceGroups/customer-vnet-rg/providers/Microsoft.Network/virtualNetworks/customer-vnet/subnets/management'
initialCassandraAdminPassword='myPassword'

# You can override the cluster name if the original name is not legal for an Azure resource.
# overrideClusterName='ClusterNameIllegalForAzureResource'
# the default Cassandra version is v3.11

az managed-cassandra cluster create \
    --cluster-name $clusterName \
    --resource-group $resourceGroupName \
    --location $location \
    --delegated-management-subnet-id $delegatedManagementSubnetId \
    --initial-cassandra-admin-password $initialCassandraAdminPassword \

Een beheerd exemplaarcluster verwijderen

Verwijder een cluster met de opdracht az managed-cassandra cluster delete:

resourceGroupName='MyResourceGroup'
clusterName='cassandra-hybrid-cluster'

az managed-cassandra cluster delete \
    --cluster-name $clusterName \
    --resource-group $resourceGroupName

De clusterdetails opsommen

Haal clusterdetails op met behulp van de opdracht az managed-cassandra cluster show:

resourceGroupName='MyResourceGroup'
clusterName='cassandra-hybrid-cluster'

az managed-cassandra cluster show \
    --cluster-name $clusterName \
    --resource-group $resourceGroupName

De status van het clusterknooppunt op te halen

Haal clusterdetails op met behulp van de opdracht az managed-cassandra cluster node-status:

clusterName='cassandra-hybrid-cluster'
resourceGroupName='MyResourceGroup'

az managed-cassandra cluster status \
    --cluster-name $clusterName \
    --resource-group $resourceGroupName

De clusters per resourcegroep in een lijst zetten

Vermeld clusters per resourcegroep met behulp van de opdracht az managed-cassandra cluster list:

subscriptionId='MySubscriptionId'
resourceGroupName='MyResourceGroup'

az managed-cassandra cluster list\
    --resource-group $resourceGroupName

Clusters op abonnements-id in een lijst zetten

Vermeld clusters op abonnements-id met behulp van de opdracht az managed-cassandra cluster list:

# set your subscription id
az account set -s <subscriptionID>

az managed-cassandra cluster list

De datacentra van het beheerde exemplaar

In de volgende secties wordt gedemonstreerd hoe u Azure Managed Instance voor Apache Cassandra-datacenters beheert, waaronder:

Een datacenter maken

Maak een datacenter met behulp van de opdracht az managed-cassandra datacenter create:

resourceGroupName='MyResourceGroup'
clusterName='cassandra-hybrid-cluster'
dataCenterName='dc1'
dataCenterLocation='eastus2'
delegatedSubnetId='/subscriptions/<SubscriptionID>/resourceGroups/customer-vnet-rg/providers/Microsoft.Network/virtualNetworks/customer-vnet/subnets/dc1-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 $delegatedSubnetId \
    --node-count 3 
    --sku $virtualMachineSKU \
    --disk-capacity $noOfDisksPerNode \
    --availability-zone false

Notitie

De waarde voor --sku kan worden gekozen uit de volgende beschikbare SKU's:

  • 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

Houd er ook rekening --availability-zone mee dat is ingesteld op false . Als u beschikbaarheidszones wilt inschakelen, stelt u deze in op true . Beschikbaarheidszones verhogen de SLA voor beschikbaarheid van de service. Bekijk hier de volledige SLA-details voor meer informatie.

Waarschuwing

Beschikbaarheidszones worden niet in alle regio's ondersteund. Implementaties mislukken als u een regio selecteert waarin beschikbaarheidszones niet worden ondersteund. Kijk hier voor ondersteunde regio's. De geslaagde implementatie van beschikbaarheidszones is ook afhankelijk van de beschikbaarheid van rekenresources in alle zones in de opgegeven regio. Implementaties kunnen mislukken als de SKU die u hebt geselecteerd of capaciteit niet beschikbaar is in alle zones.

Een datacenter verwijderen

Verwijder een datacenter met behulp van de opdracht az managed-cassandra datacenter delete:

resourceGroupName='MyResourceGroup'
clusterName='cassandra-hybrid-cluster'
dataCenterName='dc1'

az managed-cassandra datacenter delete \
    --resource-group $resourceGroupName \
    --cluster-name $clusterName \
    --data-center-name $dataCenterName 

Waarschuwing

Als u meer dan één datacenter in uw cluster hebt, moet u eerst alle verwijzingen verwijderen naar het datacenter dat u wilt verwijderen in de instellingen voor de replicatiestrategie voor keyspaces. Deze opdracht mislukt als er nog steeds verwijzingen naar het datacenter in keyspaces in uw cluster zijn.

Datacenterdetails op halen

Haal gegevens van het datacenter op met behulp van de opdracht az managed-cassandra datacenter show:

resourceGroupName='MyResourceGroup'
clusterName='cassandra-hybrid-cluster'
dataCenterName='dc1'

az managed-cassandra datacenter show \
    --resource-group $resourceGroupName \
    --cluster-name $clusterName \
    --data-center-name $dataCenterName 

Een datacenter bijwerken of schalen

Werk een datacentrum bij of schaal deze (om de waarde voor nodeCount te wijzigen) met behulp van de opdracht az managed-cassandra datacenter update:

resourceGroupName='MyResourceGroup'
clusterName='cassandra-hybrid-cluster'
dataCenterName='dc1'

az managed-cassandra datacenter update \
    --resource-group $resourceGroupName \
    --cluster-name $clusterName \
    --data-center-name $dataCenterName \
    --node-count 13 

Cassandra-configuratie bijwerken

Wijzig de Cassandra-configuratie in een datacenter met behulp van de opdracht az managed-cassandra datacenter update. U moet het YAML-fragment base64 coderen met behulp van een online hulpprogramma. De volgende YAML-instellingen worden ondersteund:

  • column_index_size_in_kb
  • allocate_tokens_for_keyspace
  • compaction_throughput_mb_per_sec
  • read_request_timeout_in_ms
  • range_request_timeout_in_ms
  • aggregated_request_timeout_in_ms
  • write_request_timeout_in_ms
  • request_timeout_in_ms
  • internode_compression
  • batchlog_replay_throttle_in_kb

Bijvoorbeeld het volgende YAML-fragment:

column_index_size_in_kb: 16
read_request_timeout_in_ms: 10000

Wanneer de YAML is gecodeerd, wordt deze geconverteerd naar: Y29sdW1uX2luZGV4X3NpemVfaW5fa2I6IDE2CnJlYWRfcmVxdWVzdF90aW1lb3V0X2luX21zOiAxMDAwMA== .

Zie hieronder:

resourceGroupName='MyResourceGroup'
clusterName='cassandra-hybrid-cluster'
dataCenterName='dc1'
dataCenterLocation='eastus'
yamlFragment='Y29sdW1uX2luZGV4X3NpemVfaW5fa2I6IDE2CnJlYWRfcmVxdWVzdF90aW1lb3V0X2luX21zOiAxMDAwMA=='

az managed-cassandra datacenter update \
    --resource-group $resourceGroupName \
    --cluster-name $clusterName \
    --data-center-name $dataCenterName \
    --base64-encoded-cassandra-yaml-fragment $yamlFragment

De datacenters in een cluster op te halen

Haal datacenters op in een cluster met behulp van de opdracht az managed-cassandra datacenter list:

resourceGroupName='MyResourceGroup'
clusterName='cassandra-hybrid-cluster'

az managed-cassandra datacenter list \
    --resource-group $resourceGroupName \
    --cluster-name $clusterName

Volgende stappen