应用管理与运维平台 ServiceStage
应用管理与运维平台 ServiceStage
- 最新动态
- 功能总览
- 产品介绍
- 计费说明
- 快速入门
-
用户指南
- 使用前必读
- 权限管理
- 环境管理
- 应用管理
- 组件管理
- 配置管理
- 全链路流量控制
- 发布管理(公测)
- 技术栈管理
- 部署源管理
- 持续交付
- 微服务引擎
- 云审计服务支持的关键操作
- 查看监控指标及告警
- 开发指南
- 最佳实践
- API参考
- SDK参考
- 场景代码示例
-
常见问题
- 应用开发问题咨询指引
- 环境管理
-
应用管理
- 如何查看应用组件部署失败的原因?
- 如何解决单击应用组件外部访问地址返回504的问题?
- 如何处理虚拟机类型环境下应用创建实例失败?
- 实例长期处于创建中怎么办?
- 如何解决Docker运行node应用程序时的依赖问题?
- 如何定制Tomcat Context path?
- 如何固定应用组件IP?
- 如何处理虚拟机类型环境下创建和部署组件时遇到ECS错误?
- 如何处理虚拟机类型环境下创建和部署组件时端口访问不通的错误?
- 虚拟机类型环境下部署的应用组件支持在什么目录写文件?
- 如何处理虚拟机类型环境下部署的组件删除失败报host status is not active错误的问题?
- 如何体验ServiceStage的源码部署功能?
- 如何处理使用ServiceStage灰度发布升级组件失败?
- 如何通过挂载配置项方式修改容器部署的组件配置文件?
- 如何处理应用组件接入微服务引擎后在微服务治理下看到的应用名称和ServiceStage应用管理下的不同?
- 持续交付
- 软件中心
- 基础设施
- 应用运维
- 应用开发问题
- 视频帮助
- 文档下载
- 通用参考
本文导读
展开导读
链接复制成功!
创建弹性伸缩-HPA策略
弹性伸缩-HPA(Horizontal Pod Autoscaling)是Kubernetes内置组件,实现Pod水平自动伸缩的功能。在Kubernetes社区HPA功能的基础上,增加了应用级别的冷却时间窗和扩缩容阈值等功能。
使用限制
- 组件必须为容器部署方式部署的状态为“运行中”或者“未就绪”的无状态组件。查看组件状态,请参考查看组件详情。
- 部署组件的CCE集群必须是1.15及以上版本。
创建弹性伸缩-HPA策略
- 登录ServiceStage控制台。
- 选择以下任意方式进入组件“伸缩”页面:
- 在“应用管理”页面,单击组件所属应用名称,在“组件列表”单击待操作组件名称,在左侧导航栏单击“伸缩”。
- 在“组件管理”页面,单击待操作组件名称,在左侧导航栏单击“伸缩”。
- 单击“弹性伸缩 ”右侧的
,开启伸缩策略配置,进入“创建伸缩策略配置”页面。
- 单击“去安装”,参考安装Metrics Server完成metrics-server插件安装。
等待插件安装完成,“状态”为“运行中”,表示插件安装成功。
- 返回“创建伸缩策略配置”页面。
- 单击“刷新”,刷新页面。
- 设置HPA伸缩策略参数。
- 策略名称
长度为4到63个字符,可以包含英文小写字母、数字或中划线(-),必须以英文小写字母开头、以英文小写字母或数字结尾。
- 冷却时间
根据实际业务需要,输入扩容/缩容冷却时间。单位为分钟,缩容扩容冷却时间不能小于1分钟。
策略成功触发后,在此缩容/扩容冷却时间内,不会再次触发缩容/ 扩容,目的是等待伸缩动作完成后在系统稳定且集群正常的情况下进行下一次策略匹配。
- 实例数范围
根据实际业务需要,输入最小实例数和最大实例数。其中,最小实例数取值范围为1到299之间的整数;最大实例数取值范围为1到1500之间的整数,且必须大于最小实例数取值。
策略成功触发后,工作负载实例将在此实例范围内伸缩。
- 伸缩配置
- 系统默认:采用K8s社区推荐的默认行为进行负载伸缩。
- 自定义:自定义扩/缩容配置的稳定窗口、步长、优先级等策略,实现更灵活的配置。未配置的参数将采用K8s社区推荐的默认值。
- 禁止扩容/缩容:选择是否禁止扩容或者缩容。
- 稳定窗口:需要伸缩时,会在一段时间(设定的稳定窗口值)内持续检测,如在该时间段内始终需要进行伸缩(不满足设定的指标期望值)才进行伸缩,避免短时间的指标抖动造成异常。
- 步长策略:扩/缩容的步长,可设置一定时间内扩/缩容实例数量或百分比。在存在多条策略时,可以选择使实例数量最多或最少的策略。
- 触发条件
支持通过“界面配置”、“YAML配置”两种方式设置触发条件参数。
以“CPU利用率”、“内存利用率”为指标设置触发条件,需要已设置组件的“CPU配额”或者“内存配额”。
如果没有设置,请单击“去修改申请配额”,参考5设置组件“资源”参数后升级组件。
- “界面配置”方式
- “YAML配置”方式
使用“YAML配置”方式配置自定义指标参数,CCE集群需要已安装prometheus插件。
为CCE集群安装prometheus插件,请参考prometheus。metrics: - type: Resource resource: name: cpu target: type: Utilization averageUtilization: 50 - type: Resource resource: name: memory target: type: Utilization averageUtilization: 50 - type: Pods pods: metric: name: packets-per-second target: type: AverageValue averageValue: 1k - type: Object object: metric: name: requests-per-second describedObject: apiVersion: networking.k8s.io/v1beta1 kind: Ingress name: main-route target: type: Value value: 10k
如以上示例所示,使用YAML格式除了使用CPU(cpu)、内存(memory)的利用率(Utilization)作为指标外,还可以自定义指标参数配置,并支持更多指标,如Pods、Object、External等。
- 策略名称
- 单击“立即创建”,完成伸缩策略创建。
父主题: 管理弹性伸缩-HPA策略