{"id":17193,"date":"2025-06-11T09:54:25","date_gmt":"2025-06-11T16:54:25","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=17193"},"modified":"2025-06-23T22:49:01","modified_gmt":"2025-06-24T05:49:01","slug":"automate-capella-cluster-onoff-terraform","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/pt\/automate-capella-cluster-onoff-terraform\/","title":{"rendered":"Otimizando o TCO: automatize a hiberna\u00e7\u00e3o do cluster usando o Terraform"},"content":{"rendered":"<p>O recurso Cluster On\/Off do Couchbase Capella permite que os usu\u00e1rios 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\u00eancia operacional.<\/p>\n<p>Neste blog, exploraremos como esse recurso funciona e como voc\u00ea pode automatiz\u00e1-lo usando o Terraform.<\/p>\n<p>Os usu\u00e1rios t\u00eam duas op\u00e7\u00f5es para gerenciar a disponibilidade do cluster:<\/p>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li>On-Demand On\/Off - Pause e retome manualmente os clusters conforme necess\u00e1rio.<\/li>\n<li>Ativa\u00e7\u00e3o\/desativa\u00e7\u00e3o programada - Automatize a pausa\/retomada de clusters em datas e fusos hor\u00e1rios espec\u00edficos.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Desligar (pausar) um cluster<\/h3>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li>Interrompe todos os servi\u00e7os do cluster.<\/li>\n<li>Persiste os dados, a configura\u00e7\u00e3o e os metadados.<\/li>\n<li>Libera recursos de computa\u00e7\u00e3o para reduzir custos, mantendo o armazenamento intacto.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Ativa\u00e7\u00e3o (retomada) de um cluster<\/h3>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li>Restaura o cluster de um estado pausado.<\/li>\n<li>Reinicia os servi\u00e7os e torna os dados acess\u00edveis novamente.<\/li>\n<li>Permite que os clientes se reconectem e retomem as opera\u00e7\u00f5es sem problemas.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2>Por que usar o recurso de ligar\/desligar o cluster?<\/h2>\n<ol>\n<li>Economiza custos computacionais e otimiza com base no uso:\n<ul>\n<li>Quando um cluster \u00e9 desligado, os recursos de computa\u00e7\u00e3o (por exemplo, CPU, RAM) n\u00e3o s\u00e3o cobrados, reduzindo significativamente os custos de infraestrutura.<\/li>\n<li>Quando um cluster est\u00e1 desativado, voc\u00ea paga apenas o valor desativado (principalmente custos de armazenamento e gerenciamento).<\/li>\n<li>Ajuda a alinhar os custos com o uso real, em vez de pagar por recursos ociosos.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<ol start=\"2\">\n<li>Reduz a sobrecarga operacional:\n<ul>\n<li>Elimina a necessidade de provisionamento e desmontagem manual do cluster.<\/li>\n<li>Os usu\u00e1rios podem retomar facilmente um cluster pausado sem reconfigurar ou reimplantar recursos.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<ol start=\"3\">\n<li>Persist\u00eancia dos dados e desenvolvimento\/testes econ\u00f4micos:\n<ul>\n<li>Os dados, o esquema (buckets, escopos, cole\u00e7\u00f5es), os \u00edndices, os usu\u00e1rios, as listas de permiss\u00f5es e os backups permanecem intactos quando um cluster \u00e9 pausado.<\/li>\n<li>Garante que n\u00e3o haja perda de configura\u00e7\u00e3o ao retomar as opera\u00e7\u00f5es.<\/li>\n<li>Os desenvolvedores podem pausar ambientes de n\u00e3o produ\u00e7\u00e3o fora do hor\u00e1rio de trabalho. Isso evita custos desnecess\u00e1rios em pipelines de CI\/CD, ambientes de prepara\u00e7\u00e3o ou UAT.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<h2>Otimiza\u00e7\u00e3o de custos<\/h2>\n<p>Uma das maneiras mais simples e eficazes de reduzir os custos operacionais \u00e9 desligar os clusters quando eles n\u00e3o estiverem em uso. Vamos considerar o caso de uso de um cluster da AWS com<b> 3 n\u00f3s (dados, \u00edndice e consulta) <\/b>usando um <b>Plano Developer Pro<\/b> em Couchbase Capella<b>, <\/b>com a configura\u00e7\u00e3o de <b>2 vCPUs, 16 GB de RAM, tamanho do disco <\/b>de<b> 50 GB, tipo de disco GP3, <\/b>e<b> IOPS 3000<\/b>.<\/p>\n<p>Quando esse cluster \u00e9 mantido on-line 24 horas por dia, 7 dias por semana, ele incorre em um custo mensal de computa\u00e7\u00e3o de <b>$1,497.60<\/b> sob o modelo pay-as-you-go. No entanto, muitos clusters de desenvolvimento s\u00e3o necess\u00e1rios apenas durante o hor\u00e1rio de trabalho. Simplesmente desligando o cluster por 12 horas por dia, por exemplo, durante a noite, as equipes podem economizar <b>$705.60 <\/b>por m\u00eas, totalizando <b>47% <\/b>redu\u00e7\u00e3o nos custos de computa\u00e7\u00e3o. Isso \u00e9 um forte argumento para automatizar o tempo de inatividade do cluster para otimizar os gastos com a nuvem sem afetar a produtividade do desenvolvedor.<\/p>\n<p>Em ambientes com v\u00e1rios clusters ou ambientes de desenvolvimento que n\u00e3o exigem disponibilidade 24 horas por dia, ao programar o tempo de inatividade para clusters n\u00e3o essenciais, as equipes podem realocar seus or\u00e7amentos com mais efici\u00eancia, investindo em \u00e1reas que afetam diretamente os resultados comerciais.<\/p>\n<hr \/>\n<h2>Primeiros passos: implantar uma programa\u00e7\u00e3o on\/off usando o provedor Terraform<\/h2>\n<p>O Capella Terraform Provider permite que os usu\u00e1rios gerenciem as implementa\u00e7\u00f5es do Capella de forma program\u00e1tica, automatizando a orquestra\u00e7\u00e3o de recursos. Vamos examinar um tutorial simples para implementar um cronograma On\/Off no Capella por meio do provedor Terraform.<\/p>\n<p>Para saber mais sobre como desativar ou ativar o cluster <b>sob demanda <\/b>usando o Terraform<b>, <\/b>Consulte os exemplos e o LEIAME fornecidos em <a href=\"https:\/\/github.com\/couchbasecloud\/terraform-provider-couchbase-capella\/tree\/main\/examples\/cluster_onoff_ondemand\" target=\"_blank\" rel=\"noopener\">este<\/a> reposit\u00f3rio. H\u00e1 uma vis\u00e3o geral passo a passo de como ativar\/desativar o cluster sob demanda.<\/p>\n<p>Al\u00e9m do recurso de ligar\/desligar o cluster, um Servi\u00e7o de Aplicativo tamb\u00e9m pode ser ligado\/desligado sob demanda. Consulte o seguinte <a href=\"https:\/\/docs.couchbase.com\/cloud\/management-api-reference\/index.html#tag\/App-Services\/operation\/appServiceOn\" target=\"_blank\" rel=\"noopener\">documenta\u00e7\u00e3o<\/a> e o provedor Terraform <a href=\"https:\/\/github.com\/couchbasecloud\/terraform-provider-couchbase-capella\/tree\/main\/examples\/app_service_onoff_ondemand\" target=\"_blank\" rel=\"noopener\">exemplos<\/a> para obter mais informa\u00e7\u00f5es.<\/p>\n<h3>O que voc\u00ea aprender\u00e1<\/h3>\n<ol>\n<li style=\"list-style-type: none\">\n<ol>\n<li>As etapas para configurar os arquivos e entender os comandos necess\u00e1rios para executar os scripts do Terraform.<\/li>\n<li>Um tutorial passo a passo sobre a implementa\u00e7\u00e3o de uma programa\u00e7\u00e3o de ativa\u00e7\u00e3o\/desativa\u00e7\u00e3o de cluster no Capella usando o provedor.<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<hr \/>\n<h3>Pr\u00e9-requisitos<\/h3>\n<p>Antes de come\u00e7ar, verifique se voc\u00ea tem:<\/p>\n<ol>\n<li style=\"list-style-type: none\">\n<ol>\n<li>Vers\u00e3o do Terraform &gt;= 1.5.2<\/li>\n<li>Vers\u00e3o Go &gt;= 1.2.0<\/li>\n<li>Conta paga Capella<\/li>\n<li>Cluster Capella - Voc\u00ea pode criar um cluster do Couchbase usando o provedor, o\u00a0 <a href=\"https:\/\/docs.couchbase.com\/cloud\/management-api-guide\/management-api-start.html#display-management-api-keys\" target=\"_blank\" rel=\"noopener\">IU da Capella<\/a>ou o <a href=\"https:\/\/docs.couchbase.com\/cloud\/management-api-reference\/index.html?_gl=1*1p9slku*_gcl_au*NzQ3NTcyODMzLjE3NDQwNjkyMDk.#tag\/Clusters\/operation\/postCluster\" target=\"_blank\" rel=\"noopener\">API de gerenciamento da Capella<\/a> e usar o <i>organization_id, project_id e cluster_id<\/i> para criar a programa\u00e7\u00e3o de ligar\/desligar.<\/li>\n<li>Authentication APIKey - Voc\u00ea pode criar a chave de API usando o <a href=\"https:\/\/docs.couchbase.com\/cloud\/management-api-guide\/management-api-start.html?_gl=1*mkplgc*_gcl_au*NzQ3NTcyODMzLjE3NDQwNjkyMDk.#display-management-api-keys%5C\" target=\"_blank\" rel=\"noopener\">IU da Capella<\/a> ou o <a href=\"https:\/\/docs.couchbase.com\/cloud\/management-api-reference\/index.html?_gl=1*1p9slku*_gcl_au*NzQ3NTcyODMzLjE3NDQwNjkyMDk.#tag\/apikeys\" target=\"_blank\" rel=\"noopener\">API de gerenciamento da Capella<\/a>. Voc\u00ea deve criar uma chave de API que tenha o conjunto certo de fun\u00e7\u00f5es associadas a ela, dependendo do escopo dos recursos gerenciados pelo provedor.<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p>Para obter informa\u00e7\u00f5es sobre como configurar a autoriza\u00e7\u00e3o e a autentica\u00e7\u00e3o, consulte o guia Terraform <a href=\"https:\/\/github.com\/couchbasecloud\/terraform-provider-couchbase-capella\/blob\/main\/README.md#using-the-provider\" target=\"_blank\" rel=\"noopener\">reposit\u00f3rio<\/a> e isso <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/terraform-provider-couchbase-capella\/\" target=\"_blank\" rel=\"noopener\">blog<\/a> postar.<\/p>\n<hr \/>\n<h3>Etapa 1: Configura\u00e7\u00e3o<\/h3>\n<h4>Criar as vari\u00e1veis<\/h4>\n<ol>\n<li>Crie um arquivo chamado <b><i>variables.tf<\/i><\/b> e adicione as seguintes defini\u00e7\u00f5es de vari\u00e1veis. Usaremos essas vari\u00e1veis em nosso arquivo de configura\u00e7\u00e3o.\n<pre class=\"nums:false lang:default decode:true\">vari\u00e1vel \"organization_id\" {\r\n  description = \"ID da organiza\u00e7\u00e3o Capella\"\r\n}\r\n\r\nvari\u00e1vel \"project_id\" {\r\n  description = \"Nome do projeto para o projeto criado via Terraform\"\r\n}\r\n\r\nvari\u00e1vel \"cluster_id\" {\r\n  descri\u00e7\u00e3o = \"ID do cluster do Capella\"\r\n}\r\n\r\nvari\u00e1vel \"auth_token\" {\r\n  descri\u00e7\u00e3o = \"Chave da API de autentica\u00e7\u00e3o\"\r\n}<\/pre>\n<\/li>\n<li>Crie um arquivo chamado <b><i>terraform.template.tfvars<\/i><\/b> e adicione as seguintes linhas. Aqui, especificamos os valores das principais vari\u00e1veis associadas \u00e0 implanta\u00e7\u00e3o.\n<pre class=\"nums:false lang:default decode:true\">auth_token = \"\"\r\norganization_id = \"\"\r\nproject_id = \"\"\r\ncluster_id = \"\"<\/pre>\n<\/li>\n<li>Crie um arquivo chamado <b><i>capella.tf<\/i><\/b> e adicione a seguinte configura\u00e7\u00e3o para criar o agendamento de ativa\u00e7\u00e3o\/desativa\u00e7\u00e3o para um cluster Capella existente em um projeto:\n<pre class=\"nums:false lang:default decode:true\">terraform {\r\nrequired_providers {\r\ncouchbase-capella = {\r\nsource = \"registry.terraform.io\/couchbasecloud\/couchbase-capella\"\r\n}\r\n}\r\n}\r\n\r\n# Configure o provedor Couchbase Capella usando vari\u00e1veis predefinidas\r\nprovedor \"couchbase-capella\" {\r\nauthentication_token = var.auth_token\r\n}\r\n\r\n# Crie um cronograma de ativa\u00e7\u00e3o e desativa\u00e7\u00e3o para o cluster\r\nrecurso \"couchbase-capella_cluster_onoff_schedule\" \"new_cluster_onoff_schedule\"{\r\norganization_id = var.organization_id\r\nproject_id = var.project_id\r\ncluster_id = var.cluster_id\r\nfuso hor\u00e1rio = \"US\/Pacific\"\r\ndays = [\r\n{\r\nday = \"monday\" (dia = \"segunda-feira\")\r\nstate = \"custom\" (estado personalizado)\r\nfrom = {\r\nhour = 12\r\nminute = 30\r\n}\r\nto = {\r\nhora = 14\r\nminuto = 30\r\n}\r\n},\r\n{\r\nday = \"tuesday\" (dia = \"ter\u00e7a-feira\")\r\nstate = \"custom\" (estado personalizado)\r\nfrom = {\r\nhour = 12\r\n}\r\nto = {\r\nhora = 19\r\nminuto = 30\r\n}\r\n},\r\n{\r\nday = \"wednesday\" (dia = \"quarta-feira\")\r\nstate = \"on\" (estado = \"ligado\")\r\n},\r\n{\r\nday = \"thursday\" (dia = \"quinta-feira\")\r\nstate = \"custom\" (estado = \"personalizado\")\r\nfrom = {\r\nhour = 12\r\nminute = 30\r\n}\r\n},\r\n{\r\nday = \"friday\" (dia = \"sexta-feira\")\r\nestado = \"custom\" (personalizado)\r\nfrom = {\r\n\r\n    }\r\nto = {\r\nhora = 12\r\nminuto = 30\r\n}\r\n},\r\n{\r\nday = \"saturday\" (dia = \"s\u00e1bado\")\r\nestado = \"custom\" (personalizado)\r\nfrom = {\r\nhour = 12\r\nminute = 30\r\n}\r\nto = {\r\nhora = 14\r\n}\r\n},\r\n{\r\nday = \"sunday\" (dia = \"domingo\")\r\nstate = \"off\" (estado = \"desligado\")\r\n}\r\n]\r\n}\r\n\r\n# Armazena os detalhes da programa\u00e7\u00e3o de desligamento do cluster em uma vari\u00e1vel de sa\u00edda.\r\n# Pode ser visualizado com o comando `terraform output cluster_onoff_schedule`\r\noutput \"cluster_onoff_schedule\" {\r\nvalue = couchbase-capella_cluster_onoff_schedule.new_cluster_onoff_schedule\r\n}<\/pre>\n<\/li>\n<\/ol>\n<hr \/>\n<h3>Etapa 2: Implantar e gerenciar o cronograma<\/h3>\n<h4>Inicializar o provedor do Terraform<\/h4>\n<p>O Terraform deve ser inicializado na primeira vez que voc\u00ea usar o provedor:<\/p>\n<pre class=\"nums:false lang:default decode:true\">inicializa\u00e7\u00e3o da terraforma<\/pre>\n<h4>Revisar o plano do Terraform<\/h4>\n<p>Use o seguinte comando para revisar os recursos que ser\u00e3o implantados:<\/p>\n<pre class=\"nums:false lang:default decode:true\">terraform plan -var-file terraform.template.tfvars<\/pre>\n<p>Voc\u00ea dever\u00e1 ver uma sa\u00edda semelhante \u00e0 seguinte ao criar uma programa\u00e7\u00e3o de ativa\u00e7\u00e3o\/desativa\u00e7\u00e3o para um cluster existente:<\/p>\n<pre class=\"nums:false lang:default decode:true\">O Terraform usou os provedores selecionados para gerar o seguinte plano de execu\u00e7\u00e3o. As a\u00e7\u00f5es de recursos s\u00e3o indicadas com os seguintes s\u00edmbolos:\r\n+ criar\r\n\r\nO Terraform executar\u00e1 as seguintes a\u00e7\u00f5es:\r\n\r\n  # couchbase-capella_cluster_onoff_schedule.new_cluster_onoff_schedule ser\u00e1 criado\r\n+ recurso \"couchbase-capella_cluster_onoff_schedule\" \"new_cluster_onoff_schedule\" {\r\n+ cluster_id = \"1cd2a882-ddc2-497a-a9f9-60bd8da5488f\"\r\n+ days = [\r\n+ {\r\n+ day = \"monday\" (dia = \"segunda-feira\")\r\n+ from = {\r\n+ hour = 12\r\n+ minute = 30\r\n}\r\n+ state = \"custom\"\r\n+ to = {\r\n+ hora = 14\r\n+ minute = 30\r\n}\r\n},\r\n+ {\r\n+ day = \"tuesday\" (dia = \"ter\u00e7a-feira\")\r\n+ from = {\r\n+ hour = 12\r\n+ minute = 0\r\n}\r\n+ state = \"custom\"\r\n+ to = {\r\n+ hora = 19\r\n+ minute = 30\r\n}\r\n},\r\n+ {\r\n+ day = \"wednesday\" (dia = \"quarta-feira\")\r\n+ state = \"on\" (estado = \"ligado\")\r\n},\r\n+ {\r\n+ day = \"thursday\" (dia = \"quinta-feira\")\r\n+ from = {\r\n+ hour = 12\r\n+ minute = 30\r\n}\r\n+ state = \"custom\"\r\n},\r\n+ {\r\n+ day = \"friday\" (dia = \"sexta-feira\")\r\n+ from = {\r\n+ hour = 0\r\n+ minute = 0\r\n}\r\n+ state = \"custom\"\r\n+ to = {\r\n+ hora = 12\r\n+ minuto = 30\r\n}\r\n},\r\n+ {\r\n+ day = \"saturday\" (dia = \"s\u00e1bado\")\r\n+ from = {\r\n+ hour = 12\r\n+ minute = 30\r\n}\r\n+ state = \"custom\"\r\n+ to = {\r\n+ hora = 14\r\n+ minuto = 0\r\n}\r\n},\r\n+ {\r\n+ day = \"sunday\" (dia = \"domingo\")\r\n+ state = \"off\"\r\n},\r\n]\r\n+ organization_id = \"7a99d00c-f55b-4b39-bc72-1b4cc68ba894\"\r\n+ project_id = \"9f837bbd-d1f3-476d-ac62-ba65a6548215\"\r\n+ timezone = \"US\/Pacific\"\r\n}\r\n\r\nPlano: 1 para adicionar, 0 para alterar, 0 para destruir.\r\n\r\nAltera\u00e7\u00f5es nos Outputs:\r\n+ cluster_onoff_schedule = {\r\n+ cluster_id = \"1cd2a882-ddc2-497a-a9f9-60bd8da5488f\"\r\n+ dias = [\r\n+ {\r\n+ day = \"monday\" (dia = \"segunda-feira\")\r\n+ from = {\r\n+ hour = 12\r\n+ minute = 30\r\n}\r\n+ state = \"custom\"\r\n+ to = {\r\n+ hora = 14\r\n+ minute = 30\r\n}\r\n},\r\n+ {\r\n+ day = \"tuesday\" (dia = \"ter\u00e7a-feira\")\r\n+ from = {\r\n+ hour = 12\r\n+ minute = 0\r\n}\r\n+ state = \"custom\"\r\n+ to = {\r\n+ hora = 19\r\n+ minute = 30\r\n}\r\n},\r\n+ {\r\n+ day = \"wednesday\" (dia = \"quarta-feira\")\r\n+ from = null\r\n+ state = \"on\" (estado = \"ligado\")\r\n+ to = null\r\n},\r\n+ {\r\n+ day = \"thursday\" (dia = \"quinta-feira\")\r\n+ from = {\r\n+ hour = 12\r\n+ minute = 30\r\n}\r\n+ state = \"custom\"\r\n+ to = null\r\n},\r\n+ {\r\n+ day = \"friday\" (dia = \"sexta-feira\")\r\n+ from = {\r\n+ hour = 0\r\n+ minute = 0\r\n}\r\n+ state = \"custom\"\r\n+ to = {\r\n+ hora = 12\r\n+ minuto = 30\r\n}\r\n},\r\n+ {\r\n+ day = \"saturday\" (dia = \"s\u00e1bado\")\r\n+ from = {\r\n+ hour = 12\r\n+ minute = 30\r\n}\r\n+ state = \"custom\"\r\n+ to = {\r\n+ hora = 14\r\n+ minuto = 0\r\n}\r\n},\r\n+ {\r\n+ day = \"sunday\" (dia = \"domingo\")\r\n+ from = null\r\n+ state = \"off\" (estado desligado)\r\n+ to = null\r\n},\r\n]\r\n+ organization_id = \"7a99d00c-f55b-4b39-bc72-1b4cc68ba894\"\r\n+ project_id = \"9f837bbd-d1f3-476d-ac62-ba65a6548215\"\r\n+ timezone = \"US\/Pacific\"\r\n}<\/pre>\n<h4>Executar o plano do Terraform<\/h4>\n<p>Implante os recursos do Couchbase Capella usando o seguinte comando:<\/p>\n<pre class=\"nums:false lang:default decode:true\">terraform apply -var-file terraform.template.tfvars<\/pre>\n<p>Digite \"sim\" se o plano parecer bom.<\/p>\n<p>Observa\u00e7\u00e3o: Levar\u00e1 alguns minutos para implantar os recursos se voc\u00ea estiver criando um projeto, implantando um cluster e criando um cronograma de ativa\u00e7\u00e3o\/desativa\u00e7\u00e3o para ele.<\/p>\n<pre class=\"nums:false lang:default decode:true\">Voc\u00ea deseja executar essas a\u00e7\u00f5es?\r\nO Terraform executar\u00e1 as a\u00e7\u00f5es descritas acima.\r\nApenas \"sim\" ser\u00e1 aceito para aprova\u00e7\u00e3o.\r\n\r\n  Digite um valor: sim\r\n\r\ncouchbase-capella_cluster_onoff_schedule.new_cluster_onoff_schedule: Criando...\r\ncouchbase-capella_cluster_onoff_schedule.new_cluster_onoff_schedule: Cria\u00e7\u00e3o conclu\u00edda ap\u00f3s 0s\r\n\r\nAplica\u00e7\u00e3o conclu\u00edda! Recursos: 1 adicionado, 0 alterado, 0 destru\u00eddo.\r\n\r\nSa\u00eddas:\r\n\r\ncluster_onoff_schedule = {\r\n\"cluster_id\" = \"1cd2a882-ddc2-497a-a9f9-60bd8da5488f\"\r\n\"days\" = tolist([\r\n{\r\n\"day\" = \"monday\" (dia)\r\n\"from\" = {\r\n\"hour\" = 12\r\n\"minute\" = 30\r\n}\r\n\"state\" = \"custom\" (estado)\r\n\"to\" = {\r\n\"hour\" = 14\r\n\"minute\" = 30\r\n}\r\n},\r\n{\r\n\"day\" = \"tuesday\" (dia)\r\n\"from\" = {\r\n\"hour\" = 12\r\n\"minute\" = 0\r\n}\r\n\"state\" = \"custom\" (estado)\r\n\"to\" = {\r\n\"hour\" = 19\r\n\"minute\" = 30\r\n}\r\n},\r\n{\r\n\"day\" = \"wednesday\" (dia)\r\n\"from\" = null \/* objeto *\/\r\n\"state\" = \"on\" (estado)\r\n\"to\" = null \/* objeto *\/\r\n},\r\n{\r\n\"day\" = \"thursday\" (dia)\r\n\"from\" = {\r\n\"hour\" = 12\r\n\"minute\" = 30\r\n}\r\n\"state\" = \"custom\" (estado)\r\n\"to\" = null \/* objeto *\/\r\n},\r\n{\r\n\"day\" = \"friday\" (dia)\r\n\"from\" = {\r\n\"hour\" = 0\r\n\"minute\" = 0\r\n}\r\n\"state\" = \"custom\" (estado)\r\n\"to\" = {\r\n\"hour\" = 12\r\n\"minute\" = 30\r\n}\r\n},\r\n{\r\n\"day\" = \"saturday\" (s\u00e1bado)\r\n\"from\" = {\r\n\"hour\" = 12\r\n\"minute\" = 30\r\n}\r\n\"state\" = \"custom\" (estado)\r\n\"to\" = {\r\n\"hour\" = 14\r\n\"minute\" = 0\r\n}\r\n},\r\n{\r\n\"day\" = \"sunday\" (dia)\r\n\"from\" = null \/* objeto *\/\r\n\"state\" = \"off\" (estado)\r\n\"to\" = null \/* objeto *\/\r\n},\r\n])\r\n\"organization_id\" = \"7a99d00c-f55b-4b39-bc72-1b4cc68ba894\"\r\n\"project_id\" = \"9f837bbd-d1f3-476d-ac62-ba65a6548215\"\r\n\"timezone\" = \"US\/Pacific\"\r\n}<\/pre>\n<p>A apar\u00eancia seria a seguinte na interface do usu\u00e1rio do Capella:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-17194\" style=\"border: 1px solid Gainsboro\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/image1-1-1024x513.png\" alt=\"\" width=\"900\" height=\"451\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/image1-1-1024x513.png 1024w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/image1-1-300x150.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/image1-1-768x385.png 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/image1-1-1536x770.png 1536w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/image1-1-18x9.png 18w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/image1-1-1320x662.png 1320w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/image1-1.png 1999w\" sizes=\"auto, (max-width: 900px) 100vw, 900px\" \/><\/p>\n<p>&nbsp;<\/p>\n<h4>Destruir a programa\u00e7\u00e3o<\/h4>\n<pre class=\"nums:false lang:default decode:true\">terraform destroy -var-file terraform.template.tfvars<\/pre>\n<hr \/>\n<h2>Refer\u00eancias<\/h2>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li>Confira <a href=\"https:\/\/github.com\/couchbasecloud\/terraform-provider-couchbase-capella\/tree\/main\/examples\/cluster_onoff_schedule\" target=\"_blank\" rel=\"noopener\">Programa\u00e7\u00e3o de ativa\u00e7\u00e3o\/desativa\u00e7\u00e3o do cluster<\/a> usando o Terraform Provider.<\/li>\n<li>Confira o <a href=\"https:\/\/github.com\/couchbasecloud\/terraform-provider-couchbase-capella\/tree\/main\/examples\/cluster_onoff_ondemand\" target=\"_blank\" rel=\"noopener\">Ativa\u00e7\u00e3o e desativa\u00e7\u00e3o do cluster sob demanda<\/a> usando o Terraform Provider.<\/li>\n<li>Confira o <a href=\"https:\/\/github.com\/couchbasecloud\/terraform-provider-couchbase-capella\/tree\/main\/examples\/app_service_onoff_ondemand\" target=\"_blank\" rel=\"noopener\">Ativa\u00e7\u00e3o e desativa\u00e7\u00e3o do servi\u00e7o de aplicativo sob demanda<\/a> usando o Terraform Provider.<\/li>\n<li>Documentos oficiais do Couchbase para ligar\/desligar o cluster sob demanda - <a href=\"https:\/\/docs.couchbase.com\/cloud\/clusters\/off-on-database.html\" target=\"_blank\" rel=\"noopener\">ref<\/a><\/li>\n<li>Documentos oficiais do Couchbase sobre a programa\u00e7\u00e3o de ativa\u00e7\u00e3o\/desativa\u00e7\u00e3o do cluster <a href=\"https:\/\/docs.couchbase.com\/cloud\/clusters\/off-on-schedule.html\" target=\"_blank\" rel=\"noopener\">ref<\/a><\/li>\n<li>Documentos oficiais do Couchbase para o cronograma de ativa\u00e7\u00e3o\/desativa\u00e7\u00e3o do servi\u00e7o de aplicativo <a href=\"https:\/\/docs.couchbase.com\/cloud\/management-api-reference\/index.html#tag\/App-Services\/operation\/appServiceOn\" target=\"_blank\" rel=\"noopener\">ref<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"<p>Couchbase Capella\u2019s Cluster On\/Off feature allows users to pause and resume their clusters seamlessly, without permanently deleting the data, helping optimise cloud expenses and improve operational efficiency. In this blog, we\u2019ll explore how this feature works and how you can [&hellip;]<\/p>","protected":false},"author":85629,"featured_media":17195,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1815,2242,2225],"tags":[1567,1308,9709,9913,9706,9912],"ppma_author":[10121],"class_list":["post-17193","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-best-practices-and-tutorials","category-connectors","category-cloud","tag-continuous-deployment","tag-devops","tag-hashicorp","tag-infrastructure-as-code","tag-terraform","tag-terraform-provider"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.9 (Yoast SEO v25.9) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Optimizing TCO: Automate Cluster Hibernation Using Terraform<\/title>\n<meta name=\"description\" content=\"Cut cloud costs with Couchbase Capella\u2019s Cluster On\/Off feature. Learn how to automate hibernation schedules using Terraform in this step-by-step guide.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.couchbase.com\/blog\/pt\/automate-capella-cluster-onoff-terraform\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Optimizing TCO: Automate Cluster Hibernation Using Terraform\" \/>\n<meta property=\"og:description\" content=\"Cut cloud costs with Couchbase Capella\u2019s Cluster On\/Off feature. Learn how to automate hibernation schedules using Terraform in this step-by-step guide.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/pt\/automate-capella-cluster-onoff-terraform\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2025-06-11T16:54:25+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-24T05:49:01+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/blog-hibernation-terraform.png\" \/>\n\t<meta property=\"og:image:width\" content=\"2400\" \/>\n\t<meta property=\"og:image:height\" content=\"1256\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Paulomee De - Software Engineer\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Paulomee De - Software Engineer\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/\"},\"author\":{\"name\":\"Paulomee De - Software Engineer\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/30c6ec0910cc6f052f8dab0a68060b92\"},\"headline\":\"Optimizing TCO: Automate Cluster Hibernation Using Terraform\",\"datePublished\":\"2025-06-11T16:54:25+00:00\",\"dateModified\":\"2025-06-24T05:49:01+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/\"},\"wordCount\":971,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/blog-hibernation-terraform.png\",\"keywords\":[\"Continuous Deployment\",\"DevOps\",\"hashicorp\",\"Infrastructure-as-Code\",\"terraform\",\"Terraform provider\"],\"articleSection\":[\"Best Practices and Tutorials\",\"Connectors\",\"Couchbase Capella\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/\",\"name\":\"Optimizing TCO: Automate Cluster Hibernation Using Terraform\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/blog-hibernation-terraform.png\",\"datePublished\":\"2025-06-11T16:54:25+00:00\",\"dateModified\":\"2025-06-24T05:49:01+00:00\",\"description\":\"Cut cloud costs with Couchbase Capella\u2019s Cluster On\/Off feature. Learn how to automate hibernation schedules using Terraform in this step-by-step guide.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/blog-hibernation-terraform.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/blog-hibernation-terraform.png\",\"width\":2400,\"height\":1256},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Optimizing TCO: Automate Cluster Hibernation Using Terraform\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/30c6ec0910cc6f052f8dab0a68060b92\",\"name\":\"Paulomee De - Software Engineer\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/2a035ab322d90ea8cdb6c40a6e7c40c3\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/paulomee-couchbase.jpeg\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/paulomee-couchbase.jpeg\",\"caption\":\"Paulomee De - Software Engineer\"},\"url\":\"https:\/\/www.couchbase.com\/blog\/pt\/author\/paulomeede\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Otimizando o TCO: automatize a hiberna\u00e7\u00e3o do cluster usando o Terraform","description":"Reduza os custos da nuvem com o recurso de ativa\u00e7\u00e3o\/desativa\u00e7\u00e3o de cluster do Couchbase Capella. Saiba como automatizar as programa\u00e7\u00f5es de hiberna\u00e7\u00e3o usando o Terraform neste guia passo a passo.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.couchbase.com\/blog\/pt\/automate-capella-cluster-onoff-terraform\/","og_locale":"pt_BR","og_type":"article","og_title":"Optimizing TCO: Automate Cluster Hibernation Using Terraform","og_description":"Cut cloud costs with Couchbase Capella\u2019s Cluster On\/Off feature. Learn how to automate hibernation schedules using Terraform in this step-by-step guide.","og_url":"https:\/\/www.couchbase.com\/blog\/pt\/automate-capella-cluster-onoff-terraform\/","og_site_name":"The Couchbase Blog","article_published_time":"2025-06-11T16:54:25+00:00","article_modified_time":"2025-06-24T05:49:01+00:00","og_image":[{"width":2400,"height":1256,"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/blog-hibernation-terraform.png","type":"image\/png"}],"author":"Paulomee De - Software Engineer","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Paulomee De - Software Engineer","Est. reading time":"5 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/"},"author":{"name":"Paulomee De - Software Engineer","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/30c6ec0910cc6f052f8dab0a68060b92"},"headline":"Optimizing TCO: Automate Cluster Hibernation Using Terraform","datePublished":"2025-06-11T16:54:25+00:00","dateModified":"2025-06-24T05:49:01+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/"},"wordCount":971,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/blog-hibernation-terraform.png","keywords":["Continuous Deployment","DevOps","hashicorp","Infrastructure-as-Code","terraform","Terraform provider"],"articleSection":["Best Practices and Tutorials","Connectors","Couchbase Capella"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/","url":"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/","name":"Otimizando o TCO: automatize a hiberna\u00e7\u00e3o do cluster usando o Terraform","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/blog-hibernation-terraform.png","datePublished":"2025-06-11T16:54:25+00:00","dateModified":"2025-06-24T05:49:01+00:00","description":"Reduza os custos da nuvem com o recurso de ativa\u00e7\u00e3o\/desativa\u00e7\u00e3o de cluster do Couchbase Capella. Saiba como automatizar as programa\u00e7\u00f5es de hiberna\u00e7\u00e3o usando o Terraform neste guia passo a passo.","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/blog-hibernation-terraform.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/blog-hibernation-terraform.png","width":2400,"height":1256},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/automate-capella-cluster-onoff-terraform\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Optimizing TCO: Automate Cluster Hibernation Using Terraform"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"Blog do Couchbase","description":"Couchbase, o banco de dados NoSQL","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"Blog do Couchbase","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/30c6ec0910cc6f052f8dab0a68060b92","name":"Paulomee De - Engenheiro de software","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/2a035ab322d90ea8cdb6c40a6e7c40c3","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/paulomee-couchbase.jpeg","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/paulomee-couchbase.jpeg","caption":"Paulomee De - Software Engineer"},"url":"https:\/\/www.couchbase.com\/blog\/pt\/author\/paulomeede\/"}]}},"authors":[{"term_id":10121,"user_id":85629,"is_guest":0,"slug":"paulomeede","display_name":"Paulomee De - Software Engineer","avatar_url":{"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/paulomee-couchbase.jpeg","url2x":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2025\/06\/paulomee-couchbase.jpeg"},"author_category":"1","last_name":"De - Software Engineer","first_name":"Paulomee","job_title":"Software Engineer","user_url":"","description":""}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts\/17193","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/users\/85629"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/comments?post=17193"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts\/17193\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/media\/17195"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/media?parent=17193"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/categories?post=17193"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/tags?post=17193"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/ppma_author?post=17193"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}