FERRAMENTAS LINUX: Use o Kubeadm para configurar o Kubernates no CentOS

terça-feira, 6 de fevereiro de 2018

Use o Kubeadm para configurar o Kubernates no CentOS


Aprenda a configurar o Kubernates com o  Kubeadm.




A ferramenta Kubernates é bastanteusada atualmente em automação,  distribuição de carga, monitoramento e orquestração de containers

O kubernates foi desenvolvido pelo Google, e ele é distribuído sob a licença de cógigo aberto (open source). 

Hoje vamos aprender a fazer a instalação do Kubernates no CentOS, e o processo usado nesse tutorial pode ser aplicado em outras distribuições.  O que muda é somente os comandos de instalação, 

O Kubernates possui a proposta de facilitar a vida de quem precisa de containers em seus aplicativos, assim, o Google observou que havia a necessidade de criar algo que otimizasse tudo isso, sendo que a empresa já trabalha a muitos anos com containers e surgiu a necessidade de algo que pudesse ser adaptado para trabalhar com Docker.

O Docker quando surgiu ainda estava no início mas o sistema ganhou força e mesmo o Docker ficando mais maduro 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 podemos trocar do Docker para o Rockets, e você é quem decide, entre ficar com o Swarm ou Kubernetes.

Para fazer a instalação do Kubernates siga os passos abaixo!

 Adicione o repositório do 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


Após isso desative o SElinux já que ele não funciona ainda muito bem com o Kubernetes para isso abra o termina e cole os comando abaixo!

setenforce 0


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

nano /etc/selinux/config

Agora, basta conferir se a linha do SELINUX esta como desativada, a linha fcará assim:

SELINUX=disabled

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

yum install docker kubelet kubeadm kubectl kubernetes-cni

Para ativar a inicialização automática do Docker  durante o boot, execute este comando:

systemctl enable docker

E para iniciar execute o seguinte comando :

systemctl start docker

Em seguida, vamos fazer o mesmo para o Kubelet:

systemctl enable kubelet
systemctl start kubelet

Configurando o cluster

Primeiro precisamos decidir qual será  o master do nosso novo cluster.

kubeadm init

Obs: 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 também 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

Existe váriass maneiras de se ter uma rede pod, mas a  mostrada acima é a mais simples. pois usa o Container Network Interface ou o CNI, que é geralmente o padrão para os contêainers de rede no Linux.

Depois, adicione os 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 será 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 basta verificar se todos os nodes (nós) estão online, para isso rode o comando abaixo:

kubectl get nodes

O resultado será o mostrado abaixo:




Muitos usam o Kubernates para lojas online, Lembrando que quando se usa os micro services (Micro Serviços) temos que lembrar o número da porta aonde o serviço esta sendo usado e também combinar o númeroda porta como endereço comum dos nodes (nós).

Para ver a documetação completa do Kubernates, clique aqui

Nenhum comentário:

Postar um comentário