Couchbase como um serviço: Joyent Triton

Quando estou em eventos e conferências, sempre me perguntam quanto o Couchbase cobra pela hospedagem. A resposta simples é que o Couchbase é
uma empresa de software e não uma empresa de hospedagem, mas isso não significa que você não possa hospedar o Couchbase por meio de algum outro serviço. Há Couchbase
imagens disponíveis em serviços como Amazon Web Services (AWS), Azure, Joyent e muitos outros.

Em particular, vamos analisar a hospedagem do Couchbase Server em Triton da Joyent com o Docker.

Um histórico sobre a Joyent e a Triton

Se você não conhece a Joyent, ela é uma empresa de software e serviços especializada em nuvem pública e privada orientada para o desempenho
computação. Usando o serviço Triton da Joyent, você pode "...implantar e operar contêineres com segurança e velocidade bare metal em
infraestrutura nativa de contêineres". Algumas das vantagens de executar contêineres do Docker no Triton incluem:

  • Seus contêineres são executados em bare metal, eliminando a sobrecarga de virtualização no nível do hardware. Em outras palavras, você terá a experiência de
    melhorou significativamente o desempenho.
  • Cada contêiner tem seu próprio endereço IP, o que facilita a conexão em rede entre os contêineres.
  • Você pode redimensionar seus contêineres do Docker sem tempo de inatividade.

Os requisitos

Como vamos instalar e executar um cluster do Couchbase Server no Triton da Joyent, haverá alguns requisitos no processo:

  • Docker 1.8
  • Uma conta Joyent
  • Uma chave privada SSH

Você provavelmente pode usar uma versão diferente do Docker, mas eu estou usando a 1.8. Cabe a você decidir o quão aventureiro quer ser.

Uso do Couchbase com contêineres do Docker

Neste ponto, se você ainda não tiver instalado o Caixa de ferramentas do Docker, agora é um
bom tempo. Ele conterá todas as ferramentas necessárias para usar o Docker em nosso computador local.

Agora, a Docker Toolbox contém uma ferramenta chamada Kitematic, que oferece suporte de GUI para o Docker. Não usaremos essa ferramenta. Em vez disso, vamos usar
para fazer tudo no Terminal (Mac e Linux) ou no Prompt de Comando (Windows).

Observe que, por enquanto, usaremos o Docker apenas localmente, apenas para nos familiarizarmos com o Couchbase e o Docker. Mais adiante neste guia, usaremos
conectando-se ao serviço Triton da Joyent.

Faça download e inicie um contêiner do Couchbase Server

No aplicativo Docker Terminal, execute o seguinte comando:

O comando acima fará o download da imagem oficial mais recente do Docker do Couchbase Server, dará um nome ao contêiner em nosso sistema e o iniciará.
Você pode testar se foi bem-sucedido visitando http://192.168.99.100:8091/ em seu navegador. Observação
que 192.168.99.100 é o que o Terminal do Docker informou quando você o iniciou.

Iniciar um segundo contêiner do Couchbase Server

Vá em frente e inicie uma segunda instância local do Couchbase Server com o Docker. Desta vez, você deseja fazer o seguinte:

Observe que, desta vez, alteramos o nome do contêiner e aumentamos a porta do host para 8092 em vez de 8091. Este
é para evitar conflitos de portas.

Parar e remover os dois contêineres do servidor Couchbase

Não precisamos mais desses contêineres do Docker do Couchbase Server em execução local. Para removê-los, precisamos primeiro descobrir seus contêineres
valor do contêiner da seguinte forma:

O resultado será parecido com o seguinte:

Com os valores exclusivos do contêiner, você pode executar:

Agora, os dois contêineres locais devem ser removidos.

Como conectar o Docker à API do Triton Cloud

Até agora, tudo o que o Docker e o Couchbase faziam era local em seu computador. Agora, vamos conectar nosso cliente Docker ao Joyent
Cloud API para que possamos usar o Triton. As etapas que vamos seguir podem ser encontradas em
o Documentação oficial da Joyentmas também pode ser visto neste guia.

Comece obtendo o script auxiliar Joyent da seguinte forma:

Se você não tiver ou não puder usar enrolar baixar o arquivo manualmente. Com o script baixado, agora você deseja executá-lo,
passando um conjunto específico de parâmetros:

O CLOUDAPI_URL pode ser uma das seguintes opções, de acordo com a documentação:

  • https://us-east-1.api.joyent.com
  • https://us-sw-1.api.joyent.com
  • https://eu-ams-1.api.joyent.com

O ACCOUNT_NAME é o nome de usuário que você usa para entrar no painel da Joyent. Como mencionado anteriormente, você precisará de um SSH
chave privada para conectar PRIVATE_KEY_FILE.

Quando você executar o script, ele poderá solicitar que você digite a senha da chave privada algumas vezes. Basta seguir as instruções e fazer o que ele diz. Em
no final, ele lhe fornecerá algo parecido com o seguinte:

Você vai querer executar esses exportação mas não se esqueça de alterar minhas declarações garoto ao de qualquer
que ele gerou para você. Essas instruções de exportação são importantes porque, depois de executá-las, o Docker usará o Joyent para gerenciar
em vez de sua máquina local.

Executar contêineres do Couchbase Server na Joyent

Lembra-se dos comandos locais do Docker que executamos anteriormente? Vamos executá-los novamente com uma pequena modificação:

Não deveríamos precisar definir o mapeamento de portas por conta própria quando se trata do Joyent. Isso ocorre porque a Joyent nos fornece um IP para cada contêiner que
criar. Em nossa máquina local, temos apenas um IP e as portas se tornam um problema. Basta usar o -P bandeira e você
deve ser bom.

Se você entrar no seu painel Joyent, deverá ver o nó e seu endereço IP. Se você não quiser obter as informações via
o painel Joyent, você sempre pode fazer isso por meio do Docker Terminal, pois tudo o que ele faz está no lado remoto agora:

Lembre-se, é claro, de trocar o ID exclusivo do contêiner por aqueles retornados de docker ps.

Configurar seu primeiro nó do Couchbase

Usando um dos endereços IP retornados do inspeção de docas digite-o em seu navegador da Web com a porta
8091 anexado. Algo como http://165.225.158.112:8091 o fará.

Siga as etapas para configurar o cluster do Couchbase. Lembre-se do IP e das credenciais de administrador, pois eles serão necessários quando
adicionar novos nós ao seu cluster.

Adicionar mais nós ao seu cluster do Couchbase Triton

É hora de adicionar outro contêiner do Couchbase Server ao Triton para que possamos agrupar nossos nós do Couchbase. No Terminal do Docker, execute:

Como discutimos anteriormente, obtenha o IP desse contêiner e inicialize-o em seu navegador da Web na porta 8091.

Em vez de optar por criar um novo cluster do Couchbase, escolha participar de um e insira as informações do outro servidor. Quando concluído,
reequilibre o servidor e você estará pronto para começar!

Remover contêineres do cluster

Como o Couchbase é bastante escalonável, você provavelmente precisará remover nós de vez em quando. Para fazer isso, você deverá
precisa primeiro remover graciosamente o nó do Couchbase do seu cluster por meio do painel administrativo do Couchbase. A remoção incluirá
um rebalanceamento de todos os seus nós existentes.

Com o nó removido com segurança do cluster, agora você pode remover seu contêiner do serviço Triton da Joyent. Em seu terminal do Docker, prossiga
com as mesmas etapas que seguimos quando removemos um contêiner localmente:

Lembre-se, é claro, de trocar os IDs exclusivos do contêiner pelos retornados de docker ps.

Conclusão

Acabamos de ver como usar o serviço Triton da Joyent para hospedar contêineres do Docker com o Couchbase Server. O uso do Joyent lhe proporcionará uma incrível
desempenho com sua infraestrutura bare-metal e excelente segurança.

O tópico de segurança estava fora do escopo deste artigo específico, mas pode ser revisitado em uma postagem futura.

Para complementar este artigo, a Joyent está oferecendo aos usuários do Couchbase um desconto promocional em seu serviço Triton. Você pode se inscrever no Joyent e
aproveite esta oferta aqui.

Compartilhe este artigo
Receba atualizações do blog do Couchbase em sua caixa de entrada
Esse campo é obrigatório.

Autor

Postado por Nic Raboy, defensor dos desenvolvedores, Couchbase

Nic Raboy é um defensor das modernas tecnologias de desenvolvimento móvel e da Web. Ele tem experiência em Java, JavaScript, Golang e uma variedade de estruturas, como Angular, NativeScript e Apache Cordova. Nic escreve sobre suas experiências de desenvolvimento relacionadas a tornar o desenvolvimento móvel e da Web mais fácil de entender.

Deixe um comentário

Pronto para começar a usar o Couchbase Capella?

Iniciar a construção

Confira nosso portal do desenvolvedor para explorar o NoSQL, procurar recursos e começar a usar os tutoriais.

Use o Capella gratuitamente

Comece a trabalhar com o Couchbase em apenas alguns cliques. O Capella DBaaS é a maneira mais fácil e rápida de começar.

Entre em contato

Deseja saber mais sobre as ofertas do Couchbase? Deixe-nos ajudar.