国内使用kubeadm部署kubernetes的完整流程

使用阿里云的镜像安装kubeadm和kubectl

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=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
# 安装
yum install -y kubelet kubeadm kubectl

kubeadm将下载kubelet、kube-apiserver、kube-controller-manager、kube-scheduler、kube-proxy、etcd、coredns等内容,同样使用阿里云镜像

kubeadm config images list |sed -e 's/^/docker pull /g' -e 's#k8s.gcr.io#docker.io/mirrorgooglecontainers#g' | sh -x
docker images |grep mirrorgooglecontainers |awk '{print "docker tag",$1":"$2,$1":"$2}' |sed -e 's/mirrorgooglecontainers/k8s.gcr.io/2' |sh -x
docker images |grep mirrorgooglecontainers |awk '{print "docker rmi """$1""":"""$2}' |sh -x
docker pull coredns/coredns:1.2.6
docker tag coredns/coredns:1.2.6 k8s.gcr.io/coredns:1.2.6
docker rmi coredns/coredns:1.2.6

这里需要注意 coredns/coredns:1.2.6会根据kubeadm的版本更新,可以通过kubeadm config image list来查看。如果有兴趣,可以魔改该脚本,使之更加自动化一些。。

需要启动kubelet,至于kubelet起到什么作用在此不赘述。启动kubelet时,需要关闭SELinux以及swap相关命令为:

swapoff -a
setenforce 0

然后启动kubelet

systemctl start kubelet

使用kubeadm执行初始化操作,为正常运行 需携带有pods网络配置:

kubeadm init --pod-network-cidr=10.244.0.0/16

完成后需要将/proc/sys/net/bridge/bridge-nf-call-iptables文件中填写1,并执行

sysctl net.bridge.bridge-nf-call-iptables=1

最后使用 flannel建立pods网络

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/a70459be0084506e4ec919aa1c114638878db11b/Documentation/kube-flannel.yml

设置master节点可以创建pod

kubectl taint nodes --all node-role.kubernetes.io/master-
posted @ 2019-03-23 22:54  Ant°  阅读(1668)  评论(0编辑  收藏  举报