heartbeat 安装支持主用/主用模式吗

正在播放:配合heartbeat调试drbd服务配置
下载学院iPad端缓存视频离线看
购买本课程后即可享受以下服务:
24小时讲师答疑
所有课时永久观看
专属课件资料下载
购买课程返学分
价格:600金币
购买本课程后,就可以记笔记了~~
开始记笔记……
记录时间点
我的笔记同学的笔记
购买本课程后,就可以提问题了~~
向老师提问……
记录时间点
我的问题同学的问题DRBD+Heartbeat&搭建高可用Mysql主备服务器
DRBD+Heartbeat 搭建高可用Mysql主备服务器
环境:RHEL6.1
主服务器:192.168.1.10&&
备服务器:192.168.1.11&&
浮动ip:& 192.168.1.100
1.实验环境控制
a.清除防火墙规则,以及关闭selinux(配置文件/etc/selinux/config
"SELINUX=disabled")
b.修改本机的主机名
主服务器:
[root@master ~]# hostname
[root@master ~]# cat /etc/hosts
127.0.0.1&& localhost
localhost.localdomain localhost4 localhost4.localdomain4
::1&&&&&&&&
localhost localhost.localdomain localhost6
localhost6.localdomain6
192.168.1.10
192.168.1.11
[root@master ~]# cat /etc/sysconfig/network
NETWORKING=yes
&备服务器进行同样的操作,修改主机名为&
2.drbd的安装配置
[root@master soft]# tar xf drbd-8.4.2.tar.gz -C /usr/src/
[root@master soft]# cd /usr/src/drbd-8.4.2/
[root@master drbd-8.4.2]# ./configure --prefix=/usr/local/drbd
--with-utils --with-km --with-udev --with-pacemaker
--with-heartbeat --with-rgmanager --with-bashcompletion
--with-distro=redhat
[root@master drbd-8.4.2]# make &&
make install
[root@master drbd-8.4.2]# modprobe
&----&加载drbd模块
[root@master drbd-8.4.2]# lsmod|grep
&----&检测是否加载模块成功&&
drbd&&&&&&&&&&&&&&&&&
libcrc32c&&&&&&&&&&&&&&&
841& 1 drbd
3.修改主配置文件
[root@master drbd-8.4.2]# cat
/usr/local/etc/drbd.d/global_common.conf
&& &usage-count
minor-count dialog-refresh disable-ip-verification
&& &protocol
B;& #使用协议B
&& &handlers
&pri-on-incon-degr
"/usr/lib/drbd/notify-pri-on-incon-degr.
/usr/lib/drbd/notify-emergency-reboot. echo b &
/proc/sysrq- reboot -f";
&pri-lost-after-sb
"/usr/lib/drbd/notify-pri-lost-after-sb.
/usr/lib/drbd/notify-emergency-reboot. echo b &
/proc/sysrq- reboot -f";
&local-io-error "/usr/lib/drbd/notify-io-error.
/usr/lib/drbd/notify-emergency-shutdown. echo o &
/proc/sysrq- halt -f";
&# fence-peer
"/usr/lib/drbd/crm-fence-peer.sh";
& split-brain "/usr/lib/drbd/notify-split-brain.sh
root";& #去掉注释
& out-of-sync "/usr/lib/drbd/notify-out-of-sync.sh
root";& #去掉注释
&# before-resync-target
"/usr/lib/drbd/snapshot-resync-target-lvm.sh -p 15 -- -c
&# after-resync-target
/usr/lib/drbd/unsnapshot-resync-target-lvm.
&& &startup
&# wfc-timeout degr-wfc-timeout
outdated-wfc-timeout wait-after-sb
&& &options
&# cpu-mask on-no-data-accessible
&& &disk {
&# size max-bio-bvecs on-io-error fencing
disk-barrier disk-flushes
&# disk-drain md-flushes resync-rate resync-after
al-extents
&&&&&&&&&&&&&&&
# c-plan-ahead c-delay-target c-fill-target c-max-rate
&&&&&&&&&&&&&&&
# c-min-rate disk-timeout
&on-io-error
&& #添加容错能力
&# protocol timeout max-epoch-size max-buffers
unplug-watermark
&# connect-int ping-int sndbuf-size rcvbuf-size
&# allow-two-primaries cram-hmac-alg shared-secret
after-sb-0pri
&# after-sb-1pri after-sb-2pri always-asbp
rr-conflict
&# ping-timeout data-integrity-alg tcp-cork
on-congestion
&# congestion-fill congestion-extents csums-alg
verify-alg
&# use-rle
&after-sb-0
&after-sb-1
&after-sb-2
&cram-hmac-alg sha1;
&shared-secret "aixocm";
&& &syncer
&rate 40M;&&
#数据同步时最大速度,如不定义,默认1M
resource r0 {
&#定义一个资源为r0
&#定义一台主机
&& &device
/dev/drbd0;
&& &address
192.168.1.10:7788;
/dev/sdb1;
&& &meta-disk
&#表示元数据与数据存放于同一块磁盘上
&& &device
/dev/drbd0;
&& &address
192.168.1.11:7788;
/dev/sdb1;
&& &meta-disk
4.创建drbd0设备
[root@master drbd-8.4.2]# drbdadm create-md r0
[root@master drbd-8.4.2]# cp scripts/drbd
/etc/init.d/&&
---&拷贝启动脚本
[root@master drbd-8.4.2]# /etc/init.d/drbd start
&----&启动服务
至此,基本配置完成,备服务器配置与主服务器进行同样操作!!
5.查看drbd状态
[root@master drbd-8.4.2]# cat /proc/drbd
version: 8.4.2 (api:1/proto:86-101)
GIT-hash: 7ad5f850ddcadc3ddc build by
root@localhost.localdomain,
&0: cs:Connected ro:Secondary/Secondary
ds:UpToDate/UpToDate B r-----
&&& ns:0 nr:7008
dw:7008 dr:0 al:0 bm:7 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
&如果出现Secondary/Secondary则表示正常,出现Unknown则查看iptables和selinux&
6.定义主服务器
[root@master drbd-8.4.2]# drbdadm -- --overwrite-data-of-peer
primary all
&或者shell&drbdsetup /dev/drbd0 primary
[root@master drbd-8.4.2]# cat /proc/drbd
version: 8.4.2 (api:1/proto:86-101)
GIT-hash: 7ad5f850ddcadc3ddc build by
root@localhost.localdomain,
&0: cs:Connected ro:Primary/Secondary
ds:UpToDate/UpToDate B r-----
&&& ns:0 nr:7008
dw:7008 dr:672 al:0 bm:7 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
&如果出现Primary/Secondary则表示定义主服务器正常,同时出现
ds:UpToDate/UpToDate则表示数据同步完成&
7.格式化并挂载drbd设备(只能在主服务器上进行操作)
[root@master drbd-8.4.2]# mkfs.ext4 /dev/drbd0
[root@master drbd-8.4.2]# mkdir -p /database
[root@master drbd-8.4.2]# mount /dev/drbd0 /database/
--&挂载到数据库的datadir
8.数据库初始化【mysql5.6版本】
[root@master scripts]# pwd
/usr/local/mysql56/scripts
[root@master scripts]# ./mysql_install_db --datadir=/database
--basedir=/usr/local/mysql56/ --user=mysql
[root@master scripts]# service mysql56
&---&启动数据库
Starting MySQL.... SUCCESS!
&每一次设备挂载完成后,数据库均需要进行初始化,以便数据同步传输&
登录数据库,在数据库中进行创建数据库,创建表,添加数据等修改操作,进行测试。
数据库操作完毕后,先stop数据库,在将主服务器stop,将备服务器设备为主,然后查看数据是否同步,在备服务器上进行操作验证。
a.将备服务器提升为主服务器,否则不能挂载drbd0
[root@slave ~]# cat /proc/drbd
version: 8.4.2 (api:1/proto:86-101)
GIT-hash: 7ad5f850ddcadc3ddc build by
root@localhost.localdomain,
&0: cs:WFConnection ro:Secondary/Unknown
ds:UpToDate/DUnknown B 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:0
&主服务器stop后,在备服务器上出现Secondary/Unknown&
[root@slave ~]# drbdsetup /dev/drbd0 primary
---&提升主服务器
[root@slave ~]# cat /proc/drbd
version: 8.4.2 (api:1/proto:86-101)
GIT-hash: 7ad5f850ddcadc3ddc build by
root@localhost.localdomain,
&0: cs:WFConnection ro:Primary/Unknown
ds:UpToDate/DUnknown B r-----
&&& ns:0 nr:0
dw:0 dr:672 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
&提升主服务器后,出现Primary/Unknown&
b.挂载设备,初始化数据库
[root@slave ~]# mount /dev/drbd0 /database/
root@slave scripts]# pwd
/usr/local/mysql56/scripts
[root@slave scripts]# ./mysql_install_db --datadir=/database
--basedir=/usr/local/mysql56/ --user=mysql
c.重新启动数据库
[root@slave scripts]# service mysql56
&---&启动数据库
Starting MySQL.... SUCCESS!
登录数据库进行验证,如果刚才在主服务器的数据库上进行的操作在从服务器上显示,说明主备间数据已经同步,至此,主备服务器的数据库实现,至于Heartbeat的配置后期补上。。。
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

我要回帖

更多关于 heartbeat mysql 的文章

 

随机推荐