Subindo um Cluster Kubernetes no CentOS 8

Kubernetes é um sistema de orquestração de contêineres open-source que automatiza a implantação, o dimensionamento e a gestão de aplicações em contêineres. E nesse artigo, vamos subir um pequeno cluster em um CentOS 8 usando Docker-ce.

[ Hits: 4.552 ]

Por: Daniel Lara Souza em 27/10/2020 | Blog: http://danniel-lara.blogspot.com/


Instalação e Configuração



Para esse artigo, vamos usar as seguintes configurações:
  • 3 Server com CentOS 8.2
  • 7 GB de Memória
  • 100GB de Disco

Onde teremos um (01) Master e dois (02) Works com os seguinte IPs:
  • 192.168.0.199    master-node
  • 192.168.0.198    node-1
  • 192.168.0.197    node-2

Após a instalação do CentOS 8.2 e atualização, vamos desativar o SELinux e também o Firewalld.

Desative o SELinux nos 3 server:

# sed -i --follow-symlinks 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux

Desative o Firewalld:

# systemctl disable firewalld

E reinicie os 3 server:

# reboot

Agora vamos instalar o Docker-CE. Adicione o repositório:

# dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo

Instale o containerd.io:

# dnf install https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm

Agora instale o docker-ce:

# dnf install docker-ce -y

Ative na inicialização e inicie o serviço:

# systemctl enable --now docker

Agora vamos instalar o kubernetes nos 3 server. Adicione o repo do kubernetes:

# cat <<EOF > /etc/yum.repos.d/kubernetes.repo

[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cl  oud.google.com/yum/doc/rpm-package-key.gpg
EOF

Instale o kubeadm:

# dnf install kubeadm -y

Inicie e ative na inicialização:

# systemctl enable kubelet
# systemctl start kubelet

Desative a SWAP nos 3 server:

# swapoff -a

Agora vamos iniciar o Kubernetes Master no server master:

# kubeadm init
Linux: Subindo um Cluster Kubernetes no Centos 8
Armazene esse comando:

kubeadm join 192.168.0.199:6443 --token rxwdpt.k12smt65egul5xg9 \
--discovery-token-ca-cert-hash sha256:69650ee0348f01723ee23beffbeed5e070abd1c5e18cfc84f101a43657db2acf


Vamos ativar nosso usuário para usar o cluster:

# mkdir -p $HOME/.kube
# cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
# chown $(id -u):$(id -g) $HOME/.kube/config

Vamos verificar se está OK, o Master:

# kubectl get nodes
Linux: Subindo um Cluster Kubernetes no Centos 8

Rede do Pod

A implantação do cluster de rede é um processo altamente flexível, dependendo de suas necessidades e há muitas opções disponíveis. Como queremos manter nossa instalação o mais simples possível, usaremos o plugin Weavenet que não requer nenhuma configuração, ou código extra, e fornece um endereço IP por pod, o que é ótimo para nós

# export kubever=$(kubectl version | base64 | tr -d '\n')
# kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$kubever

Verifica o status novamente:

# kubectl get nodes
Linux: Subindo um Cluster Kubernetes no Centos 8

Agora vamos adicionar os Nodes ao cluster. Usaremos aquele comando que pedi pra armazenar.

Execute nos 2 nodes:

# kubeadm join 192.168.0.199:6443 --token rxwdpt.k12smt65egul5xg9 \
--discovery-token-ca-cert-hash sha256:69650ee0348f01723ee23beffbeed5e070abd1c5e18cfc84f101a43657db2acf


E por fim, no Master:

# kubectl get nodes
Linux: Subindo um Cluster Kubernetes no Centos 8

Feito! Temos aí o nosso cluster em Kubernetes.

Espero que ajude.

Para saber mais sobre kubernetes, acesse os vídeos da LINUXtips - YouTube.

Guia de referência: Kubernetes Documentation | Kubernetes

   

Páginas do artigo
   1. Instalação e Configuração
Outros artigos deste autor

Subindo o Zabbix e Grafana no Podman com Pod

Rocky Linux - Novo Substituto do CentOS

Criando Imagens com Buildah

Bacula + Webacula + Bacula-web + bat no CentOS 6.3

Pods com Podman

Leitura recomendada

Habilitar a aceleração por hardware AMD AMF no OBS

Compilando um kernel Linux

Incrementando as funções do KDE com "servicemenus"

Bacula + Webacula + Bacula-web + bat no CentOS 6.3

Virtualbox - clonando e reduzindo o tamanho de HDs

  
Comentários
[1] Comentário enviado por willian.firmino em 27/10/2020 - 15:32h

Favoritado.

[2] Comentário enviado por danniel-lara em 29/10/2020 - 08:07h


[1] Comentário enviado por willian.firmino em 27/10/2020 - 15:32h

Favoritado.


Obrigado

[3] Comentário enviado por maurixnovatrento em 10/11/2020 - 12:27h


Bom artigo.

___________________________________________________________
[code]Conhecimento não se Leva para o Túmulo.
https://github.com/MauricioFerrari-NovaTrento [/code]


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts