一、操作系统基础环境配置
1.1 配置本地 yum 仓库(每个节点都需要执行)
[root@pacemaker-node1 ~]# mount /mnt/rhel-server-7.4-x86_64-dvd.iso /mnt/yum
[root@pacemaker-node1 ~]# cat /etc/yum.repos.d/yum.repo
[base]
name=base
enabled=1
gpgcheck=0
baseurl=file:///mnt/yum
[HA]
name=HA
enabled=1
gpgcheck=0
baseurl=file:///mnt/yum/addons/HighAvailability
[root@pacemaker-node1 ~]# yum repolist
Loaded plugins: langpacks
repo id repo name status
HA HA 35
base base 4,986
repolist: 5,021
1.2 配置主机间解析(每个节点都需要执行)
[root@pacemaker-node1 ~]# cat /etc/hosts
192.168.0.100 pacemaker-node1
192.168.0.101 pacemaker-node2
1.3 配置节点间互信(每个节点都需执行)
# ssh-keygen -t dsa -f ~/.ssh/id_dsa -N ""
# ssh-copy-id node1
# ssh-copy-id node2
二、安装并配置 drbd 环境
2.1 准备磁盘及 drbd 软件(每个节点都需具备物理环境)
[root@pacemaker-node1 ~]# lsblk
[root@pacemaker-node1 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 136.8G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 118G 0 part
│ ├─rhel-root 253:0 0 50G 0 lvm /
│ ├─rhel-swap 253:1 0 8G 0 lvm [SWAP]
│ └─rhel-home 253:2 0 60G 0 lvm /home
└─sda3 8:3 0 5G 0 part
└─drbd0 147:0 0 5G 0 disk
2.2 安装并配置 drbd 基础环境(每个节点都需执行)
[root@pacemaker-node1 ~]# ls /opt/
drbd84-utils-8.9.1-1.el7.elrepo.x86_64.rpm kmod-drbd84-8.4.10-1_2.el7_4.elrepo.x86_64.rpm
[root@pacemaker-node1 ~]# rpm -ivh /opt/drbd84-utils-8.9.1-1.el7.elrepo.x86_64.rpm /opt/kmod-drbd84-8.4.10-1_2.el7_4.elrepo.x86_64.rpm
[root@pacemaker-node1 ~]# cp /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.conf.bak
[root@pacemaker-node1 ~]# vi /etc/drbd.d/global_common.conf
[root@pacemaker-node1 ~]# cat /etc/drbd.d/global_common.conf
global {
usage-count yes;
}
common {
protocol C;
}
resource mysql {
on pacemaker-node1 {
device /dev/drbd0;
disk /dev/sda3;
address 192.168.0.100:7789;
meta-disk internal;
}
on pacemaker-node2 {
device /dev/drbd0;
disk /dev/sda3;
address 192.168.0.101:7789;
meta-disk internal;
}
}
2.3 格式化 drbd 磁盘,并启动服务(每个节点都需执行)
[root@pacemaker-node1 ~]# dd if=/dev/zero bs=1M count=1 of=/dev/sdb; sync (此举仅是为了避免磁盘不干净而导致报错)
[root@pacemaker-node1 ~]# drbdadm create-md mysql
[root@pacemaker-node1 ~]# systemctl enable drbd;systemctl start drbd
2.4 在某一节点确认 drbd 的正确状态
[root@pacemaker-node1 ~]# cat /proc/drbd
version: 8.4.10-1 (api:1/proto:86-101)
GIT-hash: a4d5de01fffd7e4cde48a080e2c686f9e8cebf4c build by mockbuild@, 2017-09-15 14:23:22
0: cs:Connected ro:Secondary/Secondary ds:Inconsistent/Inconsistent C r-----
ns:0 nr:0 dw:0 dr:0 al:8 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:20970844
2.5 设置 node1 节点为主节点,后台进程会开始进行数据同步,需要等待数据同步完成
[root@pacemaker-node1 ~]# drbdsetup /dev/drbd0 primary --o (设置本机为主节点)
[root@pacemaker-node1 ~]# drbd-overview
0:mysql/0 SyncSource Primary/Secondary UpToDate/Inconsistent
[>....................] sync'ed: 2.4% (19996/20476)M
[root@pacemaker-node1 ~]# drbd-overview (数据同步完成)
0:mysql/0 Connected Primary/Secondary UpToDate/UpToDate
2.6 在 drbd 的主节点格式化磁盘文件系统,并进行挂载测试
[root@pacemaker-node1 ~]# mkfs.xfs /dev/drbd0
[root@pacemaker-node1 ~]# mkdir /mysql (两个节点都需要执行)
[root@pacemaker-node1 ~]# mount /dev/drbd0 /mysql/
三、安装并配置 Mariadb 数据库
3.1 安装并配置 mariadb 数据库(两个节点都需要执行)
[root@pacemaker-node1 ~]# yum install