【发布时间】:2013-09-13 19:02:03
【问题描述】:
EC2 实例中多区域设置的正确配置是什么?
listen_address、broadcast_address、rpc_address 和种子 ip/addresses 应该如何工作?
什么时候使用公共 IP 地址,什么时候使用私有 IP 地址?
【问题讨论】:
标签: amazon-ec2 cassandra
EC2 实例中多区域设置的正确配置是什么?
listen_address、broadcast_address、rpc_address 和种子 ip/addresses 应该如何工作?
什么时候使用公共 IP 地址,什么时候使用私有 IP 地址?
【问题讨论】:
标签: amazon-ec2 cassandra
根据docs:
broadcast_address:(默认值:listen_address)如果您的 Cassandra 集群部署在多个 Amazon EC2 区域并且您使用 EC2MultiRegionSnitch,请将广播地址设置为节点的公共 IP 地址,并将监听地址设置为私有 IP。
listen_address:(默认值:localhost)其他 Cassandra 节点用于连接到此节点的 IP 地址或主机名。如果未设置,则主机名必须使用 /etc/hostname、/etc/hosts 或 DNS 解析为此节点的 IP 地址。不要指定 0.0.0.0。
rpc_address:(默认值:localhost)客户端连接的监听地址(Thrift 远程过程调用)。
seed_provider:(默认值:org.apache.cassandra.locator.SimpleSeedProvider)以逗号分隔的主机(IP 地址)列表,当节点加入集群时用作联系点。 Cassandra 也使用这个列表来学习环的拓扑结构。运行多个节点时,您必须更改 - 种子列表的默认值 (127.0.0.1)。在多个数据中心集群中,-seed 列表应至少包含来自每个数据中心(复制组)的一个节点
试图总结:
rpc_address 用于客户端连接,与多区域 EC2 无关listen_address 和 broadcast_address 是多区域 EC2 配置的两个重要选项通常在配置以下任何一个时回答 2 个问题:
【讨论】: