Guida introduttiva: Configurare un cluster ibrido con Azure Istanza gestita per Apache Cassandra usando Client Configurator
Lo strumento di configurazione client di Azure è uno strumento progettato per facilitare la configurazione di un cluster ibrido e semplificare il processo di migrazione ad Azure Istanza gestita per Apache Cassandra. Se attualmente si dispone di data center locali o si opera in un ambiente self-hosted, è possibile usare Azure Istanza gestita per Apache Cassandra per incorporare facilmente altri data center nel cluster mantenendoli in modo efficace.
Importante
Lo strumento Configurator client è disponibile in anteprima pubblica. Questa funzionalità viene messa a disposizione senza contratto di servizio e non è consigliata per i carichi di lavoro di produzione. Per altre informazioni, vedere le Condizioni supplementari per l'uso delle anteprime di Microsoft Azure.
Prerequisiti
Usare l'ambiente Bash in Azure Cloud Shell. Per altre informazioni, vedere Avvio rapido su Bash in Azure Cloud Shell.
Se si preferisce eseguire i comandi di riferimento dell'interfaccia della riga di comando in locale, installare l'interfaccia della riga di comando di Azure. Per l'esecuzione in Windows o macOS, è consigliabile eseguire l'interfaccia della riga di comando di Azure in un contenitore Docker. Per altre informazioni, vedere Come eseguire l'interfaccia della riga di comando di Azure in un contenitore Docker.
Se si usa un'installazione locale, accedere all'interfaccia della riga di comando di Azure con il comando az login. Per completare il processo di autenticazione, seguire la procedura visualizzata nel terminale. Per altre opzioni di accesso, vedere Accedere tramite l'interfaccia della riga di comando di Azure.
Quando richiesto, al primo utilizzo installare l'estensione dell'interfaccia della riga di comando di Azure. Per altre informazioni sulle estensioni, vedere Usare le estensioni con l'interfaccia della riga di comando di Azure.
Eseguire az version per trovare la versione e le librerie dipendenti installate. Per eseguire l'aggiornamento alla versione più recente, eseguire az upgrade.
Questo articolo richiede l'interfaccia della riga di comando di Azure versione 2.30.0 o successiva. Se si usa Azure Cloud Shell, la versione più recente è già installata.
Azure Rete virtuale con connettività all'ambiente self-hosted o locale. Per altre informazioni sulla connessione di ambienti locali ad Azure, vedere l'articolo Connettere una rete locale ad Azure .
È necessaria l'installazione di Python. È possibile verificare se Python è installato eseguendo
python --version
nel terminale.Assicurarsi che sia il cluster Cassandra di Azure Istanza gestita che quello locale si trovino nella stessa rete virtuale. In caso contrario, è necessario stabilire il peering di rete o altri mezzi di connettività , ad esempio expressroute.
Il nome del cluster sia per il cluster gestito che per il cluster locale deve essere lo stesso. * Nel file cassandra.yaml verificare che la porta di archiviazione sia impostata su 7001 e che il nome del cluster sia uguale al cluster gestito:
cluster_name: managed_cluster-name
storage_port: 7001
UPDATE system.local SET cluster_name = 'managed_cluster-name' where key='local';
Installazione
- Scaricare e passare alla cartella del configuratore client.
- Configurare un ambiente virtuale per eseguire lo script Python:
python3 -m venv env
source env/bin/activate
python3 -m pip install -r requirements.txt
- Accedere all'interfaccia della riga di comando di Azure
az login
- Eseguire lo script Python all'interno della cartella client con le informazioni del cluster esistente (locale):
python3 client_configurator.py --subscription-id <subcriptionId> --cluster-resource-group <clusterResourceGroup> --cluster-name <clusterName> --initial-password <initialPassword> --vnet-resource-group <vnetResourceGroup> --vnet-name <vnetName> --subnet-name <subnetName> --location <location> --seed-nodes <seed1 seed2 seed3> --mi-dc-name <managedInstanceDataCenterName> --dc-name <onPremDataCenterName> --sku <sku>
Nota
- subscription-id: ID sottoscrizione di Azure.
- cluster-resource-group: gruppo di risorse che risiede nel cluster.
- cluster-name: nome del cluster Istanza gestita di Azure.
- initial-password: password per l'Istanza gestita di Azure per il cluster Apache Cassandra.
- vnet-resource-group: gruppo di risorse collegato alla rete virtuale.
- vnet-name: nome della rete virtuale collegata al cluster.
- subnet-name: nome dell'indirizzo IP allocato al cluster Cassandra.
- location: posizione in cui viene distribuito il cluster.
- seed-nodes: nodi di inizializzazione dei data center esistenti nel cluster Cassandra locale o self-hosted.
- mi-dc-name: nome del data center del cluster di Azure Istanza gestita.
- dc-name: nome del data center del cluster locale.
- sku: dimensioni dello SKU della macchina virtuale.
Lo script Python genera un archivio tar denominato
install_certs.tar.gz
. * Decomprimere questa cartella in/etc/cassandra/
in ogni nodo.sudo tar -xzvf install_certs.tar.gz -C /etc/cassandra
All'interno della
/etc/cassandra/
cartella eseguiresudo ./install_certs.sh
.- Verificare che lo script sia eseguibile eseguendo
sudo chmod +x install_certs.sh
. - Lo script installa e punta Cassandra verso i nuovi certificati necessari per connettersi al cluster di azure Istanza gestita.
- Chiede quindi all'utente di riavviare Cassandra.
- Verificare che lo script sia eseguibile eseguendo
Al termine del riavvio di Cassandra in tutti i nodi, controllare
nodetool status
. Entrambi i data center devono essere visualizzati nell'elenco, con i relativi nodi nello stato ONU (Up/Normal).Dall'Istanza gestita di Azure per Apache Cassandra è quindi possibile selezionare
AllKeyspaces
per modificare le impostazioni di replica nello schema Keyspace e avviare il processo di migrazione al cluster Cassandra Istanza gestita.
Suggerimento
L'impostazione Replica automatica deve essere abilitata tramite un modello di Arm. Il modello arm deve includere:
"properties":{
...
"externalDataCenters": ["dc-name-1","dc-name-2"],
"autoReplicate": "AllKeyspaces",
...
}
Avviso
In questo modo, tutte le definizioni di keyspaces verranno modificate in modo da includere WITH REPLICATION = { 'class' : 'NetworkTopologyStrategy', 'on-prem-datacenter-1' : 3, 'mi-datacenter-1': 3 }
.
Se non si tratta della topologia desiderata, sarà necessario modificarla ed eseguirla nodetool rebuild
manualmente nel cluster Cassandra Istanza gestita.
Altre informazioni sulla replica automatica
Aggiornare e monitorare lo stato di avanzamento della replica dei dati selezionando il
Data Center
riquadro
[!INFO]
Passaggi successivi
In questa guida introduttiva si è appreso come creare un cluster ibrido usando Azure Istanza gestita for Apache Cassandra Client Configurator. È ora possibile iniziare a usare il cluster.