2019-03-11
VMware workstation安裝K8s單節(jié)點
問題:
按照kubernetes權(quán)威指南安裝的K8s目溉,到myweb那一步的時候浩蓉,本地主機死活訪問不到Pod查库。
排查:
使用以下命令查看service地址及Pod端口免猾,然后本地curl办陷。
kubectl get svc
通了琅轧。
然后使用本地IP+PORT的方式curl析孽,也通了搭伤。
但是在本機瀏覽器打不開,所以問題定位在本地與虛擬機之間端口問題袜瞬。
懷疑服務(wù)器防火墻問題怜俐,但防火墻是關(guān)閉的,然后懷疑iptables規(guī)則問題邓尤,開放端口后還不通拍鲤。然后求助公司大神贴谎,得知是因為公司內(nèi)網(wǎng)只開放8000-9000端口,其他都墻了季稳。
解決:
一擅这、修改默認(rèn)端口限制
修改K8s的NodePort默認(rèn)開放的端口范圍
由于是二進制安裝的K8s,沒有apiserver.yaml文件可供修改景鼠。
修改/etc/kubernetes/apiserver文件仲翎,添加如下內(nèi)容并重啟apiserver
KUBE_SERVICE_ADDRESSES="--service-cluster-ip-range=10.254.0.0/16 --service-node-port-range=8000-9000"
systemctl restart kube-apiserver
二、修改yaml文件中的PORT為8000-9000范圍內(nèi)的端口
vi /data/k8s/myweb-svc.yaml
將30001修改為8000-9000之間的端口
kubectl apply -f /data/k8s/myweb-svc.yaml 重新部署
kubectl get svc 再次查看端口是否已經(jīng)更新
原文鏈接:https://blog.csdn.net/yelllowcong/article/details/80680408
如果是yaml格式的apiserver文件莲蜘,修改如下
vim /etc/kubernetes/manifests/kube-apiserver.yaml
- --service-node-port-range=8222-9555
修改k8s配置后 重啟操作
[root@k8s-master dashboard]# systemctl daemon-reload
[root@k8s-master dashboard]# systemctl restart kubelet
[root@k8s-master dashboard]# systemctl status kubelet