2.7. 配置验证
可在启动和重新载入配置时,根据集群方案
/usr/share/cluster/cluster.rng
自动验证集群配置。您还可以使用 ccs_config_validate
命令在随时验证集群配置。有关使用 ccs
命令时的配置验证详情请参考 第 5.1.6 节 “配置验证”。
您可在
/usr/share/doc/cman-X.Y.ZZ/cluster_conf.html
中查看注释的可用方案(例如:/usr/share/doc/cman-3.0.12/cluster_conf.html
)。
配置验证可检查以下基本错误:
- XML 验证 — 查看该配置文件是否为有效 XML 文件。
- 配置选项 — 查看选项(XML 元素和属性)是否有效。
- 选项值 — 查看选项是否包含有效数据(受限制的)
以下示例为演示有效性检查的有效配置和无效配置:
- 无效 XML — 例 2.4 “
cluster.conf
示例配置:无效 XML” - 无效选项值 — 例 2.6 “
cluster.conf
示例配置:无效选项值”
例 2.3. cluster.conf
示例配置:有效文件
<cluster name="mycluster" config_version="1"> <logging debug="off"/> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> </fence> </clusternode> </clusternodes> <fencedevices> </fencedevices> <rm> </rm> </cluster>
例 2.4. cluster.conf
示例配置:无效 XML
<cluster name="mycluster" config_version="1"> <logging debug="off"/> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> </fence> </clusternode> </clusternodes> <fencedevices> </fencedevices> <rm> </rm> <cluster> <----------------INVALID
在这个示例中,配置的最后一行(在此注释为 "INVALID")缺少一个斜杠 — 应该是
</cluster>
而不是 <cluster>
。
例 2.5. cluster.conf
示例配置:无效选项
<cluster name="mycluster" config_version="1"> <loging debug="off"/> <----------------INVALID <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> </fence> </clusternode> </clusternodes> <fencedevices> </fencedevices> <rm> </rm> <cluster>
在这个示例中配置的第二行(在此注释为 "INVALID")包含无效 XML 元素 — 应该是
logging
而不是 loging
。
例 2.6. cluster.conf
示例配置:无效选项值
<cluster name="mycluster" config_version="1"> <loging debug="off"/> <clusternodes> <clusternode name="node-01.example.com" nodeid="-1"> <--------INVALID <fence> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> </fence> </clusternode> </clusternodes> <fencedevices> </fencedevices> <rm> </rm> <cluster>
在这个示例中,配置的第四行(在此注释为 "INVALID")包含 XML 属性的无效值,即
node-01.example.com
的 clusternode
行中的 nodeid
。该值应该是一个正数("1")而不是负数("-1")。nodeid
属性值必须是一个正数。