message
This commit is contained in:
parent
8661b42e2b
commit
d3d0ac84b4
@ -1,42 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
# script that runs
|
|
||||||
# https://kubernetes.io/docs/setup/production-environment/container-runtime
|
|
||||||
|
|
||||||
echo this script is now deprecated and provided for compatibility reasons only.
|
|
||||||
echo run setup-container.sh instead.
|
|
||||||
echo after running setup-container.sh, use setup-kubetools.sh to install the kubernetes tools
|
|
||||||
echo this script will now stop
|
|
||||||
echo use Ctrl-C to stop it now
|
|
||||||
sleep 30
|
|
||||||
exit
|
|
||||||
|
|
||||||
yum install -y vim yum-utils device-mapper-persistent-data lvm2
|
|
||||||
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
|
|
||||||
|
|
||||||
# notice that only verified versions of Docker may be installed
|
|
||||||
# verify the documentation to check if a more recent version is available
|
|
||||||
|
|
||||||
yum install -y docker-ce
|
|
||||||
[ ! -d /etc/docker ] && mkdir /etc/docker
|
|
||||||
|
|
||||||
cat > /etc/docker/daemon.json <<EOF
|
|
||||||
{
|
|
||||||
"exec-opts": ["native.cgroupdriver=systemd"],
|
|
||||||
"log-driver": "json-file",
|
|
||||||
"log-opts": {
|
|
||||||
"max-size": "100m"
|
|
||||||
},
|
|
||||||
"storage-driver": "overlay2",
|
|
||||||
"storage-opts": [
|
|
||||||
"overlay2.override_kernel_check=true"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
EOF
|
|
||||||
|
|
||||||
mkdir -p /etc/systemd/system/docker.service.d
|
|
||||||
|
|
||||||
systemctl daemon-reload
|
|
||||||
systemctl restart docker
|
|
||||||
systemctl enable docker
|
|
||||||
|
|
||||||
systemctl disable --now firewalld
|
|
||||||
@ -1,42 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
# script that runs
|
|
||||||
# https://kubernetes.io/docs/setup/production-environment/container-runtime
|
|
||||||
|
|
||||||
echo this script is now deprecated and provided for compatibility reasons only.
|
|
||||||
echo run setup-container.sh instead.
|
|
||||||
echo after running setup-container.sh, use setup-kubetools.sh to install the kubernetes tools
|
|
||||||
echo this script will now stop
|
|
||||||
echo use Ctrl-C to stop it now
|
|
||||||
sleep 30
|
|
||||||
exit
|
|
||||||
|
|
||||||
yum install -y vim yum-utils device-mapper-persistent-data lvm2
|
|
||||||
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
|
|
||||||
|
|
||||||
# notice that only verified versions of Docker may be installed
|
|
||||||
# verify the documentation to check if a more recent version is available
|
|
||||||
|
|
||||||
yum install -y docker-ce
|
|
||||||
[ ! -d /etc/docker ] && mkdir /etc/docker
|
|
||||||
|
|
||||||
cat > /etc/docker/daemon.json <<EOF
|
|
||||||
{
|
|
||||||
"exec-opts": ["native.cgroupdriver=systemd"],
|
|
||||||
"log-driver": "json-file",
|
|
||||||
"log-opts": {
|
|
||||||
"max-size": "100m"
|
|
||||||
},
|
|
||||||
"storage-driver": "overlay2",
|
|
||||||
"storage-opts": [
|
|
||||||
"overlay2.override_kernel_check=true"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
EOF
|
|
||||||
|
|
||||||
mkdir -p /etc/systemd/system/docker.service.d
|
|
||||||
|
|
||||||
systemctl daemon-reload
|
|
||||||
systemctl restart docker
|
|
||||||
systemctl enable docker
|
|
||||||
|
|
||||||
systemctl disable --now firewalld
|
|
||||||
@ -1,23 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
|
|
||||||
br_netfilter
|
|
||||||
EOF
|
|
||||||
|
|
||||||
cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
|
|
||||||
net.bridge.bridge-nf-call-ip6tables = 1
|
|
||||||
net.bridge.bridge-nf-call-iptables = 1
|
|
||||||
EOF
|
|
||||||
sudo sysctl --system
|
|
||||||
sudo swapoff -a
|
|
||||||
|
|
||||||
sudo apt-get update && sudo apt-get install -y apt-transport-https curl
|
|
||||||
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
|
|
||||||
cat <<EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
|
|
||||||
deb https://apt.kubernetes.io/ kubernetes-xenial main
|
|
||||||
EOF
|
|
||||||
sudo apt-get update
|
|
||||||
sudo apt-get install -y kubelet kubeadm kubectl
|
|
||||||
sudo apt-mark hold kubelet kubeadm kubectl
|
|
||||||
|
|
||||||
|
|
||||||
@ -1,90 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
# script that runs
|
|
||||||
# https://kubernetes.io/docs/setup/production-environment/container-runtime
|
|
||||||
|
|
||||||
# setting MYOS variable
|
|
||||||
MYOS=$(hostnamectl | awk '/Operating/ { print $3 }')
|
|
||||||
OSVERSION=$(hostnamectl | awk '/Operating/ { print $4 }')
|
|
||||||
|
|
||||||
##### CentOS 7 config
|
|
||||||
if [ $MYOS = "CentOS" ]
|
|
||||||
then
|
|
||||||
echo setting up CentOS 7 with Docker
|
|
||||||
yum install -y vim yum-utils device-mapper-persistent-data lvm2
|
|
||||||
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
|
|
||||||
|
|
||||||
# notice that only verified versions of Docker may be installed
|
|
||||||
# verify the documentation to check if a more recent version is available
|
|
||||||
|
|
||||||
yum install -y docker-ce
|
|
||||||
[ ! -d /etc/docker ] && mkdir /etc/docker
|
|
||||||
|
|
||||||
mkdir -p /etc/systemd/system/docker.service.d
|
|
||||||
|
|
||||||
|
|
||||||
cat > /etc/docker/daemon.json <<- EOF
|
|
||||||
{
|
|
||||||
"exec-opts": ["native.cgroupdriver=systemd"],
|
|
||||||
"log-driver": "json-file",
|
|
||||||
"log-opts": {
|
|
||||||
"max-size": "100m"
|
|
||||||
},
|
|
||||||
"storage-driver": "overlay2",
|
|
||||||
"storage-opts": [
|
|
||||||
"overlay2.override_kernel_check=true"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
EOF
|
|
||||||
|
|
||||||
|
|
||||||
systemctl daemon-reload
|
|
||||||
systemctl restart docker
|
|
||||||
systemctl enable docker
|
|
||||||
|
|
||||||
systemctl disable --now firewalld
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo printing MYOS $MYOS
|
|
||||||
|
|
||||||
if [ $MYOS = "Ubuntu" ]
|
|
||||||
then
|
|
||||||
### setting up container runtime prereq
|
|
||||||
cat <<- EOF | sudo tee /etc/modules-load.d/containerd.conf
|
|
||||||
overlay
|
|
||||||
br_netfilter
|
|
||||||
EOF
|
|
||||||
|
|
||||||
sudo modprobe overlay
|
|
||||||
sudo modprobe br_netfilter
|
|
||||||
|
|
||||||
# Setup required sysctl params, these persist across reboots.
|
|
||||||
cat <<- EOF | sudo tee /etc/sysctl.d/99-kubernetes-cri.conf
|
|
||||||
net.bridge.bridge-nf-call-iptables = 1
|
|
||||||
net.ipv4.ip_forward = 1
|
|
||||||
net.bridge.bridge-nf-call-ip6tables = 1
|
|
||||||
EOF
|
|
||||||
|
|
||||||
# Apply sysctl params without reboot
|
|
||||||
sudo sysctl --system
|
|
||||||
|
|
||||||
# (Install containerd)
|
|
||||||
sudo apt-get update && sudo apt-get install -y containerd
|
|
||||||
# Configure containerd
|
|
||||||
sudo mkdir -p /etc/containerd
|
|
||||||
cat <<- TOML | sudo tee /etc/containerd/config.toml
|
|
||||||
version = 2
|
|
||||||
[plugins]
|
|
||||||
[plugins."io.containerd.grpc.v1.cri"]
|
|
||||||
[plugins."io.containerd.grpc.v1.cri".containerd]
|
|
||||||
discard_unpacked_layers = true
|
|
||||||
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes]
|
|
||||||
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc]
|
|
||||||
runtime_type = "io.containerd.runc.v2"
|
|
||||||
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]
|
|
||||||
SystemdCgroup = true
|
|
||||||
TOML
|
|
||||||
|
|
||||||
# Restart containerd
|
|
||||||
sudo systemctl restart containerd
|
|
||||||
fi
|
|
||||||
|
|
||||||
@ -2,7 +2,7 @@
|
|||||||
# kubeadm installation instructions as on
|
# kubeadm installation instructions as on
|
||||||
# https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/
|
# https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/
|
||||||
|
|
||||||
# this script supports centos 7 and Ubuntu 20.04 only
|
# this script supports Ubuntu 20.04 and later only
|
||||||
# run this script with sudo
|
# run this script with sudo
|
||||||
|
|
||||||
if ! [ $USER = root ]
|
if ! [ $USER = root ]
|
||||||
@ -14,35 +14,6 @@ fi
|
|||||||
# setting MYOS variable
|
# setting MYOS variable
|
||||||
MYOS=$(hostnamectl | awk '/Operating/ { print $3 }')
|
MYOS=$(hostnamectl | awk '/Operating/ { print $3 }')
|
||||||
OSVERSION=$(hostnamectl | awk '/Operating/ { print $4 }')
|
OSVERSION=$(hostnamectl | awk '/Operating/ { print $4 }')
|
||||||
|
|
||||||
##### CentOS 7 config
|
|
||||||
if [ $MYOS = "CentOS" ]
|
|
||||||
then
|
|
||||||
echo RUNNING CENTOS CONFIG
|
|
||||||
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
|
|
||||||
[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
|
|
||||||
EOF
|
|
||||||
|
|
||||||
# Set SELinux in permissive mode (effectively disabling it)
|
|
||||||
setenforce 0
|
|
||||||
sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config
|
|
||||||
|
|
||||||
# disable swap (assuming that the name is /dev/centos/swap
|
|
||||||
sed -i 's/^\/dev\/mapper\/centos-swap/#\/dev\/mapper\/centos-swap/' /etc/fstab
|
|
||||||
swapoff /dev/mapper/centos-swap
|
|
||||||
|
|
||||||
yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
|
|
||||||
|
|
||||||
systemctl enable --now kubelet
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $MYOS = "Ubuntu" ]
|
if [ $MYOS = "Ubuntu" ]
|
||||||
then
|
then
|
||||||
echo RUNNING UBUNTU CONFIG
|
echo RUNNING UBUNTU CONFIG
|
||||||
@ -70,3 +41,6 @@ net.bridge.bridge-nf-call-ip6tables = 1
|
|||||||
net.bridge.bridge-nf-call-iptables = 1
|
net.bridge.bridge-nf-call-iptables = 1
|
||||||
EOF
|
EOF
|
||||||
sysctl --system
|
sysctl --system
|
||||||
|
|
||||||
|
echo after initializing the control node, follow instructions and use kubectl apply -f https://raw.githubusercontent.com/projectcalico/calico/v3.25.0/manifests/calico.yaml to install the calico plugin (control node only). On the worker nodes, use sudo kubeadm join ... to join
|
||||||
|
|
||||||
|
|||||||
@ -1,22 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
|
|
||||||
br_netfilter
|
|
||||||
EOF
|
|
||||||
|
|
||||||
cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
|
|
||||||
net.bridge.bridge-nf-call-ip6tables = 1
|
|
||||||
net.bridge.bridge-nf-call-iptables = 1
|
|
||||||
EOF
|
|
||||||
sudo sysctl --system
|
|
||||||
|
|
||||||
sudo apt-get update && sudo apt-get install -y apt-transport-https curl
|
|
||||||
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
|
|
||||||
cat <<EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
|
|
||||||
deb https://apt.kubernetes.io/ kubernetes-xenial main
|
|
||||||
EOF
|
|
||||||
sudo apt-get update
|
|
||||||
sudo apt-get install -y kubelet kubeadm kubectl
|
|
||||||
sudo apt-mark hold kubelet kubeadm kubectl
|
|
||||||
|
|
||||||
|
|
||||||
Loading…
Reference in New Issue
Block a user