Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Apache Cassandra için Azure Yönetilen Örneği, saf açık kaynak Apache Cassandra kümeleri için tam olarak yönetilen bir hizmettir. Hizmet ayrıca maksimum esneklik ve denetim için her iş yükünün belirli gereksinimlerine bağlı olarak yapılandırmaların geçersiz kılınmasını sağlar.
Bu hızlı başlangıçta, Apache Cassandra için Azure Yönetilen Örneği ile küme oluşturmak üzere Azure CLI komutlarının nasıl kullanılacağı gösterilmektedir. Ayrıca veri merkezi oluşturma ve veri merkezi içinde düğümleri yukarı veya aşağı ölçeklendirmeyi de gösterir.
Önkoşullar
Azure Cloud Shell'de Bash ortamını kullanın. Daha fazla bilgi için bkz. Azure Cloud Shell'i kullanmaya başlama.
CLI başvuru komutlarını yerel olarak çalıştırmayı tercih ediyorsanız Azure CLI'yı yükleyin . Windows veya macOS üzerinde çalışıyorsanız Azure CLI’yi bir Docker kapsayıcısında çalıştırmayı değerlendirin. Daha fazla bilgi için bkz . Docker kapsayıcısında Azure CLI'yi çalıştırma.
Yerel yükleme kullanıyorsanız az login komutunu kullanarak Azure CLI ile oturum açın. Kimlik doğrulama işlemini tamamlamak için terminalinizde görüntülenen adımları izleyin. Diğer oturum açma seçenekleri için bkz. Azure CLI kullanarak Azure'da kimlik doğrulaması.
İstendiğinde, ilk kullanımda Azure CLI uzantısını yükleyin. Uzantılar hakkında daha fazla bilgi için bkz. Azure CLI ile uzantıları kullanma ve yönetme.
Yüklü sürümü ve bağımlı kitaplıkları bulmak için az version komutunu çalıştırın. En son sürüme yükseltmek için az upgrade komutunu çalıştırın.
- Şirket içinde barındırılan veya şirket içi ortamınıza bağlantısı olan bir Azure sanal ağı kullanın. Şirket içi ortamları Azure'a bağlama hakkında daha fazla bilgi için bkz. Şirket içi ağı Azure'a bağlama.
- Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.
Önemli
Bu makale, Azure CLI sürüm 2.30.0 veya üzerini gerektirir. Azure Cloud Shell kullanıyorsanız en son sürüm zaten yüklüdür.
Yönetilen örnek kümesi oluşturma
Azure portalınaoturum açın.
Azure CLI'da abonelik kimliğinizi ayarlayın:
az account set --subscription <Subscription_ID>Kaynak grubunuzda ayrılmış bir alt ağ ile bir sanal ağ oluşturun:
az network vnet create --name <VNet_Name> --location eastus2 \ --resource-group <Resource_Group_Name> --subnet-name <Subnet Name>Apache Cassandra için Azure Yönetilen Örneği örneğinin dağıtımı için İnternet erişimi gerekir. İnternet erişiminin kısıtlandığı ortamlarda dağıtım başarısız olur. Apache Cassandra için Azure Yönetilen Örneği'nin düzgün çalışması için gereken aşağıdaki Azure hizmetlerine sanal ağınızdaki erişimi engellemediğinizden emin olun:
- Azure Depolama
- Azure Key Vault
- Azure Sanal Makine Ölçek Kümeleri
- Azure Monitör
- Microsoft Entra Kimlik
- Bulut için Microsoft Defender
Bu belirli izinleri sanal ağa uygulayın. Yönetilen örnek bunları gerektirir.
az role assignment createkomutunu kullanın ve<subscriptionID>,<resourceGroupName>ve<vnetName>öğelerini uygun değerlerle değiştirin.az role assignment create \ --assignee a232010e-820c-4083-83bb-3ace5fc29d0b \ --role 4d97b98b-1d4f-4787-a291-c67834d212e7 \ --scope /subscriptions/<subscriptionID>/resourceGroups/<resourceGroupName>/providers/Microsoft.Network/virtualNetworks/<vnetName>assigneeveroledeğerleri sabit değerlerdir. Bu değerleri tam olarak komutta belirtildiği gibi girin. Bunun yapılmaması, kümeyi oluştururken hatalara yol açar. Bu komutu çalıştırdığınızda hatalarla karşılaşırsanız, çalıştırma izniniz olmayabilir. İzinler için Azure yöneticinize başvurun.az managed-cassandra cluster create komutunu kullanarak yeni oluşturduğunuz sanal ağda kümeyi oluşturun. Aşağıdaki komutu
delegatedManagementSubnetIddeğişkeninin değeriyle çalıştırın. (değeridelegatedManagementSubnetId, izinlerin uygulandığı sanal ağ adıyla aynıdır.)resourceGroupName='<Resource_Group_Name>' clusterName='<Cluster_Name>' location='eastus2' delegatedManagementSubnetId='/subscriptions/<subscription ID>/resourceGroups/<resource group name>/providers/Microsoft.Network/virtualNetworks/<VNet name>/subnets/<subnet name>' initialCassandraAdminPassword='myPassword' cassandraVersion='5.0' # set to 4.0 for a Cassandra 4.0 cluster az managed-cassandra cluster create \ --cluster-name $clusterName \ --resource-group $resourceGroupName \ --location $location \ --delegated-management-subnet-id $delegatedManagementSubnetId \ --initial-cassandra-admin-password $initialCassandraAdminPassword \ --cassandra-version $cassandraVersion \ --debugÜç sanal makine (VM) ile küme için bir veri merkezi oluşturun. Aşağıdaki yapılandırmayı kullanın:
- VM boyutu: Standart E8s v5
- Veri diskleri: Dağıtılan vm'lerin her birine bağlı 4 P30 disk
Tüm bilgiler gerçekleştikten sonra az managed-cassandra datacenter create komutunu kullanın:
dataCenterName='dc1' dataCenterLocation='eastus2' 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 $delegatedManagementSubnetId \ --node-count 3 \ --sku $virtualMachineSKU \ --disk-capacity $noOfDisksPerNode \ --availability-zone falseAşağıdaki kullanılabilir VM boyutlarından değerini
--skuseçin:- Standard_E8s_v5
- Standard_E16s_v5
- Standard_E20s_v5
- Standard_E32s_v5
varsayılan olarak,
--availability-zonefalseolarak ayarlanır. Kullanılabilirlik alanlarını etkinleştirmek için onutrueolarak ayarlayın. Kullanılabilirlik alanları, hizmetin kullanılabilirliğini artırmaya yardımcı olur. Daha fazla bilgi için bkz. Çevirmiçi hizmetler için servis düzeyi sözleşmeleri.Kullanılabilirlik alanları tüm Azure bölgelerinde desteklenmez. Kullanılabilirlik alanlarının desteklenmediği bir bölge seçerseniz dağıtımlar başarısız olur. Desteklenen bölgeler için bkz. Azure bölgeleri listesi.
Kullanılabilirlik alanlarının başarılı dağıtımı, seçtiğiniz bölgedeki tüm bölgelerdeki işlem kaynaklarının kullanılabilirliğine tabidir. Seçtiğiniz VM boyutu seçtiğiniz bölgede kullanılamıyorsa dağıtımlar başarısız olur.
Veri merkezi oluşturulduktan sonra kümenizin ölçeğini küçültmek veya ölçeğini genişletmek için az managed-cassandra datacenter update komutunu çalıştırabilirsiniz. parametresinin
node-countdeğerini istediğiniz değerle değiştirin:resourceGroupName='<Resource_Group_Name>' clusterName='<Cluster Name>' dataCenterName='dc1' dataCenterLocation='eastus2' az managed-cassandra datacenter update \ --resource-group $resourceGroupName \ --cluster-name $clusterName \ --data-center-name $dataCenterName \ --node-count 9
Kümenize bağlanma
Apache Cassandra için Azure Yönetilen Örneği, genel IP adreslerine sahip düğümler oluşturmaz. Yeni Cassandra kümenize bağlanmak için aynı sanal ağın içinde başka bir kaynak oluşturmanız gerekir. Bu kaynak, Cassandra Sorgu Dili Kabuğu (CQLSH) yüklü bir uygulama veya VM olabilir. CQLSH bir Apache açık kaynak sorgu aracıdır.
Ubuntu VM'sini dağıtmak için Azure Resource Manager şablonu kullanabilirsiniz.
Python sürümleriyle ilgili bilinen bazı sorunlar nedeniyle, CQLSH çalıştırmak için Python3.10.12 veya Python sanal ortamıyla birlikte gelen bir Ubuntu 22.04 görüntüsü kullanmanızı öneririz.
CQLSH'den bağlanma
VM dağıtıldıktan sonra Makineye bağlanmak ve CQLSH'yi yüklemek için Secure Shell'i kullanın. Aşağıdaki komutları kullanın:
# Install default-jre and default-jdk
sudo apt update
sudo apt install openjdk-8-jdk openjdk-8-jre
Cassandra'nın hangi sürümlerinin hala desteklendiğine bakın ve ihtiyacınız olan sürümü seçin. Kararlı bir sürüm kullanmanızı öneririz.
CQLSH almak için Cassandra kitaplıklarını yükleyin. Cassandra belgelerindeki resmi adımları izleyin.
Bir uygulamadan bağlanma
CQLSH'de olduğu gibi, bir uygulamadan bağlanmak için desteklenen Apache Cassandra istemci sürücülerinden birini kullandığınızda Aktarım Katmanı Güvenliği/Güvenli Yuva Katmanı (TLS/SSL) şifrelemesi etkinleştirilmelidir ve sertifika doğrulaması devre dışı bırakılmalıdır. Örnekler için bkz. Java, .NET, Node.jsve Python.
Küme düğümlerinizin IP adreslerini uygun etki alanıyla eşlemediğiniz sürece çalışmadığından sertifika doğrulamasını devre dışı bırakmanızı öneririz. İç ilke herhangi bir uygulama için TLS/SSL sertifika doğrulaması gerçekleştirmenizi zorunluyorsa, bu kurulumu kolaylaştırmak için her düğüm için konak dosyanızda gibi 10.0.1.5 host1.managedcassandra.cosmos.azure.com girdiler ekleyin. Bu yaklaşımı benimserseniz, düğümlerin ölçeğini artırdığınızda yeni girdiler de eklemeniz gerekir.
Java için, uygulamaların kuyruk gecikmesine duyarlı olduğu kurgusal yürütme ilkesini etkinleştirmenizi öneririz. Bu yaklaşımın nasıl çalıştığını gösteren bir tanıtım için ve ilkenin nasıl etkinleştirildiğini görmek için bkz. Kurgusal yürütme ilkesi uygulama.
Apache Cassandra için Azure Yönetilen Örneği'ne bağlanmak için genellikle sertifikaları (, rootCAnode, clientveya truststoregibi) yapılandırmanız gerekmez. TLS/SSL şifrelemesi varsayılan güven depoyu ve istemcinin seçtiği çalışma zamanı parolasını kullanır. Örnek kod için bkz. Java, .NET, Node.jsve Python). Sertifikalar varsayılan olarak güvenilir olarak kabul edilir. Aksi takdirde, bunları güvenilirlik deposuna ekleyin.
İstemci sertifikalarını yapılandırma (isteğe bağlı)
İstemci sertifikalarının yapılandırılması isteğe bağlıdır. Bir istemci uygulaması, önceki adımları izledikten sonra Apache Cassandra için Azure Yönetilen Örneği'ne bağlanabilir. İsterseniz, kimlik doğrulaması için istemci sertifikaları da oluşturabilir ve yapılandırabilirsiniz. Genel olarak, sertifika oluşturmanın iki yolu vardır:
- Otomatik olarak imzalanan sertifikalar: Her düğüm için Sertifika Yetkilisi (CA) olmayan özel ve genel sertifikalar. Bu durumda, tüm genel sertifikalar gereklidir.
- CA tarafından imzalanan sertifikalar: Kendinden imzalı CA veya kamu CA tarafından verilen sertifikalar. Bu kurulum için kök CA sertifikasına ve varsa tüm aracı sertifikalara ihtiyacınız vardır. Daha fazla bilgi için bkz . SSL sertifikalarını üretim için hazırlama.
İstemciden düğüme sertifika kimlik doğrulamasını veya karşılıklı Aktarım Katmanı Güvenliği'ni uygulamak için Azure CLI kullanarak sertifikaları sağlayın. Aşağıdaki komut, istemci sertifikalarınızı Azure Yönetilen Apache Cassandra Örneğinizin güven deposuna yükler ve uygular.
cassandra.yaml ayarlarını değiştirmeniz gerekmez. Sertifikalar uygulandıktan sonra küme, istemci bağlantıları sırasında sertifikaları doğrulamak için Cassandra gerektirir. Daha fazla bilgi için bkz require_client_auth: true . Cassandra client_encryption_options.
resourceGroupName='<Resource_Group_Name>'
clusterName='<Cluster Name>'
az managed-cassandra cluster update \
--resource-group $resourceGroupName \
--cluster-name $clusterName \
--client-certificates /usr/csuser/clouddrive/rootCert.pem /usr/csuser/clouddrive/intermediateCert.pem
Sorun giderme
Azure CLI kullanarak sanal ağınıza izinler uyguladığınızda bir hatayla karşılaşırsanız, Azure portalından aynı izni el ile uygulayabilirsiniz. Bu tür bir hataya örnek olarak "için e5007d2c-4b13-4a74-9b6a-605d99f03501graf veritabanında kullanıcı veya hizmet sorumlusu bulunamıyor" hatası verilmiştir. Daha fazla bilgi için bkz. Azure portalı kullanarak Azure Cosmos DB hizmet sorumlusu ekleme.
Azure Cosmos DB rol ataması yalnızca dağıtım amacıyla kullanılır. Apache Cassandra için Azure Yönetilen Örneği'nin Azure Cosmos DB'de arka uç bağımlılığı yoktur.
Kaynakları temizleme
Kaynağınız artık gerekli olmadığında komutunu kullanarak az group delete kaynak grubunu, yönetilen örneği ve tüm ilgili kaynakları kaldırın:
az group delete --name <Resource_Group_Name>
Sonraki adım
Bu hızlı başlangıçta, Azure CLI kullanarak Apache Cassandra kümesi için bir Azure Yönetilen Örneği oluşturmayı öğrendiniz. Artık kümeyle çalışmaya başlayabilirsiniz: