参考网址: https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/
准备阶段:
- 节点间时间同步
- 关闭selinux
- 关闭防火墙
- 设置/etc/hosts手动解析
- 梯子自备。在下载image时需要用到,或者可以找国内已经同步的源。
设置yum源
- 从阿里云安装docker和kubernetes
https://opsx.alibaba.com/mirror
docker
kubernetes
yum install -y kubelet kubeadm kubectl docker
yum install kubelet-1.14.8 kubeadm-1.14.8 kubectl-1.14.8 -y
systemctl enable kubelet && systemctl start kubelet
- 从阿里云安装docker和kubernetes
确保以下两个参数值为1,默认为1
- cat /proc/sys/net/bridge/bridge-nf-call-ip6tables
- cat /proc/sys/net/bridge/bridge-nf-call-iptables
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1 - vim /etc/sysctl.conf
在kernel中需要打开ipvs模块,/etc/sysconfig/kubelet
KUBE_PROXY_MODE=ipvs在kublet中禁用swap
/etc/sysconfig/kubelet
KUBELET_EXTRA_ARGS=”–fail-swap-on=false”一颗CPU
–ignore-preflight-errors=NumCPU初始化kubeadm
kubeadm init –pod-network-cidr=10.244.0.0/16 –service-cidr=10.96.0.0/12 –ignore-preflight-errors=all
kubeadm init –pod-network-cidr=10.244.0.0/16 –service-cidr=10.96.0.0/12 –ignore-preflight-errors=Swap –ignore-preflight-errors=NumCPU提前下载镜像
kubeadm config images listYour Kubernetes control-plane has initialized successfully!
在master上执行,创建root初始化目录
[root@master ~]# mkdir -p $HOME/.kube
[root@master ~]# cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
[root@master ~]# chown $(id -u):$(id -g) $HOME/.kube/config在master节点上安装flannel
https://github.com/coreos/flannel
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
wget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
kubectl apply -f kube-flannel.ymlinstall node1 software
- yum install -y docker-ce kubelet kubeadm
- 把所有docker images也下载上
相关命令
kubectl describe pod kube-flannel-ds-amd64-47jl8 –namespace=kube-system
kubectl get all –all-namespaces
kubectl get nodes
kubectl get ns
kubectl get cs
至此安装介绍已结束。
备注:
docker加速
- https://www.daocloud.io/mirror
- curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1461db2.m.daocloud.io
- https://dashboard.daocloud.io/orgs/qikang/packages/explore qikang qk3322451
- systemctl daemon-reload
- https://blog.51cto.com/ghbsunny/2162205
设置docker的代理网址
- [root@master ~]# vim /usr/lib/systemd/system/docker.service
- [root@master ~]# grep -i env /usr/lib/systemd/system/docker.service
- Environment=”HTTPS_PROXY=http://www.ik8s.io:10080"
- Environment=”HTTP_PROXY=http://www.ik8s.io:10080"
- Environment=”NO_PROXY=127.0.0.0/8,172.20.0.0/16”
版本记录
- kube-apiserver:v1.14.1
- kube-controller-manager:v1.14.1
- kube-scheduler:v1.14.1
- kube-proxy:v1.14.1
- pause:3.1
- etcd:3.3.10
- coredns:1.3.1
设置docker
- [root@node1 ~]# cat /etc/docker/daemon.json
- {“registry-mirrors”: [“http://f1361db2.m.daocloud.io"]}
- [root@node1 ~]# grep -i env /usr/lib/systemd/system/docker.service
- Environment=”NO_PROXY=127.0.0.0/8,172.20.0.0/16”
- systemctl enable docker
- systemctl enable kubelet
下载镜像
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager:v1.14.2
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:v1.14.2
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy:v1.14.2
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.1
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:3.3.10
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:1.3.1
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver:v1.14.2
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager:v1.14.2 k8s.gcr.io/kube-controller-manager:v1.14.2
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:v1.14.2 k8s.gcr.io/kube-scheduler:v1.14.2
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy:v1.14.2 k8s.gcr.io/kube-proxy:v1.14.2
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.1 k8s.gcr.io/pause:3.1
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:3.3.10 k8s.gcr.io/etcd:3.3.10
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:1.3.1 k8s.gcr.io/coredns:1.3.1
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver:v1.14.2 k8s.gcr.io/kube-apiserver:v1.14.2
下载镜像脚本
for i in `kubeadm config images list`; do
imageName=${i#k8s.gcr.io/}
echo $imageName
docker pull registry.aliyuncs.com/google_containers/$imageName
docker tag registry.aliyuncs.com/google_containers/$imageName k8s.gcr.io/$imageName
docker rmi registry.aliyuncs.com/google_containers/$imageName
done;
若你觉得我的文章对你有帮助,欢迎点击上方按钮对我打赏
扫描二维码,分享此文章