K8S集群安装KubeSphere失败记录

是的。

今天早上安装又没成功,这特么这玩意儿有那么难搞吗???

有/🙂


 首先。我是通过下面这样把yaml配置文件get到本地

wget https://raw.githubusercontent.com/kubesphere/ks-installer/v3.0.0-alpha.1/deploy/kubesphere-installer.yaml

wget了两个文件,下面红框

 然后依次配置两个yaml文件(下面只贴了一行)

kubectl apply -f kubesphere-installer.yaml 

好,查看一下(下面这个要稍等一会儿才会有结果,不要一看报错就慌,稍等一会就OK了)

[root@master kubeSphere]# kubectl get svc/ks-console -n kubesphere-system
NAME         TYPE       CLUSTER-IP     EXTERNAL-IP   PORT(S)        AGE
ks-console   NodePort   10.1.190.113   <none>        80:30880/TCP   76m

接着看一下pod状态,这就有点恶心人了,全特么装死

[root@master kubeSphere]# kubectl get pod -n kubesphere-system
NAME                                     READY   STATUS             RESTARTS   AGE
ks-apiserver-6f447cbdf9-knmwg            0/1     CrashLoopBackOff   7          14m
ks-console-5b68d6bfbd-nxwkq              1/1     Running            0          78m
ks-controller-manager-76c76977d7-6h48b   0/1     CrashLoopBackOff   7          13m
ks-installer-5b988669b9-8tf8b            1/1     Running            0          87m
openldap-0                               0/1     Pending            0          78m
redis-644bc597b9-t28bb                   0/1     Pending            0          79m

两个pod不停重启,两个直接pending

就是卡在这里!两次都是!


下面是我边骂边做的一些努力尝试


先选一个pod,查看一下详细信息

kubectl describe pod ks-apiserver-6f447cbdf9-knmwg -n kubesphere-system

Events:
  Type     Reason     Age                   From               Message
  ----     ------     ----                  ----               -------
  Normal   Scheduled  <unknown>             default-scheduler  Successfully assigned kubesphere-system/ks-apiserver-6f447cbdf9-knmwg to master
  Normal   Pulled     16m (x5 over 17m)     kubelet, master    Container image "kubespheredev/ks-apiserver:latest" already present on machine
  Normal   Created    16m (x5 over 17m)     kubelet, master    Created container ks-apiserver
  Normal   Started    16m (x5 over 17m)     kubelet, master    Started container ks-apiserver
  Warning  BackOff    2m49s (x76 over 17m)  kubelet, master    Back-off restarting failed container

怎么办呢??

查一下吧,发现很多老哥说:

在deployment申明镜像的后面加上命令
command: [ "/bin/bash", "-ce", "tail -f /dev/null" ]

还有老哥说:

如果想要pod不用一直重启,可以给pod改一个restartPolicy

restartPolicy: Never

看着不错,应该可以解决我的问题了吧!

可我找不到对应的yaml文件啊,自己太菜了

找不到就没办法修改

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 后俩发现可以通过kubectl edit编辑配置文件

kubectl edit pod ks-apiserver-6f447cbdf9-vwgmt -n kubesphere-system

我就猜到肯定是可以编辑的,只是才发现

那就编辑~吧,这个就是用vi打开的

修改一下(我是打算按第二个老哥说的修改重启策略)

改好之后,怎么都保存不了,就显示

Edit cancelled, no changes made.

太气人了。线索又断了

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

查看pod日志

[root@master kubeSphere]# kubectl logs ks-apiserver-6f447cbdf9-knmwg -n kubesphere-system 
W0804 16:22:51.441071       1 client_config.go:543] Neither --kubeconfig nor --master was specified.  Using the inClusterConfig.  This might not work.
Error: failed to connect to redis service, please check redis status, error: dial tcp 10.1.124.164:6379: connect: connection refused
2020/08/04 16:22:52 failed to connect to redis service, please check redis status, error: dial tcp 10.1.124.164:6379: connect: connection refused

 先到这里,下午接着搞...害



好,下午两点半的时候终于搞定了。

方法就是,上面第一个老哥说的那样,添加一行

command: [ "/bin/bash", "-ce", "tail -f /dev/null" ]

我开始的时候确实找不到yaml文件

后来发现方法还是很多的,首先之前不是装了DashBoard嘛,那里面可以找到yaml文件,但是不能把改动写入,很奇怪

然后kubectl edit也可以找到yaml文件,同样不能修改

索性把Deployment删除(先把配置内容复制到一个文件,我这里复制到了ks-apiserver.yaml)

可以在DashBoard删除,也可以在命令行删除:

先查看所有的deployment

[root@master kubeSphere]# kubectl get deployments.apps -n kubesphere-system 
NAME                    READY   UP-TO-DATE   AVAILABLE   AGE
ks-apiserver            1/1     1            1           5m28s
ks-console              1/1     1            1           13h
ks-controller-manager   0/1     1            0           13h
ks-installer            1/1     1            1           13h
redis                   0/1     1            0           13h

再删除deployment

[root@master kubeSphere]# kubectl delete deployments.apps ks-controller-manager -n kubesphere-system 
deployment.apps "ks-controller-manager" deleted
[root@master kubeSphere]# kubectl get deployments.apps -n kubesphere-system 
NAME           READY   UP-TO-DATE   AVAILABLE   AGE
ks-apiserver   1/1     1            1           8m36s
ks-console     1/1     1            1           13h
ks-installer   1/1     1            1           13h
redis          0/1     1            0           13h

然后在本地修改ks-apiserver.yaml

我这里把行号显示出来了,大概位置210行

command: [ "/bin/bash", "-ce", "tail -f /dev/null" ]
上面会报错,提示没有bash,只有sh,那就修改为下面这样
command: [ "/bin/sh", "-ce", "tail -f /dev/null" ]

然后
kubectl apply -f ks-apiserver.yaml

我去他妹的,终于OK了

 可以看到,apiserver这个pod正常起来了

[root@master kubeSphere]# kubectl get pod -n kubesphere-system 
NAME                                    READY   STATUS             RESTARTS   AGE
ks-apiserver-6b64d8b47-vmtzb            1/1     Running            6          12m
ks-console-5b68d6bfbd-rs48d             1/1     Running            1          12h
ks-controller-manager-cd8f855d6-c7snn   0/1     CrashLoopBackOff   17         65m
ks-installer-5b988669b9-5hlpf           1/1     Running            1          12h
openldap-0                              0/1     Pending            0          12h
redis-644bc597b9-fjdj2                  0/1     Pending            0          12h

接下来就是controller-manager了

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 12
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值