Správa prostředků Azure Managed Instance pro Apache Cassandra pomocí Azure CLI

Tento článek popisuje běžné příkazy pro automatizaci správy clusterů a datacenter Azure Managed Instance for Apache Cassandra pomocí Azure CLI.

Požadavky

Tento článek vyžaduje Azure CLI verze 2.30.0 nebo novější. Pokud používáte Azure Cloud Shell, je už nainstalovaná nejnovější verze.

Důležité

Spravovat spravovanou instanci Azure pro prostředky Apache Cassandra nejde přejmenovat. Přejmenování těchto prostředků porušuje fungování Azure Resource Manageru s identifikátory URI prostředků.

Správa clusterů

Následující části ukazují, jak spravovat clustery Azure Managed Instance for Apache Cassandra:

Vytvoření clusteru

Vytvořte cluster Azure Managed Instance for Apache Cassandra pomocí příkazu 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 \

Odstranění clusteru

Odstraňte cluster pomocí příkazu az managed-cassandra cluster delete :

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

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

Získání podrobností o clusteru

Získání podrobností o clusteru pomocí příkazu az managed-cassandra cluster show :

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

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

Získání stavu uzlu clusteru

Pomocí příkazu az managed-cassandra cluster node-status získejte stav uzlů clusteru:

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

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

Výpis clusterů podle skupiny prostředků

Výpis clusterů podle skupiny prostředků pomocí příkazu az managed-cassandra cluster list :

subscriptionId='MySubscriptionId'
resourceGroupName='MyResourceGroup'

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

Výpis clusterů podle ID předplatného

Výpis clusterů podle ID předplatného pomocí příkazu az managed-cassandra cluster list :

# Set your subscription ID
az account set -s <subscriptionID>

az managed-cassandra cluster list

Správa datacenter

Následující části ukazují, jak spravovat datacentra Azure Managed Instance for Apache Cassandra:

Vytvoření datacentra

Vytvoření datacentra pomocí příkazu 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

Vyberte hodnotu --sku z následujících dostupných možností virtuálního počítače:

  • 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
  • Standard_L8s_v3
  • Standard_L16s_v3
  • Standard_L32s_v3
  • Standard_L8as_v3
  • Standard_L16as_v3
  • Standard_L32as_v3

Spravovaná instance Azure pro Apache Cassandra v současné době nepodporuje přechod mezi rodinami virtuálních počítačů. Pokud například aktuálně máte Standard_DS13_v2 virtuální počítač a zajímá vás upgrade na větší virtuální počítač, například Standard_DS14_v2, tato možnost není dostupná. Můžete však otevřít lístek podpory a požádat o upgrade.

V předchozím příkazu --availability-zone je nastaven na falsehodnotu . Pokud chcete povolit zóny dostupnosti, nastavte tuto hodnotu na truehodnotu . Zóny dostupnosti zvyšují smlouvu o úrovni služeb (SLA) pro dostupnost služby. Další informace najdete v úplných podrobnostech smlouvy SLA.

Upozorňující

Spravovaná instance Azure pro Apache Cassandra nepodporuje zóny dostupnosti ve všech oblastech. Pokud vyberete oblast, ve které nejsou zóny dostupnosti podporované, nasazení selžou. Podívejte se na seznam podporovaných oblastí.

Úspěšné nasazení zón dostupnosti podléhá také dostupnosti výpočetních prostředků ve všech zónách v oblasti. Nasazení můžou selhat, pokud virtuální počítač nebo vybraná kapacita nejsou dostupné ve všech zónách.

Odstranění datacentra

Odstranění datacentra pomocí příkazu 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 

Upozorňující

Pokud máte v clusteru více než jedno datové centrum, musíte nejprve odebrat všechny odkazy na datacentrum, které se pokoušíte odstranit, v jakémkoli nastavení strategie replikace keyspace. Tento příkaz selže, pokud některé prostory klíčů v clusteru stále obsahují odkazy na datové centrum.

Získání podrobností o datovém centru

Získání podrobností o datacentru pomocí příkazu 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 

Aktualizace nebo škálování datacentra

Aktualizace nebo škálování datacentra pomocí příkazu 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 

Pokud chcete škálovat datacentrum, změňte --node-count hodnotu.

Získání konfigurace Cassandra

Získejte aktuální konfiguraci YAML uzlu pomocí příkazu az managed-cassandra cluster invoke-command :

resourceGroupName='MyResourceGroup'
clusterName='cassandra-hybrid-cluster'
commandName='get-cassandra-yaml'
 
az managed-cassandra cluster invoke-command \
    --resource-group $resourceGroupName \
    --cluster-name $clusterName \
    --host <ip address> \
    --command-name 'get-cassandra-yaml'

Výstup můžete lépe číst pomocí následujících příkazů:

$output = az managed-cassandra cluster invoke-command \
    --resource-group $resourceGroupName \
    --cluster-name $clusterName \
    --host <ip address> \
    --command-name 'get-cassandra-yaml' \
    | ConvertFrom-Json
$output.commandOutput

Aktualizace konfigurace Cassandra

Pomocí příkazu az managed-cassandra datacenter update změňte konfiguraci Cassandra v datovém centru. Fragment YAML musíte zakódovat pomocí online nástroje.

Představte si například následující fragment YAML:

column_index_size_in_kb: 16
read_request_timeout_in_ms: 10000

Při kódování se YAML převede na: Y29sdW1uX2luZGV4X3NpemVfaW5fa2I6IDE2CnJlYWRfcmVxdWVzdF90aW1lb3V0X2luX21zOiAxMDAwMA==.

Tady je az managed-cassandra datacenter update příkaz s kódovaným fragmentem YAML:

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

Důležité

Ujistěte se, že nastavení YAML Cassandra, které zadáte, jsou vhodná pro vaši verzi Cassandra. Podívejte se na nastavení Cassandra v3.11 a nastavení Cassandra v4.0. Nemůžete aktualizovat následující nastavení YAML:

  • cluster_name
  • seed_provider
  • initial_token
  • autobootstrap
  • client_encryption_options
  • server_encryption_options
  • transparent_data_encryption_options
  • audit_logging_options
  • authenticator
  • authorizer
  • role_manager
  • storage_port
  • ssl_storage_port
  • native_transport_port
  • native_transport_port_ssl
  • listen_address
  • listen_interface
  • broadcast_address
  • hints_directory
  • data_file_directories
  • commitlog_directory
  • cdc_raw_directory
  • saved_caches_directory
  • endpoint_snitch
  • partitioner
  • rpc_address
  • rpc_interface

Získání datacenter v clusteru

Získání datacenter v clusteru pomocí příkazu az managed-cassandra datacenter list :

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

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

Další kroky