我认为这就像使用公共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的方法,如果不是,你能否告诉我分发我的首选方式是什么?跨多个数据中心的服务?
答案 0 :(得分:0)
您可以执行此操作,但需要调整您的etcd群集。你所谈论的距离相当大,所以期望使用一些很长的超时。更多文档:https://coreos.com/etcd/docs/2.0.8/tuning.html