Управление ресурсами Azure Управляемый экземпляр для Apache Cassandra с помощью Azure CLI
В этой статье описываются распространенные команды для автоматизации управления Управляемый экземпляр Azure для кластеров и центров обработки данных Apache Cassandra с помощью Azure CLI.
Необходимые компоненты
Используйте среду Bash в Azure Cloud Shell. Дополнительные сведения см . в кратком руководстве по Bash в Azure Cloud Shell.
Если вы предпочитаете выполнять справочные команды CLI локально, установите Azure CLI. Если вы работаете в Windows или macOS, Azure CLI можно запустить в контейнере Docker. Дополнительные сведения см. в статье Как запустить Azure CLI в контейнере Docker.
Если вы используете локальную установку, выполните вход в Azure CLI с помощью команды az login. Чтобы выполнить аутентификацию, следуйте инструкциям в окне терминала. Сведения о других возможностях, доступных при входе, см. в статье Вход с помощью Azure CLI.
Установите расширение Azure CLI при первом использовании, когда появится соответствующий запрос. Дополнительные сведения о расширениях см. в статье Использование расширений с Azure CLI.
Выполните команду az version, чтобы узнать установленную версию и зависимые библиотеки. Чтобы обновиться до последней версии, выполните команду az upgrade.
Для этой статьи требуется Azure CLI версии 2.30.0 или более поздней. Если вы используете Azure Cloud Shell, последняя версия уже установлена.
Внимание
Невозможно переименовать управление ресурсами Azure Управляемый экземпляр для ресурсов Apache Cassandra. Переименование этих ресурсов нарушает работу Azure Resource Manager с URI ресурсов.
Управление кластерами
В следующих разделах показано, как управлять Управляемый экземпляр Azure для кластеров Apache Cassandra:
- Создание кластера
- Удаление кластера
- Получение сведений о кластере
- Получение сведений о состоянии узла кластера
- Получение списка кластеров по группам ресурсов
- Получение списка кластеров по идентификатору подписки
Создание кластера
Чтобы создать кластер Управляемого экземпляра Azure для Apache Cassandra, выполните команду 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 \
Удаление кластера
Чтобы удалить кластер, выполните команду az managed-cassandra cluster delete:
resourceGroupName='MyResourceGroup'
clusterName='cassandra-hybrid-cluster'
az managed-cassandra cluster delete \
--cluster-name $clusterName \
--resource-group $resourceGroupName
Получение сведений о кластере
Получите сведения о кластере с помощью команды az managed-cassandra cluster show:
resourceGroupName='MyResourceGroup'
clusterName='cassandra-hybrid-cluster'
az managed-cassandra cluster show \
--cluster-name $clusterName \
--resource-group $resourceGroupName
Получение сведений о состоянии узла кластера
Получите состояние узлов кластера с помощью команды состояния кластера az managed-cassandra:
clusterName='cassandra-hybrid-cluster'
resourceGroupName='MyResourceGroup'
az managed-cassandra cluster status \
--cluster-name $clusterName \
--resource-group $resourceGroupName
Получение списка кластеров по группам ресурсов
Получите список кластеров с разбивкой по группам ресурсов с помощью команды az managed-cassandra cluster list:
subscriptionId='MySubscriptionId'
resourceGroupName='MyResourceGroup'
az managed-cassandra cluster list\
--resource-group $resourceGroupName
Получение списка кластеров по идентификатору подписки
Получите список кластеров с разбивкой по идентификаторам подписки с помощью команды az managed-cassandra cluster list:
# Set your subscription ID
az account set -s <subscriptionID>
az managed-cassandra cluster list
Управление центрами обработки данных
В следующих разделах показано, как управлять Управляемый экземпляр Azure для центров обработки данных Apache Cassandra:
- Создание центра обработки данных
- Удаление центра обработки данных
- Получение сведений о центре обработки данных.
- Получение списка центров обработки данных в кластере
- Обновление или масштабирование центра обработки данных
- Получение конфигурации Cassandra
- Обновление конфигурации Cassandra
Создание центра обработки данных
Создайте центр обработки данных, выполнив команду 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
Выберите значение для --sku
следующих доступных параметров виртуальной машины:
- 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
В настоящее время Azure Управляемый экземпляр для Apache Cassandra не поддерживает переход между семействами виртуальных машин. Например, если у вас в настоящее время есть Standard_DS13_v2 виртуальная машина и заинтересованы в обновлении до более крупной виртуальной машины, например Standard_DS14_v2, этот параметр недоступен. Однако вы можете открыть запрос в службу поддержки, чтобы запросить обновление.
В приведенной выше команде --availability-zone
задано значение false
. Чтобы включить зоны доступности, задайте для этого значения true
значение. Зоны доступности увеличивают соглашение об уровне обслуживания (SLA) для обеспечения доступности службы. Дополнительные сведения см. в полных сведениях об уровне обслуживания.
Предупреждение
Azure Управляемый экземпляр для Apache Cassandra не поддерживает зоны доступности во всех регионах. Если выбрать регион, в котором зоны доступности не поддерживаются, развертывание завершится ошибкой. См. список поддерживаемых регионов.
Успешное развертывание зон доступности также зависит от доступности вычислительных ресурсов во всех зонах в регионе. Развертывание может завершиться ошибкой, если выбранная виртуальная машина или емкость недоступна во всех зонах.
Удаление центра обработки данных
Удалите центр обработки данных, выполнив команду 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
Предупреждение
Если в кластере есть несколько центров обработки данных, сначала необходимо удалить все ссылки на центр обработки данных, который вы пытаетесь удалить в любом параметре стратегии репликации пространства ключей . Эта команда завершится ошибкой, если все пространства ключей в кластере по-прежнему имеют ссылки на центр обработки данных.
Получение сведений о центре обработки данных
Получите сведения о центре обработки данных, выполнив команду 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
Обновление или масштабирование центра обработки данных
Обновление или масштабирование центра обработки данных с помощью команды 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
Чтобы масштабировать центр обработки данных, измените --node-count
значение.
Получение конфигурации Cassandra
Получите текущую конфигурацию YAML узла с помощью команды 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'
Вы можете сделать выходные данные более читаемыми с помощью следующих команд:
$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
Обновление конфигурации Cassandra
Измените конфигурацию Cassandra в центре обработки данных с помощью команды az managed-cassandra datacenter update . Необходимо закодировать фрагмент YAML в Base64 с помощью интерактивного средства.
Например, рассмотрим следующий фрагмент YAML:
column_index_size_in_kb: 16
read_request_timeout_in_ms: 10000
При кодировании yamL преобразуется в: Y29sdW1uX2luZGV4X3NpemVfaW5fa2I6IDE2CnJlYWRfcmVxdWVzdF90aW1lb3V0X2luX21zOiAxMDAwMA==
Ниже приведена az managed-cassandra datacenter update
команда с закодированным фрагментом 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
Внимание
Убедитесь, что предоставленные параметры Cassandra YAML подходят для вашей версии Cassandra. См. параметры Cassandra версии 3.11 и параметры Cassandra версии 4.0. Вы не можете обновить следующие параметры 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
Получение списка центров обработки данных в кластере
Получите список центров обработки данных в кластере с помощью команды az managed-cassandra datacenter list:
resourceGroupName='MyResourceGroup'
clusterName='cassandra-hybrid-cluster'
az managed-cassandra datacenter list \
--resource-group $resourceGroupName \
--cluster-name $clusterName