在阿里云上进行Docker集群的自动弹性伸缩
摘要: 在刚刚结束的云栖大会上,阿里云容器服务演示了容器的自动弹性伸缩,能够从容应对互联网应用的峰值流量。阿里云容器服务不仅支持容器级别的自动弹性伸缩,也支持集群节点级别的自动弹性伸缩。从而真正做到从容应对高峰流量的场景,提高自动化运维水平及系统可用性。
简介
在刚刚结束的云栖大会上,阿里云容器服务演示了容器的自动弹性伸缩,能够从容应对互联网应用的峰值流量。关于阿里云上容器的自动弹性伸缩,可以参考文章在阿里云上进行Docker应用的自动弹性伸缩。
同时在流量变大的时候自动进行容器的弹性伸缩,要求容器集群有很好的容量规划,必须有多余的集群资源以支持弹性扩容。但问题是当流量变大,容器扩容导致集群资源不够的时候怎么办呢,是否需要手工进行容器集群的扩容?实际阿里云容器服务不仅支持容器级别的自动弹性伸缩,也支持集群节点级别的自动弹性伸缩。从而真正做到从容应对高峰流量的场景,提高自动化运维水平,降低响应时间,提高系统可用性。下面介绍怎样进行集群节点的自动弹性伸缩。
自动伸缩策略
节点伸缩采取的策略:
当监测指标值超过所设定的扩容条件,以用户设定的扩容步长增加节点数量。
当监测指标值低于所设定的缩容条件,以系统默认步长1减少节点数量。
自动伸缩的监测指标:
- 集群CPU平均使用量。
- 集群内存平均使用量。
节点缩容只会对通过节点扩容创建出来的节点进行,用户手工创建或者添加的节点不受影响。如果想让这些手工添加的节点可以自动缩容,需要为这些节点加上标签:
"aliyun.reschedule==true"
节点缩容的时候,系统会删除集群里的ECS,用户需要提前做好数据备份。请不要调度有状态服务到可缩容节点上。可以参考Docker Compose的constraint。
设置
- 在 集群列表 页面,选择要设置的集群,点击 管理,进入集群管理页面。
点击左侧导航栏中的 节点伸缩,点击 请新建自动伸缩规则。
配置伸缩策略
约束规则:- 扩容条件 的可选范围是 50%~100%,缩容条件 的可选范围是 0%~50%。
- 扩容条件 和 缩容条件 的差值不能小于30%。
- 扩容步长的可选范围是 1~5, 缩容步长目前默认是1,不支持配置。
- 设置好集群最小节点数及集群最大节点数。缩容的时候当节点数<=集群最小节点数的时候,不会进行缩容操作;扩容的时候当节点数>=集群最大节点数的时候,不会进行扩容操作。
- 最好不要设置复合伸缩策略
- 请谨慎设置伸缩条件,在设置伸缩的时候,伸缩条件就满足且伸缩不能将伸缩条件变成不满足的情况下,监控会不断触发伸缩。
点击 下一步,选择实例规格,配置扩容节点配置:
查看监控指标
- 在 集群列表 页面,选择要设置的集群,点击 监控
- 查看弹性伸缩设置的报警规则,点击云监控控制台左边的 容器服务 ,
- 点击下面的 **查看全部规则“,可以看到弹性伸缩自动设置的报警规则:
- 选中一个报警规则可以修改报警条件及通知人(支持短信,邮件等通知方式),也可以禁用报警规则。
自动扩容集群
上面我们设置CPU>70进行集群扩容,当集群CPU超过这个设置的时候:
集群开始进行自动扩容:
在云监控报警规则上可以看到报警历史:
更多关于阿里云容器服务的信息,请访问:
在阿里云上进行Docker集群的自动弹性伸缩的更多相关文章
- Elastic: 如何在阿里云上构建Elastic集群
- 配置阿里云SLB全站HTTPS集群
配置阿里云SLB全站HTTPS集群(以下内容仅为流程,信息可能有些对应不上) 1 登录阿里云购买两台实例 1.1 按量付费购买两台实例 1.2 配置网络可以不选择分配外网 1.3 自定义密码 1.4 ...
- 阿里云上万个 Kubernetes 集群大规模管理实践
点击下载<不一样的 双11 技术:阿里巴巴经济体云原生实践> 本文节选自<不一样的 双11 技术:阿里巴巴经济体云原生实践>一书,点击上方图片即可下载! 作者 | 汤志敏,阿里 ...
- 云计算之路-阿里云上:docker swarm 集群故障与异常
在上次遭遇 docker swarm 集群故障后,我们将 docker 由 17.10.0-ce 升级为最新稳定版 docker 17.12.0-ce . 前天晚上22:00之后集群中的2个节点突然出 ...
- 云计算之路-阿里云上:docker swarm 集群再次出现故障
非常非常抱歉!16:30 ~ 17:00 左右我们用于跑 ASP.NET Core 站点的 docker swarm 集群再次出现宕机,由此给您带来了很大很大的麻烦,恳请您的谅解! 受此次故障影响的站 ...
- 配置阿里云SLB全站HTTPS集群(以下内容仅为流程,信息可能有些对应不上)
1)登录阿里云购买两台实例 1.1) 按量付费购买两台实例 1.2) 配置网络可以不选择分配外网 1.3) 自定义密码 1.4) 购买完成 1.5) 实例列表 2)购买SLB实例 2.1)按量付费购买 ...
- 云计算之路-阿里云上:docker swarm 问题最新进展
今天中午我们在 docker swarm 集群上发布应用时遇到了一个奇怪的 docker swarm 内置负载均衡的问题,该应用的 2 个新容器成功启动后,在容器内访问正常,但通过服务名访问时一会正常 ...
- 阿里云构建Kafka单机集群环境
简介 在一台ECS阿里云服务器上构建Kafa单个集群环境需要如下的几个步骤: 服务器环境 JDK的安装 ZooKeeper的安装 Kafka的安装 1. 服务器环境 CPU: 1核 内存: 2048 ...
- 阿里云-容器服务之集群服务 k8s(Jenkins+gitlab+k8s的devops)- 01
由于docker官方停止更新Swarm,另外swarm在使用期间出现了很多bug,所以阿里云也在2019年7月发布公告:于2019年12月31日起停止技术支持,请您尽快迁移至容器服务Kubernete ...
随机推荐
- 常见的Hadoop十大应用误解
常见的Hadoop十大应用误解 1. (误解) Hadoop什么都可以做 (正解) 当一个新技术出来时,我们都会去思考它在各个不同产业的应用,而对于平台的新技术来说,我们思考之后常会出现 ...
- NLP十大里程碑
NLP十大里程碑 2.1 里程碑一:1985复杂特征集 复杂特征集(complex feature set)又叫做多重属性(multiple features)描写.语言学里,这种描写方法最早出现在语 ...
- 非常优秀的iphone学习文章总结!
This site contains a ton of fun tutorials – so many that they were becoming hard to find! So I put t ...
- WhyDemo: 画线圈LineFlower
画线圈LineFlower 刚发过画线圈的屏保程序,现在发一下它的可编辑版本.可以对线圈的相关参数进行设置. 小时候玩过一种画线圈的玩具,将一个圆形齿轮在一个大圈里转,会画出各种图形来.这个 ...
- XML中PCDATA与CDATA的区别
XML中PCDATA与CDATA的区别 2011-02-10 19:27:25| 分类: XML | 标签:xml中pcdata与cdata的区别 字号:大中小 订阅 所有 XML 文档中 ...
- Java基础(五):数组和Java方法
一.Java数组: 1.声明数组变量: 首先必须声明数组变量,才能在程序中使用数组.下面是声明数组变量的语法:注意: 建议使用 dataType[] arrayRefVar 的声明风格声明数组变量. ...
- kettle利用参数遍历执行指定目录下的所有对象
使用kettle设计ETL设计完成后,我们就需要按照我们业务的需要对我们设计好的ETL程序,ktr或者kjb进行调度,以实现定时定点的数据抽取,或者说句转换工作,我们如何实现调度呢? 场景:在/wor ...
- [LeetCode-20]Construct Binary Tree from Inorder and Postorder Traversal
Given inorder and postorder traversal of a tree, construct the binary tree. Note: You may assume tha ...
- Jmeter-Maven-Plugin高级应用:Test Results File Format-Test Results
Test Results File Format Test Results Disabling The <testResultsTimestamp> Enabling <append ...
- 读取Mat文件中的汉字代码
拿到一种元数据,格式为*.mat,但Access打不开,百度也没看到比较好的解决方案. 但是用文本文档可以打开,那估计它和txt类似了,于是想自己写代码来处理了,立马写了读取的丑陋工具.读取是没什么问 ...