?? Mastering Kubernetes with Kubeadm: A Step-by-Step Guide
ZEESHAN SAEED
Devops | Cloud Computing | Cyber Security | Solution Architect | Network Security
Excited to share a comprehensive guide on setting up a Kubernetes cluster using Kubeadm! ??
Prerequisites:
Step 1: Install Vagrant and Virtualbox
Get started by installing Vagrant here and Virtualbox.
Step 2: Initialize VMs
Step 3: Kubeadm Installation
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo \
? "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu\
? "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
? sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
git clone https://github.com/Mirantis/cri-dockerd.git
wget https://go.dev/dl/go1.21.4.linux-amd64.tar.gz
领英推荐
sudo rm -rf /usr/local/go && sudo tar -C /usr/local -xzf go1.21.4.linux-amd64.tar.gz
export PATH=$PATH:/usr/local/go/bin
go version
cd cri-dockerd
sudo apt install make
make cri-dockerd
cd cri-dockerd
mkdir -p /usr/local/bin
install -o root -g root -m 0755 cri-dockerd /usr/local/bin/cri-dockerd
install packaging/systemd/* /etc/systemd/system
sed -i -e 's,/usr/bin/cri-dockerd,/usr/local/bin/cri-dockerd,' /etc/systemd/system/cri-docker.service
systemctl daemon-reload
systemctl enable --now cri-docker.socket
sudo apt-get update
# apt-transport-https may be a dummy package; if so, you can skip that package
sudo apt-get install -y apt-transport-https ca-certificates curl gpg
curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.28/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg
# This overwrites any existing configuration in /etc/apt/sources.list.d/kubernetes.list
echo 'deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.28/deb/ /' | sudo tee /etc/apt/sources.list.d/kubernetes.list
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl
kubeadm init --pod-network-cidr 10.244.0.0/16 --apiserver-advertise-address 192.168.56.2 --cri-socket /run/cri-dockerd.sock
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
kubectl apply -f https://github.com/weaveworks/weave/releases/download/v2.8.1/weave-daemonset-k8s.yaml
kubeadm join 192.168.56.2:6443 --token h3qvmx.8pqrdvnkwcu38lyd \
--discovery-token-ca-cert-hash sha256:########################################################
Note: token will be achieved while running kube init command.
Conclusion:
Congratulations! ?? You now have a fully functional Kubernetes cluster. Feel free to explore and deploy your workloads.
DevOps Engineer & Linux System Admin | @ProSoftware Tech | MHI Services Ltd | Simplexmed | Ex-K2X Tech Linux System Admin | RHCSA | RHCE | Kubernetes | Containerization | AWS | CI/CD | GitOps | Terraform | Monitoring
1 年No doubt about your concern on kubeadm really helpfull ans enjoyable
Trusted Advisor & Problem Solver | Cloud Consultant | Ready for Anything
1 年ZEESHAN SAEED thank you for share the updated process to install #kubeadm #devops #kubernetes
System Support Assistance @ VConn Private Limited | MCTS, Help Desk Support, VPS
1 年Thanks for posting