金仓数据库怎么用_海量数据库vastbase

金仓数据库怎么用_海量数据库vastbase目前支持两种方式搭建集群:使用cluster_manager.sh或是手工搭建,推荐使用cluster_manager.sh搭建集群:使用cluster_manager.sh搭建集群手工搭建集群以下操作需要在集群中每个

金仓数据库怎么用_海量数据库vastbase"

目前支持两种方式搭建集群:

使用cluster_manager.sh或是手工搭建,推荐使用cluster_manager.sh搭建集群:

目录

4.1. 使用cluster_manager.sh搭建集群 ¶

4.1.1. 搭建集群 ¶

4.1.2. 管理进程 ¶

4.2. 手工搭建集群 ¶

4.2.1. 配置主机名称 ¶

4.2.2. 配置投票盘 ¶

4.2.3. 配置并启动corosync ¶

4.2.4. 配置并启动pacemaker ¶

4.2.5. 启动corosync-qdevice ¶

4.2.6. 配置crmsh ¶

4.2.7. crm配置资源 ¶


4.1. 使用cluster_manager.sh搭建集群 ¶

以下操作需要在集群中每个节点执行

目前提供一个cluster_manager.sh 脚本来帮助搭建集群与管理集群。

具体功能可以使用如下命令来查看该脚本提供的功能

sh cluster_manager.sh --help
Usage: cluster_manager.sh <options>
<options> may be:
  --help                  show this help, then exit
  -A, --all               config all(default) incldue init_db
  --exclude_data_init     config all(default) but exclude
                          init_db qdisk_init config_resouce
  --config_host           config host
  --clean_host            clean host
  --qdisk_init            init votingdisk
  --config_corosync       config corosync
  --start_corosync        start corosync
  --stop_corosync         stop corosync
  --status_corosync       corosync status
  --add_pacemaker_user    add pacemaker daemon user
  --remove_pacemaker_user remove pacemaker daemon user
  --add_env               add env variable
  --clean_env             clean env variable
  --config_pacemaker      config pacemaker
  --start_pacemaker       start pacemaker
  --stop_pacemaker        stop pacemaker
  --status_pacemaker      pacemaker status
  --config_qdevice        config qdevice
  --start_qdevice         start qdevice
  --stop_qdevice          stop qdevice
  --status_qdevice        qdevice status
  --config_datadir        config filesystem dir
  --config_kingbase       config kingbase log dir
  --init_db               init kingbase database
  --config_resource       crm configure resource
  --stop_resource         stop resource
  --mount_dir             mount dir
  --umount_dir            umount dir
  --clean_all             clean all config but not for
                          kingbase data
  --start                 start corosync, wait for quorate, start pacemaker and qdevice
  --start_nowait          start corosync, pacemaker and qdevice, do not wait for quorate
  --stop                  stop qdevice pacemaker corosync
  --status                show corosync pacemaker qdevice status

要想使用该脚本,首先需要根据现实环境替换该脚本的一些初始化变量。

4.1.1. 搭建集群 ¶

推荐的搭建过程:

1 根据真实环境,配置好脚本的相关变量

2 选择一个节点执行qdisk_init操作

sh cluster_manager.sh --qdisk_init

3 每个节点执行如下命令

该命令除了初始化数据库data目录,以及配置资源外,其他步骤都已经完成

sh cluster_manager.sh --exclude_data_init

4 在最后一个节点执行如下命令

该命令完成数据库初始化,并配置资源,如果kingbase已经完成初始化,则–init_db不需要执行,没有使用init_db初始化数据库,则需要配置crmsh,具体查看手工搭建集群的配置crmsh章节,/root/.bashrc 为环境变量配置参数。

source /root/.bashrc
sh cluster_manager.sh --init_db
sh cluster_manager.sh --config_resource

5 使用如下命令,查看集群启动过程,

crm_mon

至此,整个集群搭建完毕

如果要一键清除安装的程序,每个节点执行如下命令

sh cluster_manager.sh --clean_all

注意

执行该命令,将会删除整个集群安装的目录,即install_dir变量指定的路径,同理会删除之前的cluster_manager.sh,如果要想重复测试,最好先保存配置好的cluster_manager.sh,该命令并不会清除已经初始化的kingbase的data目录,如果需要清除数据目录,需要手动挂载目录,并清除。

4.1.2. 管理进程 ¶

下面的操作,仅对执行节点有效

  1. 使用如下命令,查看集群进程

sh cluster_manager.sh --status
  1. 使用如下命令,启动集群进程

sh cluster_manager.sh --start
  1. 使用如下命令,停止集群进程

sh cluster_manager.sh --stop

4.2. 手工搭建集群 ¶

以下操作需要在集群中每个节点执行

4.2.1. 配置主机名称 ¶

  1. 编辑/etc/hostname

vi /etc/hostname

添加主机名node1

node1
  1. 执行如下命令,修改hostname

hostname node1
  1. 修改/etc/hosts文件,将主机名与IP地址对应

格式为先IP,然后空格,最后是主机名,示例如下

192.168.5.1 node1

4.2.2. 配置投票盘 ¶

  1. 执行fdisk -l命令查看,我们将/dev/sde作为共享磁盘投票盘

fdisk -l

Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000be610

    Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    41943039    19921920   8e  Linux LVM

Disk /dev/sdb: 33.3 GB, 33285996544 bytes, 65011712 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0xfc8de79d

    Device Boot      Start         End      Blocks   Id  System

Disk /dev/mapper/centos-root: 18.2 GB, 18249416704 bytes, 35643392 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mapper/centos-swap: 2147 MB, 2147483648 bytes, 4194304 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/sdc: 53.7 GB, 53687091200 bytes, 104857600 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/sdd: 53.7 GB, 53687091200 bytes, 104857600 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/sde: 10.7 GB, 10737418240 bytes, 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
  1. 使用mkqdisk 工具进行投票盘初始化

cd /opt/KingbaseHA/corosync-qdevice/sbin/
./mkqdisk -c /dev/sde -l kcluster
  1. 通过如下命令,可以查看共享磁盘状态

./mkqdisk -f kcluster -d

/dev/block/8:64:
/dev/disk/by-id/scsi-36000c2900dc5b0faf12188476a673a3f:
/dev/disk/by-id/wwn-0x6000c2900dc5b0faf12188476a673a3f:
/dev/disk/by-path/pci-0000:13:00.0-scsi-0:0:2:0:
/dev/sde:
     Magic:                eb7a62c2
     Label:                kcluster
     Created:              Mon Mar  1 12:01:00 2021
     Host:                 node3
     Kernel Sector Size:   512
     Recorded Sector Size: 512

4.2.3. 配置并启动corosync ¶

  1. 执行如下命令,配置corosync.conf

cd /opt/KingbaseHA/corosync/etc/corosync
vi corosync.conf

添加如下内容

totem {
  version: 2
  cluster_name: kcluster
  token: 60000
  join: 3000
  crypto_hash: none
  crypto_cipher: none
  interface {
    knet_ping_interval: 1000
    knet_ping_timeout: 60000
  }
}

nodelist {
  node {
   ring0_addr: node1
    nodeid: 1
  }

  node {
    ring0_addr: node2
    nodeid: 2
  }
}

quorum {
  provider: corosync_votequorum
  device {

  timeout: 200000
  sync_timeout: 240000
  master_wins: 1
  votes: 1
  model: disk
  disk {
    debug: 0
    interval: 2000
    tko: 60
    tko_up: 3
    upgrade_wait: 1
    master_wait: 4
    label: kcluster
    io_timeout: 1
    fence_timeout: 50000
  }
  }
}

logging {
  debug: off
  to_logfile: yes
  logfile: /opt/KingbaseHA/corosync/var/log/cluster/corosync.log
  logger_subsys {
                 subsys: QDEVICE
                 debug: off
        }
}

其中nodelist 是配置集群节点信息,每个节点只需提供name,nodeid,ring0_addr,其中name通常指定节点名称,一般用hostname,nodeid指集群节点号,需从1开始,ring0_addr指定节点通信接口,一般用hostname,corosync将会自动寻找hostname对应的ip,然后该ip对应的接口名称。

需要配置多个节点时,只需往该文件中加node{}

Quorum配置集群的投票信息,针对device,一般配置vote,该vote需要不小于集群节点数–1,disk中的label指明共享投票盘的位置,需要和使用mkqdisk工具初始化的-L对应。

  1. 执行如下命令将启动脚本拷贝到系统初始化脚本目录

cp /opt/KingbaseHA/corosync/corosync /etc/init.d/
  1. 执行如下命令,创建lock目录

mkdir -p /opt/KingbaseHA/corosync/var/lock/subsys
mkdir /opt/KingbaseHA/corosync/var/run
  1. 执行如下命令,配置corosync的logrotate

cp /opt/KingbaseHA/corosync/etc/logrotate.d/corosync /etc/logrotate.d/
  1. 执行如下命令启动corosync

/etc/init.d/corosync start
  1. 执行如下命令,查看corosync启动状态

tail -f /opt/KingbaseHA/corosync/var/log/cluster/corosync.log

Jul 17 10:09:10 [12256] node1 corosync notice [TOTEM ] A new membership
(1.14) was formed. Members joined: 1
Jul 17 10:09:10 [12256] node1 corosync notice [QUORUM] Members[1]: 1
Jul 17 10:09:10 [12256] node1 corosync notice [MAIN ] Completed service
synchronization, ready to provide service.

4.2.4. 配置并启动pacemaker ¶

  1. 执行如下命令,创建pacemaker管理用户

groupadd haclient
useradd hacluster -g haclient
  1. 执行如下命令,添加环境变量

vi /root/.bashrc

添加如下内容

export
PATH=/opt/KingbaseHA/python2.7/bin:/opt/KingbaseHA/pacemaker/sbin/:$PATH
export
PATH=/opt/KingbaseHA/crmsh/bin:/opt/KingbaseHA/pacemaker/libexec/pacemaker/:
$PATH
export
PATH=/opt/KingbaseHA/corosync/sbin:/opt/KingbaseHA/corosync-qdevice/sbin:
$PATH
export
PYTHONPATH=/opt/KingbaseHA/python2.7/lib/python2.7/site-packages/:
/opt/KingbaseHA/crmsh/lib/python2.7/site-packages:$PYTHONPATH
export
COROSYNC_MAIN_CONFIG_FILE=/opt/KingbaseHA/corosync/etc/corosync/corosync.conf
export CRM_CONFIG_FILE=/opt/KingbaseHA/crmsh/etc/crm/crm.conf
export OCF_ROOT=/opt/KingbaseHA/pacemaker/ocf/
export HA_SBIN_DIR=/opt/KingbaseHA/pacemaker/sbin/
  1. 执行如下命令,让环境变量生效

source /root/.bashrc
  1. 执行如下命令,拷贝启动脚本到系统初始化脚本位置

cp /opt/KingbaseHA/pacemaker/pacemaker /etc/init.d/
  1. 执行如下命令,配置pacemaker logrotate

cp /opt/KingbaseHA/pacemaker/etc/logrotate.d/pacemaker /etc/logrotate.d/
  1. 执行如下命令,创建lock目录

mkdir -p /opt/KingbaseHA/pacemaker/var/lock/subsys
  1. 执行如下命令,确保pacemaker的各个守护进程有权限操作对应目录

chown –R hacluster:haclient /opt/KingbaseHA/pacemaker
  1. 执行如下命令,启动pacemaker

/etc/init.d/pacemaker start
  1. 执行如下命令,查看pacemaker 日志,观察启动情况

tail -f /opt/KingbaseHA/pacemaker/var/log/pacemaker/pacemaker.log

4.2.5. 启动corosync-qdevice ¶

  1. 执行如下命令,拷贝qdevie启动脚本到系统存放初始化脚本的位置

cp /opt/KingbaseHA/corosync-qdevice/corosync-qdevice /etc/init.d/
  1. 执行如下命令,创建lock目录

mkdir -p /opt/KingbaseHA/corosync-qdevice/var/lock/subsys
  1. 执行如下命令,启动corosync-qdevice

/etc/init.d/corosync-qdevice start
  1. 查看启动的日志,该日志一般放在系统syslog里面,搜索关键字corosync-qdevice

tail -f /var/log/syslog

2020-07-20T11:26:25.744754+08:00 localhost corosync-qdevice[5849]: m_arg = 16
2020-07-20T11:26:25.744784+08:00 localhost corosync-qdevice[5849]: m_seq = 16
2020-07-20T11:26:25.744814+08:00 localhost corosync-qdevice[5849]: }
2020-07-20T11:26:25.744845+08:00 localhost corosync-qdevice[5849]:
ni_state = 0x00000000 (None)
2020-07-20T11:26:25.744876+08:00 localhost corosync-qdevice[5849]:
ni_status.ps_ringid = 16,16
2020-07-20T11:26:25.744907+08:00 localhost corosync-qdevice[5849]:
ni_status.ps_member_count = 16
2020-07-20T11:26:25.744937+08:00 localhost corosync-qdevice[5849]: }
  1. 执行如下命令,查看qdevice状态

/opt/KingbaseHA/corosync-qdevice/sbin/corosync-qdevice-tool -sv -p
/opt/KingbaseHA/corosync-qdevice/var/run/corosync-qdevice/
corosync-qdevice.sock

4.2.6. 配置crmsh ¶

crmsh用于部署和运维过程中的资源配置、资源操作和存储查看,支持的相关子命令为:configure、resource、storage。其他子命令不在支持范围,可以使用crm_系列命令、corosync_系列命令替代。

  1. 配置crm.conf,路径为/opt/KingbaseHA/crmsh/etc/crm/crm.conf,在此配置文件中添加如下内容:

[core]
pager = less –R
  1. 配置crm_dns.conf,路径为/opt/KingbaseHA/crmsh/etc/crm/crm_dsn.conf,其中的password为base64编码,可通过echo -n‘123456’| base64得到编码后的密码。

# 注意配置需要顶格
[Kingbase reourse name1]        /* kingbase资源名 */
port=36321                      /* KingbaseES资源监听端口号 */
database=test /* 数据库名,一般使用系统自带的test数据库即可 */
username=system                 /* 数据库管理员 */
password=MTIzNDU2               /* 数据库管理员密码 */

[Kingbase reourse name2]        /* kingbase资源名 */
port=36321
database=test
username=system
password= MTIzNDU2

4.2.7. crm配置资源 ¶

该操作,只需在某一台机器上执行

资源:

  • 两个VIP资源

  • 两个filesystem资源

  • 两个KingbaseES V8.6 数据库资源

  • fence资源

  • 一个pind的clone资源,ping外部网关

  1. 执行如下命令,配置fence

针对VMWARE ESXi环境和IPMI环境,给出两种不同的配置

  1. 使用fence_vmware_soap 验证可以fence的机器,注意机器的主机名需要与下面命令查出的主机名对应

fence_vmware_soap -a 192.168.4.5 -z -l root -p 'Kingbase@99'
--ssl-insecure -o list
--
R0cky_4.225,564db803-649a-98f3-4d63-d4988bcc8d67
centos7-node5_4.230,564d6e77-6ca0-25b3-b48d-4e80c27dc1f6
rocky_227,564d351d-d9d4-9c29-f570-4aead1476b1f
centos7-node6_4.231,564da140-cedc-7958-e477-966f08c1c21a
rocky_226,564dba52-7f8d-af92-9187-a75d3a74cebf
centos7-node4_4.225,564d9efe-8044-ba39-a946-b913730c6aeb
centos7-node3_4.224,564d22af-fbcc-2399-b67e-27a793933c54
rocky_228,564d9951-8830-1aec-f067-7673bf9e4053
centos7-node7_4.232,564dec1b-fb7b-1cb7-f961-c468df1ebb46
centos7-node1_4.222,564d8fed-770a-ca7d-8481-13270d38cf6f
Kylin-4.0.2-server-sp1-TEST2_4.39,564dfcb9-169a-d2fc-a8f2-bc4e56dd3755
DeepinTest1_4.42,564d4a66-cdf4-56c9-2b8e-ed5d595181c2
centos7-node2_4.223,564d7c7c-6f32-eedb-13a9-7577dc4d7c73
centos7-node8_4.229,564d7c7c-6f32-eedb-13a9-7577dc4d7c73
Kylin-4.0.2-server-sp1-TEST1_4.37,564dd89f-81dd-f515-e8a5-5eb844dd5240
vpn,564d87fa-9ce1-23c8-298d-fd3864265ceb
win7_215,564d359e-7c7b-54ef-7d68-724461456ef8
neokylin7-TEST1,564d1661-a21c-e4b8-9300-a168b2e58684
  1. 配置fence

crm configure primitive esxi_fence stonith:fence_vmware_soap \
   params ipaddr=192.168.4.5 login=root passwd='Kingbase@99'
pcmk_host_check=none ssl=1 ssl_insecure=1 \
   op monitor interval=60s \
   meta failure-timeout=5min
  1. 可以使用如下命令,测试fence,下面命令是给centos7-node4_4.225 发送reboot命令

fence_vmware_soap -a 192.168.4.5 -l root -p 'Kingbase@99' -z --ssl-insecure -o
reboot -n centos7-node4_4.225

看节点是否重启

下面是针对ipmi环境配置fence

  1. 针对ipmilan环境配置fence,需要注意IPMI设备一般为各个节点独占,因此需要为各个节点配置单独的fence资源。

针对node1设置fence

crm configure primitive fence_node1_ipmi stonith:fence_ipmilan \
     params ipaddr=192.168.2.100 login=Administrator
passwd="Admin@9000" pcmk_host_list=node1
lanplus=true ipmitool_path=/opt/KingbaseHA/ipmi_tool/bin/ipmitool \
     op monitor interval=60s \
     meta failure-timeout=5min

针对node2设置fence

crm configure primitive fence_node2_ipmi stonith:fence_ipmilan \
     params ipaddr=192.168.2.101 login=Administrator
passwd="Admin@9000" pcmk_host_list=node2
lanplus=true ipmitool_path=/opt/KingbaseHA/ipmi_tool/bin/ipmitool \
     op monitor interval=60s \
     meta failure-timeout=5min
  1. 执行如下命令,添加fence_node1_ipmi和fence_node2_ipmi的location约束。为了保证fence_node1_ipmi资源尽量不在节点node1,fence_node2_ipmi资源尽量不在节点node2,从而减少fence自己的概率,又由于资源在各个节点的默认分数为0,因此需要保证fence_node1_ipmi资源在node2的分数、fence_node2_ipmi在node1的分数均大于rsc_defaults resource-stickiness的分数。

crm configure location fence_node1_ipmi-on-node2 fence_node1_ipmi 1000: node2
crm configure location fence_node2_ipmi-on-node1 fence_node2_ipmi 1000: node1
  1. 可以使用如下命令,测试fence,下面命令是向192.168.2.100发送reboot命令。

fence_ipmilan -a 192.168.2.100 -l Administrator -p 'Admin@9000' -P
--ipmitool-path=/opt/KingbaseHA/ipmi_tool/bin/ipmitool -o reboot

看节点是否重启

  1. 执行如下命令 添加FIP1资源,其中 cid_netmask 最好与bond0接口其所在的非浮动IP的netmask保持一致,保证在集群中各节点都具有此同名网卡接口,可以使用ip addr查看

crm configure primitive FIP1 ocf:heartbeat:IPaddr2 \
  params ip="192.168.4.135" cidr_netmask="24" nic="bond0" \
  arp_sender="iputils_arping" \
  op monitor interval="30s" timeout="60s" \
  op start interval="0" timeout="60s" \
  op stop interval="0" timeout="60s" \
  meta failure-timeout=5min
  1. 执行如下命令,添加VIP1 location约束,多个节点,最好分数不一样

crm configure location FIP1-on-node1 FIP1 1000: node1
  1. 执行如下命令

添加FIP2资源,cidr_netmask最好与bond0接口原有非浮动IP的netmask保持一致,保证在集群中各节点都具有此同名网卡接口,可以使用ip addr查看

crm configure primitive FIP2 ocf:heartbeat:IPaddr2 \
  params ip="192.168.4.136" cidr_netmask="24" nic="bond0" \
  arp_sender="iputils_arping" \
  op monitor interval="30s" timeout="60s" \
  op start interval="0" timeout="60s" \
  op stop interval="0" timeout="60s" \
  meta failure-timeout=5min
  1. 执行如下命令,添加FILESYSTEM1资源,需确保每个节点/sharedata/data1目录存在,sharedata属主是root,data1属主改成数据库用户。使用如下命令查看存储设备/dev/sdc 对应的uuid

blkid /dev/sdc
/dev/sdc: UUID="d8f017f4-6c0a-4cd2-aee3-1a5c522f3cd8" TYPE="ext4"
  1. 增加资源

crm configure primitive FILESYSTEM1 ocf:heartbeat:Filesystem \
     params device="-U d8f017f4-6c0a-4cd2-aee3-1a5c522f3cd8" \
     directory="/sharedata/data1" fstype="ext4" \
     op start interval="0" timeout="60" \
     op stop interval="0" timeout="60" \
     op monitor interval="30s" timeout="60" OCF_CHECK_LEVEL="20" \
     meta failure-timeout=5min
  1. 执行如下命令,添加FILESYSTEM2,需确保每个节点/sharedata/data2目录存在,sharedata属主是root,data1属主改成数据库用户

查看uuid

blkid /dev/sdd
/dev/sdd: UUID="e56c1f6f-b791-4f0e-8780-5b3aeaef94d5" TYPE="ext4"
crm configure primitive FILESYSTEM2 ocf:heartbeat:Filesystem \
     params device="-U e56c1f6f-b791-4f0e-8780-5b3aeaef94d5" \
     directory="/sharedata/data2" fstype="ext4" \
     op start interval="0" timeout="60" \
     op stop interval="0" timeout="60" \
     op monitor interval="30s" timeout="60" OCF_CHECK_LEVEL="20" \
     meta failure-timeout=5min
  1. 执行如下命令,添加PINGD资源.目前来说,当网关与集群网络心跳共用同一个网络时,发生网络故障时,将会触发分区故障,而我们总是选择最小的ID当主节点,此时如果主节点刚好接口down掉,此时集群整个处于不能对外提供服务状态,此时考虑可以设置failure_action=”reboot”,failure_retries参数,当集群不能对外提供服务时,自身reboot,剩余的节点对外提供服务,后面基于heuristics测试选主做好之后,可以避免这种情况。

crm configure primitive PINGD ocf:pacemaker:ping \
     params host_list="192.168.4.1" multiplier="100" name="ping-in" \
     failure_score="100" failure_action=”reboot”failure_retries=3 \
     op monitor interval="2" timeout="90" \
     op start interval="0" timeout="90" \
     op stop interval="0" timeout="90" \
     meta failure-timeout=5min
  1. 执行如下命令,将PIND资源,变成clone资源

crm configure clone CLONE-PINGD PINGD
  1. 执行如下命令,添加一个分库资源,注意/sharedata/data1/data目录下的kingbase.conf需要手动配置port=36321,需要手动创建/home/kingbase/V8/Server/log目录

crm configure primitive DB1 ocf:kingbase:kingbase \
    params sys_ctl="/home/kingbase/V8/Server/bin/sys_ctl" \
    ksql="/home/kingbase/V8/Server/bin/ksql" \
    sys_isready="/home/kingbase/V8/Server/bin/sys_isready" \
    kb_data="/sharedata/data1/data" \
    kb_dba="kingbase" kb_host="0.0.0.0" \
    kb_user="system" \
    kb_port="36321" \
    kb_libs="/home/kingbase/V8/Server/lib" \
    kb_db="template1" \
    logfile="/home/kingbase/V8/Server/log/kingbase1.log" \
    op start interval="0" timeout="120" \
    op stop interval="0" timeout="120" \
    op monitor interval="9s" timeout="30" \
    meta failure-timeout=5min
  1. 执行如下命令,添加另一个分库资源,需要修改相应的/sharedata/data2/data/kingbase.conf中的port为36322

crm configure primitive DB2 ocf:kingbase:kingbase \
    params sys_ctl="/home/kingbase/V8/Server/bin/sys_ctl" \
    ksql="/home/kingbase/V8/Server/bin/ksql" \
    sys_isready="/home/kingbase/V8/Server/bin/sys_isready" \
    kb_data="/sharedata/data2/data" \
    kb_dba="kingbase" kb_host="0.0.0.0" \
    kb_user="system" \
    kb_port="36322" \
    kb_libs="/home/kingbase/V8/Server/lib" \
    kb_db="template1" \
    logfile="/home/kingbase/V8/Server/log/kingbase2.log" \
    op start interval="0" timeout="120" \
    op stop interval="0" timeout="120" \
    op monitor interval="9s" timeout="30" \
    meta failure-timeout=5min
  1. 执行如下命令,创建DB1组资源

crm configure group DB1_GROUP FIP1 FILESYSTEM1 DB1
  1. 执行如下命令,创建DB2组资源

crm configure group DB2_GROUP FIP2 FILESYSTEM2 DB2
  1. 添加DB1 location约束,多个节点,最好分数不一样

crm configure location DB1-on-node1 DB1_GROUP 1000: node1
crm configure location DB1-on-node2 DB1_GROUP 800: node2
  1. 添加DB2 location约束,为了达到负载均衡,DB2资源的在各个节点的分数要和VIP2正好相反。

crm configure location DB2-on-node1 DB2_GROUP 800: node1
crm configure location DB2-on-node2 DB2_GROUP 1000: node2
  1. 执行如下命令,创建资源约束

crm configure colocation cluster-colo1 inf: DB1_GROUP CLONE-PINGD
crm configure colocation cluster-colo2 inf: DB2_GROUP CLONE-PINGD
  1. 设置资源保留在原节点的分数,如果考虑高可用性,即重启节点,不对资源产生迁移,需确保location约束的分数+该分数都大于最大的location得到的分数,如果考虑性能,即资源负载问题,那么需要将该值设置的越小越好。

crm configure rsc_defaults resource-stickiness=500

今天的文章金仓数据库怎么用_海量数据库vastbase分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:http://bianchenghao.cn/76496.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注