2. HeartBeat安装与配置(同时在主备上操作)
1.) 安装heartbeat
[root@mfs-master ~]# yum -y install libnet
[root@mfs-master ~]# yum -y install heartbeat-devel
[root@mfs-master ~]# yum -y install heartbeat-ldirectord
[root@mfs-master ~]# yum -y install heartbeat
2.)创建ha.cf
[root@mfs-master ~]# cat /etc/ha.d/ha.cf
logfile /var/log/ha.log debugfile /var/log/ha-debug bcast eth1 keepalive 2 warntime 10 deadtime 30 initdead 120 hopfudge 1 udpport 694 auto_failback on node mfs-master node mfs-bak
3.)配置心跳的加密方式:authkeys
[root@mfs-master ~]# cat >> /etc/ha.d/authkeys << EOF
auth 1
1 crc
EOF
再将authkeys 权限给为600
[root@mfs-master ~]chmod 600 /etc/ha.d/authkeys
4.)配置haresources
[root@mfs-master ~]# cat >> /etc/ha.d/haresources << EOF
mfs-master Initdrbd mfsmaster 192.168.8.210
EOF
这个文件中各字段的功能说明:
第一个字段:是主机名,是uname -a得到的
第二个字段:作用是执行当前的脚本命令此脚本可以定义在/etc/init.d/或/etc/ha.d/resource.d,此处我定义了一个名叫Initdrbd 的脚本命令,具体的见下面演示。
第三个字段:作用定义启动mfsmaster进程,必须在/etc/init.d/或/etc/ha.d/resource.d能找到的可执行的脚本文件。
第四个字段:作用是启动虚拟IP
5.) 创建Initdrbd脚本
[root@mfs-master ~]# cd /etc/ha.d/resource.d/
[root@mfs-master ~]# cat Initdrbd
#!/bin/sh unset LC_ALL; export LC_ALL unset LANGUAGE; export LANGUAGE prefix=/usr exec_prefix=/usr . /etc/ha.d/shellfuncs case "$1" in 'start') drbdadm primary r0 mount /dev/drbd1 /data ;; 'stop') umount /data drbdadm secondary r0 ;; 'restart') ;; *) echo "Usage: $0 { start | stop | restart }" ;; esac exit 0[root@mfs-master ~]# chmod +x Initdrbd
6.)启动heartbeat
[root@mfs-master ~]# /etc/init.d/heartbeat start
或
[root@mfs-master ~]# service heartbeat start
过会我们来ping下虚拟IP
[root@mfs-master ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:0c:29:d8:bc:3e brd ff:ff:ff:ff:ff:ff
inet 192.168.8.200/24 brd 192.168.8.255 scope global eth0
inet 192.168.8.210/24 brd 192.168.8.255 scope global secondary eth0:0
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:0c:29:d8:bc:48 brd ff:ff:ff:ff:ff:ff
inet 192.168.125.200/24 brd 192.168.125.255 scope global eth1
[root@mfs-master ~]# ping 192.168.8.210
要是能够PING通,说明配置成功!
[root@mfs-master ~]# tail -f /var/log/ha.log
3.MFS元数据服务器安装配置(主备操作一样)
切忌:用户的uid和gid必须两台主备机一样,否则切换之后,起不来!!!!!
1.)安装mfs
[root@mfs-master ~]# wget
[root@mfs-master ~]# groupadd -g 1000 mfs
[root@mfs-master ~]# useradd -u 1000 -g mfs -s /sbin/nologin mfs
[root@mfs-master ~]# tar zxf mfs-1.6.20-2.tar.gz
[root@mfs-master ~]# cd mfs-1.6.20-2
[root@mfs-master mfs-1.6.20-2]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --disable-mfschunkserver --disable-mfsmount
[root@mfs-master mfs-1.6.20-2]# make;make install
[root@mfs-master mfs-1.6.20-2]# chown -R mfs.mfs /usr/local/mfs
2.)创建配置文件
[root@mfs-master ~]# cd /usr/local/mfs/etc
[root@mfs-master etc]# cp mfsmaster.cfg.dist mfsmaster.cfg
[root@mfs-master etc]# cat >> mfsexports.cfg<< EOF
192.168.8.0/24 / rw
* . rw
EOF
[root@mfs-master etc]# cd ../var/mfs/
[root@mfs-master etc]# cp metadata.mfs.empty metadata.mfs
3.)设置环境变量
[root@mfs-master ~]# echo "export PATH=$PATH:/usr/local/mfs/sbin" >> /etc/profile
[root@mfs-master ~]# source /etc/profile
4.)启动MFS
[root@mfs-master ~]# mfsmaster start
5.)定制hearbeat的启动文件mfsmaster
[root@mfs-master ~]# cat /etc/init.d/mfsmaster
# chkconfig: 345 91 10 # description: mfs start. . /etc/rc.d/init.d/functions . /etc/sysconfig/network [ "${NETWORKING}" = "no" ] && exit 0 start() { /mnt/usb/sbin/mfsmaster start } stop() { /mnt/usb/sbin/mfsmaster stop } restart() { /mnt/usb/sbin/mfsmaster restart } case "$1" in start) start ;; stop) stop ;; restart) restart ;; *) echo $"Usage: $0 start|stop|restart" exit 1 esac exit 0[root@mfs-master ~]#chmod 755 /etc/init.d/mfsmaster
二.元数据日志服务器metalogger安装与配置
1.)安装mfs
[root@metalogger ~]# wget
[root@metalogger ~]# groupadd -g 1000 mfs
[root@metalogger ~]# useradd -u 1000 -g mfs -s /sbin/nologin mfs
[root@metalogger ~]# tar zxf mfs-1.6.20-2.tar.gz
[root@metalogger ~]# cd mfs-1.6.20-2
[root@metalogger mfs-1.6.20-2]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --disable-mfschunkserver --disable-mfsmount
[root@metalogger mfs-1.6.20-2]# make;make install
[root@metalogger mfs-1.6.20-2]# chown -R mfs.mfs /usr/local/mfs
[root@metalogger mfs-1.6.20-2]# echo "export PATH=$PATH:/usr/local/mfs/sbin" >> /etc/profile
[root@metalogger mfs-1.6.20-2]# source /etc/profile
2.)创建配置文件
[root@metalogger ~]# cd /usr/local/mfs/etc
该服务仅需要一个配置文件,这里我们只需要从模板文件复制一个,然后稍微加以修改即可!
[root@metalogger etc]# cp mfsmetalogger.cfg.dist mfsmetalogger.cfg
[root@metalogger etc]# cat mfsmetalogger.cfg
# WORKING_USER = mfs # WORKING_GROUP = mfs # SYSLOG_IDENT = mfsmetalogger # LOCK_MEMORY = 0 # NICE_LEVEL = -19 # DATA_PATH = /usr/local/mfs/var/mfs # BACK_LOGS = 50 # META_DOWNLOAD_FREQ = 24 # MASTER_RECONNECTION_DELAY = 5 MASTER_HOST = 192.168.8.210 # MASTER_PORT = 9419 # MASTER_TIMEOUT = 60 # deprecated, to be removed in MooseFS 1.7 # LOCK_FILE = /var/run/mfs/mfsmetalogger.lock
这个配置文件,唯一需要修改的地方就是MASTER_HOST,它的值必须是元数据服务器
上由heartbeat生成的虚拟VIP:192.168.8.210
MASTER_HOST = 192.168.8.210
其它选项不加说明,也很容易理解!
3.) 元数据日志服务(metalogger)运行及关闭
[root@metalogger etc]# mfsmetalogger start
关闭服务
[root@metalogger etc]# mfsmetalogger stop