如何统计TKE集群的CRD数量

2024-04-29 16:42:02 浏览数 (1)

现在腾讯云的tke托管集群已经需要收费了,针对不同的集群规格,会有一些资源最大的限制,如果超过这个限制,会影响集群可用性,从而导致集群访问异常,具体的限制说明可以参考文档https://cloud.tencent.com/document/product/457/68804

那么集群的 最大管理节点数量最大 Pod 数量最大 ConfigMap 数量最大 CRD 数量 这4个指标该如何统计当前的数量呢,下面我们来给下对应的统计命令

  • 节点数量统计
代码语言:javascript复制
kubectl get node -A | wc -l
  • pod数量统计
代码语言:javascript复制
kubectl get pod -A | wc -l
  • configmap数量统计
代码语言:javascript复制
kubectl get cm -A | wc -l
  • crd数量统计
代码语言:txt复制
for i in `kubectl get crd  | grep -v NAME | awk -F " " '{print $1}'` ; do  kubectl get --raw /metrics|grep etcd_object_counts|sort -rn -k2 | grep -i  ${i} ; done | awk '{sum =$NF}END{print sum}'

注意:资源对象数量在不同版本的k8s,metrics指标发生变化:

  • 当TKE为1.22以上版本时, 指标名字为apiserver_storage_objects
  • 当TKE为1.22以下版本时, 指标名字为etcd_object_counts。
  • TKE为1.22版本时,指标名字apiserver_storage_objects和etcd_object_counts都可以查询到

如果是1.22以上的TKE版本,用下面命令统计

代码语言:txt复制
for i in `kubectl get crd  | grep -v NAME | awk -F " " '{print $1}'` ; do  kubectl get --raw /metrics|grep apiserver_storage_objects |sort -rn -k2 | grep -i  ${i} ; done | awk '{sum =$NF}END{print sum}'

0 人点赞