系统环境:CentOS Linux release 7.3.1611 (Core)
镜像下载地址:
备注:镜像资源比较大:分成三份:(需要VPN也可以找我)
镜像下载地址:
1、https://download.csdn.net/download/qq_33432713/10620480
2、https://download.csdn.net/download/qq_33432713/10620477
3、https://download.csdn.net/download/qq_33432713/10620471
1、关闭selinux,关闭firewalld,关闭swap
systemctl stop firewalld && systemctl disable firewalld
swapoff -a
2、配置主机映射和修改主机名
hostnamectl set-hostname k8s-master
3、yum -y install docker && systemctl start docker && systemctl enable docker
4、 yum -y install kubectl kubelet kubernetes-cni kubeadm (这几个软件需要去google的yum源下载,建议下本地vpn翻墙,把软件包下载下来)
5、systemctl start kubelet && systemctl enable kubelet
6、master端导入需要镜像(详细见软件包)
7、kubeadm进行初始化:
kubeadm init --kubernetes-version=v1.9.1 --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address=0.0.0.0 --apiserver-cert-extra-sans=10.2.0.35,127.0.0.1,k8s-master
--apiserver-cert-extra-sans #该参数指定自己内网地址和映射
在执行过程中,要等几分钟,然后执行以下命令:
然后执行如下命令:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
成功以后可以指定一下命令进行查看:
kubectl get cs
kubectl get nodes
8、注意:
记住该条命令:kubeadm join --token d506ef.63c05fa829529565 10.2.0.37:6443 --discovery-token-ca-cert-hash sha256:4cd1954bf2a1c0904f92328d33bc25471604abd918e019b3c1905289fb8130f2 #在node节点执行该条命令,--token是有有效期的,默认是24小时
9、部署 flannel
mkdir -p ~/k8s/
wget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
kubectl apply -f kube-flannel.yml #执行会输出一下内容:
10、kubectl get pod -n kube-system #注意红框内出现Running状态然后在node节点
=========================================================================================
在node节点部署
1、同master节点前五步一样部署
2、导入镜像:其实我导入多了,只需要导入一下几个就可以了:gcr.io/google_containers/kube-apiserver-amd64、gcr.io/google_containers/etcd-amd64、quay.io/coreos/flannel、gcr.io/google_containers/etcd-amd64
3、执行master的第8步,就可以了,然后在master上执行:kubectl get nodes,看到如下图:
注意:要想在node节点执行该条命令,需要再node上执行以下命令:
sudo cp /etc/kubernetes/admin.conf $HOME/
sudo chown $(id -u):$(id -g) $HOME/admin.conf
export KUBECONFIG=$HOME/admin.conf
不然会出现以下错误:The connection to the server localhost:8080 was refused - did you specify the right host or port?(单独开终端也会出现)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
最后是版本对应:
master:
REPOSITORY TAG IMAGE ID CREATED SIZE
gcr.io/google_containers/kube-apiserver-amd64 v1.9.1 e313a3e9d78d 7 days ago 210.4 MB
gcr.io/google_containers/kube-scheduler-amd64 v1.9.1 677911f7ae8f 7 days ago 62.7 MB
gcr.io/google_containers/kube-proxy-amd64 v1.9.1 e470f20528f9 7 days ago 109.1 MB
gcr.io/google_containers/kube-controller-manager-amd64 v1.9.1 4978f9a64966 7 days ago 137.8 MB
quay.io/coreos/flannel v0.9.1-amd64 2b736d06ca4c 8 weeks ago 51.31 MB
gcr.io/google_containers/k8s-dns-sidecar-amd64 1.14.7 db76ee297b85 11 weeks ago 42.03 MB
gcr.io/google_containers/k8s-dns-kube-dns-amd64 1.14.7 5d049a8c4eec 11 weeks ago 50.27 MB
gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64 1.14.7 5feec37454f4 11 weeks ago 40.95 MB
gcr.io/google_containers/etcd-amd64 3.1.10 1406502a6459 4 months ago 192.7 MB
gcr.io/google_containers/pause-amd64 3.0 99e59f495ffa 20 months ago 746.9 kB
node节点对应:
REPOSITORY TAG IMAGE ID CREATED SIZE
gcr.io/google_containers/kube-apiserver-amd64 v1.9.1 e313a3e9d78d 7 days ago 210.4 MB
quay.io/coreos/flannel v0.9.1-amd64 2b736d06ca4c 8 weeks ago 51.31 MB
gcr.io/google_containers/etcd-amd64 3.1.10 1406502a6459 4 months ago 192.7 MB
gcr.io/google_containers/pause-amd64 3.0 99e59f495ffa 20 months ago 746.9 kB
#以下是另一种网络版本对应:
REPOSITORY TAG IMAGE ID CREATED SIZE
quay.io/calico/node v2.6.2 6763a667e3ba 12 weeks ago 281.6 MB
quay.io/calico/cni v1.11.0 c3482541970f 3 months ago 70.88 MB
参考地址:https://www.kubernetes.org.cn/2906.html