Last active
July 20, 2018 06:33
-
-
Save hysios/269174b218ef7cda124ca581ef5e3b2c to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# HOSTNAME=${1:-k8smaster} # If variable not set or null, set it to default. | |
DNS_SERVER=8.8.8.8 | |
PROXY=${2:-http://your.proxyip} | |
# hostname $HOSTNAME | |
# hostname -F /etc/hostname | |
sudo yum remove -y docker \ | |
docker-client \ | |
docker-client-latest \ | |
docker-common \ | |
docker-latest \ | |
docker-latest-logrotate \ | |
docker-logrotate \ | |
docker-selinux \ | |
docker-engine-selinux \ | |
docker-engine | |
sudo yum install -y yum-utils \ | |
device-mapper-persistent-data \ | |
lvm2 | |
sudo yum-config-manager \ | |
--add-repo \ | |
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo | |
sudo yum-config-manager --enable docker-ce-edge | |
sudo yum install -y docker-ce | |
sudo systemctl enable docker | |
sudo systemctl start docker | |
cat <<EOF > /etc/yum.repos.d/kubernetes.repo | |
[kubernetes] | |
name=Kubernetes | |
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64 | |
enabled=1 | |
gpgcheck=0 | |
repo_gpgcheck=0 | |
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg | |
https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg | |
EOF | |
setenforce 0 | |
yum install -y kubelet kubeadm kubectl | |
# docker info | grep -i cgroup | |
# cat /etc/systemd/system/kubelet.service.d/10-kubeadm.conf | |
sed -i "s/cgroup-driver=systemd/cgroup-driver=cgroupfs/g" /etc/systemd/system/kubelet.service.d/10-kubeadm.conf | |
systemctl daemon-reload | |
systemctl enable kubelet | |
systemctl restart kubelet | |
cat <<EOF > /etc/sysctl.d/k8s.conf | |
net.bridge.bridge-nf-call-ip6tables = 1 | |
net.bridge.bridge-nf-call-iptables = 1 | |
EOF | |
sysctl --system | |
sed -i "s/nameserver.*/nameserver $DNS_SERVER/" /etc/resolv.conf | |
cat <<EOF > /etc/docker/daemon.json | |
{ | |
"registry-mirrors": ["https://registry.docker-cn.com"] | |
} | |
EOF | |
mkdir -p /etc/systemd/system/docker.service.d/ | |
cat <<EOF > /etc/systemd/system/docker.service.d/http-proxy.conf | |
[Service] | |
Environment="HTTPS_PROXY=http://your.proxyip" | |
Environment="NO_PROXY=localhost,127.0.0.1,registry.docker-cn.com" | |
EOF | |
systemctl daemon-reload | |
systemctl restart docker | |
swapoff -a | |
export MY_IP=`{ip addr | grep 'state UP' -A2 | tail -n1 | awk '{print $2}' | cut -f1 -d'/'}` | |
export https_proxy=$PROXY | |
export http_proxy=$PROXY | |
export no_proxy="localhost,$MY_IP" | |
kubeadm reset -f | |
kubeadm init --pod-network-cidr=10.244.0.0/16 --ignore-preflight-errors=all | |
unset https_proxy | |
mkdir -p $HOME/.kube | |
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config | |
sudo chown $(id -u):$(id -g) $HOME/.kube/config |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment