Iniciando em Kubernetes (K8s) – parte2

Iniciando a instalação do Kubernetes no CentOS 9

Primeiramente atualize o sistema:

sudo dnf update -y

Desabilite o SELinux para evitar problemas de compatibilidade durante a configuração inicial do cluster:

sudo setenforce 0
sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config

Desabilite o firewall:

sudo systemctl stop firewalld
sudo systemctl disable firewalld

Agora vamos adicionar o repositório do Kubernetes no seu sistema:

sudo tee /etc/yum.repos.d/kubernetes.repo <<EOF
[kubernetes] 
name=Kubernetes 
baseurl=https://pkgs.k8s.io/core:/stable:/v1.29/rpm/ 
enabled=1 
gpgcheck=1 
gpgkey=https://pkgs.k8s.io/core:/stable:/v1.29/rpm/repodata/repomd.xml.key 
EOF

Agora vamos instalar de fato o kubernetes:

sudo dnf install -y kubelet kubeadm kubectl --disableexcludes=kubernetes

Habilite e Inicie o kubelet:

sudo systemctl enable --now kubelet

Desative o swap:

sudo swapoff -a
sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab

Agora vamos iniciar o cluster Kubernetes:

sudo kubeadm init --pod-network-cidr=10.244.0.0/16

--pod-network-cidr=10.244.0.0/16: especifica o intervalo de endereços IP que será usado para a rede de pods. Este intervalo de endereços não deve colidir com outras redes em sua infraestrutura. O 10.244.0.0/16 é um intervalo comum usado por soluções de rede de pod.

Se tudo ocorrer de acordo, os certificados serão gerados e arquivos de configurações criados, POD, Manifestos e o cluster será criado com sucesso.

Após a conclusão, anote o comando kubeadm join exibido na saída. Você precisará dele para adicionar nós de trabalho ao cluster:

Agora precisa configurar o kubectl:

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

Feito isto, vamos instalar uma rede POD.

Pode-se utilizar a rede Calico:

kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml

Ou Flannel (no meu caso, utilizei este):

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

Verifique se todos os nós e os pods estão em execução:

kubectl get nodes
kubectl get pods --all-namespaces

Agora que seus nós e pods estão em estado “Ready” e “Running”, você pode começar a implantar suas aplicações no cluster Kubernetes.

Se houver algum problema na etapa anterior ou pré-instalação do kubernetes, verifique nosso artigo: Troubleshooting Kubernetes.