安装步骤
https://kubesphere.io/zh/docs/installing-on-kubernetes/hosted-kubernetes/install-ks-on-tencent-tke/
踩坑与注意事项
(一)cbs磁盘容量以10Gi为倍数
(二)卸载卡住与卸载不干净导致重装失败
编辑资源删除相应finalizer即可。
如果清理不干净,重装还会报错:
通常是关联的一些MutatingWebhookConfiguration,ValidatingWebhookConfiguration,ClusterRole, ClusterRoleBinding等资源没清理,可以根据ks-installer日志定位并清理。
(三)监控不兼容导致看不到超级节点中Pod的监控
KubeSphere部署完后看工作负载的Pod列表,没有超级节点上Pod的监控数据:
是因为KubeSphere启用的监控,采集cadvisor监控数据的采集规则是,访问所有节点的10250端口去拉监控数据,而超级节点的IP是个无法路由的“假”IP,所以拉不到数据。
解决方案:按照以下步骤增加自定义采集规则。
-
准备secret yaml scrape-config.yaml:
apiVersion: v1kind: Secrettype: Opaquemetadata:name: additional-scrape-configsnamespace: kubesphere-monitoring-systemstringData:: |-job_name: kubelet # eks cadvisor 监控,为兼容 ks 查询,固定 job 名为 kubelethonor_timestamps: truemetrics_path: '/metrics'params::'ipvs'scheme: httpkubernetes_sd_configs:role: podrelabel_configs:source_labels: [__meta_kubernetes_pod_annotation_tke_cloud_tencent_com_pod_type]regex: ekletaction: keepsource_labels: [__meta_kubernetes_pod_phase]regex: Runningaction: keepsource_labels: [__meta_kubernetes_pod_ip]separator: ;regex: (.*)target_label: __address__replacement: ${1}:9100action: replacesource_labels: [__meta_kubernetes_pod_name]separator: ;regex: (.*)target_label: podreplacement: ${1}action: replacesource_labels: [__meta_kubernetes_namespace]separator: ;regex: (.*)target_label: namespacereplacement: ${1}action: replacemetric_relabel_configs:source_labels: [__name__]separator: ;regex: container_.*replacement: $1action: keeptarget_label: metrics_pathreplacement: /metrics/cadvisoraction: replacejob_name: eks # eks cadvisor 之外的其它监控honor_timestamps: truemetrics_path: '/metrics'params::'ipvs'scheme: httpkubernetes_sd_configs:role: podrelabel_configs:source_labels: [__meta_kubernetes_pod_annotation_tke_cloud_tencent_com_pod_type]regex: ekletaction: keepsource_labels: [__meta_kubernetes_pod_phase]regex: Runningaction: keepsource_labels: [__meta_kubernetes_pod_ip]separator: ;regex: (.*)target_label: __address__replacement: ${1}:9100action: replacesource_labels: [__meta_kubernetes_pod_name]separator: ;regex: (.*)target_label: podreplacement: ${1}action: replacesource_labels: [__meta_kubernetes_namespace]separator: ;regex: (.*)target_label: namespacereplacement: ${1}action: replacemetric_relabel_configs:source_labels: [__name__]separator: ;regex: (container_.*|pod_.*|kubelet_.*)replacement: $1action: keep
-
创建secret:
kubectl apply -f scrape-config.yaml
-
修改Prometheus CR:
kubectl -n kubesphere-monitoring-system edit prometheuses.monitoring.coreos.com k8s
spec:additionalScrapeConfigs:key: additional-scrape-configs.yamlname: additional-scrape-configs
s-apiserver出现crash
一般是kubesphere的chart包不完善,crd没装完整,可以手动装一下:
kubectl apply -f https://raw.githubusercontent.com/kubesphere/notification-manager/master/config/bundle.yaml
参考: https://kubesphere.com.cn/forum/d/7610-ks-330-ks-apiserver-crash/3
作者简介
imroc
腾讯云开发者社区【技思广益·腾讯技术人原创集】作者
腾讯云原生架构师,负责腾讯云原生产品解决方案与售后的技术支持,根据客户需求输出合理技术方案与最佳实践,为客户业务保驾护航。
推荐阅读
👇点击「阅读原文」,注册成为社区创作者,认识大咖,打造你的技术影响力!
本文来自微信公众号“腾讯云开发者”(ID:QcloudCommunity)。大作社经授权转载,该文观点仅代表作者本人,大作社平台仅提供信息存储空间服务。










