#集群配置命令
# ycsctl create cluster
该命令用于创建一个新的集群。
命令格式及参数介绍如下:
ycsctl create cluster <clustername> [-clusterid <clusterid>] [-o]
| 参数选项 | 取值 | 参数描述 |
|---|---|---|
| clustername | 指定集群的名称,长度为4 ~ 64个字符,支持字母、数字、连字符(-)以及下划线(_),且必须以字母开头。 | |
| -clusterid | ID | 可选参数,指定集群唯一ID,由1 ~ 32个十六进制字符组成,用于区分集群的唯一性。 |
| -o | 可选参数,表示覆盖原有集群配置信息。 指定该选项将会覆盖原有集群配置信息且无法回退,非必要请勿指定。 |
# ycsctl set_ycr
该命令用于离线调整当前集群的YCS集群级参数项的值。
该操作的完整步骤大致如下:
- 停止集群。
- 启动yasfs服务。
- 执行本命令修改对应参数的值。
- 停止yasfs服务。
- 启动集群。
命令格式及参数介绍如下:
ycsctl set_ycr <key> <value>
| 参数值 | 参数描述 |
|---|---|
| key | 指定待修改的参数名,大小写不敏感。 |
| value | 指定为对应参数的取值范围中的某个值。 |
# ycsctl import
该命令用于给当前集群导入指定的配置脚本。
推荐的操作流程为:先停止整个集群,再执行导入,导入完成后启动集群。
命令格式及参数介绍如下:
ycsctl import <srcfile> [-f]
| 参数选项 | 取值 | 参数描述 |
|---|---|---|
| srcfile | 指定待导入的配置脚本的完整路径。 | |
| -f | 可选参数,表示强制导入 默认情况下,导入前会先进行节点活跃性检查,以免在线导入引起配置不一致问题。 指定该选项将会跳过节点活跃性检查,请根据实际操作场景谨慎使用。 |
# ycsctl export
该命令用于给当前集群导出配置脚本的信息,导出后文件名固定为ycrbackup.sh。
命令格式及参数介绍如下:
ycsctl export <destdir>
| 参数值 | 参数描述 |
|---|---|
| destdir | 指定导出文件的存储位置。 |
# ycsctl show config
该命令用于查看当前集群的配置信息。
命令格式及参数介绍如下:
ycsctl show config
示例
$ ycsctl show config
Cluster name: yashandb, config version: 6
Cluster id: 47383c354eda3d04e517cdc21862431e
Network timeout: 30s
Disk heartbeat keep alive: 30s
Fence type: I/O Protection Algorithm
Default resource yasfs: enabled
Network: 172.16.60.0/24
Resource SCAN: enabled
SCAN name: scan.example.com, listening port: 1688
SCAN VIP: 192.168.1.100, ordinal number: 1
SCAN VIP: 192.168.1.101, ordinal number: 2
SCAN VIP: 192.168.1.102, ordinal number: 3
Resource vip: enabled
Databases in cluster:
Database yashandb:
Resource id: 0
Database unique name: yashandb
Database name: yashandb
Database data directory: /data/yashan/yasdb_data/db-1-1
Start option: OPEN
Instances in database:
yasdb instance name:yasdb1, yasdb instance id:1
yasdb instance name:yasdb2, yasdb instance id:2
PDBs in database: // PDB信息仅存在于容器数据库集群中
Pdb resource id 4, name pdb1
Management policy: AUTOMATIC
Start option: OPEN
Pdb resource id 5, name pdb2
Management policy: AUTOMATIC
Start option: OPEN
Nodes in cluster:
Node name: host0001, yascs/yasfs inter connect URL: 172.16.1.2:1788, Node ID: 1
public service port: 1688
VIP: 192.168.1.62/24/ens192, home node: host0001
Node name: host0002, yascs/yasfs inter connect URL: 172.16.1.3:1788, Node ID: 2
public service port: 1688
VIP: 192.168.1.63/24/ens192, home node: host0002
各项配置信息的介绍如下:
| 字段名 | 含义 |
|---|---|
| Cluster name | 当前集群的名称。 |
| config version | YCR配置版本,集群创建后,每次更改集群注册信息时配置版本就会加一。 |
| Cluster id | 当前集群的唯一ID。 |
| Network timeout | YCS网络心跳的超时时间(单位为秒)。若超过此时间,则判定为网络超时,YCS进入故障处理流程。 可以通过ycsctl set_ycr命令进行修改,key为NETWORK_HB_TIMEOUT。 |
| Disk heartbeat keep alive | YCS磁盘心跳的超时时间(单位为秒),若超过此时间,则判定YCS节点出现磁盘心跳故障并且无法恢复,YCS进入故障处理流程。 可以通过ycsctl set_ycr命令进行修改,key为DISK_HB_KEEP_ALIVE。 |
| Fence type | 当前集群所使用的I/O Fencing的类型。 可以通过ycsctl set_ycr命令进行修改,key为FENCE_TYPE。 |
| Default resource yasfs | 内嵌资源YFS,默认启动。 |
| Network | 集群的公网配置。 |
| Resource SCAN | 集群是否开启SCAN功能,默认关闭。 |
| SCAN name | SCAN域名。 |
| listening port | SCAN的监听端口。 |
| SCAN VIP | SCAN VIP信息,包括IP地址和序号(ordinal number)。 |
| Resource vip | 集群是否开启VIP功能,默认关闭。 |
| Database unique name | 数据库在当前集群中的唯一名称。 |
| Database name | 数据库建库名称。 |
| Database data directory | 数据库的DATA目录,即$YASDB_DATA。 |
| Start option | 数据库的启动选项,启动数据库时若不再额外指定启动选项将默认启动至该阶段。 |
| PDBs in database | PDB相关信息,仅存在于容器数据库集群中。信息项主要包括: * name:PDB的名称。 * Management policy:PDB的启动策略,即是否随数据库实例启动而启动。 * Start option:PDB的启动选项,启动PDB时若不再额外指定启动选项将默认启动至该阶段。 |
| yasdb instance name | 数据库实例的名称。 |
| yasdb instance id | 数据库实例的ID。 |
| Node name | 实例节点的名称。 |
| yascs/yasfs inter connect URL | 节点间的互联地址。 |
| Node ID | 实例节点的ID。 |
| public service port | 节点监听的服务端口号。 |
| VIP | 节点上VIP资源的配置信息(IP地址/子网掩码/网卡名)以及它的部署节点名(home node)。 |
# ycsctl status
该命令用于查看当前集群的拓扑状态,默认以横表方式显示,显示的服务器数目等于部署的服务器数目。
命令格式及参数介绍如下:
ycsctl status [-v|vertical]
| 参数选项 | 参数描述 |
|---|---|
| -v -vertical | 可选参数,表示以竖表方式显示拓扑状态。 |
示例
$ ycsctl status
+--------------+-------------------+-----------------+---------------------------------------------+
| Self Host ID | Cluster Master ID | YasFS Master ID | Active Host Count |
+--------------+-------------------+-----------------+---------------------------------------------+
|1 |2 |2 |2 |
+--------------+-------------------+-----------------+---------------------------------------------+
+---------+---------+---------+---------+-------------+--------------------+--------------------+-----------+-----------+
| Host ID | Target | YCS | YFS | VIP | DB_NAME | PDB_NAME | DB_STATE | IS_MASTER |
+---------+---------+---------+---------+-------------+--------------------+--------------------+-----------+-----------+
|1 |online |online |online |host1.online |yashandb |cdb$root |online |FALSE |
| | | | | | +--------------------+-----------+-----------+
| | | | | | |pdb1 |online |FALSE |
| | | | | | +--------------------+-----------+-----------+
| | | | | | |yashancdb_pdb2 |online |FALSE |
| | | | | | +--------------------+-----------+-----------+
| | | | | | |yashancdb_pdb3 |online |TRUE |
+---------+---------+---------+---------+-------------+--------------------+--------------------+-----------+-----------+
|2 |online |online |online |host1.online |yashandb |cdb$root |online |TRUE |
| | | | | | +--------------------+-----------+-----------+
| | | | | | |pdb1 |online |TRUE |
| | | | | | +--------------------+-----------+-----------+
| | | | | | |yashancdb_pdb2 |online |TRUE |
| | | | | | +--------------------+-----------+-----------+
| | | | | | |yashancdb_pdb3 |offline |FALSE |
+---------+---------+---------+---------+-------------+--------------------+--------------------+-----------+-----------+
+---------------------------------------+---------------------------------------+---------------------------------------+
|SCAN VIP 1: host1.online |SCAN VIP 2: host2.online | |
+---------------------------------------+---------------------------------------+---------------------------------------+
$ ycsctl status -v
[cluster_information]
Self Host ID: 1
Cluster Master ID: 2
YasFS Master ID: 2
Active Host Count: 2
SCAN VIP 1: host1.online
SCAN VIP 2: host2.online
[host_information.host1]
Host ID: 1
Target: online
State: online
YasFS: online
VIP: host1.online
[database_information.yashancdb]
DB State: online
[database_information.pdb1]
DB State: online
[database_information.yashancdb_pdb2]
DB State: online
[database_information.yashancdb_pdb3]
DB State: online
[database_information.pdb_add2]
DB State: online
[host_information.host2]
Host ID: 2
Target: online
State: online
YasFS: online
VIP: host1.online
[database_information.yashancdb]
DB State: online(MASTER)
[database_information.pdb1]
DB State: online(MASTER)
[database_information.yashancdb_pdb2]
DB State: online(MASTER)
[database_information.yashancdb_pdb3]
DB State: offline
各项配置信息的介绍如下:
| 字段名 | 含义 |
|---|---|
| Self Host ID | 当前服务器ID。 |
| Cluster Master ID | YCS服务对应的主服务器ID。 |
| YasFS Master ID | YFS服务对应的主服务器ID。 |
| Active Host Count | 集群当前的活动服务器数。 |
| Host ID | 服务器ID。 |
| Target | 服务器启动时,表示数据库实例是否纳入YCS一起启动,根据参数AUTO_START而定,当AUTO_START=ALWAYS时,Target为online,当AUTO_START=NEVER时,Target为offline。 服务器停止时,恒为offline。 |
| YCS | YCS服务当前状态。 |
| YFS | YFS服务当前状态。 |
| VIP | 部署于此YCS节点的VIP资源的当前状态,格式为:<接管节点名.运行状态(IP地址:端口)>。 |
| DB_NAME | 数据库资源的名称。 |
| PDB_NAME | PDB的名称。 |
| DB_STATE | 数据库实例的当前状态。 |
| IS_MASTER | 是否为主库角色。 |
| SCAN VIP n | 当前YCS节点的SCAN VIP信息和运行状态,格式为:<SCAN VIP运行节点名.运行状态>。 |

