上云无忧 > 文档中心 > 腾讯云容器服务 TKE 标准集群 Kubernetes 对象管理 - 自动伸缩基本操作
容器服务 TKE
腾讯云容器服务 TKE 标准集群 Kubernetes 对象管理 - 自动伸缩基本操作

文档简介:
操作场景: 实例(Pod)自动扩缩容功能(Horizontal Pod Autoscaler,HPA)可以根据目标实例 CPU 利用率的平均值等指标自动扩展、缩减服务的 Pod 数量。本文介绍如何通过腾讯云容器服务控制台实现 Pod 自动扩缩容。
*此产品及展示信息均由腾讯云官方提供。免费试用 咨询热线:400-826-7010,为您提供专业的售前咨询,让您快速了解云产品,助您轻松上云! 微信咨询
  免费试用、价格特惠

操作场景

实例(Pod)自动扩缩容功能(Horizontal Pod Autoscaler,HPA)可以根据目标实例 CPU 利用率的平均值等指标自动扩展、缩减服务的 Pod 数量。本文介绍如何通过腾讯云容器服务控制台实现 Pod 自动扩缩容。

工作原理

HPA 后台组件会每隔15秒向腾讯云可观测平台拉取容器和 Pod 的监控指标,然后根据当前指标数据、当前副本数和该指标目标值进行计算,计算所得结果作为服务的期望副本数。当期望副本数与当前副本数不一致时,HPA 会触发 Deployment 进行 Pod 副本数量调整,从而达到自动伸缩的目的。 以 CPU 利用率为例,假设当前有2个实例, 平均 CPU 利用率(当前指标数据)为90%,自动伸缩设置的目标 CPU 为60%, 则自动调整实例数量为:90% × 2 / 60% = 3个。
注意
如果用户设置了多个弹性伸缩指标,HPA 会依据各个指标,分别计算出目标副本数,取最大值进行扩缩容操作。

注意事项

当指标类型选择为 CPU 利用率(占 Request)时,必须为容器设置 CPU Request。
策略指标目标设置合理,例如设置70%给容器和应用,预留30%的余量。
保持 Pod 和 Node 健康(避免 Pod 频繁重建)。
保证用户请求的负载均衡稳定运行。
HPA 在计算目标副本数时会有一个10%的波动因子。如果在波动范围内,HPA 并不会调整副本数目。
如果服务对应的 Deployment.spec.replicas 值为0,HPA 将不起作用。
如果对单个 Deployment 同时绑定多个 HPA ,则创建的 HPA 会同时生效,会造成工作负载的副本重复扩缩。

前提条件

已 注册腾讯云账户。
已登录 腾讯云容器服务控制台。
已创建集群。操作详情请参见 创建集群。

操作步骤

开启自动扩缩容

可以通过以下方式开启自动扩缩容。

通过设置实例数量调节

1. 登录容器服务控制台,选择左侧导航栏中的 集群。
2. 在集群管理页面,选择集群 ID,进入集群的基本信息页面。
3. 在工作负载 > Deployment 页面,单击新建。
4. 在新建 Deployment 页面,设置实例数量为自动调节。如下图所示:

触发策略:自动伸缩功能依赖的策略指标。详情请参见 指标类型。
实例范围:请根据实际需求进行选择,实例数量会在设定的范围内自动调节,不会超出该设定范围。

通过新建自动伸缩组

1. 登录容器服务控制台,选择左侧导航栏中的 集群。
2. 在集群管理页面,选择集群 ID,进入集群的基本信息页面。
3. 在自动伸缩 > HorizontalPodAutoscaler 页面,单击新建。
4. 在新建 HorizontalPodAutoscaler 页面,根据以下提示,进行 HPA 配置。如下图所示:

名称:输入要创建的自动伸缩组的名称。
命名空间:请根据实际需求进行选择。
工作负载类型:请根据实际需求进行选择。
关联工作负载:不能为空,请根据实际需求进行选择。
触发策略:自动伸缩功能依赖的策略指标,详情请参见 自动伸缩指标说明。
实例范围:请根据实际需求进行选择,实例数量会在设定的范围内自动调节,不会超出该设定范围。
5. 单击创建 HPA。

更新自动扩缩容规则

可以通过以下方式更新服务自动扩缩容规则。

通过更新 Pod 数量

1. 登录容器服务控制台,选择左侧导航栏中的 集群。
2. 在集群管理页面,选择集群 ID,进入集群的基本信息页面。
3. 在工作负载 > Deployment 页面,单击实例右侧的更新 Pod 数量。

4. 在更新 Pod 数量页面,选择自动调节,并根据实际需求进行设置。如下图所示:

5. 单击更新实例数量。

通过修改 HPA 配置

1. 登录容器服务控制台,选择左侧导航栏中的 集群。
2. 在集群管理页面,选择集群 ID,进入集群的基本信息页面。
3. 在自动伸缩 > HorizontalPodAutoscaler 页面,单击实例右侧的修改配置。如下图所示:

4. 在更新配置页面,根据实际需求进行设置。如下图所示:

5. 单击更新 HPA。

指标类型

相关指标和类型请参见 自动伸缩指标说明。
相似文档
  • 实例(Pod)自动扩缩容功能(Horizontal Pod Autoscaler,HPA)可以根据目标实例 CPU 利用率的平均值等指标自动扩展、缩减服务的 Pod 数量。自动扩缩容时,可供在控制台进行设置的触发指标类型包括 CPU 指标、内存、硬盘、网络和 GPU 相关指标。此外,这些指标还可以在您通过 YAML 文件创建和编辑 HPA 时使用,本文将给出配置 YAML 文件示例。
  • 简介: 通过 ConfigMap 您可以将配置和运行的镜像进行解耦,使得应用程序有更强的移植性。ConfigMap 是有 key-value 类型的键值对,您可以通过控制台的 Kubectl 工具创建对应的 ConfigMap 对象,也可以通过挂载数据卷、环境变量或在容器的运行命令中使用 ConfigMap。
  • 简介: Secret 可用于存储密码、令牌、密钥等敏感信息,降低直接对外暴露的风险。Secret 是 key-value 类型的键值对,您可以通过控制台的 Kubectl 工具创建对应的 Secret 对象,也可以通过挂载数据卷、环境变量或在容器的运行命令中使用 Secret。
  • Service 基本概念: 用户在 Kubernetes 中可以部署各种容器,其中一部分是通过 HTTP、HTTPS 协议对外提供七层网络服务,另一部分是通过 TCP、UDP 协议提供四层网络服务。而 Kubernetes 定义的 Service 资源就是用来管理集群中四层网络的服务访问。
  • 控制台操作指引: 创建 Service: 1. 登录 容器服务控制台,选择左侧导航栏中的集群。 2. 在集群管理页面,单击需要创建 Service 的集群 ID,进入集群基本信息页。 3. 选择服务与路由 > Service,在 Service 页面单击新建。如下图所示:
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部