如何跨多个数据中心设置CoreOS群集?

时间:2015-05-21 07:55:12

标签: coreos etcd

我认为这就像使用公共IP而不是私有ip一样简单,以便机器可以看到对方,但事实并非如此。

这是我的cloud-config文件,非常基本。

#cloud-config

coreos:
  etcd:
    # generate a new token for each unique cluster from https://discovery.etcd.io/new
    discovery: https://discovery.etcd.io/<token>
    # use $public_ipv4 if your datacenter of choice does not support private networking
    addr: $public_ipv4:4001
    peer-addr: $public_ipv4:7001
  fleet:
    public-ip: $public_ipv4   # used for fleetctl ssh command
  units:
    - name: etcd.service
      command: start
    - name: fleet.service
      command: start

群集跨多个数据中心需要什么?例如,我使用Digital Ocean并在新加坡提供机器,在纽约提供另一台机器,在阿姆斯特丹提供另一台机器。

我的第二个问题是,由于我无法轻易找到对此用例的支持,我想知道这不是推荐的使用CoreOS的方法,如果不是,你能否告诉我分发我的首选方式是什么?跨多个数据中心的服务?

1 个答案:

答案 0 :(得分:0)

您可以执行此操作,但需要调整您的etcd群集。你所谈论的距离相当大,所以期望使用一些很长的超时。更多文档:https://coreos.com/etcd/docs/2.0.8/tuning.html