Take a fresh look at your lifestyle.

Como configurar o Kubernetes com o Kubeadm no CentOS

Nesta dica, saiba como configurar o Kubernetes 1.5 com o Kubeadm no CentOS!

O Kubernetes é uma ferramenta muito utilizada em hoje em dia para automatização, distribuição de carga, monitoramento e orquestração de containers. O melhor de tudo, é que o Kubernetes foi desenvolvido pelo Google e é distribuído sob licença de código aberto. E hoje você verá como instalar e configurar o Kubernetes no CentOS, claro, você pode aplicar as mesmas configurações em sua distribuição favorita, o que vai mudar será somente os comandos de instalação, saiba como configurar o Kubernetes com o Kubeadm no CentOS.

A ideia do Kubernetes é facilitar a vida de quem precisa de containers em seus aplicativos, e com isso, o Google observou que havia a necessidade de criar algo que otimizasse tudo isso, tendo em vista que a empresa já trabalha a muitos anos com containers e surgiu a necessidade de algo que pudesse ser adaptado para trabalhar com Docker.

Quando surgiu o Docker ainda estava verde, mas o sistema ganhou força e mesmo o Docker amadurecendo e disponibilizando alguns recursos, o Kubernetes permanece em uso constante até hoje. A grande sacada do Kubernetes é deixar o usuário livre das limitações da API do Docker, inclusive você pode trocar de Docker para Rockets, e aí você é quem decide, entre ficar com o Swarm ou Kubernetes

Instalando e configurando o Kubernetes do CentOS

Vamos adicionar o repositório Kubernetes para o CentOS:

cat <<EOF > /etc/yum.repos.d/kubernetes.repo
 [kubernetes] name=Kubernetes
 baseurl=http://yum.kubernetes.io/repos/kubernetes-el7-x86_64
 enabled=1
 gpgcheck=0
 repo_gpgcheck=0
 EOF

Depois de adicionar o repositório, precisamos desativar o SElinux porque ele não funciona ainda muito bem com o Kubernetes, mas não se preocupe, vamos desativá-lo, para isso execute no terminal:

setenforce 0

Para que o SElinux permaneça desativado após a reinicialização, use o editor nano para editar o arquivo de configuração SElinux:

nano /etc/selinux/config

Agora, confira se a linha SELINUX esta como desativada, a linha deve ficar igual a:

SELINUX=disabled

Salve o arquivo e podemos continuar a instalar os pacotes necessários.

yum install docker kubelet kubeadm kubectl kubernetes-cni

Para ativar que o Docker seja iniciado automaticamente durante o boot, execute este comando:

systemctl enable docker

E para iniciá-lo agora, execute o seguinte:

systemctl start docker

Em seguida, vamos fazer o mesmo para o Kubelet:

systemctl enable kubelet
systemctl start kubelet

Configurando o cluster

A primeira coisa que precisamos fazer é decidir o master de nosso novo cluster.

kubeadm init

Observe que você não pode executar este comando duas vezes, você precisará derrubar o cluster antes de executá-lo pela segunda vez. O resultado será semelhante a este:

Instalando a rede de pod e adicionando nodes (nós) a um cluster

Na parte acima, inicializamos o master do cluster e foi gerado na última linha um token que usaremos para adicionar nodes (nós). Mas antes de fazer isso, precisamos instalar a rede pod.

kubectl apply -f https://git.io/weave-kube
Há muitas maneiras de ter uma rede pod, mas essa que mostrei acima talvez seja a mais simples. Ele usa o Container Network Interface ou o CNI, que é geralmente o padrão para contêineres de rede no Linux.

Em seguida, podemos adicionar nodes (nós) ao cluster com a execução deste comando em todos os nodes (nós):

kubeadm join --token=bb6fc2.be0345f5b02a32a0 45.55.128.42

O token é gerado por um conjunto de especificações, então mesmo que você queira, não vai conseguir usar o meu token para inserir nodes (nós) ao meu cluster. Em seguida, vamos permitir que os pods sejam executados no master e não apenas nos nodes (nós).

kubectl taint nodes --all dedicated-

Agora devemos verificar se todos os nodes (nós) estão online, para isso execute o comando abaixo:

kubectl get nodes

como-configurar-o-kubernetes-com-o-kubeadm-no-centos

Agora é com você, muita gente tem usado para lojas online, mas uma dica, quando for usar os microservices (Micro Serviço), lembre-se que no arquivo de configuração você precisa lembrar o número da porta aonde o serviço esta sendo usado e ao mesmo tempo, combinar o número da porta com o endereço de um nos nossos nodes (nós). No item via tem a documentação completa sobre o Kubernetes, inclusive no momento da escrita deste artigo a versão mais recente é o Kubernetes 1.9.

Via Kubernetes
Comentários