机架感知(Rack aware)
配置机架感知,需要做以下几点:
- Configure the rack-aware protocol(协议).
- Configure each server node with its group.配置每个服务器节点组。
- 希望不同节点之间的通信能够尽量发生在同一个机架之内,而不是跨机架。 - 为了提高容错能力,名称节点会尽可能把数据块的副本放到多个机架上。
下面详细描述这些配置更改
Configuring the Rack-Awareness Protocol
更新service 节点 paxos-protocol v4参数如下所示:
service {
...
paxos-protocol v4
...
}
Configuring the Group (Rack)
在非机架感知的情况下,每个节点由一个节点的值被确定-一个64位的无符号整数,其中包括:16位端口标识加48位hardware MAC address。在集群中的每个节点的值必须是唯一的。
当使用机架感知时,一个节点的值包括:16-bit port ID + 16-bit group ID + 32-bit node ID::
- 可以自动生成32位节点ID从节点的IP地址或者你可以显式地指定它。当你想要更多的控制节点ID值进行验证或集群调试可以显式地指定节点ID可能使用
- 组ID必须显式地指定。
Explicit(明确指定) Node ID
cluster {
mode static
self-node-id [32-bit unsigned integer node ID]
self-group-id [16-bit unsigned integer group ID]
}
自动生成节点ID
cluster {
mode dynamic
self-group-id [16-bit unsigned integer group ID]
}