************************************************ ****
DRBD-Download-Adresse: http://oss.linbit.com/drbd/
**** ******************************************
2Grundlegende Systemkonfiguration
Master und Slave sind wie folgt konfiguriert.
1. Konfigurieren Sie die Datei /etc/hosts
~]# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.0.152 master
192.168.0.153 slave
Nach dem Login kopieren
2. Deaktivieren Sie Selinux:
# sed -i "7s/enforcing/disabled/" /etc/selinux/config
Nach dem Login kopieren
3. Deaktivieren oder deinstallieren Sie iptables, hier werden wir iptables deaktivieren:
1) Schalten Sie die Firewall aus-----Dienst iptables stoppt
2) Starten Sie die Firewall-----service iptables start
3) Starten Sie die Firewall neu-----service iptables restart
4) Überprüfen Sie den Firewall-Status--service iptables status
5 ) Schließen Sie die Firewall dauerhaft – -chkconfig iptables off
6) Aktivieren Sie --chkconfig iptables on
4. Führen Sie yum update aus, um den Kernel zu aktualisieren:
# yum update
Loaded plugins: fastestmirror, presto
Loading mirror speeds from cached hostfile
* base: mirrors.btte.NET
………
Nach dem Login kopieren
5. Formatieren Sie /dev/sdb
#fdisk -l
Nach dem Login kopieren
#fdisk /dev/sdb
Nach dem Login kopieren
6. Starten Sie neu
reboot
Nach dem Login kopieren
3. Installieren Sie DRBD 8.4.2 (der aktive und der Standby-Knoten haben die gleiche Konfiguration)
1. Installieren Sie die DRBD-Kompilierungsumgebung auf dem aktiven und Standby-Knoten:
# yum -y install gcc flex wget make kernel-devel kernel-headers Git libxslt rpm-build automake autoconf
Nach dem Login kopieren
2. Laden Sie die DRBD-Installationsdatei herunter
# wget http://oss.linbit.com/drbd /8.4/drbd-8.4.2.tar.gz
3. Entpacken und installieren Sie die DRBD-Datei
#tar -zvxf drbd-8.4.2.tar.gz
# cd drbd-8.4.2
drbd-8.4.2]# ./configure --prefix=/usr/local/drbd --with-km
drbd-8.4.2]# make KDIR=/usr/src/kernels/`uname -r`/
drbd-8.4.2]# make install
Nach dem Login kopieren
drbd-8.4.2]# cd drbd
drbd-8.4.2]# make clean
drbd-8.4.2]# make KDIR=/usr/src/kernels/`uname -r`/
drbd-8.4.2]# cp drbd.ko /lib/modules/`uname -r`/kernel/lib/
drbd-8.4.2]# depmod #创建模块依赖关系的列表
drbd-8.4.2]# cp /usr/local/drbd/etc/rc.d/init.d/drbd /etc/rc.d/init.d/
drbd-8.4.2]# chkconfig --add drbd
drbd-8.4.2]# chkconfig drbd on
Nach dem Login kopieren
4. DRBD Konfigurationsdatei <🎜 definieren > (die aktiven und Backup-Knoten haben die gleiche Konfiguration)
~]# cp /usr/local/drbd/etc/drbd.d/global_common.conf /usr/local/drbd/etc/drbd.d/global_common-bak.conf
~]# vi /usr/local/drbd/etc/drbd.d/global_common.conf
Nach dem Login kopieren
global {
usage-count yes; # 是否参加DRBD使用者统计.默认是yes
# minor-count dialog-refresh disable-ip-verification
}
common {
handlers {
pri-on-incon-degr "/usr/lib/drbd/notify-pri-on-incon-degr.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f";
pri-lost-after-sb "/usr/lib/drbd/notify-pri-lost-after-sb.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f";
local-io-error "/usr/lib/drbd/notify-io-error.sh; /usr/lib/drbd/notify-emergency-shutdown.sh; echo o > /proc/sysrq-trigger ; halt -f";
}
startup {
wfc-timeout 30;
degr-wfc-timeout 30;
outdated-wfc-timeout 30;
}
options {
# cpu-mask on-no-data-accessible
}
disk {
on-io-error detach;
fencing resource-and-stonith;
resync-rate 50M; # 设置主备节点同步时的网络速率最大值,单位是字节.
}
net {
protocol C; # 使用协议C.表示收到远程主机的写入确认后,则认为写入完成.
cram-hmac-alg sha1; # 设置主备机之间通信使用的信息算法.
shared-secret "123456";
}
}
Nach dem Login kopieren
~]# vi /usr/local/drbd/etc/drbd.d/Redis.res
Nach dem Login kopieren
resource redis{
on master {
device /dev/drbd1; #逻辑设备的路径
disk /dev/sdb; #物理设备
address 192.168.0.152:7788; #IP和监听端口
meta-disk internal;
}
on slave {
device /dev/drbd1;
disk /dev/sdb;
address 192.168.0.153:7788;
meta-disk internal;
}
}
Nach dem Login kopieren
~]# modprobe drbd #载入DRBD模块
~]# lsmod |grep drbd #确认DRBD模块载入成功
Nach dem Login kopieren
drbd 314184 0
libcrc32c 1246 1 drbd
Nach dem Login kopieren
~]# drbdadm create-md redis #创建元数据
Nach dem Login kopieren
--== Thank you for participating in the global usage survey ==--
The server's response is:
you are the 4070th user to install this version
md_offset 10737414144
al_offset 10737381376
bm_offset 10737053696
Found some data
==> This might destroy existing data! <==
Do you want to proceed?
[need to type 'yes' to confirm] yes
Writing meta data...
initializing activity log
NOT initializing bitmap
New drbd meta data block successfully created.
success
Nach dem Login kopieren
~]# mkdir -p /usr/local/drbd/var/run/drbd
~]# drbdadm up redis #启用资源
Nach dem Login kopieren
Device '1' is configured!
Command 'drbdmeta 1 v08 /dev/sdb internal apply-al' terminated with exit code 20
Nach dem Login kopieren
~]# cat /proc/drbd #查看DRBD状态
Nach dem Login kopieren
version: 8.4.2 (api:1/proto:86-101)
GIT-hash: 7ad5f850d711223713d6dcadc3dd48860321070c build by , 2012-12-31 20:26:02
1: cs:Connected ro:Secondary/Secondary ds:Inconsistent/Inconsistent C r-----
ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:10485404
Nach dem Login kopieren
~]# mkdir /drbd #为DRBD分区挂载创建路径
Nach dem Login kopieren
******************************* ******************** ****************************** ********************* ******************
5. Legen Sie den Masterknoten fest (Masterkonfiguration)
~]# drbdadm primary --force redis #设置master角色为Primary
~]# mkfs.ext4 /dev/drbd1 #格式化drbd1(逻辑设备)
Nach dem Login kopieren
mke2fs 1.41.12 (17-May-2010)
文件系统标签=
操作系统:Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
655360 inodes, 2621351 blocks
131067 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=2684354560
80 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
正在写入inode表: 完成
Creating journal (32768 blocks):
Writing superblocks and filesystem accounting information: 完成
This filesystem will be automatically checked every 36 mounts or 180 days, whichever comes first.
Use tune2fs -c or -i to override.
Nach dem Login kopieren
~]# mount /dev/drbd1 /drbd #挂载DRBD分区
~]# df -h
Nach dem Login kopieren
6. Synchronisationstest: 文件系统 容量 已用 可用 已用%% 挂载点
/dev/sda3 8.7G 1.1G 7.3G 13% /
tmpfs 497M 0 497M 0% /dev/shm
/dev/sda1 194M 64M 120M 35% /boot
/dev/drbd1 9.9G 151M 9.2G 2% /drbd
Nach dem Login kopieren
Master-Betrieb:
~]# ls
anaconda-ks.cfg drbd-8.4.2 drbd-8.4.2.tar.gz install.log install.log.syslog
~]# cp drbd-8.4.2.tar.gz /drbd
~]# ll /drbd
总用量 676
-rw-r--r-- 1 root root 675803 10月 15 21:14 drbd-8.4.2.tar.gz
drwx------ 2 root root 16384 10月 15 21:07 lost+found
~]# umount /dev/drbd1 #卸载挂载的DRBD分区
~]# drbdadm secondary redis #主节点角色降级
Nach dem Login kopieren
Slave-Betrieb:
~]# drbdadm primary redis #备节点设置成primary角色
~]# mount /dev/drbd1 /drbd #备节点挂载DRBD分区
~]# df -h
Nach dem Login kopieren
Test abgeschlossen~! 文件系统 容量 已用 可用 已用%% 挂载点
/dev/sda3 8.7G 1.1G 7.3G 13% /
tmpfs 497M 0 497M 0% /dev/shm
/dev/sda1 194M 64M 120M 35% /boot
/dev/drbd1 9.9G 152M 9.2G 2% /drbd
Nach dem Login kopieren
~]# ll /drbd
总用量 676
-rw-r--r-- 1 root root 675803 10月 15 21:14 drbd-8.4.2.tar.gz
drwx------ 2 root root 16384 10月 15 21:07 lost+found
Nach dem Login kopieren