kubernetes集群搭建以及遇到的问题
centos7.2搭建kubernetes集群以及遇到的問(wèn)題
環(huán)境準(zhǔn)備:
- centos7.2
- etcd
- flannel
- kubenetes1.3
說(shuō)明:一臺(tái)pc用于搭建kubernetes master節(jié)點(diǎn),n臺(tái)kuernetes節(jié)點(diǎn),組成一個(gè)kubernetes集群,master節(jié)點(diǎn)需要運(yùn)行etcd kube-apiserver kube-controller-manager
| kube-master | 192.168…. |
| kube-node-1 | 192.168… |
| ….. | ….. |
| kube-node-i | 192.168… |
安裝所需軟件
安裝etcd
etcd安裝在kubernetest master節(jié)點(diǎn)上
本教程只安裝單機(jī)的etcd,如果需要用etcd集群,請(qǐng)自行網(wǎng)上找etcd集群搭建教程
安裝flannel
sudo wget http://code.yunfancdn.cn/huangjia/document/raw/master/kubernete/flannel-0.5.4-linux-amd64.tar.gzsudo cd flannel-0.5.4sudo flanneld /usr/bin安裝kubenetes
sudo wget http://code.yunfancdn.cn/huangjia/document/raw/master/kubernete/kubernetes.tar.gzsudo tar -zxf kubernetes.tar.gzsudo cd kubernetessudo cp kube* /usr/bin部署各組件
etcd啟動(dòng):
etcd -name etcd \ -data-dir /var/lib/etcd \ -listen-client-urls http://0.0.0.0:2378,http://0.0.0.0:4001 \ -advertise-client-urls http://0.0.0.0:2378,http://0.0.0.0:4001 \ >> /var/log/etcd.log 2>&1 &kubernetes api server啟動(dòng):
sudo kube-apiserver \ --logtostderr=true --v=0 \ --etcd_servers=http://172.17.11.254:4001 \ --insecure-bind-address=0.0.0.0 --insecure-port=8080 \ --service-cluster-ip-range=10.254.1.0/16 \ >> /home/huangjia/log/kube-apiserver.log 2>&1 &kube-controller-manager:
sudo kube-controller-manager \ --logtostderr=true --v=0 \ --master=http://0.0.0.0:8080 \ >> /home/huangjia/log/kube-controller-manager.log 2>&1 &kube-scheduler:
sudo kube-scheduler \ --logtostderr=true --v=0 \ --master=http://0.0.0.0:8080 \ >> /home/huangjia/log/kube-scheduler.log 2>&1 &kube-proxy:
sudo kube-proxy \ --logtostderr=true --v=0 \ --master=http://0.0.0.0:8080 \ >> /home/huangjia/log/kube-proxy.log 2>&1 &node啟動(dòng)組件
docker:
sudo docker -d \ -H unix:///var/run/docker.sock -H 0.0.0.0:2375 \ >> /home/huangjia/log/docker.log 2>&1 &kubelet:
sudo kubelet \ --address=0.0.0.0 \ --port=10250 \ --logtostderr=true --v=0 \ --api-servers=http://0.0.0.0:8080 \ >> /home/huangjia/log/kubelet.log 2>&1 &kube-proxy:
sudo kube-proxy \ --logtostderr=true --v=0 \ --master=http://192.168.3.27:8080 \ >> /home/huangjia/log/kube-proxy.log 2>&1 &flanneld:
etcdctl -C http://192.168.3.206:4001 \ set /coreos.com/network/config '{"Network":"10.0.0.0/16"}'flanneld -etcd-endpoints=http://192.168.3.206:4001 \ >> /home/huangjia/log/flanneld.go 2>&1 &source /run/flannel/subnet.envifconfig docker0 ${FLANNEL_SUBNET} 此命令行將docker0的網(wǎng)羅更改為flannel的網(wǎng)絡(luò)docker
docker -d \ -H unix:///var/run/docker.sock -H 0.0.0.0:2375 \ --bip=${FLANNEL_SUBNRT} --mtu=${FLANNEL_MTU} \ >> /home/huangjia/log/docker.log 2>&1 &F && Q
- 1
- 2
- 3
原因:
結(jié)合本教程所搭建的環(huán)境,kubectl默認(rèn)的是采用master節(jié)點(diǎn)的ip:8080的方式去連接apiserver發(fā)送請(qǐng)求,但是我在部署的過(guò)程中,由于master節(jié)點(diǎn)的8080端口已經(jīng)被其他的應(yīng)用所占用,所以我更改了apiserver的端口為9080,所以當(dāng)直接用:kubectl get 等操作的時(shí)候會(huì)報(bào)以上錯(cuò)誤。
解決方式有兩種:
一:通過(guò)kubectl -s http://matserIp:apiserverPort get
二:通過(guò)kubectl config set-cluster name –server=http://matserIp:apiserverPort 然后通過(guò)
kubectl –cluster=name get 就能正常的操作了
總結(jié)
以上是生活随笔為你收集整理的kubernetes集群搭建以及遇到的问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 一篇文章带你了解Flannel
- 下一篇: 风靡全网的H5究竟是什么?