Skip to content

Instantly share code, notes, and snippets.

@jtfogarty
Last active April 16, 2023 03:35
Show Gist options
  • Save jtfogarty/d748e6ecc195045d9a8b9dc6dc37fbe9 to your computer and use it in GitHub Desktop.
Save jtfogarty/d748e6ecc195045d9a8b9dc6dc37fbe9 to your computer and use it in GitHub Desktop.
Installing k8s on ubuntu
#!/bin/bash
if [ $# -eq 0 ]
then
echo "No Arguments Supplied"
echo "Arg Options are: remove or install"
exit
fi
if [ $1 != 'install' ]
then
rm -rf /var/lib/rook
apt remove -y docker \
docker-ce \
docker-ce-cli \
kubelet \
kubeadm \
kubectl
rm -rf /etc/kubernetes
rm -rf /var/lib/docker/*
rm -rf /var/lib/kubelet/*
rm -rf /var/lib/etcd
rm -rf /var/lib/cni/*
rm -rf /etc/cni/
ip link show
fi
if [ $1 == 'remove' ]
then
echo "exiting"
exit
fi
mkdir /etc/docker
cat > /etc/docker/daemon.json <<EOF
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "1"
},
"storage-driver": "overlay2",
"insecure-registries" : ["10.10.100.14:5000"]
}
EOF
apt-get update
apt-get install -y \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
apt-get install -y docker-ce=5:19.03.13~3-0~ubuntu-bionic docker-ce-cli=5:19.03.13~3-0~ubuntu-bionic containerd.io
mkdir -p /etc/systemd/system/docker.service.d
systemctl daemon-reload
systemctl enable docker
systemctl start docker
systemctl status docker
docker info
apt-get install -y kubelet=1.19.3-00 kubeadm=1.19.3-00 kubectl=1.19.3-00
systemctl daemon-reload
systemctl enable kubelet
systemctl start kubelet
systemctl status kubelet
kubeadm init --pod-network-cidr=10.41.0.0/16 --ignore-preflight-errors=all --kubernetes-version=1.19.3
echo "sleeping 10 seconds"
sleep 10
rm -rf /home/jtfogar/.kube
mkdir /home/jtfogar/.kube
cp -i /etc/kubernetes/admin.conf /home/jtfogar/.kube/config
chown jtfogar:jtfogar /home/jtfogar/.kube -R
echo "sleeping 30 seconds"
sleep 30
kubectl get nodes
#!/bin/bash
sudo apt-get update && apt-get upgrade && apt autoremove && apt install -y va-driver-all && apt-get upgrade && apt autoremove && apt install -y openssh-server curl git nfs-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
sudo apt-add-repository "deb http://apt.kubernetes.io/ kubernetes-xenial main"
sudo apt-get update
#!/bin/bash
if [ $# -eq 0 ]
then
echo "No Arguments Supplied"
echo "Arg Options are: remove or install"
exit
fi
if [ $1 != 'install' ]
then
rm -rf /var/lib/rook
apt remove -y docker \
docker-ce \
docker-ce-cli \
kubelet \
kubeadm \
kubectl
rm -rf /etc/kubernetes
rm -rf /var/lib/docker/*
rm -rf /var/lib/kubelet/*
rm -rf /var/lib/etcd
rm -rf /var/lib/cni/*
rm -rf /etc/cni/
ip link show
fi
if [ $1 == 'remove' ]
then
echo "exiting"
exit
fi
mkdir /etc/docker
cat > /etc/docker/daemon.json <<EOF
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "1"
},
"storage-driver": "overlay2",
"insecure-registries" : ["10.10.100.14:5000"]
}
EOF
apt-get update
apt-get install -y \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
apt-get install -y docker-ce=5:19.03.13~3-0~ubuntu-bionic docker-ce-cli=5:19.03.13~3-0~ubuntu-bionic containerd.io
mkdir -p /etc/systemd/system/docker.service.d
systemctl daemon-reload
systemctl enable docker
systemctl start docker
systemctl status docker
docker info
apt-get install -y kubelet=1.19.3-00 kubeadm=1.19.3-00 kubectl=1.19.3-00
systemctl daemon-reload
systemctl enable kubelet
systemctl start kubelet
systemctl status kubelet
# The below line should be updated
kubeadm join 10.10.100.10:6443 --token lfo4h6.ubjk6868bnyxz3s6 \
--discovery-token-ca-cert-hash sha256:81029664eb593776c27c504150b539ed59eda6316ad95231227f343d448dbbe6
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment