26
Multi-Cloud Multi-Node Kubernetes Cluster
In this particular blog, I am going to set up Multi-Node Kubernetes Cluster on Multi-Cloud.
According to a Survey, 81% of organizations are working with two or more public cloud providers.
A multi-cloud strategy gives companies the freedom to use the best possible cloud for each workload.
Here I am going to set up 1 Master Node in AWS Cloud and 1-1 Slave Node in AWS and Azure respectively.
In one of previous blogs I had described How to Set Up Multi-Node Kubernetes Cluster Over AWS using Ansible. There I created 1 master and 1 slave in AWS cloud. In the Same manner to setup nodes in AWS, I will be using Ansible.To know more about Ansible and How did I do that set up, Visit to that blog.(inline Linked above)
Now I am going to set up 1 Slave Node in Azure Cloud. Here I am manually setting up the Slave node in Azure.


yum install docker -y
systemctl enable docker --now
vim /etc/docker/daemon.json{
"exec-opts":["native.cgroupdriver=systemd"]
}
systemctl restart docker
systemctl enable docker --now
vim /etc/yum.repos.d/kubernetes.repo
Write this in above file
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-\$basearch
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
exclude=kubelet kubeadm kubectl
-Now you can install kubadm , kubelet and kubectl
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-\$basearch
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
exclude=kubelet kubeadm kubectl
-Now you can install kubadm , kubelet and kubectl
yum install -y kubelet kubeadm kubectl — disableexcludes=kubernetes
systemctl enable kubelet --now
yum install iproute-tc
vim /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
Podman remove command: yum remove podman
kubeadm token create --print-join-command

Following is the Github Repository for your reference
Connect with me on LinkedIn
26