21.3.3.5 定义 NDB 群集 Management 服务器
[ndb_mgmd]
部分用于配置 Management 服务器的行为。如果使用多个 Management 服务器,则可以在[ndb_mgmd default]
部分中指定所有这些服务器共有的参数。 [mgm]
和[mgm default]
是它们的较早别名,支持向后兼容。
下 table 中的所有参数都是可选的,如果省略,则采用其默认值。
Note
如果ExecuteOnComputer
和HostName
参数均不存在,则将两者都假定为默认值localhost
。
table21.10 此 table 提供了 IDManagement 节点配置参数的类型和值信息
Property | Value |
---|---|
版本(或更高版本) | NDB 7.5.0 |
类型或单位 | unsigned |
Default | [none] |
Range | 1 - 255 |
Restart Type | IS |
集群中的每个节点都有唯一的标识。对于 Management 节点,这由 1 到 255 之间的整数值(包括 1 和 255)table 示。所有内部群集消息均使用此 ID 来寻址该节点,因此,对于每个 NDB 群集节点,此 ID 必须是唯一的,而不管节点的类型如何。
Note
数据节点 ID 必须小于 49.如果计划部署大量数据节点,则最好将 Management 节点(和 API 节点)的节点 ID 限制为大于 48 的值。
不赞成使用Id
参数来标识 Management 节点,而推荐使用NodeId。尽管 continue 支持Id
以实现向后兼容性,但是它现在会生成警告,并且在以后的 NDB Cluster 版本中会被删除。
table21.11 该 table 提供了 NodeIdManagement 节点配置参数的类型和值信息
Property | Value |
---|---|
版本(或更高版本) | NDB 7.5.0 |
类型或单位 | unsigned |
Default | [none] |
Range | 1 - 255 |
Restart Type | IS |
集群中的每个节点都有唯一的标识。对于 Management 节点,这由 1 到 255 之间的整数值 table 示。所有内部群集消息均使用此 ID 来寻址该节点,因此,对于每个 NDB 群集节点,此 ID 必须是唯一的,而不管节点的类型如何。
Note
数据节点 ID 必须小于 49.如果计划部署大量数据节点,则最好将 Management 节点(和 API 节点)的节点 ID 限制为大于 48 的值。
NodeId
是标识 Management 节点时首选的参数名称。尽管仍然支持较旧的Id以实现向后兼容性,但现在已弃用了它,并在使用时生成警告。在以后的 NDB 群集版本中也将删除它。
table21.12 该 table 提供了 ExecuteOnComputerManagement 节点配置参数的类型和值信息
Property | Value |
---|---|
版本(或更高版本) | NDB 7.5.0 |
类型或单位 | name |
Default | [none] |
Range | ... |
Restart Type | S |
Deprecated | NDB 7.5.0 |
这是指config.ini
文件的[computer]
部分中定义的其中一台计算机的Id
集。
Important
从 NDB 7.5.0 开始不推荐使用此参数,并且在将来的发行版中可能会删除该参数。请使用HostName参数。
table21.13 该 table 提供了 PortNumberManagement 节点配置参数的类型和值信息
Property | Value |
---|---|
版本(或更高版本) | NDB 7.5.0 |
类型或单位 | unsigned |
Default | 1186 |
Range | 0 -64K |
Restart Type | S |
这是 Management 服务器在其上侦听配置请求和 Management 命令的端口号。
table21.14 该 table 提供了主机名 Management 节点配置参数的类型和值信息
Property | Value |
---|---|
版本(或更高版本) | NDB 7.5.0 |
类型或单位 | 名称或 IP 地址 |
Default | [none] |
Range | ... |
Restart Type | N |
指定此参数定义 Management 节点将驻留在其上的计算机的主机名。要指定除localhost
以外的主机名,此参数或ExecuteOnComputer
是必需的。
table21.15 该 table 提供了 LocationDomainIdManagement 节点配置参数的类型和值信息
Property | Value |
---|---|
版本(或更高版本) | NDB 7.6.4 |
类型或单位 | integer |
Default | 0 |
Range | 0 - 16 |
Restart Type | S |
Added | NDB 7.6.4 |
将 Management 节点分配给云中特定的availability domain(也称为可用性区域)。通过通知NDB
哪个节点位于哪个可用性域中,可以通过以下方式在云环境中提高性能:
-
如果在同一节点上找不到请求的数据,则可以将读取定向到同一可用性域中的另一个节点。
-
保证不同可用性域中的节点之间的通信使用
NDB
传输者的 WAN 支持,而无需任何进一步的手动干预。 -
传输者的组号可以基于使用哪个可用性域,以便 SQL 和其他 API 节点也尽可能与同一可用性域中的本地数据节点通信。
-
仲裁器可以从不存在数据节点的可用性域中选择,或者,如果找不到这样的可用性域,则可以从第三个可用性域中选择。
-
LocationDomainId
取 0 到 16 之间的一个整数值,其中 0 是默认值;使用 0 等于不设置参数。
table21.16 该 table 提供了 LogDestinationManagement 节点配置参数的类型和值信息
Property | Value |
---|---|
版本(或更高版本) | NDB 7.5.0 |
类型或单位 | {CONSOLE|SYSLOG|FILE} |
Default | FILE:filename = ndb_nodeid_cluster.log,maxsize = 1000000,maxfiles = 6 |
Range | ... |
Restart Type | N |
此参数指定将群集日志记录信息发送到的位置。在这方面,共有三个选项CONSOLE
,SYSLOG
和FILE
,其中FILE
为默认值:
CONSOLE
将日志输出到stdout
:
CONSOLE
SYSLOG
将日志发送到syslog
设备,可能的值是auth
,authpriv
,cron
,daemon
,ftp
,kern
,lpr
,mail
,news
,syslog
,user
,uucp
,local0
,local1
,local2
,local3
local6
或local7
。
Note
并非每个 os 都必须支持所有功能。
SYSLOG:facility=syslog
-
FILE
将群集日志输出通过管道传输到同一台计算机上的常规文件。可以指定以下值: -
filename
:日志文件的名称。
在这种情况下使用的默认日志文件名是ndb_nodeid_cluster.log
。
- `maxsize` : The maximum size \(in bytes\) to which the file can grow before logging rolls over to a new file\. When this occurs, the old log file is renamed by appending *`.N`* to the file name, where *`N`* is the next number not yet used with this name\.
- `maxfiles` : The maximum number of log files\.
FILE:filename=cluster.log,maxsize=1000000,maxfiles=6
FILE
参数的默认值为FILE:filename=ndb_node_id_cluster.log,maxsize=1000000,maxfiles=6
,其中* node_id
*是节点的 ID。
可以指定多个用分号分隔的日志目标,如下所示:
CONSOLE;SYSLOG:facility=local0;FILE:filename=/var/log/mgmd
table21.17 该 table 提供 ArbitrationRankManagement 节点配置参数的类型和值信息
Property | Value |
---|---|
版本(或更高版本) | NDB 7.5.0 |
类型或单位 | 0-2 |
Default | 1 |
Range | 0 - 2 |
Restart Type | N |
此参数用于定义哪些节点可以充当仲裁器。只有 Management 节点和 SQL 节点才能成为仲裁程序。 ArbitrationRank
可以采用以下值之一:
-
0
:该节点永远不会用作仲裁程序。-
1
:该节点具有高优先级;也就是说,它将优先于低优先级节点作为仲裁器。 -
2
:table 示低优先级节点,只有在具有较高优先级的节点不可用于此目的时才用作仲裁器。
-
通常,应将 Management 服务器的ArbitrationRank
设置为 1(Management 节点的默认值),并将所有 SQL 节点的ArbitrationRank
设置为 0(SQL 节点的默认值),将其配置为仲裁程序。
您可以通过在所有 Management 和 SQL 节点上将ArbitrationRank
设置为 0 或通过在config.ini
全局配置文件的[ndbd default]
部分中设置Arbitration参数来完全禁用仲裁。设置Arbitration会忽略ArbitrationRank
的任何设置。
table21.18 此 table 提供 ArbitrationDelayManagement 节点配置参数的类型和值信息
Property | Value |
---|---|
版本(或更高版本) | NDB 7.5.0 |
类型或单位 | milliseconds |
Default | 0 |
Range | 0 -4294967039(0xFFFFFEFF) |
Restart Type | N |
一个整数值,使 Management 服务器对仲裁请求的响应延迟该毫秒数。默认情况下,此值为 0;默认值为 0.通常无需更改它。
table21.19 该 table 提供了 DataDirManagement 节点配置参数的类型和值信息
Property | Value |
---|---|
版本(或更高版本) | NDB 7.5.0 |
类型或单位 | path |
Default | . |
Range | ... |
Restart Type | N |
这指定将放置 Management 服务器的输出文件的目录。这些文件包括集群日志文件,进程输出文件和守护程序的进程 ID(PID)文件。 (对于日志文件,可以通过为此部分设置LogDestination的FILE
参数来覆盖此位置。)
此参数的默认值为ndb_mgmd所在的目录。
table21.20 该 table 提供了 PortNumberStatsManagement 节点配置参数的类型和值信息
Property | Value |
---|---|
版本(或更高版本) | NDB 7.5.0 |
类型或单位 | unsigned |
Default | [none] |
Range | 0 -64K |
Restart Type | N |
此参数指定用于从 NDB 群集 Management 服务器获取统计信息的端口号。没有默认值。
table21.21 该 table 提供了 WANManagement 节点配置参数的类型和值信息
Property | Value |
---|---|
版本(或更高版本) | NDB 7.5.0 |
类型或单位 | boolean |
Default | false |
Range | true, false |
Restart Type | N |
默认使用 WAN TCP 设置。
table21.22 该 table 提供了 HeartbeatThreadPriorityManagement 节点配置参数的类型和值信息
Property | Value |
---|---|
版本(或更高版本) | NDB 7.5.0 |
类型或单位 | string |
Default | [none] |
Range | ... |
Restart Type | S |
为 Management 和 API 节点设置心跳线线程的调度策略和优先级。
设置此参数的语法如下所示:
HeartbeatThreadPriority = policy[, priority]
policy:
{FIFO | RR}
设置此参数时,必须指定一个策略。这是FIFO
(先进先出)或RR
(循环赛)之一。策略值后面可以有一个优先级(整数)。
table21.23 该 table 提供 ExtraSendBufferMemoryManagement 节点配置参数的类型和值信息
Property | Value |
---|---|
版本(或更高版本) | NDB 7.5.0 |
类型或单位 | bytes |
Default | 0 |
Range | 0 -32G |
Restart Type | N |
该参数指定除使用TotalSendBufferMemory,SendBufferMemory或同时使用这两者设置的传输器之外,还要分配的传输器发送缓冲内存量。
table21.24 该 table 提供了 TotalSendBufferMemoryManagement 节点配置参数的类型和值信息
Property | Value |
---|---|
版本(或更高版本) | NDB 7.5.0 |
类型或单位 | bytes |
Default | 0 |
Range | 256 K-4294967039(0xFFFFFEFF) |
Restart Type | N |
此参数用于确定要在此节点上分配的内存总量,以在所有已配置的传输器之间共享共享发送缓冲区内存。
如果设置了此参数,则其最小允许值为 256KB; 0table 示尚未设置参数。有关更多详细信息,请参见第 21.3.3.13 节,“配置 NDB 群集发送缓冲区参数”。
table21.25 该 table 提供了 HeartbeatIntervalMgmdMgmdManagement 节点配置参数的类型和值信息
Property | Value |
---|---|
版本(或更高版本) | NDB 7.5.0 |
类型或单位 | milliseconds |
Default | 1500 |
Range | 100 -4294967039(0xFFFFFEFF) |
Restart Type | N |
指定心跳消息之间的间隔,该间隔用于确定另一个 Management 节点是否正在与此联系。Management 节点在这些间隔中的 3 个间隔之后 await,以声明 Connecting 断;因此,默认设置 1500 毫秒将导致 Management 节点在超时之前 await 大约 1600 ms。
Note
在更改 Management 节点的配置之后,有必要对群集进行滚动重启以使新配置生效。
要将新的 Management 服务器添加到正在运行的 NDB 群集中,还必须在修改任何现有的config.ini
文件之后对所有群集节点执行滚动重启。有关使用多个 Management 节点时出现的问题的更多信息,请参阅第 21.1.7.10 节“与多个 NDB 群集节点有关的限制”。
重新启动类型. 下 table 显示了本节中的参数描述所使用的重新启动类型的信息:
table21.26 NDB 群集重新启动类型
Symbol | Restart Type | Description |
---|---|---|
N | Node | 可以使用滚动重启来更新参数(请参见第 21.5.5 节“执行 NDB 群集的滚动重启”) |
S | System | 必须完全关闭所有群集节点,然后重新启动,以更改此参数 |
I | Initial | 必须使用--initial选项重新启动数据节点 |