常见问题
能否创建单节点集群
从 QKE v2.0.0
版本起支持创建单节点集群(只创建一个主节点),方便用户快速测试使用。用户可以随时增加工作节点对集群进行扩容,但无法增加主节点。
注意
默认情况下 QKE 执行 KubeSphere 最小化安装(只包含监控组件),如需开启全部组件,需要创建工作节点(云平台挂盘限制,每台云服务器最多挂载 10 块普通硬盘,而完整安装 KubeSphere 共需要 14 块硬盘)。
集群创建后能否安装 KubeSphere
不能。如果您需要安装 KubeSphere,需要在创建集群时设置参数安装 KubeSphere 为true 。该参数在创建集群后无法修改,请在创建集群前规划好集群用途。
参数 | 默认值 |
---|---|
安装 KubeSphere | 选择是否安装 KubeSphere,默认为 true 表示安装。 |
如何指定工作负载的存储类型
系统会根据主节点的云服务器类型自动指定 Kubernetes 的默认存储类型。比如,如果主节点是基础型云服务器,那么默认的 Kubernetes 存储类型就是 csi-standard
(基础型),而 KubeSphere 安装时会自动使用默认的存储类型进行挂盘操作,因此,创建集群时至少要有基础型节点才会保证 KubeSphere 安装成功。在此基础上,如果需要其他类型的工作节点(比如企业型节点或 GPU 节点),可以按需创建。
需要注意的是,由于已经指定了与云服务器类型一致的存储类型为默认类型,其他类型的工作节点在部署需要挂盘的应用时,需要明确指定正确的存储类型,从而把工作负载调度到和主节点类型一致的工作节点上,比如:如果希望把 Mysql 部署在企业型节点上,则需要指定存储类型为企业型,从而调度这个 Pod 到企业型节点上:
kind: PersistentVolumeClaim
spec:
accessModes:
- ReadWriteOnce
storageClassName: csi-ssd-enterprise
# ...
当前集群支持的存储类型可通过 KubeSphere 控制台的存储管理 >存储类型查看。
VPC 网段与 Docker 网段冲突
如果 VPC 选择 172.30.0.0/16,需要修改 Docker 默认网段,避免冲突。
参数 | 默认值 |
---|---|
Docker 网桥地址 | 172.30.0.1/16 |
如何配置镜像仓库
QKE 支持在参数配置中配置您的镜像仓库访问地址。
参数 | 配置说明 |
---|---|
registry-mirrors | 完整的 Docker 镜像服务地址,比如 https://mirror.harbor.local ,多个地址之间用空格分隔。 |
insecure-registries | 需要通过非安全的 HTTP 或不受信任的 HTTPS 访问的 Docker 仓库,比如 mirror.harbor.local ,多个地址通过空格分隔。 |
镜像仓库无法连通
Kubernetes 上的工作负载需要拉取 Docker 镜像,请确保集群所在私网能够访问相应的镜像仓库。
-
如果使用公网镜像仓库,比如 docker.io,请确保 VPC 绑定了公网 IP。
-
如果使用私有镜像仓库,比如青云提供的 Harbor 镜像仓库,请确保 QKE 所有节点可以访问到 Harbor 的负载均衡器地址。
注意
如果 Harbor 后端使用的是 QingStor 对象存储,还要确保 QKE 所有节点可以访问到 QingStor 对象存储。
如何增删主节点
目前版本 QKE 不支持增删主节点,请提前规划好集群用途创建单 master 或者三 master(HA)集群。
删除工作节点失败
删除工作节点时,QKE 会首先执行命令 kubectl drain nodes --ignore-daemonsets --timeout=2h
,从而确保工作负载都成功迁移到其他节点,然后再执行删除节点的操作。
有时此操作会因为一些原因失败,比如工作负载使用了本地资源(文件系统等),或者其他节点负载较高不足以接纳所有工作负载。此时,建议人工执行 kubectl drain nodes
命令查看具体失败原因从而可以采取相应的措施。
注意
请不要人工执行
kubectl delete nodes
命令以免造成无法恢复的结果。
删除集群会自动删除关联的负载均衡器、硬盘吗
从 2.0.0 版本起,销毁 QKE 集群后,平台会自动销毁集群内创建的负载均衡器、硬盘等资源。
更早的版本需要手动删除负载均衡器、VPC 等相关资源。
从老版本升级到 2.0.0 版本后,升级前的资源需要手动处理,升级后创建的资源可以自动处理。