Editado 1 dia atrás por ExtremeHow Equipe Editorial
KubernetesContêineresDevOpsClustersOrquestraçãoGestão de AplicativosEscalabilidadeConfiguraçãoImplantaçãoGestão de Servidores
Tradução atualizada 1 dia atrás
O Kubernetes, frequentemente referido como K8s, é uma plataforma de código aberto projetada para automatizar a implantação, escalonamento e operação de contêineres de aplicativos. Ele fornece uma estrutura que permite executar sistemas distribuídos de maneira flexível. O Kubernetes gerencia o trabalho que seus aplicativos realizam com base nos recursos disponíveis no seu cluster, distribui a carga de forma otimizada e gerencia a recuperação de falhas.
Antes de iniciar a instalação do Kubernetes no Linux, certifique-se de ter os seguintes pré-requisitos:
O Docker é o runtime que o Kubernetes usa para gerenciar contêineres. Ele forma a base sobre a qual o Kubernetes funciona. Siga estas etapas para instalar o Docker no seu sistema Linux:
sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/$(lsb_release -cs) stable"
sudo apt-get update sudo apt-get install docker-ce
sudo systemctl start docker sudo systemctl enable docker
Verifique a instalação do Docker verificando sua versão:
docker --version
Para instalar o Kubernetes, é necessário adicionar seu repositório oficial ao seu gerenciador de pacotes:
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
Os três componentes fundamentais do Kubernetes são kubelet, kubeadm e kubectl. Veja como instalá-los:
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl
Depois que o Kubernetes estiver instalado, é hora de configurar o sistema adequadamente:
O Kubernetes não funciona quando a memória swap está ativada. Use o seguinte comando para desativar o swap no seu sistema:
sudo swapoff -a
Para tornar a alteração permanente após reinicializações, comente a linha de swap no arquivo /etc/fstab
.
Certifique-se de que estas configurações de rede estão configuradas corretamente:
net.bridge.bridge-nf-call-iptables=1
:sudo sysctl net.bridge.bridge-nf-call-iptables=1
sysctl -p
.Usamos o kubeadm
para configurar um nó mestre - o plano de controle para o seu cluster Kubernetes:
sudo kubeadm init
kubectl
. Isso geralmente inclui:mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config
root
, substitua $HOME
por /root
ou /home/<seu-nome-de-usuário>
.Instale o plugin de Rede de Pods para permitir a comunicação entre pods. Aqui está um exemplo usando Flannel:
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
Verifique o status dos seus nós:
kubectl get nodes
Implantar sua primeira aplicação é simples. Vamos implantar um servidor nginx simples:
kubectl run nginx --image=nginx --port=80
Para expor a implantação como um serviço acessível de fora do cluster:
kubectl expose deployment nginx --type=NodePort
Obtenha detalhes sobre sua implantação e serviço:
kubectl get deployments kubectl get services
NodePort
do serviço fornecerá uma porta para acessar o servidor nginx, que você pode acessar usando o endereço IP do seu servidor e a porta fornecida.
Uma das principais vantagens do Kubernetes é a sua capacidade de escalar aplicações facilmente. Se seu servidor nginx precisar lidar com mais carga, você pode escalá-lo:
kubectl scale deployment nginx --replicas=3
Verifique o Status:
kubectl get pods -o wide
Após experimentar os recursos do Kubernetes, talvez você queira limpar o ambiente de demonstração:
kubectl delete service nginx kubectl delete deployment nginx
Com este guia, você começou a instalar e usar o Kubernetes no Linux. Essa configuração oferece uma compreensão básica do Kubernetes, com foco em componentes essenciais como kubeadm, kubelet e na capacidade de implantar e gerenciar aplicações simples. A partir daqui, você pode explorar conceitos, configurações e técnicas de gerenciamento mais avançadas do Kubernetes para aproveitar todo o poder do Kubernetes em sua infraestrutura.
Se você encontrar algo errado com o conteúdo do artigo, você pode