Criação de demonstrações, experimentos com protótipos, compilações diárias, verificações de bugs, whitebox, blackbox, fuzz, desempenho, escala e testes de estresse... Eu crio e destruo vários clusters do Couchbase Server todos os dias. Atualmente, minha nuvem preferida é o Azure, para essas experiências. Para os fãs do Azure, compartilhei o projeto do github que uso no meu OS-X El-Capitan. Ele está em nosso repositório geral do couchbaselabs: https://github.com/couchbaselabs/couchbase-azure
Há apenas alguns scripts para fazer tudo isso.
- Pré-requisitos
- install_prereqs.sh - script mais simples para você configurar o OSx com node e azure-cli. Obviamente, execute-o uma vez antes de começar a usar o restante dos scripts. Você pode ver alguns avisos durante a instalação. Para ter certeza de que tudo funcionou bem, eu fiz um "azure login" no final. ele deve pedir que você faça login em um navegador com uma mensagem como a seguinte: "Informações: Para fazer login, use um navegador da Web para abrir a página https://aka.ms/devicelogin. Digite o código --- para se autenticar." e aguardará que você faça login na sua conta do Azure.
- Configurações
- settings.sh - para preencher as informações da sua conta do Azure, o ID da assinatura e as configurações do servidor couchbase. Há duas configurações do Azure que você precisa fornecer antes de executar scripts automatizados. Você pode procurar no arquivo de configurações por TODO para identificar as variáveis. Aqui está o que você precisa preencher nas configurações, no mínimo.
- Configurações do Azure:
- Forneça sua conta do Azure e ID de assinatura: Você pode usar "login do azure -u
“ seguido por "azure account show" para obter o ID da assinatura. - Gere seus certificados: Os certificados são usados para conectividade sem senha. Isso é necessário para que a automação funcione. Use "ssh-keyget" para gerar os certificados.
- Forneça sua conta do Azure e ID de assinatura: Você pode usar "login do azure -u
- Configurações do Couchbase:
- Também recomendo que você altere o nome e a senha da conta de administrador do Azure (usados para fazer login no console da Web em http://IP:8091) e a conta e as senhas de administrador da jumpbox (usadas para conexão com a jumpbox do Windows Server).
- Configurações do Azure:
- settings.sh - para preencher as informações da sua conta do Azure, o ID da assinatura e as configurações do servidor couchbase. Há duas configurações do Azure que você precisa fornecer antes de executar scripts automatizados. Você pode procurar no arquivo de configurações por TODO para identificar as variáveis. Aqui está o que você precisa preencher nas configurações, no mínimo.
Figura: destacou os itens TODO:. recomendado acima
- Criar e excluir o cluster do Couchbase Server
- create_azure_cluster.sh – Este é o script automatizado que provisionará VMs, baixará e instalará o Couchbase Server e construirá seu cluster. Primeiro, você precisará fazer login na sua assinatura do Azure. O script tem três partes. Configuração de um cluster de vnet, jumpbox e couchbase server.
- Configuração da VNet (rede virtual): Permite que todos os nós se comuniquem por meio de endereços 10.0.*. Isso é feito para aumentar a eficiência da rede.
- Configuração do Jumpbox: O Jumpbox é necessário para que o cluster do Couchbase Server não seja exposto à Internet. O Jumpbox reside na mesma rede virtual que o cluster e pode acessar o cluster por meio de IPs privados para administração. Por padrão, ele é um nó do Windows Server. O endereço e a porta do RDP são transmitidos para o console no final da configuração. Você pode especificar uma imagem diferente ou desativar completamente o jumpbox usando a configuração disable_jumpbox.
- Configuração do cluster: Para cada nó do cluster, o script cria uma VM na vnet, baixa e instala a imagem do Couchbase Server especificada e forma um cluster usando os nós. Após cada download+instalação, o script executará CLUSTER-INIT para o primeiro nó, ADD para os nós subsequentes e REBALANCE com o último nó. O script exibirá o link do console da Web e as informações da conta de administrador do vm e do cluster.
- create_azure_cluster.sh – Este é o script automatizado que provisionará VMs, baixará e instalará o Couchbase Server e construirá seu cluster. Primeiro, você precisará fazer login na sua assinatura do Azure. O script tem três partes. Configuração de um cluster de vnet, jumpbox e couchbase server.
O resultado será parecido com o seguinte.
- delete_azure_cluster.sh – Este é o script de limpeza! Limpa e implementa o cluster, o jumpbox e a vnet. Ele usará o prefixo vm_name_prefix para localizar e excluir os nós, portanto, é importante que você escolha um prefixo exclusivo para os nomes das VMs. Ele confirmará a exclusão com cada nó com um [y/n]. Se desejar uma exclusão rápida e silenciosa (depois de experimentar o script algumas vezes por segurança), você poderá ativar o modo fast_delete no arquivo de configuração.
O resultado será parecido com o seguinte.
Lembre-se de que você pode encontrar o conjunto completo de scripts aqui no github: https://github.com/couchbaselabs/couchbase-azure.
Feliz hacking!
-cihan