centos7下安装k8s

1,135 阅读1分钟

安装Kubernetes和Docker

先安装docker

curl -fsSL get.docker.com | sh

修改docker镜像和项目路径

#修改docker配置文件 vim /etc/docker/daemon.json 
{"registry-mirrors": ["http://7e61f7f9.m.daocloud.io"],"graph": "/data/docker"}

设置Kubernetes的yum镜像

首先因为google在国内已经被墙,所以需要用国内源来安装

#vim /etc/yum.repos.d/kubernetes.repo

[kubernetes]
name=Kubernetes Repository
baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=0

然后运行yum install

 yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes

运行下面的命令, 启动docker服务(如果已经安装Docker,则无需再次启动)

systemctl enable kubelet && systemctl start kubelet
systemctl enable docker && systemctl start docker

关闭swap

#永久关闭
#vi /etc/sysctl.d/k8s.conf
vm.swappiness=0
执行sysctl -p /etc/sysctl.d/k8s.conf使修改生效。


#临时关闭
swapoff -a

# 修改内核参数
cat <<EOF >  /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sysctl --system

安装Kubernetes

kubeadm init --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.18.0 --apiserver-advertise-address 192.168.100.101 --pod-network-cidr=10.244.0.0/16 --token-ttl 0

其中192.168.100.101是master的ip

执行完成之后, 会得到

kubeadm join 192.168.100.101:6443 --token 13ziqr.tc0t2yhf5c0kzwdp \
    --discovery-token-ca-cert-hash sha256:00e5434cb8ffc2c04daa4b931ab1abb63d650c49c47e494fa1f0cb38222c2a36

复制配置文件到用户目录

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

部署Kubernetes的Worker节点

第一步, 在所有worker节点上执行前面的所有步骤

第二步, 执行部署master节点生成的kubeadmin join指令

kubeadm join 192.168.100.101:6443 --token 13ziqr.tc0t2yhf5c0kzwdp \
    --discovery-token-ca-cert-hash sha256:00e5434cb8ffc2c04daa4b931ab1abb63d650c49c47e494fa1f0cb38222c2a36

安装网络插件

kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version |base64|tr -d '\n')"