tencent cloud

文档反馈

自动伸缩指标说明

最后更新时间:2022-06-10 19:32:52

    实例(Pod)自动扩缩容功能(Horizontal Pod Autoscaler,HPA)可以根据目标实例 CPU 利用率的平均值等指标自动扩展、缩减服务的 Pod 数量。自动扩缩容时,可供在控制台进行设置的触发指标类型包括 CPU 指标、内存、硬盘、网络和 GPU 相关指标。此外,这些指标还可以在您通过 YAML 文件创建和编辑 HPA 时使用,本文将给出配置 YAML 文件示例。

    自动伸缩指标

    自动伸缩指标详情如下表所示:

    说明:

    其中 metricName 中的变量本身有单位,即表中所示默认单位,该单位在编写 YAML 文件时可忽略。

    CPU 指标

    指标名称(控制台)单位(控制台)备注 typemetricName默认单位
    CPU 使用量 Pod 的 CPU 使用量 Pods k8s_pod_cpu_core_used
    CPU 利用率
    (占节点)
    % Pod 的 CPU 使用量占节点总量之比 Pods k8s_pod_rate_cpu_core_used_node %
    CPU 利用率
    (占 Request)
    % Pod 的 CPU 使用量和 Pod 中容器设置的 Request 值之比 Pods k8s_pod_rate_cpu_core_used_request %
    CPU 利用率
    (占 Limit)
    % Pod 的 CPU 使用量和 Pod 中容器设置的 Limit 之和的比例 Pods k8s_pod_rate_cpu_core_used_limit %

    硬盘

    指标名称(控制台)单位(控制台)备注 typemetricName默认单位
    硬盘写流量 KB/s Pod 的硬盘写速率 Pods k8s_pod_fs_write_bytes B/s
    硬盘读流量 KB/s Pod 的硬盘读速率 Pods k8s_pod_fs_read_bytes B/s
    硬盘读 IOPS 次/s Pod 从硬盘读取数据的 IO 次数 Pods k8s_pod_fs_read_times 次/s
    硬盘写 IOPS 次/s Pod 把数据写入硬盘的 IO 次数 Pods k8s_pod_fs_write_times 次/s

    网络

    指标名称(控制台)单位(控制台)备注 typemetricName默认单位
    网络入带宽 Mbps 单 Pod 下所有容器的入方向带宽之和 Pods k8s_pod_network_receive_bytes_bw Bps
    网络出带宽 Mbps 单 Pod 下所有容器的出方向带宽之和 Pods k8s_pod_network_transmit_bytes_bw Bps
    网络入流量 KB/s 单 Pod 下所有容器的入方向流量之和 Pods k8s_pod_network_receive_bytes B/s
    网络出流量 KB/s 单 Pod 下所有容器的出方向流量之和 Pods k8s_pod_network_transmit_bytes B/s
    网络入包量 个/s 单 Pod 下所有容器的入方向包数之和 Pods k8s_pod_network_receive_packets 个/s
    网络出包量 个/s 单 Pod 下所有容器的出方向包数之和 Pods k8s_pod_network_transmit_packets 个/s

    内存

    指标名称(控制台)单位(控制台)备注 typemetricName默认单位
    内存使用量 Mib Pod 内存使用量 Pods k8s_pod_mem_usage_bytes B
    内存使用量
    (不包含 Cache)
    Mib Pod 内存使用,不包含 Cache Pods k8s_pod_mem_no_cache_bytes B
    内存利用率
    (占节点)
    % Pod 内存使用占 node 的比例 Pods k8s_pod_rate_mem_usage_node %
    内存利用率
    (占节点,不包含 Cache)
    % Pod 内存使用占 node 的比例,不含 Cache Pods k8s_pod_rate_mem_no_cache_node %
    内存利用率
    (占 Request)
    % Pod 内存使用占 Request 的比例 Pods k8s_pod_rate_mem_usage_request %
    内存利用率
    (占 Request,不包含Cache)
    % Pod 内存使用占 Request 的比例,不含 Cache Pods k8s_pod_rate_mem_no_cache_request %
    内存利用率
    (占 Limit)
    % Pod 内存使用占 Limit 的比例 Pods k8s_pod_rate_mem_usage_limit %
    内存利用率
    (占 Limit,不包含 Cache)
    % Pod 内存使用占 Limit 的比例,不含 Cache Pods k8s_pod_rate_mem_no_cache_limit %

    GPU

    说明:

    以下所有 GPU 相关的触发指标,当前仅支持在 EKS 集群中使用。

    指标名称(控制台)单位(控制台)备注 typemetricName默认单位
    GPU 使用量 CUDA Core Pod GPU 使用量 Pods k8s_pod_gpu_used CUDA Core
    GPU 申请量 CUDA Core Pod GPU 申请量 Pods k8s_pod_gpu_request CUDA Core
    GPU 利用率
    (占 Request)
    % GPU 使用占 Request 的比例 Pods k8s_pod_rate_gpu_used_request %
    GPU 利用率
    (占节点)
    % GPU 使用占 node 的比例 Pods k8s_pod_rate_gpu_used_node %
    GPU memory 使用量 Mib Pod GPU memory 使用量 Pods k8s_pod_gpu_memory_used_bytes B
    GPU memory 申请量 Mib Pod GPU memory 申请量 Pods k8s_pod_gpu_memory_request_bytes B
    GPU memory 利用率
    (占 Request)
    % GPU memory 使用占 Request 的比例 Pods k8s_pod_rate_gpu_memory_used_request %
    GPU memory 利用率
    (占节点)
    % GPU memory 使用占 node 的比例 Pods k8s_pod_rate_gpu_memory_used_node %

    通过 YAML 创建和编辑 HPA

    您可以通过 YAML 文件创建和编辑 HPA 。以下为配置文件的示例,该文件定义了一条名称为 example 的 HPA ,CPU 使用量为1时触发 HPA ,实例范围为1 - 2。

    注意:

    TKE 同样兼容原生的 Resource 类型。

    apiVersion: autoscaling/v2beta1
    kind: HorizontalPodAutoscaler
    metadata:
    name: example
    namespace: default
    labels:
      qcloud-app: example
    spec:
    minReplicas: 1
    maxReplicas: 2
    metrics:
    - type: Pods    # 支持使用 Resource
      pods:
        metricName: k8s_pod_cpu_core_used
        targetAverageValue: "1"
    scaleTargetRef:
      apiVersion: apps/v1beta2
      kind: Deployment
      name: nginx
    
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持