安装k8s遇到的问题
- ntpdate time.windows.com
ntpdate
#说是统一时间,但是我看那个域名不对劲了,我的是Mac啊这个带windows的我能用吗
#然后就去网上找了一下,国内用以下都可以
cn.pool.ntp.org 中国开源免费NTP服务器
ntp1.aliyun.com 阿里云NTP服务器
ntp2.aliyun.com 阿里云NTP服务器
time1.aliyun.com 阿里云NTP服务器
time2.aliyun.com 阿里云NTP服务器
#不一定要是教程给的那个和主机同步
- error: Missing or incomplete configuration info. Please point to an existing, complete config file
安装kube-control-manager和kube-scheduler
#说我配置文件有问题,让我完善
#东找西找终于找到一个解释的清楚且有用的方案
#文章里的解决方案是官方给的
#大概意思是说不再默认使用本地的apiserver的8080,如果有这种老的集群,建议secure your server。
#如果不能,官方提供了一种临时方案,把KUBERNETES_MASTER添加到环境变量中:
vim /etc/profile
G o
export KUBERNETES_MASTER="127.0.0.1:8080"
:wq!
source /etc/profile
- The connection to the server localhost:8080 was refused - did you specify the right host or port?
解决The connection to the server localhost:8080 was refused - did you specify the right host or port?
#解决了上边那个又来一个新问题
#后边的问句其实还是再说配置文件的问题,查找资料后说是缺少admin.conf
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
- no such file “admin.conf”
K8s ❉ 报错cannot stat ‘/etc/kubernetes/admin.conf’
#很奇怪只有master节点有这个文件,其他子节点都没有所以其他节点都夭折在了第二步
#解决方案就是从master把文件拷过去
scp /etc/kubernetes/admin.conf root@192.168.247.137:/etc/kubernetes/admin.conf
- kubectl get nodes获取不到子节点
关闭swap分区
#这里选择再加入一次
kubeadm join 10.211.55.30:6443 --token pwwebz.ken3c182lzxsfgxt \
--discovery-token-ca-cert-hash sha256:6231b5a655e15ee3ba68058beff8f18cdacf6f8e0feda36bfc0d2b0cc3408042
#好了这下仔细看了,之前还没注意到加入的时候报错了
#说是没有关闭swap分区
#但是我重新关闭又仔细检查了相关文件都是关闭了的,网上一查居然要关机才生效
reboot now
- 一切正常之后找不到网页
#有点被教程误导了,教程说的是通过下面命令查看nodeip
kubectl get pods --all-namespaces -o wide
#说的也没错,但其实nodeip就是我们配置的两个节点的ip不需要管,上边的命令最多就是看一下他们启动的状态
#这让我陷入了一个端口port默认就是80的误区
#通过查资料之后发现端口其实是创建pod时映射的那个端口
[root@master ~]# kubectl get pod,svc
NAME READY STATUS RESTARTS AGE
pod/nginx-f89759699-qwkrt 1/1 Running 0 23m
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 72m
service/nginx NodePort 10.99.197.250 <none> 80:31884/TCP 22m
#应该是31884才能访问到