Utilice kubeadm para implementar v1.21.2 k8s
Sistema operativo: CentOS Linux versión 7.6.1810 (núcleo);
nodo01 .192.168.1.241
nodo02: 192.168.1.242
cat < >/etc/hosts
192.168.1.230 master01
192.168.1.241 nodo01
192.168.1.242 nodo02
EOF
systemctl detener firewalld
systemctl desactivar firewalld
setenforce 0
sed -i 's/^ SELINUX=.*/SELINUX=disabled/'/etc/selinux/configswapoff -ased -i '/ swap / s/^(.*)$ /#1/g' /etc/fstab
Instalar paquetes de software dependientes en cada máquina:
yum install -y epel-release
yum install -y conntrack ntpdate ntp ipvsadm ipset jq iptables curl sysstat libseccomp wget
Realiza sincronización horaria en cada máquina:
ntpdate time1.aliyun.com
modprobe ip_vs_rr
modprobe br_netfilter
cat > /etc/sysctl.d/kubernetes.conf << EOF
net.bridge.bridge-nf-call-iptables=1
net.bridge.bridge-nf-call-ip6tables=1
net.ipv4.ip_forward=1
net.ipv4.tcp_tw_recycle=0
vm .swappiness=0 # Deshabilita el espacio de intercambio, solo permite el uso del espacio de intercambio cuando el sistema esté en estado OOM
vm.overcommit_memory=1 # No verifique si hay suficiente memoria física
vm.panic_on_oom=0 # Habilitar OOM
fs.inotify.max_user_instances=8192
fs.inotify.max_user_watches=1048576
fs. max=52706963
fs.nr_open=52706963
net.ipv6.conf.all.disable_ipv6=1
net.netfilter.nf _conntrack_max=2310720 p>
EOF
sysctl -p /etc/sysctl.d/kubernetes.conf
Instale kubernetes y docker; instale k8s y docker; agregue k8s y todos los nodos de docker y;
um source; yum instala Docker e inicia Docker; yum instala kubeadm, kubelet y kubectl; implementa el nodo maestro, implementa complementos de red y registra el nodo de trabajo en el nodo maestro; > cat < > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=repositorio de Kubernetes
baseurl=/kubernetes/yum /repos/kubernetes -el7-x86_64/
gpgcheck=0
gpgkey=/kubernetes/yum/doc/yum-key.gpg
enable=1
EOF
wget -O /etc/yum.repos.d/docker-ce.repo/docker-ce/linux/centos/docker-ce.repo
yum -y install docker-ce
systemctl enable docker
systemctl start docker
cat < >/etc/docker/daemon.json p>
{
"registry-mirrors": [""]
}
EOF
systemctl reiniciar ventana acoplable
yum -y install kubelet kubeadm kubectl
systemctl enable kubelet
Implementar el nodo maestro de Kubernetes
Esta operación se realiza en el nodo maestro
kubeadm init -- apiserver-advertise-address=192.168.1.200 --image-repository registro.aliyuncs.com/google_containers --kubernetes-version v1.21.2 -- service-cidr=10.1.0.0/16 --pod-network -cidr=10.244.0.0/16
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/ .kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
KUBECONFIG=/etc/kubernetes/admin.conf
node node se une al clúster
Utilice kubeadm join para registrar el nodo Node con Matser
El contenido de kubeadm join se ha generado en el inicio de kubeadm anterior ( escrito al final de la salida de inicio de kubeadm)
Esta operación se realiza en el nodo Nodo:
kubeadm join 192.168.1.200:6443 --token 468683.8nmg23y85gxekguw
> --discovery-token-ca-cert -hash sha256.3b9e1c666c36e36547bbe24f79bf4
4264ee01071aa84b084db7aff58f38150a3
Verifique el estado de los nodos en el clúster. Después de instalar la herramienta de red, solo podrá continuar si todos los nodos están listos, mostrando el siguiente estado
[root@master01 ~]# kubectl get nodes
Nombre Estado Rol Edad Versión
master01 Plano de control listo, maestro 43m v1.21.2
node01 Listo 39m v1.21.2
node02 Listo 38m v1.21.2