部署DCS
根据此部分内容对各DCS节点进行部署,注意需使用root用户操作。
DCS节点
DCS各节点列表如下:
节点名称 | IP | 默认端口 |
---|---|---|
DCS节点1(数据库主节点) | 192.xx.xx.1 | 2379、2380 |
DCS节点2(数据库备节点) | 192.xx.xx.2 | 2379、2380 |
DCS节点3(仲裁节点) | 192.xx.xx.3 | 2379、2380 |
前提条件
设置各节点主机名称。
步骤1 分别在各节点执行:
hostnamectl set-hostname vdb1 #在数据库主节点192.xx.xx.1下执行 hostnamectl set-hostname vdb2 #在数据库备节点192.xx.xx.2下执行 hostnamectl set-hostname dcs #在仲裁节点192.xx.xx.3下执行
步骤2 设置各节点/etc/hosts。
vi /etc/hosts 192.xx.xx.1 vdb1 192.xx.xx.2 vdb2 192.xx.xx.3 dcs
防火墙设置
关闭防火墙,或开启DCS端口2379、2380。详见防火墙配置。
设置时间同步。
设置各数据库节点时间和时间同步,使集群各节点保持时间同步。详见时间同步配置。
安装DCS
上传DCS安装包,解压即可。并将dcs、dcsctl可执行文件拷贝至/usr/bin目录下。
tar zxvf DCS_VastbaseG100_x86_V1.0_2022012711.tar.gz
(或unzip DCS_VastbaseG100_x86_V1.0_2022012711.zip)
cd DCS_VastbaseG100_x86_V1.0_2022012711
chmod +x dcs*
cp dcs* /usr/bin
编辑DCS配置文件
新增编辑DCS配置文件。
mkdir -p /usr/local/dcs/
cd /usr/local/dcs/
vi dcs.conf
3个DCS节点的配置内容有差异,如下所示,选择节点对应的配置。
其中192.xx.xx.1节点配置如下:
name: dcs01 data-dir: /usr/local/dcs/dcs01.dcs initial-advertise-peer-urls: http://192.xx.xx.1:2380 listen-peer-urls: http://192.xx.xx.1:2380 listen-client-urls: http://192.xx.xx.1:2379,http://127.0.0.1:2379 advertise-client-urls: http://192.xx.xx.1:2379 initial-cluster-token: dcs-cluster initial-cluster: dcs01=http://192.xx.xx.1:2380,dcs02=http://192.xx.xx.2:2380,dcs03=http://192.xx.xx.3:2380 enable-v2: true initial-cluster-state: new
其中192.xx.xx.2节点配置如下:
name: dcs02 data-dir: /usr/local/dcs/dcs02.dcs initial-advertise-peer-urls: http://192.xx.xx.2:2380 listen-peer-urls: http://192.xx.xx.2:2380 listen-client-urls: http://192.xx.xx.2:2379,http://127.0.0.1:2379 advertise-client-urls: http://192.xx.xx.2:2379 initial-cluster-token: dcs-cluster initial-cluster: dcs01=http://192.xx.xx.1:2380,dcs02=http://192.xx.xx.2:2380,dcs03=http://192.xx.xx.3:2380 enable-v2: true initial-cluster-state: new
其中192.xx.xx.3节点配置如下:
name: dcs03 data-dir: /usr/local/dcs/dcs03.dcs initial-advertise-peer-urls: http://192.xx.xx.3:2380 listen-peer-urls: http://192.xx.xx.3:2380 listen-client-urls: http://192.xx.xx.3:2379,http://127.0.0.1:2379 advertise-client-urls: http://192.xx.xx.3:2379 initial-cluster-token: dcs-cluster initial-cluster: dcs01=http://192.xx.xx.1:2380,dcs02=http://192.xx.xx.2:2380,dcs03=http://192.xx.xx.3:2380 enable-v2: true initial-cluster-state: new
配置DCS服务
步骤1 配置DCS服务,新增配置文件/usr/lib/systemd/system/dcs.service。
在凝思系统下,配置文件路径为/lib/systemd/system/dcs.service。
x86环境需用
#
注释Environment="ETCD_UNSUPPORTED_ARCH=arm64"
语句。vi /usr/lib/systemd/system/dcs.service [Unit] Description=Vastbase DCS server daemon After=network.target [Install] WantedBy=multi-user.target [Service] Type=notify Environment="ETCD_UNSUPPORTED_ARCH=arm64" #Just for ARM ExecStart=/usr/bin/dcs --config-file /usr/local/dcs/dcs.conf Restart=no
其中关键配置项含义如下:
After:指定DCS服务在network服务启动成功后启动。实际生产环境往往部署DCS集群,依赖网络。
ExecStart:服务器的启动命令。这里假设DCS安装在/usr/local/bin目录下。
--config-file用来指定DCS启动时的配置文件,这里假设配置文件在/usr/local/dcs目录下。对应DCS配置这一步骤新增的配置文件。也可以后跟
$CONFIG_FILE
,是EnvironmentFile中定义的一个环境变量,用来指定DCS启动时的配置文件,这里假设配置文件在/usr/local/dcs目录下。步骤2 保存配置文件后执行:
systemctl daemon-reload
启动DCS服务
步骤1 各节点需在短时间内逐次启动DCS,启动命令如下:
systemctl start dcs
dcsctl cluster-health dcsctl member list
步骤3 将dcs设为开机启动。
systemctl enable dcs
至此,DCS部署完成。