DEV Community

Robert Orozco
Robert Orozco

Posted on

INSTALAR K8S EN DEBIAN 13

¿Qué es Kubernetes?

Es una plataforma de orquestación que permite automatizar el despliegue, scaling y gestión de aplicaciones contenerizadas.

🧩 Paso 1: Preparar el Kernel y la Red

#Deshabilitar Swap
swapoff -a
#Comenta swapoff en /etc/fstab
nano /etc-fstab

#Habilita modulos de kernel
sudo modprobe br_netfilter
sudo modprobe overlay
lsmod | grep br_netfilter
lsmod | grep overlay

#Hacer los cambios persistentes
cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
overlay
br_netfilter
EOF

#Configuración de parámetros de red
cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-iptables  = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.ipv4.ip_forward                 = 1
EOF

#Verificar las configuraciones
sudo sysctl --system
sysctl net.ipv4.ip_forward
Enter fullscreen mode Exit fullscreen mode

🧩 Paso 2: Instalar los CNI Plugins

wget https://github.com/containernetworking/plugins/releases/download/v1.8.0/cni-plugins-linux-amd64-v1.8.0.tgz

echo "ab3bda535f9d90766cccc90d3dddb5482003dd744d7f22bcf98186bf8eea8be6 cni-plugins-linux-amd64-v1.8.0.tgz" | sha256sum --check

sudo mkdir -p /opt/cni/bin
sudo tar Cxzvf /opt/cni/bin cni-plugins-linux-amd64-v1.8.0.tgz
Enter fullscreen mode Exit fullscreen mode

🧩 Paso 3: Instalar el ContainerRuntime (Puede ser CRI-O o Containerd)

KUBERNETES_VERSION=v1.32
CRIO_VERSION=v1.32

#Instala curl y actualiza
apt-get update
apt-get install -y curl

#Añade los repositorios de Kubernetes
curl -fsSL https://pkgs.k8s.io/core:/stable:/$KUBERNETES_VERSION/deb/Release.key | gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg

echo "deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/$KUBERNETES_VERSION/deb/ /" | tee /etc/apt/sources.list.d/kubernetes.list

#Añade los repositorios de CRI-O
curl -fsSL https://download.opensuse.org/repositories/isv:/cri-o:/stable:/$CRIO_VERSION/deb/Release.key | gpg --dearmor -o /etc/apt/keyrings/cri-o-apt-keyring.gpg

echo "deb [signed-by=/etc/apt/keyrings/cri-o-apt-keyring.gpg] https://download.opensuse.org/repositories/isv:/cri-o:/stable:/$CRIO_VERSION/deb/ /" | tee /etc/apt/sources.list.d/cri-o.list

#Instala los paquetes
apt-get update
apt-get install -y cri-o kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl
sudo systemctl enable --now kubelet

#Inicia el servicio CRI-O
systemctl start crio.service
systemctl enable crio.service

Enter fullscreen mode Exit fullscreen mode

🧩 Paso 4: Inicializa el Cluster

sudo kubeadm init --pod-network-cidr=10.244.0.0/16
Enter fullscreen mode Exit fullscreen mode

🧩 Paso 5: Copia la configuración de Kubectl para la gestión del cluster.

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

🧩 Paso 6: Instala Flannel

kubectl apply -f https://github.com/flannel-io/flannel/releases/latest/download/kube-flannel.yml
Enter fullscreen mode Exit fullscreen mode

🧩 Paso 7: Une el node01 al cluster

Top comments (0)