在新建编目分区组和新增编目节点时,如果涉及到新增主机,则需要先按照集群中新增主机一节完成主机的主机名和参数配置。
新建编目分区组
一个数据库集群必须有且仅有一个编目分区组,所以新建分区组往往在安装时就已经完成,不需要在安装后执行新建分区组操作。实例见安装指南集群模式的配置与启动一节。
-
操作方法:
db.createCataRG( <host>, <service>, <dbpath>, [config] )
Sdb.createCataRG() 用于创建编目分区组,同时创建并启动一个编目节点,其中:
-
host :指定编目节点的主机名;
-
service :指定编目节点的服务端口,需要确保该端口号及往后延续的五个端口号未被占用;如端口号设置为11800,应确保11800/11801/11802/11803/11804/11805端口都未被占用;
-
dbpath :数据文件路径,用于存放编目数据文件,需要确保数据管理员(安装时创建,默认为sdbadmin)用户有写权限。如果配置路径不以“/”开头,则数据文件存放路径是数据库管理员用户(默认为sdbadmin)的主目录(默认为/home/sequoiadb) + 配置的路径;
-
config :该参数为可选参数,用于配置更多细节参数,格式必须为 json格式,细节参数可参考数据库配置一节;如需要配置日志大小参数{logfilesz:64}。
Note:
编目节点上的事务选项 transactionon 默认为开启(为了保证事务日志,需要对编目节点上的日志文件个数 logfilenum 进行设置,可参考数据库配置)。
编目分区组中新增节点
随着整个集群中的物理设备的扩展,可以通过增加编目节点来提高编目服务的可靠性。
- 操作方法:
-
获取编目分区组:
var cataRG = db.getCatalogRG()
Note:
在 Sdb Shell 中用户可以使用 Sdb.getCataRG() 获取编目分区组。
2.创建一个新的编目节点:
var node1 = cataRG.createNode( <host>, <service>, <dbpath>, [config] )
Note:
host, service, dbpath 及 config 的设置可参考 新建编目分区组
3.启动新增的编目节点:
node1.start()
查看编目节点
在 Sdb Shell 中可以查看协调节点的列表:
db.getCataRG().getDetail()
故障恢复
编目节点故障恢复策略与数据节点相同。