【发布时间】:2015-08-18 02:52:46
【问题描述】:
目标:我正在尝试了解配置我的 Cassandra 集群的最佳方式,以便跨多个不同网络场景的多个不同驱动程序可以与其正确通信。
问题/问题:阅读文档后,我并不完全清楚这两个设置之间的区别:broadcast_address 和broadcast_rpc_address,因为它与驱动程序连接和交互的方式有关与集群。我应该对节点的可访问网络端点(客户端/驱动程序可访问的 DNS 记录)使用这些设置中的哪一个或哪一个组合?
这是来自datastax 的广播地址的文档: (默认:listen_address)note 节点告诉集群中其他节点联系它的 IP 地址。它允许公共和私人地址不同。例如,在并非所有节点都可以通过其私有 IP 地址访问其他节点的拓扑中使用广播地址参数。 如果您的 Cassandra 集群部署在多个 Amazon EC2 区域并且您使用 EC2MultiRegionSnitch,请将 broadcast_address 设置为节点的公共 IP 地址,并将 listen_address 设置为私有 IP。
这里是来自datastax 的broadcast_rpc_address 的文档: (默认:未设置)注意 RPC 地址广播到驱动程序和其他 Cassandra 节点。这不能设置为 0.0.0.0。如果为空,则设置为 rpc_address 或 rpc_interface 的值。如果 rpc_address 或 rpc_interface 设置为 0.0.0.0,则必须设置此属性。
编辑:这个问题与 Cassandra 2.1 版有关,将来可能不相关。
【问题讨论】: