Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A Instância Gerenciada do Azure para Apache Cassandra é um serviço totalmente gerenciado para clusters puros de código aberto do Apache Cassandra. O serviço também permite que as configurações sejam substituídas, dependendo das necessidades específicas de cada carga de trabalho, para máxima flexibilidade e controle.
Este guia de início rápido demonstra como usar o portal do Azure para criar uma Instância Gerenciada do Azure para o cluster do Apache Cassandra.
Pré-requisito
Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.
Criar um cluster de instância gerenciada
Entre no portal do Azure.
Na barra de pesquisa, pesquise a Instância Gerenciada pelo Apache Cassandra e selecione o resultado.
Selecione Criar Instância Gerenciada para o cluster do Apache Cassandra.
No painel Criar Instância Gerenciada para Apache Cassandra , insira as seguintes informações:
Assinatura: selecione sua assinatura do Azure na lista suspensa.
Grupo de recursos: especifique se deseja criar um novo grupo de recursos ou usar um existente. Um grupo de recursos é um contêiner que mantém os recursos relacionados a uma solução do Azure.
Nome do cluster: insira um nome para o cluster.
Local: selecione o local para implantar o cluster.
Versão do Cassandra: selecione a versão do Apache Cassandra a ser implantada.
Extensão: selecione extensões a serem adicionadas, incluindo o Cassandra Lucene Index. Isso só é relevante para o Cassandra v3.11.
Senha inicial do administrador do Cassandra: insira a senha usada para criar o cluster.
Confirme a senha do administrador do Cassandra: Digite sua senha novamente.
Rede virtual: selecione uma rede virtual e uma sub-rede existentes ou crie uma nova. Anote as regras de rede ou use a configuração baseada em VPN.
Atribuir funções: as redes virtuais exigem permissões especiais para permitir que clusters do Cassandra gerenciados sejam implantados. Mantenha essa caixa selecionada se você criar uma nova rede virtual ou usar uma rede virtual existente sem permissões aplicadas. Se você usar uma rede virtual em que implantou anteriormente os clusters do Cassandra da Instância Gerenciada de SQL do Azure, desmarque essa opção.
Se você usar uma rede virtual privada, não precisará abrir outra conexão.
A implantação da Instância Gerenciada do Azure para Apache Cassandra requer acesso à Internet. A implantação falha em ambientes em que o acesso à Internet é restrito. Verifique se você não está bloqueando o acesso em sua rede virtual aos seguintes serviços vitais do Azure necessários para que o Cassandra Gerenciado funcione corretamente. Para obter mais informações, consulte as regras de rede de saída necessárias.
Armazenamento do Azure
Azure Key Vault
Conjuntos de dimensionamento de máquina virtual do Azure
Azure Monitor
Microsoft Entra ID
Microsoft Defender para Nuvem
Replicação automática: escolha a forma de duplicação automática a ser usada. Para obter mais informações, confira Replicação pronta para uso.
Estratégia de agendamento de eventos: a estratégia utilizada pelo cluster para eventos agendados.
Dica
-
StopANYsignifica interromper qualquer nó quando houver um evento agendado para o nó. -
StopByRacksignifica interromper nós apenas em um rack específico para um evento agendado específico. Por exemplo, se vários eventos forem agendados para nós em racks diferentes ao mesmo tempo, somente nós em um rack são interrompidos. Outros nós em outros racks estão atrasados.
Selecione a guia Data center .
Insira as seguintes informações:
Nome do data center: insira um nome de datacenter no campo de texto.
Zona de disponibilidade: selecione esta caixa de seleção se quiser habilitar zonas de disponibilidade.
Tamanho da SKU: escolha entre os tamanhos de camada de produto da VM (máquina virtual) disponíveis.
Introduzimos o cache de gravação (versão prévia pública) usando camadas de serviço de VM da série L. Essa implementação visa minimizar as latências final e melhorar o desempenho de leitura, especialmente para cargas de trabalho com uso intensivo de leitura. Essas camadas de produto específicas são equipadas com discos conectados localmente, que garantem maior IOPS para operações de leitura e latência de cauda reduzida.
O cache de gravação é fornecido sem um contrato de nível de serviço (SLA). Não o recomendamos para carga de trabalho de produção. Para obter mais informações, consulte Termos de Uso Complementares de Versões Prévias do Microsoft Azure.
Não. de discosescolha o número de discos do tipo p30 a serem anexados a cada nó do Cassandra.
Não. de nós: escolha o número de nós do Cassandra a serem implantados neste datacenter.
Não há suporte para zonas de disponibilidade em todas as regiões. As implantações falharão se você selecionar uma região em que não há suporte para zonas de disponibilidade. Para obter mais informações, consulte a lista de regiões do Azure.
A implantação bem-sucedida de zonas de disponibilidade também está sujeita à disponibilidade de recursos de computação em todas as zonas da região específica. As implantações poderão falhar se a camada de produto selecionada ou a capacidade não estiver disponível em todas as zonas.
Selecione Examinar + criar>Criar.
Pode levar até 15 minutos para criar um cluster.
Após a conclusão da implantação, verifique o grupo de recursos para ver o cluster de instância gerenciada recém-criado.
Para navegar pelos nós de cluster, vá até o recurso de cluster e abra o painel do Data Center .
Dimensionar um datacenter
Depois de implantar um cluster com um único datacenter, você pode dimensionar horizontal ou verticalmente. Realce o datacenter e, em seguida, selecione Escala.
Escala horizontal
Para escalar horizontalmente ou reduzir horizontalmente os nós, mova o controle deslizante para o número desejado. Você também pode editar o valor. Quando terminar, selecione Escala.
Escala vertical
Para escalar verticalmente ou reduzir verticalmente o tamanho da camada do produto para seus nós, selecione as opções na lista suspensa Tamanho da SKU. Quando terminar, selecione Escala.
O tempo necessário para uma operação de dimensionamento depende de vários fatores. A operação pode levar vários minutos. Quando o Azure notifica você de que a operação de escala foi concluída, isso não significa que todos os nós tenham se juntaram ao anel do Cassandra. Os nós são totalmente comissionados quando todos exibem um status Íntegro e o status do datacenter aparece como Bem-sucedido.
O dimensionamento é uma operação online e funciona da mesma maneira descrita para aplicação de patch. Para obter mais informações, consulte Patching.
Adicionar um datacenter
Para adicionar outro datacenter, no painel do Data Center , selecione Adicionar.
Se você adicionar um datacenter em uma região diferente, precisará selecionar uma rede virtual diferente. Verifique se essa rede virtual tem conectividade com a rede virtual da região primária que foi criada anteriormente. Além disso, verifique se todas as outras redes virtuais que hospedam datacenters estão dentro do cluster da instância gerenciada. Para obter mais informações, consulte Conectar redes virtuais por meio de emparelhamento de rede virtual.
Verifique se você aplicou a função apropriada à sua rede virtual antes de tentar implantar um cluster de instância gerenciada. Utilize o seguinte comando CLI do Azure:
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>Preencha os campos apropriados:
Nome do datacenter: Na lista suspensa, selecione a sua assinatura do Azure.
Zona de disponibilidade: selecione se você deseja habilitar zonas de disponibilidade neste datacenter.
Local: local em que o datacenter é implantado.
Tamanho da SKU: escolha entre os tamanhos de camada de produto da VM disponíveis.
Não. de discosescolha o número de discos do tipo p30 a serem anexados a cada nó do Cassandra.
Não. de nós: escolha o número de nós do Cassandra a serem implantados neste datacenter.
Rede virtual: selecione uma rede virtual e uma sub-rede existentes.
O portal do Azure não permite a criação de uma nova rede virtual quando você adiciona um datacenter. Você precisa escolher uma rede virtual existente e garantir que haja conectividade entre as sub-redes de destino em que os datacenters são implantados. Você também precisa aplicar a função apropriada à rede virtual para permitir a implantação, conforme descrito anteriormente.
Quando o datacenter é implantado, você deve ser capaz de exibir todas as informações do datacenter no painel do Data Center .
Para garantir a replicação entre datacenters, conecte-se ao Cassandra Query Language Shell (CQLSH) e use a consulta CQL a seguir para atualizar a estratégia de replicação em cada keyspace para incluir todos os datacenters no cluster. As tabelas do sistema são atualizadas automaticamente.
ALTER KEYSPACE "ks" WITH REPLICATION = {'class': 'NetworkTopologyStrategy', 'dc': 3, 'dc2': 3};Se você adicionar um datacenter a um cluster que já tem dados, execute
rebuildpara replicar os dados históricos. Na CLI do Azure, use a seguinte execução de comandonodetool rebuildem cada nó do novo data center. Essa ação substitui<new dc ip address>pelo endereço IP do nó e<olddc>pelo nome do data center existente:az managed-cassandra cluster invoke-command \ --resource-group $resourceGroupName \ --cluster-name $clusterName \ --host <new dc ip address> \ --command-name nodetool --arguments rebuild="" "<olddc>"=""
Você não deve permitir que os clientes de aplicativo façam gravações no novo data center até aplicar alterações de replicação de keyspace. Caso contrário, a recompilação não funcionará e você precisará criar uma solicitação de suporte para que nossa equipe possa executar repair para você.
Atualizar a configuração do Cassandra
Você pode usar o portal do Azure ou os comandos da CLI para atualizar a configuração do Cassandra YAML em um datacenter. Para atualizar as configurações no portal:
Em Configurações, selecione Configuração do Cassandra. Realce o datacenter cuja configuração você deseja alterar e selecione Atualizar.
Na janela que é aberta, insira os nomes de campo no formato YAML, conforme mostrado aqui. Em seguida, selecione Atualizar.
Quando a atualização for concluída, os valores substituídos serão exibidos no painel Configuração do Cassandra .
Somente valores de configuração substituídos do Cassandra são mostrados no portal do Azure.
Verifique se as configurações de YAML do Cassandra que você fornece são apropriadas para a versão do Cassandra implantada. Para obter mais informações, consulte [Cassandra v5.0] (https://github.com/apache/cassandra/blob/cassandra-5.0/conf/cassandra.yaml) e Cassandra v4.0 para v4.0 e Cassandra v3.11 para as configurações do Cassandra v3.11. Você não pode atualizar as seguintes configurações de YAML:
cluster_nameseed_providerinitial_tokenautobootstrapclient_encryption_optionsserver_encryption_optionstransparent_data_encryption_optionsaudit_logging_optionsauthenticatorauthorizerrole_managerstorage_portssl_storage_portnative_transport_portnative_transport_port_ssllisten_addresslisten_interfacebroadcast_addresshints_directorydata_file_directoriescommitlog_directorycdc_raw_directorysaved_caches_directoryendpoint_snitchpartitionerrpc_addressrpc_interface
Atualizar a versão do Cassandra
As atualizações de versão do Cassandra 5.0 e turnkey estão em versão prévia pública. Esses recursos são fornecidos sem um SLA. Não recomendamos esses recursos para cargas de trabalho de produção. Para obter mais informações, consulte Termos de Uso Complementares de Versões Prévias do Microsoft Azure.
Você pode realizar atualizações importantes de versão diretamente do portal ou por meio da CLI do Azure, do Terraform ou dos modelos do Azure Resource Manager.
Na guia Visão Geral , selecione Atualizar.
Selecione a versão do Cassandra na lista suspensa.
Não ignore as versões. Recomendamos que você atualize de apenas uma versão para outra. Por exemplo, atualize 3.11 para 4.0 ou 4.0 para 4.1 ou 4.1 para 5.0.
Selecione Atualizar para salvar.
Replicação turnkey
O Cassandra 5.0 apresenta uma abordagem simplificada para implantar clusters de várias regiões, que oferecem maior conveniência e eficiência. Se você usar a funcionalidade de replicação turnkey, a configuração e o gerenciamento de clusters de várias regiões serão mais acessíveis. Você obtém uma integração e operação mais suaves em ambientes distribuídos.
Essa atualização reduz as complexidades associadas à implantação e manutenção de várias configurações de região. Os usuários podem usar os recursos do Cassandra com maior facilidade e eficácia.
- Nenhum: a opção Replicação Automática está definida como Nenhuma.
-
Keyspaces do sistema: replicar automaticamente todos os keyspaces do sistema (
system_auth,system_tracesesystem_auth). - Todos os Keyspaces: Autoreplicar todos os keyspaces, monitorar se novos keyspaces são criados e aplicar automaticamente as configurações de autoreplicação.
Cenários de duplicação automática
Quando você adiciona um novo datacenter, o recurso de duplicação automática no Cassandra é executado nodetool rebuild perfeitamente para garantir a replicação bem-sucedida de dados no datacenter adicionado. A remoção de um data center dispara uma remoção automática do data center específico dos keyspaces.
Para datacenters externos, como aqueles hospedados localmente, use a propriedade do datacenter externo para incluí-los nos keyspaces. Essa abordagem permite que Cassandra incorpore esses datacenters externos como fontes para o processo de reconstrução.
Se você definir a Replicação Automática para Todos os Keyspaces, a replicação de keyspaces será alterada para incluir:
WITH REPLICATION = { 'class' : 'NetworkTopologyStrategy', 'on-prem-datacenter-1' : 3, 'mi-datacenter-1': 3 }
Se essa topologia não for o que você deseja, use SystemKeyspaces, ajuste-os por conta própria e execute nodetool rebuild manualmente no cluster da Instância Gerenciada do Azure para Apache Cassandra.
Desalocar um cluster
Para ambientes de não produção, você pode pausar ou desalocar recursos no cluster para evitar ser cobrado por eles. Você continua sendo cobrado pelo armazenamento. Primeiro, altere o Tipo de Cluster para Não Produção e selecione Desalocar.
Use o tipo de cluster NonProduction apenas para economizar custos de desenvolvimento. Esse tipo de cluster pode vir com camadas de produto menores. Não o use para executar cargas de trabalho de produção.
- Os tipos de cluster definidos como NonProduction não têm garantias de SLA aplicadas a eles.
- Não execute nenhuma operação de esquema ou gravação durante a desalocação. Essa ação pode levar à perda de dados. Em casos raros, você pode enfrentar uma corrupção do esquema, o que requer intervenção manual da equipe de suporte.
Solução de problemas
Se você encontrar um erro ao aplicar permissões à sua rede virtual ao usar a CLI do Azure, poderá aplicar a mesma permissão manualmente no portal do Azure. Um exemplo desse erro é "Não é possível localizar o usuário ou a entidade de serviço no banco de dados gráfico para e5007d2c-4b13-4a74-9b6a-605d99f03501." Para obter mais informações, consulte Usar o portal do Azure para adicionar a entidade de serviço do Azure Cosmos DB.
A atribuição de função Azure Cosmos DB é usada somente para fins de implantação. A Instância Gerenciada do Azure para Apache Cassandra não depende do Azure Cosmos DB no back-end.
Conectar-se ao seu cluster
A Instância Gerenciada do Azure para Apache Cassandra não cria nós com endereços IP públicos. Para se conectar ao cluster do Cassandra recém-criado, crie outro recurso dentro da rede virtual. Esse recurso pode ser um aplicativo ou uma VM com a ferramenta de consulta de software livre do Apache CQLSH instalada. Você pode usar um modelo para implantar uma VM do Ubuntu.
Conectar a partir do CQLSH
Depois que a VM for implantada, use o Secure Shell para se conectar ao computador. Para instalar o CQLSH, use os seguintes comandos:
# Install default-jre and default-jdk
sudo apt update
sudo apt install openjdk-8-jdk openjdk-8-jre
# Install the Cassandra libraries in order to get CQLSH:
echo "deb http://archive.apache.org/dist/cassandra/debian 311x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list
curl https://downloads.apache.org/cassandra/KEYS | sudo apt-key add -
sudo apt-get update
sudo apt-get install cassandra
# Export the SSL variables:
export SSL_VERSION=TLSv1_2
export SSL_VALIDATE=false
# Connect to CQLSH (replace <IP> with the private IP addresses of a node in your Datacenter):
host=("<IP>")
initial_admin_password="Password provided when creating the cluster"
cqlsh $host 9042 -u cassandra -p $initial_admin_password --ssl
Conectar-se a partir de um aplicativo
Assim como acontece com o CQLSH, quando você usa um dos drivers de cliente do Apache Cassandra com suporte para se conectar a partir de um aplicativo, a criptografia TLS/SSL (Transport Layer Security/Secure Sockets Layer) deve ser habilitada e a verificação de certificado deve ser desabilitada. Para obter exemplos usados para se conectar à Instância Gerenciada do Azure para Apache Cassandra, consulte Java, .NET, Node.jse Python.
Recomendamos desabilitar a verificação de certificado porque ela não funciona, a menos que você mapeie endereços IP de seus nós de cluster para o domínio apropriado. Se uma política interna exigir que você execute a verificação de certificado TLS/SSL para qualquer aplicativo, adicione entradas como 10.0.1.5 host1.managedcassandra.cosmos.azure.com no arquivo de hosts para cada nó para facilitar essa configuração. Se você adotar essa abordagem, também será necessário adicionar novas entradas sempre que você escalar verticalmente os nós.
Para Java, recomendamos habilitar a política de execução especulativa em que os aplicativos são sensíveis à latência final. Para obter uma demonstração que ilustra como essa abordagem funciona e para ver como habilitar a política, consulte Demonstração: Implementar a execução especulativa.
Na maioria dos casos, não deve ser necessário configurar ou instalar certificados (comorootCA, , nodeclientou truststore) para se conectar à Instância Gerenciada do Azure para Apache Cassandra. Para habilitar a criptografia TLS/SSL, use o repositório de confiança padrão e a senha do runtime que o cliente está usando. Esse ambiente confia na Instância Gerenciada do Azure para certificados do Apache Cassandra. Em casos raros, se o certificado não for confiável, talvez seja necessário adicioná-lo ao repositório de confiança. Para obter o código de exemplo, consulte Java, .NET, Node.jse Python.
Configurar certificados de cliente (opcional)
A configuração de certificados do cliente é opcional. Um aplicativo cliente pode se conectar à Instância Gerenciada do Azure para Apache Cassandra se as etapas anteriores forem concluídas. Se preferir, você também pode criar e configurar certificados de cliente para autenticação. Em geral, há duas maneiras de criar certificados:
- Certificados autoassinados: Certificados privados e públicos sem uma Autoridade de Certificação (AC) para cada nó. Nesse caso, você precisa de todos os certificados públicos.
- Certificados assinados por uma AC: Certificados emitidos por uma AC autoassinada ou uma AC pública. Nesse caso, você precisa do certificado da Autoridade Certificadora raiz e dos certificados de todos os intermediários, se aplicável. Para obter mais informações, consulte Preparar certificados SSL para produção.
Se você quiser implementar a autenticação de certificado cliente a nó ou o mTLS (Segurança de Camada de Transporte Mútua), use a CLI do Azure para fornecer os certificados. O comando a seguir carrega e aplica seus certificados de cliente ao repositório de confiança para o cluster de instância gerenciada. Você não precisa editar cassandra.yaml as configurações. Depois de aplicar o comando, o cluster exigirá que o Cassandra verifique os certificados quando um cliente se conecta. Para obter mais informações, consulte 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
Limpar os recursos
Se você não quiser continuar a usar esse cluster de instância gerenciada, siga estas etapas para excluí-lo:
- No menu esquerdo do portal do Azure, selecione Grupos de recursos.
- Na lista, selecione o grupo de recursos que você criou para este início rápido.
- Na página Visão geral do grupo de recursos, selecione Excluir grupo de recursos.
- No próximo painel, insira o nome do grupo de recursos a ser excluído e selecione Excluir.