ks-installer失败:unable to retrieve the complete list of server APIs:...

文章描述了在Kubesphere中启用可观测性服务时遇到的问题,即服务未被触发部署。同时,由于资源不足导致Nacos和Spring-Cloud-Controller-Manager关闭,进而影响到API注册,使得ks-installer服务异常。解决方案是检查并恢复API服务,特别是v1alpha1.aggregated.springcloud.kubesphere.io,重启Spring-Cloud-Controller-Manager以使ks-installer能正常启动。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、kubesphere客气可观测性没有触发相关服务部署

spec:
  ……
  monitoring:
    whizard:
      client:              #在host集群无需编辑client配置
        clusterName: ''
        gatewayUrl: ''
      enabled: true        #将“false”更改为“true”。
      server: 
        nodePort: 30990    #默认在host集群开放30990端口与client进行通信,可根据实际网络模型自行配置 
  ……
status:
  …………
  monitoring:
    status: ""            #将status从'enabled'置空以重新部署monitoring
  • 少了一步status内容置空

2、修改cc ks-installer后重启服务异常

在这里插入图片描述

[root@xpqcsyx27x33xx9ten ~]# kubectl logs -f -n  kubesphere-system ks-installer-6449db646-tv4l5
2023-05-17T11:18:16+08:00 INFO     : shell-operator latest
2023-05-17T11:18:16+08:00 INFO     : Use temporary dir: /tmp/shell-operator
2023-05-17T11:18:16+08:00 INFO     : Initialize hooks manager ...
2023-05-17T11:18:16+08:00 INFO     : Search and load hooks ...
2023-05-17T11:18:16+08:00 INFO     : Load hook config from '/hooks/kubesphere/installRunner.py'
2023-05-17T11:18:16+08:00 INFO     : HTTP SERVER Listening on 0.0.0.0:9115
2023-05-17T11:18:17+08:00 INFO     : Load hook config from '/hooks/kubesphere/schedule.sh'
2023-05-17T11:18:17+08:00 INFO     : Initializing schedule manager ...
2023-05-17T11:18:17+08:00 INFO     : KUBE Init Kubernetes client
2023-05-17T11:18:17+08:00 INFO     : KUBE-INIT Kubernetes client is configured successfully
2023-05-17T11:18:17+08:00 INFO     : MAIN: run main loop
2023-05-17T11:18:17+08:00 INFO     : MAIN: add onStartup tasks
2023-05-17T11:18:17+08:00 INFO     : Running schedule manager ...
2023-05-17T11:18:17+08:00 INFO     : MSTOR Create new metric shell_operator_live_ticks
2023-05-17T11:18:17+08:00 INFO     : MSTOR Create new metric shell_operator_tasks_queue_length
2023-05-17T11:18:17+08:00 INFO     : QUEUE add all HookRun@OnStartup
2023-05-17T11:18:17+08:00 ERROR    : error getting GVR for kind 'ClusterConfiguration': unable to retrieve the complete list of server APIs: aggregated.springcloud.kubesphere.io/v1alpha1: the server is currently unable to handle the request
2023-05-17T11:18:17+08:00 ERROR    : Enable kube events for hooks error: unable to retrieve the complete list of server APIs: aggregated.springcloud.kubesphere.io/v1alpha1: the server is currently unable to handle the request
2023-05-17T11:18:20+08:00 INFO     : TASK_RUN Exit: program halts.
[root@xpqcsyx27x33xx9ten ~]# kubectl api-resources | grep aggregate
error: unable to retrieve the complete list of server APIs: aggregated.springcloud.kubesphere.io/v1alpha1: the server is currently unable to handle the request
  • 主要是开启可springcloud模块,后由于资源不足,将nacos和deployment.apps/spring-cloud-controller-manager 关闭导致api丢失(主要是deployment.apps/spring-cloud-controller-manager 管理着v1alpha1.aggregated.springcloud.kubesphere.io )

  • 可以使用命令kubectl get apiservice或者kubectl get apiservices.apiregistration.k8s.io 查看相关api是否正常,如果存在false则ks-installer无法启动,会报相关api错误

  • 启动deployment.apps/spring-cloud-controller-manager服务后,api正常下发
    在这里插入图片描述
    ks-installer成功启动

### 获取 `kubesphere/ks-installer:v3.3.1` 镜像文件 为了获取并使用 `kubesphere/ks-installer:v3.3.1` 镜像文件,通常有几种方法可以实现这一目标。 #### 方法一:通过 Docker Hub 下载镜像 如果网络条件允许连接到互联网,则可以直接从 Docker Hub 上拉取该版本的 KubeSphere 安装器镜像: ```bash docker pull kubesphere/ks-installer:v3.3.1 ``` 此命令会下载指定标签为 `v3.3.1` 的官方 KubeSphere 安装程序容器镜像[^1]。 #### 方法二:离线环境中准备镜像 对于无法直接访问外网的情况,在其他能够上网的机器上先完成上述操作之后,保存成 tar 文件再传输至目标主机加载入本地仓库: ```bash # 在联网设备执行如下指令打包镜像 docker save -o ks-installer_v3.3.1.tar kubesphere/ks-installer:v3.3.1 # 将生成好的 .tar 文件拷贝给待部署服务器后运行下面语句恢复数据 docker load < ks-installer_v3.3.1.tar ``` 这种方法适用于构建完全独立于公共网络资源供应链之外的企业级生产环境中的 Kubernetes 及其附加组件如 KubeSphere 平台本身及其依赖服务实例化所需的一切前置准备工作之一部分[^2]。 #### 方法三:利用私有 Harbor 或者其他 Registry 存储库同步镜像 企业内部往往已经搭建好了自己的镜像管理平台比如 VMware Tanzu、Harbor 等等。此时可以把所需的镜像推送到这些自定义地址下以便后续更方便快捷地调用它们而无需每次都重复以上过程;同时也便于实施安全策略控制谁有权推送新版本以及哪些团队成员被授权拉取消息等内容[^3]。 ```bash # 登录到私有的 registry docker login your.private.registry.com # 打标签 docker tag kubesphere/ks-installer:v3.3.1 your.private.registry.com/path/to/kubesphere/ks-installer:v3.3.1 # 推送镜像 docker push your.private.registry.com/path/to/kubesphere/ks-installer:v3.3.1 ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值