빠른 시작: Azure Managed Instance for Apache Cassandra에서 클라이언트 구성기를 사용하여 하이브리드 클러스터 구성
Azure 클라이언트 구성기는 하이브리드 클러스터를 구성하고 Azure Managed Instance for Apache Cassandra로의 마이그레이션 프로세스를 간소화하는 것을 지원하도록 만든 도구입니다. 현재 온-프레미스 데이터 센터가 있거나 자체 호스팅 환경에서 운영하는 경우 Azure Managed Instance for Apache Cassandra를 사용하여 다른 데이터 센터를 사용자 클러스터에 원활하게 통합하면서 효과적으로 유지 관리할 수 있습니다.
Important
클라이언트 구성기 도구는 공개 미리 보기로 제공됩니다. 해당 기능은 별도의 Service Level Agreement(서비스 수준 규약) 없이 제공되며, 프로덕션 작업에는 사용하지 않는 것이 좋습니다. 자세한 내용은 Microsoft Azure Preview에 대한 추가 사용 약관을 참조하세요.
필수 조건
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 Virtual Network. 온-프레미스 환경을 Azure에 연결하는 방법에 대한 자세한 내용은 Azure에 온-프레미스 네트워크 연결 문서를 참조하세요.
Python 설치가 필요합니다. 터미널에서
python --version
을(를) 실행하여 python이 설치되어 있는지 확인할 수 있습니다.Azure Managed Instance와 온-프레미스 Cassandra 클러스터가 모두 동일한 가상 네트워크에 있는지 확인합니다. 그렇지 않은 경우 네트워크 피어링 또는 기타 연결 수단(예: Express 경로)을 설정해야 합니다.
관리형 클러스터와 로컬 클러스터의 클러스터 이름이 같아야 합니다. * 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 구독 ID입니다.
- cluster-resource-group: 클러스터가 상주하는 리소스 그룹입니다.
- cluster-name: Azure Managed Instance 클러스터 이름입니다.
- initial-password: Azure Managed Instance for Apache Cassandra 클러스터의 암호입니다.
- vnet-resource-group: 가상 네트워크에 연결된 리소스 그룹입니다.
- vnet-name: 클러스터에 연결된 가상 네트워크의 이름입니다.
- subnet-name: Cassandra 클러스터에 할당되고 주소가 지정된 IP의 이름입니다.
- location: 클러스터가 배포되는 위치입니다.
- seed-nodes: 온-프레미스 또는 자체 호스팅 Cassandra 클러스터에 있는 기존 데이터 센터의 시드 노드입니다.
- mi-dc-name: Azure Managed Instance 클러스터의 데이터 센터 이름입니다.
- 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
을(를) 실행하여 스크립트가 실행 가능한지 확인합니다.- 이 스크립트는 Cassandra를 설치하고 Azure Managed Instance 클러스터에 연결하는 데 필요한 새 인증서를 가리킵니다.
- 그런 다음 사용자에게 Cassandra를 다시 시작하라는 메시지를 표시합니다.
모든 노드에서 Cassandra가 다시 시작되면
nodetool status
을(를) 확인합니다. 두 데이터 센터가 모두 목록에 표시되고 해당 노드는 UN(Up/Normal) 상태여야 합니다.그러면 Azure Managed Instance for Apache Cassandra에서
AllKeyspaces
을(를) 선택하여 Keyspace 스키마의 복제 설정을 변경하고 Cassandra Managed Instance 클러스터로의 마이그레이션 프로세스를 시작할 수 있습니다.
팁
자동 복제 설정은 ARM 템플릿을 통해 사용할 수 있어야 합니다. ARM 템플릿에는 다음이 포함되어야 합니다.
"properties":{
...
"externalDataCenters": ["dc-name-1","dc-name-2"],
"autoReplicate": "AllKeyspaces",
...
}
Warning
이렇게 하면 모든 키스페이스 정의가 WITH REPLICATION = { 'class' : 'NetworkTopologyStrategy', 'on-prem-datacenter-1' : 3, 'mi-datacenter-1': 3 }
을(를) 포함하도록 변경됩니다.
원하는 토폴로지가 아닌 경우 Cassandra Managed Instance 클러스터에서 수동으로 조정하고 nodetool rebuild
을(를) 실행해야 합니다.
자동 복제에 관해 자세히 알아보기
[!정보]
다음 단계
이 빠른 시작에서는 Azure Managed Instance for Apache Cassandra 클라이언트 구성기를 사용하여 하이브리드 클러스터를 만드는 방법을 알아보았습니다. 이제 클러스터 사용을 시작할 수 있습니다.