O recurso Cluster On/Off do Couchbase Capella permite que os usuários pausem e retomem seus clusters sem problemas, sem excluir permanentemente os dados, ajudando a otimizar as despesas com a nuvem e a melhorar a eficiência operacional.

Neste blog, exploraremos como esse recurso funciona e como você pode automatizá-lo usando o Terraform.

Os usuários têm duas opções para gerenciar a disponibilidade do cluster:

    • On-Demand On/Off - Pause e retome manualmente os clusters conforme necessário.
    • Ativação/desativação programada - Automatize a pausa/retomada de clusters em datas e fusos horários específicos.

Desligar (pausar) um cluster

    • Interrompe todos os serviços do cluster.
    • Persiste os dados, a configuração e os metadados.
    • Libera recursos de computação para reduzir custos, mantendo o armazenamento intacto.

Ativação (retomada) de um cluster

    • Restaura o cluster de um estado pausado.
    • Reinicia os serviços e torna os dados acessíveis novamente.
    • Permite que os clientes se reconectem e retomem as operações sem problemas.

Por que usar o recurso de ligar/desligar o cluster?

  1. Economiza custos computacionais e otimiza com base no uso:
    • Quando um cluster é desligado, os recursos de computação (por exemplo, CPU, RAM) não são cobrados, reduzindo significativamente os custos de infraestrutura.
    • Quando um cluster está desativado, você paga apenas o valor desativado (principalmente custos de armazenamento e gerenciamento).
    • Ajuda a alinhar os custos com o uso real, em vez de pagar por recursos ociosos.
  1. Reduz a sobrecarga operacional:
    • Elimina a necessidade de provisionamento e desmontagem manual do cluster.
    • Os usuários podem retomar facilmente um cluster pausado sem reconfigurar ou reimplantar recursos.
  1. Persistência dos dados e desenvolvimento/testes econômicos:
    • Os dados, o esquema (buckets, escopos, coleções), os índices, os usuários, as listas de permissões e os backups permanecem intactos quando um cluster é pausado.
    • Garante que não haja perda de configuração ao retomar as operações.
    • Os desenvolvedores podem pausar ambientes de não produção fora do horário de trabalho. Isso evita custos desnecessários em pipelines de CI/CD, ambientes de preparação ou UAT.

Otimização de custos

Uma das maneiras mais simples e eficazes de reduzir os custos operacionais é desligar os clusters quando eles não estiverem em uso. Vamos considerar o caso de uso de um cluster da AWS com 3 nós (dados, índice e consulta) usando um Plano Developer Pro em Couchbase Capella, com a configuração de 2 vCPUs, 16 GB de RAM, tamanho do disco de 50 GB, tipo de disco GP3, e IOPS 3000.

Quando esse cluster é mantido on-line 24 horas por dia, 7 dias por semana, ele incorre em um custo mensal de computação de $1,497.60 sob o modelo pay-as-you-go. No entanto, muitos clusters de desenvolvimento são necessários apenas durante o horário de trabalho. Simplesmente desligando o cluster por 12 horas por dia, por exemplo, durante a noite, as equipes podem economizar $705.60 por mês, totalizando 47% redução nos custos de computação. Isso é um forte argumento para automatizar o tempo de inatividade do cluster para otimizar os gastos com a nuvem sem afetar a produtividade do desenvolvedor.

Em ambientes com vários clusters ou ambientes de desenvolvimento que não exigem disponibilidade 24 horas por dia, ao programar o tempo de inatividade para clusters não essenciais, as equipes podem realocar seus orçamentos com mais eficiência, investindo em áreas que afetam diretamente os resultados comerciais.


Primeiros passos: implantar uma programação on/off usando o provedor Terraform

O Capella Terraform Provider permite que os usuários gerenciem as implementações do Capella de forma programática, automatizando a orquestração de recursos. Vamos examinar um tutorial simples para implementar um cronograma On/Off no Capella por meio do provedor Terraform.

Para saber mais sobre como desativar ou ativar o cluster sob demanda usando o Terraform, Consulte os exemplos e o LEIAME fornecidos em este repositório. Há uma visão geral passo a passo de como ativar/desativar o cluster sob demanda.

Além do recurso de ligar/desligar o cluster, um Serviço de Aplicativo também pode ser ligado/desligado sob demanda. Consulte o seguinte documentação e o provedor Terraform exemplos para obter mais informações.

O que você aprenderá

    1. As etapas para configurar os arquivos e entender os comandos necessários para executar os scripts do Terraform.
    2. Um tutorial passo a passo sobre a implementação de uma programação de ativação/desativação de cluster no Capella usando o provedor.

Pré-requisitos

Antes de começar, verifique se você tem:

    1. Versão do Terraform >= 1.5.2
    2. Versão Go >= 1.2.0
    3. Conta paga Capella
    4. Cluster Capella - Você pode criar um cluster do Couchbase usando o provedor, o  IU da Capellaou o API de gerenciamento da Capella e usar o organization_id, project_id e cluster_id para criar a programação de ligar/desligar.
    5. Authentication APIKey - Você pode criar a chave de API usando o IU da Capella ou o API de gerenciamento da Capella. Você deve criar uma chave de API que tenha o conjunto certo de funções associadas a ela, dependendo do escopo dos recursos gerenciados pelo provedor.

Para obter informações sobre como configurar a autorização e a autenticação, consulte o guia Terraform repositório e isso blog postar.


Etapa 1: Configuração

Criar as variáveis

  1. Crie um arquivo chamado variables.tf e adicione as seguintes definições de variáveis. Usaremos essas variáveis em nosso arquivo de configuração.
  2. Crie um arquivo chamado terraform.template.tfvars e adicione as seguintes linhas. Aqui, especificamos os valores das principais variáveis associadas à implantação.
  3. Crie um arquivo chamado capella.tf e adicione a seguinte configuração para criar o agendamento de ativação/desativação para um cluster Capella existente em um projeto:

Etapa 2: Implantar e gerenciar o cronograma

Inicializar o provedor do Terraform

O Terraform deve ser inicializado na primeira vez que você usar o provedor:

Revisar o plano do Terraform

Use o seguinte comando para revisar os recursos que serão implantados:

Você deverá ver uma saída semelhante à seguinte ao criar uma programação de ativação/desativação para um cluster existente:

Executar o plano do Terraform

Implante os recursos do Couchbase Capella usando o seguinte comando:

Digite "sim" se o plano parecer bom.

Observação: Levará alguns minutos para implantar os recursos se você estiver criando um projeto, implantando um cluster e criando um cronograma de ativação/desativação para ele.

A aparência seria a seguinte na interface do usuário do Capella:

 

Destruir a programação


Referências

Autor

Postado por Paulomee De - Engenheiro de software

Deixar uma resposta