Kubernetes · 4 min read · Nov 03, 2025
Configurar um Cluster Kubernetes em Instância EC2 da AWS com Ubuntu usando kubeadm

Neste artigo, veremos como configurar um cluster Kubernetes com 2 Nós Trabalhadores e 1 Nó Mestre em Servidores Ubuntu 18.04 LTS. Usaremos a ferramenta “ kubeadm “ para configurar o cluster. O Kubeadm é uma ferramenta criada para fornecer “ kubeadm init “ e “ kubeadm join “ para criar clusters Kubernetes. Antes de prosseguirmos com a criação do cluster, vamos entender brevemente alguns termos.
- Docker:
O Docker é uma plataforma aberta para desenvolver, enviar e executar aplicações. O Docker permite que você separe suas aplicações de sua infraestrutura, para que você possa entregar software rapidamente. Com o Docker, você pode gerenciar sua infraestrutura da mesma forma que gerencia suas aplicações. - Imagem:
Uma imagem é um modelo somente leitura com instruções para criar um contêiner Docker. Muitas vezes, uma imagem é baseada em outra imagem, com algumas personalizações adicionais. - Contêiner:
Um contêiner é uma instância executável de uma imagem. Você pode criar, iniciar, parar, mover ou excluir um contêiner usando a API ou CLI do Docker. Você pode conectar um contêiner a uma ou mais redes, anexar armazenamento a ele ou até mesmo criar uma nova imagem com base em seu estado atual. - Kubernetes:
O Kubernetes é um sistema de orquestração de contêineres de código aberto para automatizar a implantação, escalonamento e gerenciamento de aplicações. - Nós:
Um nó representa uma única máquina no cluster. - Pods:
Um pod é um grupo de contêineres que são implantados juntos no mesmo host. É a unidade básica de execução de uma aplicação Kubernetes. - Implantações:
Uma Implantação executa várias réplicas de sua aplicação e substitui automaticamente quaisquer instâncias que falhem ou se tornem não responsivas. Ela fornece atualizações declarativas para Pods e ReplicaSets. - Conjunto de Réplicas:
Ele garante quantas réplicas de um pod devem estar em execução. Pode ser considerado como um substituto para o controlador de replicação.
- Controlador de Replicação:
É um supervisor para pods de longa duração. Ele lançará um número especificado de pods chamados réplicas e garante que eles continuem em execução o tempo todo.
- Serviço:
É uma abstração que define um conjunto lógico de Pods e uma política pela qual acessá-los.
O API Server, etcd, Controller Manager e Scheduler são os componentes do Mestre e Docker, Kubelet Service e Kubernetes Proxy Service são os componentes do Nó Trabalhador. Não discutiremos esses componentes neste documento. Se você quiser saber mais sobre esses componentes, pode visitar a página oficial do Kubernetes aqui.
Pré-requisitos
- 3 Servidores Ubuntu 18.04 com no mínimo 2 GB de RAM e 2 CPUs.
- Um usuário do sistema com acesso “sudo” em cada servidor.
O que faremos
- Configurar um Cluster Kubernetes com kubeadm
Configurar um Cluster Kubernetes com kubeadm
Aqui,
Temos 3 Servidores Ubuntu 18.04 LTS.
Servidor 1= node1
Servidor 2= node2
Servidor 3= master
Antes de prosseguirmos com a instalação real, vamos mudar o nome do host dos servidores.
Você pode usar os seguintes comandos para definir um nome de host em cada servidor. Após executar os seguintes comandos em cada servidor, faça login novamente nos servidores para que eles recebam um novo Nome de Host.
sudo hostnamectl set-hostname "master"
sudo hostnamectl set-hostname "node1"
sudo hostnamectl set-hostname "node2"Siga os passos mencionados abaixo para levantar o cluster Kubernetes em funcionamento.
Obter a chave gpg do Docker (Execute o seguinte comando em Todos os Nós) :
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -Adicionar o repositório do Docker ( Execute o seguinte comando em Todos os Nós):
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
Obter a chave gpg do Kubernetes ( Execute o seguinte comando em Todos os Nós):
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -Adicionar o repositório do Kubernetes ( Execute o seguinte comando em Todos os Nós):
cat << EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
Atualize seus pacotes ( Execute o seguinte comando em Todos os Nós):
sudo apt-get updateInstalar Docker, kubelet, kubeadm e kubectl ( Execute o seguinte comando em Todos os Nós):
sudo apt-get install -y docker-ce=18.06.1~ce~3-0~ubuntu kubelet=1.15.7-00 kubeadm=1.15.7-00 kubectl=1.15.7-00
Segurá-los na versão atual ( Execute o seguinte comando em Todos os Nós):
sudo apt-mark hold docker-ce kubelet kubeadm kubectlAdicionar a regra iptables ao sysctl.conf ( Execute o seguinte comando em Todos os Nós):
echo "net.bridge.bridge-nf-call-iptables=1" | sudo tee -a /etc/sysctl.confHabilitar iptables imediatamente ( Execute o seguinte comando em Todos os Nós**:
sudo sysctl -p
No Mestre :
Inicializar o cluster (Execute o seguinte comando apenas no nó Mestre):
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
Configurar kubeconfig local *( Execute o seguinte comando apenas no nó Mestre)*:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
Aplicar a sobreposição de rede CNI Flannel ( Execute o seguinte comando apenas no nó Mestre):
sudo kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.ymlNo Node1 e Node 2:
Junte os nós trabalhadores ao cluster ( Execute o seguinte comando apenas no Node1 e Node2):
sudo kubeadm join 172.31.4.161:6443 --token 0y52t6.ffsj8jkjfcl1sq8h \
--discovery-token-ca-cert-hash sha256:7aa1825042d19d3e567f7e4b447634e942fe9ed7f18f78464a9c05f451551ed5
Verifique se os nós trabalhadores se juntaram ao cluster com sucesso Execute o seguinte comando no Nó Mestre ):
kubectl get nodesConclusão:
Neste artigo, aprendemos a configurar um Cluster Kubernetes com a ferramenta kubeadm. Vimos como um cluster pode ser criado facilmente se os passos não forem perdidos e a instalação adequada for feita.
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.