开发者社区> 问答> 正文

Swarm mode 集群服务编排的高可用性调度

反向一觉 2017-10-30 15:16:58 1666


模板版本支持

Compose V1/V2Compose V3
环境变量中的 availability:az不支持


Compose V1/V2


为了使应用有更高的可用性,容器服务支持将同一个服务的容器调度在不同的可用区(availability zone)里。当某个可用区故障时,应用依然能够提供服务。
您可以在编排文件中通过环境变量指定对可用区的选择,有以下两种格式。

  • availability:az==3
    服务至少分布在 3 个可用区中;如果当前集群没有 3 个可用区,或机器资源不够导致无法分布在 3 个可用区,容器创建会失败。

  • availability:az==~3
    服务尽可能分布在 3 个可用区中;无法满足时依然可以成功创建。

在下面的示例中,服务至少要部署在两个可用区中。
  1. [backcolor=transparent]nnn[backcolor=transparent]:
  2. [backcolor=transparent]  expose[backcolor=transparent]:
  3. [backcolor=transparent]    [backcolor=transparent]-[backcolor=transparent] [backcolor=transparent]443[backcolor=transparent]/[backcolor=transparent]tcp
  4. [backcolor=transparent]    [backcolor=transparent]-[backcolor=transparent] [backcolor=transparent]80[backcolor=transparent]/[backcolor=transparent]tcp
  5. [backcolor=transparent]  image[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]'nginx:latest'
  6. [backcolor=transparent]  environment[backcolor=transparent]:
  7. [backcolor=transparent]    [backcolor=transparent]-[backcolor=transparent] [backcolor=transparent]'availability:az==2'
  8. [backcolor=transparent]  labels[backcolor=transparent]:
  9. [backcolor=transparent]    aliyun[backcolor=transparent].[backcolor=transparent]scale[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]'8'
  10. [backcolor=transparent]  restart[backcolor=transparent]:[backcolor=transparent] always
  11. [backcolor=transparent]  volumes[backcolor=transparent]:
  12. [backcolor=transparent]    [backcolor=transparent]-[backcolor=transparent] [backcolor=transparent]/var/[backcolor=transparent]cache[backcolor=transparent]/[backcolor=transparent]nginx
网络协议 应用服务中间件 调度 nginx 容器
分享到
取消 提交回答
全部回答(0)

集结各类场景实战经验,助你开发运维畅行无忧

推荐文章
相似问题
推荐课程