在阿里云上进行Docker应用的自动弹性伸缩

简介

上次介绍了通过监控集成实现容器的自定义弹性伸缩。最近阿里云Docker容器服务发布了自动弹性伸缩的支持,可以非常方便的支持容器的自动弹性伸缩,从而更好的支持应用的弹性管理。能够自动的监控容器应用的指标,并根据配置的自动弹性伸缩的规则进行扩缩容。在业务增长超过监控指标阀值的时候自动增加容器应用的实例数目,并在业务下降的时候自动收缩容器数目。从而简化容器应用的管理,提高应用的可用性,提高资源的利益效率。

设置方法

使用镜像创建应用

  • 在创建应用时,选择“使用镜像创建”,这里我们部署一个Tomcat应用。
    在阿里云上进行Docker应用的自动弹性伸缩
  • 在“更多设置”中,勾选“开启”自动伸缩,设置指标、下限、上限、步长、最大实例数目,最小实例数目即可。
    在阿里云上进行Docker应用的自动弹性伸缩

使用模板创建应用

  • 使用编排模板创建应用时,点击“新增服务”
    在阿里云上进行Docker应用的自动弹性伸缩
  • 在弹出的窗口中打开“更多设置”,勾选“开启”自动伸缩,设置指标、下限、上限、步长即可。同上。

手动设置

在编排模板的labels配置中,添加相应的标签:

  • 指定步长(默认值是1):aliyun.auto_scaling.step
  • 最大实例数量(默认值是10):aliyun.auto_scaling.max_instances
  • 以CPU使用量为指标

    • 指定上限: aliyun.auto_scaling.max_cpu
    • 指定下限:aliyun.auto_scaling.min_cpu
  • 以内存使用量为指标

    • 指定上限:aliyun.auto_scaling.max_memory
    • 指定下限:aliyun.auto_scaling.min_memory

示例(Wordpress):

web:
  image: registry.aliyuncs.com/acs-sample/wordpress:4.5
  ports:
    - '80'
  environment:
    WORDPRESS_AUTH_KEY: changeme
    WORDPRESS_SECURE_AUTH_KEY: changeme
    WORDPRESS_LOGGED_IN_KEY: changeme
    WORDPRESS_NONCE_KEY: changeme
    WORDPRESS_AUTH_SALT: changeme
    WORDPRESS_SECURE_AUTH_SALT: changeme
    WORDPRESS_LOGGED_IN_SALT: changeme
    WORDPRESS_NONCE_SALT: changeme
    WORDPRESS_NONCE_AA: changeme
  restart: always
  links:
    - 'db:mysql'
  labels:
    aliyun.logs: /var/log
    aliyun.probe.url: http://container/license.txt
    aliyun.probe.initial_delay_seconds: '10'
    aliyun.routing.port_80: http://wordpress
    aliyun.scale: '3'
    aliyun.auto_scaling.max_cpu: '70'
    aliyun.auto_scaling.step: '2'
    aliyun.max_instances:'10'
db:
  image: registry.aliyuncs.com/acs-sample/mysql:5.7
  environment:
    MYSQL_ROOT_PASSWORD: password
  restart: always
  labels:
    aliyun.logs: /var/log/mysql

然后进行应用部署。

报警规则及通知变更

应用部署后报警规则及通知可以在云监控上查看及修改。
在阿里云上进行Docker应用的自动弹性伸缩

自动扩缩容

当设定的指标超过阀值后,容器会自动进行容器的扩缩容。这里容器从3个自动扩容到5个。
在阿里云上进行Docker应用的自动弹性伸缩

更多关于阿里云容器服务的信息,请访问阿里云容器服务https://www.aliyun.com/product/containerservice

上一篇:Docker应用的四个关键设计因素


下一篇:阿里云 Centos7.0 安装 MYSQL5.7(超详细附截图)