{"id":4053,"date":"2017-09-27T05:43:16","date_gmt":"2017-09-27T12:43:16","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=4053"},"modified":"2025-06-13T22:57:07","modified_gmt":"2025-06-14T05:57:07","slug":"using-couchbase-aws-kubernetes-microservices","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/pt\/using-couchbase-aws-kubernetes-microservices\/","title":{"rendered":"Usando o Couchbase no AWS a partir de microsservi\u00e7os Kubernetes"},"content":{"rendered":"<p><em>Brant Burnett \u00e9 um <u><a href=\"https:\/\/developer.couchbase.com\/experts-and-champions\" target=\"_blank\" rel=\"noopener noreferrer\">Especialista em Couchbase<\/a><\/u><u><a href=\"https:\/\/developer.couchbase.com\/experts-and-champions\" target=\"_blank\" rel=\"noopener noreferrer\">,<\/a><\/u>\u00a0arquiteto de sistemas e desenvolvedor .NET com experi\u00eancia em desenvolvimento full-stack para desktop e web. Nos \u00faltimos 12 anos, ele tem trabalhado com a CenterEdge Software, uma empresa de software de entretenimento familiar com sede em Roxboro, NC. Brant tem experi\u00eancia no desenvolvimento de aplicativos para todos os segmentos de seu pacote de software. Nos \u00faltimos quatro anos, ele trabalhou na transi\u00e7\u00e3o da infraestrutura de nuvem da empresa de uma plataforma Microsoft SQL para uma plataforma de dados NoSQL Couchbase pura. Com seu trabalho na CenterEdge, Brant p\u00f4de se concentrar na cria\u00e7\u00e3o de solu\u00e7\u00f5es de software s\u00e9rias para empresas divertidas.<\/em><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-3426\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2016\/03\/Brant_Burnett_Headshot-300x225.jpg\" alt=\"Brant_Burnett_Headshot\" width=\"300\" height=\"225\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/03\/Brant_Burnett_Headshot-300x225.jpg 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/03\/Brant_Burnett_Headshot-1024x769.jpg 1024w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/03\/Brant_Burnett_Headshot-768x577.jpg 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/03\/Brant_Burnett_Headshot-1536x1153.jpg 1536w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/03\/Brant_Burnett_Headshot-20x15.jpg 20w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/03\/Brant_Burnett_Headshot-1320x991.jpg 1320w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/03\/Brant_Burnett_Headshot.jpg 2046w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>\n<p>O Couchbase \u00e9 um excelente armazenamento de dados para aplicativos de nuvem dimension\u00e1veis, incluindo aplicativos criados usando um <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/microservices-architecture-in-couchbase\/\">arquitetura de microsservi\u00e7os<\/a>. <u><a href=\"https:\/\/kubernetes.io\/\" target=\"_blank\" rel=\"noopener noreferrer\">Kubernetes<\/a><\/u>\u00a0\u00e9 uma plataforma incrivelmente poderosa para executar microsservi\u00e7os em cont\u00eaineres, facilitando o gerenciamento de DevOps e reduzindo o atrito do desenvolvedor. Mas como podemos us\u00e1-los juntos, reduzindo o atrito e a sobrecarga de gerenciamento em todo o sistema?<\/p>\n<p>Uma op\u00e7\u00e3o \u00e9 executar o Couchbase no Kubernetes como um <u><a href=\"https:\/\/kubernetes.io\/docs\/concepts\/workloads\/controllers\/statefulset\/\" target=\"_blank\" rel=\"noopener noreferrer\">StatefulSet<\/a><\/u>. No entanto, os StatefulSets ainda est\u00e3o na vers\u00e3o beta. Al\u00e9m disso, um cluster de produ\u00e7\u00e3o do Couchbase cria uma carga consider\u00e1vel, portanto, \u00e9 altamente recomend\u00e1vel executar em n\u00f3s dedicados. Isso poderia ser feito no Kubernetes usando taints, mas em <u><a href=\"https:\/\/centeredgesoftware.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Software CenterEdge<\/a><\/u>\u00a0decidimos manter a simplicidade e executar o cluster do Couchbase em inst\u00e2ncias aut\u00f4nomas do EC2.<\/p>\n<p>Esta postagem tem como objetivo ser um tutorial sobre a configura\u00e7\u00e3o do Kubernetes no Amazon Web Services (AWS) para se conectar perfeitamente a um cluster do Couchbase em execu\u00e7\u00e3o no EC2 no AWS. Al\u00e9m disso, a abordagem \u00e9 flex\u00edvel o suficiente para permitir a troca de clusters ou a execu\u00e7\u00e3o de clusters menores no Kubernetes para ambientes de desenvolvimento ou controle de qualidade.<\/p>\n<h2><strong>TL;DR<\/strong><\/h2>\n<p>Essa abordagem para configurar o acesso ao Couchbase no Kubernetes tem v\u00e1rias vantagens importantes:<\/p>\n<ol>\n<li>Facilidade para configurar seus microsservi\u00e7os com um URL \u00fanico e simples<\/li>\n<li>Fa\u00e7a altera\u00e7\u00f5es em sua infraestrutura sem precisar reconfigurar cada microsservi\u00e7o<\/li>\n<li>Suporte para trocar o cluster de forma transparente durante as atualiza\u00e7\u00f5es do Couchbase<\/li>\n<li>Aponte facilmente o mesmo URL em um cluster Kubernetes de desenvolvimento ou QA para um cluster Couchbase diferente<\/li>\n<\/ol>\n<p>Passos:<\/p>\n<ol>\n<li>Certifique-se de que os clusters do Couchbase e do Kubernetes possam se comunicar pela rede<\/li>\n<li>Criar um <u><a href=\"https:\/\/aws.amazon.com\/elasticloadbalancing\/details\/#details\" target=\"_blank\" rel=\"noopener noreferrer\">Balanceador de carga de aplicativos (ALB)<\/a><\/u>\u00a0para a inicializa\u00e7\u00e3o usando um \u00fanico URL<\/li>\n<li>Crie um servi\u00e7o Kubernetes do tipo ExternalName para resolver o cluster de seus microsservi\u00e7os<\/li>\n<\/ol>\n<h2><strong>Pr\u00e9-requisitos<\/strong><\/h2>\n<p>Esta postagem pressup\u00f5e que os seguintes pr\u00e9-requisitos tenham sido cumpridos:<\/p>\n<ol>\n<li>Voc\u00ea tem um cluster do Kubernetes em execu\u00e7\u00e3o no AWS. Implantamos nosso cluster usando o <u><a href=\"https:\/\/github.com\/kubernetes\/kops\" target=\"_blank\" rel=\"noopener noreferrer\">kops<\/a><\/u>\u00a0utilit\u00e1rio. H\u00e1 um bom guia <u><a href=\"https:\/\/kubernetes.io\/docs\/getting-started-guides\/kops\/\" target=\"_blank\" rel=\"noopener noreferrer\">aqui<\/a><\/u>.<\/li>\n<li>Voc\u00ea tem um cluster do Couchbase em execu\u00e7\u00e3o no AWS em inst\u00e2ncias do EC2. N\u00f3s usamos <u><a href=\"https:\/\/gist.github.com\/brantburnett\/a6e601a7141e89bc47587b1e7b94bcdc\" target=\"_blank\" rel=\"noopener noreferrer\">esse script de dados do usu\u00e1rio<\/a><\/u>\u00a0para configurar as inst\u00e2ncias na inicializa\u00e7\u00e3o, usando tipos de inst\u00e2ncia i3 com armazenamento de inst\u00e2ncia SSD NVMe. Isen\u00e7\u00e3o de responsabilidade: este script userdata n\u00e3o foi totalmente aprovado para uso em produ\u00e7\u00e3o.<\/li>\n<li>Esses dois clusters est\u00e3o na mesma regi\u00e3o da AWS.<\/li>\n<li>A VPC em que o Couchbase reside deve ter sub-redes em pelo menos duas zonas de disponibilidade (mesmo que o Couchbase esteja usando apenas uma).<\/li>\n<\/ol>\n<h2><strong>Configura\u00e7\u00e3o de emparelhamento de VPC<\/strong><\/h2>\n<p><u><a href=\"https:\/\/docs.aws.amazon.com\/AmazonVPC\/latest\/PeeringGuide\/Welcome.html\" target=\"_blank\" rel=\"noopener noreferrer\">Emparelhamento de VPC<\/a><\/u>\u00a0permitir\u00e1 que as inst\u00e2ncias em um <u><a href=\"https:\/\/aws.amazon.com\/vpc\/\" target=\"_blank\" rel=\"noopener noreferrer\">VPC<\/a><\/u>\u00a0para conversar com inst\u00e2ncias em outro VPC na mesma regi\u00e3o do AWS de forma transparente, como se estivessem na mesma LAN.<\/p>\n<p><strong>Observa\u00e7\u00e3o:<\/strong>\u00a0Esta etapa s\u00f3 \u00e9 necess\u00e1ria se a VPC do Couchbase for separada da VPC do Kubernetes. Se estiver usando o mesmo VPC para ambos, voc\u00ea pode pular esta etapa.<\/p>\n<p><strong>Observa\u00e7\u00e3o: <\/strong>As VPCs devem estar usando sub-redes privadas diferentes para evitar conflitos de endere\u00e7os IP.<\/p>\n<ol>\n<li>Aberto <u><a href=\"https:\/\/console.aws.amazon.com\/vpc\/home#PeeringConnections:\" target=\"_blank\" rel=\"noopener noreferrer\">Conex\u00f5es de peering<\/a><\/u>\u00a0dentro da VPC no console do AWS<\/li>\n<li>Criar conex\u00e3o de peering\n<ol>\n<li>Para o solicitante, selecione sua VPC do Kubernetes<\/li>\n<li>Para o Aceitador, selecione sua VPC do Couchbase<\/li>\n<\/ol>\n<\/li>\n<li>Quando a conex\u00e3o estiver no estado \"Pending-acceptance\", clique com o bot\u00e3o direito do mouse e selecione Accept Request (Aceitar solicita\u00e7\u00e3o)<\/li>\n<\/ol>\n<p>Agora que a conex\u00e3o de peering foi criada, precisamos configurar as VPCs para rotear o tr\u00e1fego entre elas. Isso deve ser feito atualizando a vari\u00e1vel <u><a href=\"https:\/\/console.aws.amazon.com\/vpc\/home#routetables:\" target=\"_blank\" rel=\"noopener noreferrer\">Tabelas de rotas<\/a><\/u>\u00a0para <strong>ambas as VPCs<\/strong>\u00a0para rotear o tr\u00e1fego para o outro para as sub-redes corretas.<\/p>\n<p>Para este exemplo, assumiremos que o Kubernetes est\u00e1 sendo executado em 10.100.0.0\/16 e que o Couchbase est\u00e1 sendo executado em 10.200.0.0\/16.<\/p>\n<ol>\n<li>Para cada tabela de rotas no Kubernetes VPC:\n<ol>\n<li>V\u00e1 para a guia Routes (Rotas) e clique em Edit (Editar)<\/li>\n<li>Clique em Add Another Route (Adicionar outra rota)<\/li>\n<li>Digite a sub-rede do Couchbase (10.200.0.0\/16)<\/li>\n<li>Selecione a conex\u00e3o de emparelhamento como o destino (come\u00e7a com pcx-)<\/li>\n<li>Clique em Salvar<\/li>\n<\/ol>\n<\/li>\n<li>Agora repita na dire\u00e7\u00e3o oposta para cada Route Table na VPC do Couchbase:\n<ol>\n<li>V\u00e1 para a guia Routes (Rotas) e clique em Edit (Editar)<\/li>\n<li>Clique em Add Another Route (Adicionar outra rota)<\/li>\n<li>Insira a sub-rede do Kubernetes (10.100.0.0\/16)<\/li>\n<li>Selecione a conex\u00e3o de emparelhamento como o destino (come\u00e7a com pcx-)<\/li>\n<li>Clique em Salvar<\/li>\n<\/ol>\n<\/li>\n<li>Al\u00e9m disso, verifique se o grupo de seguran\u00e7a do EC2 para suas inst\u00e2ncias do Couchbase est\u00e1 permitindo as portas corretas da sub-rede do Kubernetes. As portas necess\u00e1rias s\u00e3o as portas Node-to-client listadas em <u><a href=\"https:\/\/docs.couchbase.com\/server\/current\/install\/install-ports.html\" target=\"_blank\" rel=\"noopener noreferrer\">este documento<\/a><\/u>.<\/li>\n<\/ol>\n<h2><strong>Cria\u00e7\u00e3o de um Application Load Balancer para bootstrapping<\/strong><\/h2>\n<p>Os SDKs do cliente Couchbase s\u00e3o capazes de fazer o bootstrapping da conex\u00e3o com o servidor por meio de v\u00e1rios protocolos diferentes. Para facilitar o uso do cluster a partir do Kubernetes, vamos nos concentrar no bootstrapping por meio do protocolo HTTP na porta 8091. Se voc\u00ea quiser usar o TLS para proteger o processo de bootstrapping, isso pode ser feito usando a porta 18091.<\/p>\n<p>Para dar suporte a esse tipo de bootstrap, criaremos um Application Load Balancer (ALB) no AWS. Isso fornecer\u00e1 um \u00fanico endpoint que pode ser reutilizado independentemente de qualquer altera\u00e7\u00e3o no cluster do Couchbase. Ele tamb\u00e9m pode ajudar na troca de um cluster para outro durante as atualiza\u00e7\u00f5es do cluster.<\/p>\n<ol>\n<li>No EC2, v\u00e1 para Load Balancers e clique em Create Load Balancer.<\/li>\n<li>Selecione Application Load Balancer e clique em Continue.<\/li>\n<li>Para a \"Etapa 1: Configurar o balanceador de carga\":\n<ol>\n<li>Digite um nome para seu balanceador de carga, ou seja, \"couchbase-primary\".<\/li>\n<li>O esquema deve ser \"interno\". <strong>Observa\u00e7\u00e3o:<\/strong>\u00a0A sele\u00e7\u00e3o interna \u00e9 muito importante para a seguran\u00e7a.<\/li>\n<li>Altere a porta de 80 para 8091.<\/li>\n<li>Selecione a VPC e as sub-redes em que o Couchbase est\u00e1 sendo executado. Se o Couchbase estiver apenas em uma \u00fanica zona de disponibilidade, selecione uma AZ adicional para atender ao requisito do ALB.<\/li>\n<li>Clique em \"Next: Configure Security Settings\".<\/li>\n<\/ol>\n<\/li>\n<li>N\u00e3o h\u00e1 configura\u00e7\u00f5es na Etapa 2. Clique em \"Next: Configure Security Groups\" (Configurar grupos de seguran\u00e7a).<\/li>\n<li>Crie um novo grupo de seguran\u00e7a para o ALB, com a porta TCP 8091 aberta para o tr\u00e1fego de entrada, e clique em \"Next\" (Avan\u00e7ar): Configure Routing\" (Configurar roteamento).\n<ol>\n<li>Talvez voc\u00ea precise editar o grupo de seguran\u00e7a do EC2 do Couchbase para abrir a porta 8091 para o tr\u00e1fego do novo grupo de seguran\u00e7a do EC2 criado para o ALB.<\/li>\n<\/ol>\n<\/li>\n<li>Crie um novo Target Group com esses valores:\n<ol>\n<li>Nome: \"couchbase-primary\"<\/li>\n<li>Protocolo: \"HTTP\"<\/li>\n<li>Porta: \"8091\"<\/li>\n<li>Protocolo de verifica\u00e7\u00e3o de integridade: \"HTTP\"<\/li>\n<li>Caminho do exame de sa\u00fade: \"\/ui\/index.html\"<\/li>\n<li>Clique em \"Next: Registrar alvos\"<\/li>\n<\/ol>\n<\/li>\n<li>Para \"Etapa 5: registrar alvos\":\n<ol>\n<li>Selecione todas as inst\u00e2ncias do Couchbase no cluster.<\/li>\n<li>Clique em \"Add To Registered\" para adicion\u00e1-los \u00e0 lista na parte superior.<\/li>\n<li>Clique em \"Next: Review\".<\/li>\n<\/ol>\n<\/li>\n<li>Clique em Create.<\/li>\n<li>Depois que o ALB for criado, poderemos obter seu \"Nome DNS\", que usaremos posteriormente.<\/li>\n<\/ol>\n<h2><strong>Mas e quanto ao custo e ao desempenho dos ALBs?<\/strong><\/h2>\n<p>O fato \u00e9 que o custo dessa configura\u00e7\u00e3o \u00e9 insignificante em termos de despesa e desempenho. O balanceador de carga \u00e9 usado somente para comunicar a configura\u00e7\u00e3o do cluster ao cliente. Essa configura\u00e7\u00e3o inclui informa\u00e7\u00f5es sobre todos os n\u00f3s do cluster e como se conectar a eles.<\/p>\n<p>Ap\u00f3s a conclus\u00e3o do bootstrapping, o cliente \u00e9 conectado diretamente aos n\u00f3s do cluster. Todas as opera\u00e7\u00f5es de chave\/valor e de consulta passar\u00e3o diretamente para os n\u00f3s, ignorando o balanceador de carga. Isso significa que n\u00e3o h\u00e1 custo financeiro nem de desempenho para essas opera\u00e7\u00f5es.<\/p>\n<h2><strong>Tornando a inicializa\u00e7\u00e3o a partir do Kubernetes ainda mais f\u00e1cil<\/strong><\/h2>\n<p>Neste ponto, agora podemos inicializar nossos microsservi\u00e7os usando um \u00fanico URL de servidor na configura\u00e7\u00e3o. Isso \u00e9 muito mais f\u00e1cil do que listar v\u00e1rios servidores em nossa configura\u00e7\u00e3o, cada um dos quais pode mudar com o tempo \u00e0 medida que o cluster sofre muta\u00e7\u00f5es.<\/p>\n<p>Mas o URL que precisamos usar ainda \u00e9 complicado, algo como: <em>internal-couchbase-123456789.us-east-1.elb.amazonaws.com<\/em>. Existe uma maneira de simplificar isso ainda mais? A resposta \u00e9 sim!<\/p>\n<p>O Kubernetes tamb\u00e9m pode ajudar na descoberta de servi\u00e7os usando o DNS. Nesse caso, adicionaremos um <u><a href=\"https:\/\/kubernetes.io\/docs\/concepts\/services-networking\/service\/\" target=\"_blank\" rel=\"noopener noreferrer\">Servi\u00e7o<\/a><\/u>\u00a0do tipo ExternalName. Isso cria efetivamente um registro CNAME que encaminha o tr\u00e1fego para um nome DNS externo. Esse registro s\u00f3 existe para Pods dentro do cluster do Kubernetes, portanto, n\u00e3o afetar\u00e1 nada fora do nosso cluster.<\/p>\n<ol>\n<li>Crie um arquivo chamado \"couchbase-primary.yaml\" com o seguinte conte\u00fado:kind: Service<br \/>\napiVersion: v1<br \/>\nmetadados:<br \/>\n# esse ser\u00e1 o nome DNS para acessar o cluster<br \/>\nnome: couchbase-primary<br \/>\nespec:<br \/>\ntipo: ExternalName<br \/>\n# substitua o nome DNS do ALB abaixo<br \/>\nexternalName: internal-couchbase-123456789.us-east-1.elb.amazonaws.com<\/li>\n<li>Crie o servi\u00e7o a partir do arquivo yaml:kubectl apply -f couchbase-primary.yaml<\/li>\n<\/ol>\n<p>Tudo pronto! Agora, podemos inicializar qualquer microsservi\u00e7o em execu\u00e7\u00e3o em nosso cluster com um \u00fanico e simples URL:<br \/>\n<u><a href=\"https:\/\/couchbase-primary:8091\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/couchbase-primary:8091\/<\/a><\/u>. Se precisarmos acess\u00e1-lo a partir de um pod em um namespace diferente, basta acrescentar o namespace, por exemplo <u><a href=\"https:\/\/couchbase-primary.default:8091\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/couchbase-primary.default:8091\/<\/a><\/u>. Tamb\u00e9m \u00e9 poss\u00edvel registrar quantos clusters forem necess\u00e1rios usando nomes de dom\u00ednio diferentes.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-4025 aligncenter\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2017\/09\/brand.devCommChampionLogo.expert.FINAL_-300x300.png\" alt=\"Couchbase Expert\" width=\"300\" height=\"300\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/09\/brand.devCommChampionLogo.expert.FINAL_-300x300.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/09\/brand.devCommChampionLogo.expert.FINAL_-150x150.png 150w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/09\/brand.devCommChampionLogo.expert.FINAL_-65x65.png 65w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/09\/brand.devCommChampionLogo.expert.FINAL_-50x50.png 50w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/09\/brand.devCommChampionLogo.expert.FINAL_-20x20.png 20w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/09\/brand.devCommChampionLogo.expert.FINAL_.png 512w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>","protected":false},"excerpt":{"rendered":"<p>Brant Burnett\u00a0is a Couchbase Expert,\u00a0systems architect, and .NET developer experienced in desktop and web full-stack development. For the last 12 years he has been working with CenterEdge Software, a family entertainment software company based in Roxboro, NC. Brant is experienced [&hellip;]<\/p>","protected":false},"author":53,"featured_media":13873,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1816],"tags":[10124,1545,2103],"ppma_author":[9026],"class_list":["post-4053","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-couchbase-server","tag-amazon-web-services-aws","tag-kubernetes","tag-microservices"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.5 (Yoast SEO v26.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Using Couchbase on AWS from Kubernetes Microservices<\/title>\n<meta name=\"description\" content=\"This blog focuses on configuring Kubernetes in Amazon Web Services (AWS) to seamlessly connect to a Couchbase cluster running in EC2 on AWS.\" \/>\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\/using-couchbase-aws-kubernetes-microservices\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Using Couchbase on AWS from Kubernetes Microservices\" \/>\n<meta property=\"og:description\" content=\"This blog focuses on configuring Kubernetes in Amazon Web Services (AWS) to seamlessly connect to a Couchbase cluster running in EC2 on AWS.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/pt\/using-couchbase-aws-kubernetes-microservices\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2017-09-27T12:43:16+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-14T05:57:07+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/03\/Brant_Burnett_Headshot.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2046\" \/>\n\t<meta property=\"og:image:height\" content=\"1536\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Laura Czajkowski, Developer Community Manager, Couchbase\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Laura Czajkowski, Developer Community Manager, Couchbase\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/\"},\"author\":{\"name\":\"Laura Czajkowski, Developer Community Manager, Couchbase\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/5f1a0ece4e644bc8c037686fbc8f3220\"},\"headline\":\"Using Couchbase on AWS from Kubernetes Microservices\",\"datePublished\":\"2017-09-27T12:43:16+00:00\",\"dateModified\":\"2025-06-14T05:57:07+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/\"},\"wordCount\":1429,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"keywords\":[\"Amazon Web Services (AWS)\",\"kubernetes\",\"microservices\"],\"articleSection\":[\"Couchbase Server\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/\",\"name\":\"Using Couchbase on AWS from Kubernetes Microservices\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"datePublished\":\"2017-09-27T12:43:16+00:00\",\"dateModified\":\"2025-06-14T05:57:07+00:00\",\"description\":\"This blog focuses on configuring Kubernetes in Amazon Web Services (AWS) to seamlessly connect to a Couchbase cluster running in EC2 on AWS.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"width\":1800,\"height\":630},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Using Couchbase on AWS from Kubernetes Microservices\"}]},{\"@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\/5f1a0ece4e644bc8c037686fbc8f3220\",\"name\":\"Laura Czajkowski, Developer Community Manager, Couchbase\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/9deb07d5daaa00220534c31768bc4409\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/bc8eebaf25cbe39bc12fd7b1ef92550becc3953ab877a3f0285a59ec2d30b754?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/bc8eebaf25cbe39bc12fd7b1ef92550becc3953ab877a3f0285a59ec2d30b754?s=96&d=mm&r=g\",\"caption\":\"Laura Czajkowski, Developer Community Manager, Couchbase\"},\"description\":\"Laura Czajkowski is the Snr. Developer Community Manager at Couchbase overseeing the community. She\u2019s responsible for our monthly developer newsletter.\",\"url\":\"https:\/\/www.couchbase.com\/blog\/pt\/author\/laura-czajkowski\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Usando o Couchbase no AWS a partir de microsservi\u00e7os Kubernetes","description":"Este blog se concentra na configura\u00e7\u00e3o do Kubernetes no Amazon Web Services (AWS) para se conectar perfeitamente a um cluster do Couchbase em execu\u00e7\u00e3o no EC2 no AWS.","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\/using-couchbase-aws-kubernetes-microservices\/","og_locale":"pt_BR","og_type":"article","og_title":"Using Couchbase on AWS from Kubernetes Microservices","og_description":"This blog focuses on configuring Kubernetes in Amazon Web Services (AWS) to seamlessly connect to a Couchbase cluster running in EC2 on AWS.","og_url":"https:\/\/www.couchbase.com\/blog\/pt\/using-couchbase-aws-kubernetes-microservices\/","og_site_name":"The Couchbase Blog","article_published_time":"2017-09-27T12:43:16+00:00","article_modified_time":"2025-06-14T05:57:07+00:00","og_image":[{"width":2046,"height":1536,"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/03\/Brant_Burnett_Headshot.jpg","type":"image\/jpeg"}],"author":"Laura Czajkowski, Developer Community Manager, Couchbase","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Laura Czajkowski, Developer Community Manager, Couchbase","Est. reading time":"7 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/"},"author":{"name":"Laura Czajkowski, Developer Community Manager, Couchbase","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/5f1a0ece4e644bc8c037686fbc8f3220"},"headline":"Using Couchbase on AWS from Kubernetes Microservices","datePublished":"2017-09-27T12:43:16+00:00","dateModified":"2025-06-14T05:57:07+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/"},"wordCount":1429,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","keywords":["Amazon Web Services (AWS)","kubernetes","microservices"],"articleSection":["Couchbase Server"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/","url":"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/","name":"Usando o Couchbase no AWS a partir de microsservi\u00e7os Kubernetes","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","datePublished":"2017-09-27T12:43:16+00:00","dateModified":"2025-06-14T05:57:07+00:00","description":"Este blog se concentra na configura\u00e7\u00e3o do Kubernetes no Amazon Web Services (AWS) para se conectar perfeitamente a um cluster do Couchbase em execu\u00e7\u00e3o no EC2 no AWS.","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","width":1800,"height":630},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/using-couchbase-aws-kubernetes-microservices\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Using Couchbase on AWS from Kubernetes Microservices"}]},{"@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\/5f1a0ece4e644bc8c037686fbc8f3220","name":"Laura Czajkowski, gerente da comunidade de desenvolvedores, Couchbase","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/9deb07d5daaa00220534c31768bc4409","url":"https:\/\/secure.gravatar.com\/avatar\/bc8eebaf25cbe39bc12fd7b1ef92550becc3953ab877a3f0285a59ec2d30b754?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/bc8eebaf25cbe39bc12fd7b1ef92550becc3953ab877a3f0285a59ec2d30b754?s=96&d=mm&r=g","caption":"Laura Czajkowski, Developer Community Manager, Couchbase"},"description":"Laura Czajkowski \u00e9 a Snr. Developer Community Manager da Couchbase, supervisionando a comunidade. Ela \u00e9 respons\u00e1vel pelo nosso boletim informativo mensal para desenvolvedores.","url":"https:\/\/www.couchbase.com\/blog\/pt\/author\/laura-czajkowski\/"}]}},"authors":[{"term_id":9026,"user_id":53,"is_guest":0,"slug":"laura-czajkowski","display_name":"Laura Czajkowski, Developer Community Manager, Couchbase","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/bc8eebaf25cbe39bc12fd7b1ef92550becc3953ab877a3f0285a59ec2d30b754?s=96&d=mm&r=g","author_category":"","last_name":"Czajkowski","first_name":"Laura","job_title":"","user_url":"","description":"Laura Czajkowski \u00e9 a Snr. Developer Community Manager da Couchbase, supervisionando a comunidade. Ela \u00e9 respons\u00e1vel pelo nosso boletim informativo mensal para desenvolvedores."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts\/4053","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\/53"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/comments?post=4053"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts\/4053\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/media\/13873"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/media?parent=4053"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/categories?post=4053"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/tags?post=4053"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/ppma_author?post=4053"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}