Kubernetes
Installation
Test
Upgrade
KM-1
CURRENT_VERSION=`apt-cache policy kubectl | grep Installed | cut -d ':' -f 2 | cut -d ' ' -f 2`
CURRENT_MAJOR_VERSION=`echo ${CURRENT_VERSION} | cut -d '.' -f 1`.`echo ${CURRENT_VERSION} | cut -d '.' -f 2`
CURRENT_MINOR_VERSION=`echo ${CURRENT_VERSION} | cut -d '.' -f 3 | cut -d '-' -f 1`
CURRENT_PACKAGE_VERSION=`echo ${CURRENT_VERSION} | cut -d '-' -f 2`
NEXT_MAJOR_VERSION=1.32
NEXT_MINOR_VERSION=2
NEXT_PACKAGE_VERSION=1.1
NEXT_VERSION=${NEXT_MAJOR_VERSION}.${NEXT_MINOR_VERSION}-${NEXT_PACKAGE_VERSION}
# echo ${CURRENT_MAJOR_VERSION}
# echo ${NEXT_MAJOR_VERSION}
# echo deb [signed-by=/etc/apt/keyrings/kubernetes.asc] https://pkgs.k8s.io/core:/stable:/v${NEXT_MAJOR_VERSION}/deb/ / > /etc/apt/sources.list.d/kubernetes.list
echo ${CURRENT_VERSION}
echo ${NEXT_VERSION}
apt-mark unhold kubeadm && \
apt-get update && apt-get install -y kubeadm=${NEXT_VERSION} && \
apt-mark hold kubeadm
kubeadm version
kubeadm upgrade plan
kubeadm upgrade apply v${NEXT_MAJOR_VERSION}.${NEXT_MINOR_VERSION}
kubectl drain km-1 --ignore-daemonsets
apt-mark unhold kubelet kubectl && \
apt-get update && apt-get install -y kubelet=${NEXT_VERSION} kubectl=${NEXT_VERSION} && \
apt-mark hold kubelet kubectl
sudo systemctl daemon-reload
sudo systemctl restart kubelet
kubectl uncordon km-1
kubectl get nodes
KW-1
CURRENT_VERSION=`apt-cache policy kubectl | grep Installed | cut -d ':' -f 2 | cut -d ' ' -f 2`
CURRENT_MAJOR_VERSION=`echo ${CURRENT_VERSION} | cut -d '.' -f 1`.`echo ${CURRENT_VERSION} | cut -d '.' -f 2`
CURRENT_MINOR_VERSION=`echo ${CURRENT_VERSION} | cut -d '.' -f 3 | cut -d '-' -f 1`
CURRENT_PACKAGE_VERSION=`echo ${CURRENT_VERSION} | cut -d '-' -f 2`
NEXT_MAJOR_VERSION=1.32
NEXT_MINOR_VERSION=2
NEXT_PACKAGE_VERSION=1.1
NEXT_VERSION=${NEXT_MAJOR_VERSION}.${NEXT_MINOR_VERSION}-${NEXT_PACKAGE_VERSION}
NODE=kw-1
# echo ${CURRENT_MAJOR_VERSION}
# echo ${NEXT_MAJOR_VERSION}
# echo deb [signed-by=/etc/apt/keyrings/kubernetes.asc] https://pkgs.k8s.io/core:/stable:/v${NEXT_MAJOR_VERSION}/deb/ / > /etc/apt/sources.list.d/kubernetes.list
echo ${CURRENT_VERSION}
echo ${NEXT_VERSION}
apt-mark unhold kubeadm && \
apt-get update && apt-get install -y kubeadm=${NEXT_VERSION} && \
apt-mark hold kubeadm
kubeadm upgrade node
kubectl drain ${NODE} --ignore-daemonsets --delete-emptydir-data
apt-mark unhold kubelet kubectl && \
apt-get update && apt-get install -y kubelet=${NEXT_VERSION} kubectl=${NEXT_VERSION} && \
apt-mark hold kubelet kubectl
systemctl daemon-reload
systemctl restart kubelet
kubectl uncordon ${NODE}
kubectl get nodes
KW-2
CURRENT_VERSION=`apt-cache policy kubectl | grep Installed | cut -d ':' -f 2 | cut -d ' ' -f 2`
CURRENT_MAJOR_VERSION=`echo ${CURRENT_VERSION} | cut -d '.' -f 1`.`echo ${CURRENT_VERSION} | cut -d '.' -f 2`
CURRENT_MINOR_VERSION=`echo ${CURRENT_VERSION} | cut -d '.' -f 3 | cut -d '-' -f 1`
CURRENT_PACKAGE_VERSION=`echo ${CURRENT_VERSION} | cut -d '-' -f 2`
NEXT_MAJOR_VERSION=1.32
NEXT_MINOR_VERSION=2
NEXT_PACKAGE_VERSION=1.1
NEXT_VERSION=${NEXT_MAJOR_VERSION}.${NEXT_MINOR_VERSION}-${NEXT_PACKAGE_VERSION}
NODE=kw-2
# echo ${CURRENT_MAJOR_VERSION}
# echo ${NEXT_MAJOR_VERSION}
# echo deb [signed-by=/etc/apt/keyrings/kubernetes.asc] https://pkgs.k8s.io/core:/stable:/v${NEXT_MAJOR_VERSION}/deb/ / > /etc/apt/sources.list.d/kubernetes.list
echo ${CURRENT_VERSION}
echo ${NEXT_VERSION}
apt-mark unhold kubeadm && \
apt-get update && apt-get install -y kubeadm=${NEXT_VERSION} && \
apt-mark hold kubeadm
kubeadm upgrade node
kubectl drain ${NODE} --ignore-daemonsets --delete-emptydir-data
apt-mark unhold kubelet kubectl && \
apt-get update && apt-get install -y kubelet=${NEXT_VERSION} kubectl=${NEXT_VERSION} && \
apt-mark hold kubelet kubectl
systemctl daemon-reload
systemctl restart kubelet
kubectl uncordon ${NODE}
kubectl get nodes
KW-3
CURRENT_VERSION=`apt-cache policy kubectl | grep Installed | cut -d ':' -f 2 | cut -d ' ' -f 2`
CURRENT_MAJOR_VERSION=`echo ${CURRENT_VERSION} | cut -d '.' -f 1`.`echo ${CURRENT_VERSION} | cut -d '.' -f 2`
CURRENT_MINOR_VERSION=`echo ${CURRENT_VERSION} | cut -d '.' -f 3 | cut -d '-' -f 1`
CURRENT_PACKAGE_VERSION=`echo ${CURRENT_VERSION} | cut -d '-' -f 2`
NEXT_MAJOR_VERSION=1.32
NEXT_MINOR_VERSION=2
NEXT_PACKAGE_VERSION=1.1
NEXT_VERSION=${NEXT_MAJOR_VERSION}.${NEXT_MINOR_VERSION}-${NEXT_PACKAGE_VERSION}
NODE=kw-3
# echo ${CURRENT_MAJOR_VERSION}
# echo ${NEXT_MAJOR_VERSION}
# echo deb [signed-by=/etc/apt/keyrings/kubernetes.asc] https://pkgs.k8s.io/core:/stable:/v${NEXT_MAJOR_VERSION}/deb/ / > /etc/apt/sources.list.d/kubernetes.list
echo ${CURRENT_VERSION}
echo ${NEXT_VERSION}
apt-mark unhold kubeadm && \
apt-get update && apt-get install -y kubeadm=${NEXT_VERSION} && \
apt-mark hold kubeadm
kubeadm upgrade node
kubectl drain ${NODE} --ignore-daemonsets --delete-emptydir-data
apt-mark unhold kubelet kubectl && \
apt-get update && apt-get install -y kubelet=${NEXT_VERSION} kubectl=${NEXT_VERSION} && \
apt-mark hold kubelet kubectl
systemctl daemon-reload
systemctl restart kubelet
kubectl uncordon ${NODE}
kubectl get nodes