创建 swarm mode 集群时,不管是新建节点,还是将已有 ECS 实例添加到集群中,集群对机器环境有一系列相关依赖。
- ECS 机器配置规格
- Docker Engine 要求
- 操作系统
- 安全组配置
ECS 机器规格配置
- 为保证高可用,建议 swarn mode 集群至少有 3 个 Manager 节点。
容器服务目前允许您创建单节点集群,但不支持多节点编排调度命令,且会因机器故障而导致集群不可用。
添加已有节点的规格要求
添加的云服务器必须与集群在同一地域并使用相同类型的网络(经典网络或专有网络)。
添加已有云服务器时,请确保您的云服务器有公网 IP(经典网络)或 EIP (专有网络);否则,添加云服务器会失败。
容器服务不支持添加不同账号下的云服务器。
engine要求
要求节点安装的 docker engine 版本在 1.12 及以上。确保 Docker Engine daemon 运行在每个节点上。
如果您选择 [backcolor=transparent]手动添加。如果机器之前安装过 docker engine,会提示您是否删除,以下两种场景下,要求您必须删除。
- 如果 ECS 曾经加入过某个集群,必须先删除 docker engine。
- swarm mode 集群中,必须用阿里云容器服务提供的 Docker engine,不兼容官方 Docker engine,因此如果 ECS 安装的是官方 Docker engine,必须删除。
删除命令如下所示:
- Ubuntu:apt-get remove -y docker-engine,rm -fr /etc/docker/ /var/lib/docker /etc/default/docker
- Centos:yum remove -y docker-engine,rm -fr /etc/docker /var/lib/docker
操作系统
容器服务的节点对系统有要求,推荐您使用 Ubuntu 14.04/16.04 和 Centos7 系统。我们对这 3 个系统版本进行了非常严格的稳定性和兼容性测试。
安全组配置
对于 2017 年 2 月 28 日之后创建的容器服务集群,默认创建的安全组已经做了加固。阿里云容器服务未设置出方向的安全组,只会设置入方向的安全组规则,参见
容器服务安全组规则。开放的规则如下。
[tr=rgb(239, 251, 255)][td]安全组
作用 | 配置策略 |
80、443 端口 | 方便用户业务的 Web 服务,可以根据自己的需求选择放开或者关闭 | 默认开启,可选择放开或关闭 |
22 端口 | 依赖 22 端口对机器初始化,方便 SSH 到用户机器进行集群的配置。 | 默认开启 |
ICMP 规则 | 于节点间通信,方便排查问题。有些工具也依赖 ICMP | 默认开启 |
VPC 安全组授权对象 | 容器网段的基础地址,与创建 VPC 集群时选择的容器初始网段有关,保证容器之间可以互相通信。 | 自主配置网段 |