Azure 用戶端設定器是一種工具,其設計目的是協助您設定混合式叢集,並簡化 Azure 受控執行個體 for Apache Cassandra 的移轉程式。 如果您目前有內部部署數據中心,或是在自我裝載環境中運作,您可以使用適用於 Apache Cassandra 的 Azure 受控執行個體,將其他數據中心順暢地納入您的叢集中,同時有效地維護這些數據中心。
用戶端 Configurator 工具處於公開預覽狀態。
此功能在沒有服務等級協議的情況下提供,不建議用於生產工作負載。
如需詳細資訊,請參閱
Microsoft Azure 預覽版增補使用條款
。
在
Azure Cloud Shell
中使用 Bash 環境。 如需詳細資訊,請參閱
Azure Cloud Shell 中的 Bash 快速入門
。
若要在本地執行 CLI 參考命令,請
安裝
Azure CLI。 若您在 Windows 或 macOS 上執行,請考慮在 Docker 容器中執行 Azure CLI。 如需詳細資訊,請參閱〈
如何在 Docker 容器中執行 Azure CLI
〉。
如果您使用的是本機安裝,請使用
az login
命令,透過 Azure CLI 來登入。 請遵循您終端機上顯示的步驟,完成驗證程序。 如需其他登入選項,請參閱
使用 Azure CLI 登入
。
出現提示時,請在第一次使用時安裝 Azure CLI 延伸模組。 如需擴充功能詳細資訊,請參閱
使用 Azure CLI 擴充功能
。
執行
az version
以尋找已安裝的版本和相依程式庫。 若要升級至最新版本,請執行
az upgrade
。
本文需要 Azure CLI 2.30.0 版或更高版本。 如果您使用 Azure Cloud Shell,則已安裝最新版本。
Azure 虛擬網絡
可連線到自我裝載或內部部署環境。 如需將內部部署環境連線至 Azure 的詳細資訊,請參閱
將內部部署網路 連線 至 Azure
一文。
需要 Python 安裝。 您可以藉由在終端機中執行
python --version
來檢查是否已安裝 python。
確定 Azure 受控執行個體 和內部部署 Cassandra 叢集都位於相同的虛擬網路上。 如果沒有,則必須建立網路對等互連或其他連線方式(例如,快速路由)。
受控叢集和本機叢集的叢集名稱必須相同。
* 在 cassandra.yaml 檔案中,確保記憶體埠設定為 7001,且叢集名稱與受控叢集相同:
cluster_name: managed_cluster-name
storage_port: 7001
UPDATE system.local SET cluster_name = 'managed_cluster-name' where key='local';
下載並流覽至 客戶端設定器資料夾。
設定虛擬環境以執行 Python 文稿:
python3 -m venv env
source env/bin/activate
python3 -m pip install -r requirements.txt
登入 Azure CLI az login
在用戶端資料夾中執行 Python 腳稿,其中包含來自現有 (內部部署) 叢集的資訊:
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>
subscription-id:Azure 訂用帳戶標識符。
cluster-resource-group:叢集所在的資源群組。
cluster-name:Azure 受控執行個體 叢集名稱。
initial-password:適用於 Apache Cassandra 叢集的 Azure 受控執行個體 密碼。
vnet-resource-group:連結至虛擬網路的資源群組。
vnet-name:連結至叢集的虛擬網路名稱。
subnet-name:配置給 Cassandra 叢集之 IP 位址的名稱。
位置:部署叢集的位置。
seed-nodes:內部部署或自我裝載 Cassandra 叢集中現有數據中心的種子節點。
mi-dc-name:Azure 受控執行個體 叢集的數據中心名稱。
dc-name:內部部署叢集的數據中心名稱。
sku:虛擬機 SKU 大小。
Python 腳本會產生名為 的 install_certs.tar.gz
tar 封存。
* 將此資料夾解壓縮到 /etc/cassandra/
每個節點上。
sudo tar -xzvf install_certs.tar.gz -C /etc/cassandra
在 /etc/cassandra/
資料夾內,執行 sudo ./install_certs.sh
。
執行 sudo chmod +x install_certs.sh
,確定腳本是可執行的。
腳本會安裝並指向連接到 Azure 受控執行個體 叢集所需的新憑證 Cassandra。
然後,它會提示使用者重新啟動 Cassandra。
在 Cassandra 在所有節點上重新啟動之後,請檢查 nodetool status
。 這兩個數據中心都應該出現在清單中,其節點會處於 UN (Up/Normal) 狀態。
接著,從適用於 Apache Cassandra 的 Azure 受控執行個體,您可以選取AllKeyspaces
以變更 Keyspace 架構中的複寫設定,並開始將程式移轉至 Cassandra 受控執行個體 叢集。
這會變更所有 keyspaces 定義以包含 WITH REPLICATION = { 'class' : 'NetworkTopologyStrategy', 'on-prem-datacenter-1' : 3, 'mi-datacenter-1': 3 }
。
如果這不是您想要的拓撲,您必須調整它,並在 Cassandra 受控執行個體 叢集上手動執行nodetool rebuild
。
深入了解 自動復寫
選取窗格以更新和監視數據復寫 Data Center
進度
在本快速入門中,您已瞭解如何使用適用於 Apache Cassandra 用戶端 Configurator 的 Azure 受控執行個體 建立混合式叢集。 您現在可以開始使用叢集。
瞭解如何使用 Apache Spark 和雙寫入 Proxy 遷移至適用於 Apache Cassandra 的 Azure 受控執行個體