日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

DRBD+keepalived+LAMP+discuz

發(fā)布時(shí)間:2025/3/15 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 DRBD+keepalived+LAMP+discuz 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

DRBD(Distributed Replicated Block Device)是一個(gè)基于塊設(shè)備級(jí)別在遠(yuǎn)程服務(wù)器直接同步和鏡像數(shù)據(jù)的開源軟件,類似于RAID1數(shù)據(jù)鏡像,通常配合keepalivedheartbeatHA軟件來實(shí)現(xiàn)高可用性。

DRBD是一種塊設(shè)備,可以被用于高可用(HA)之中.它類似于一個(gè)網(wǎng)絡(luò)RAID-1功能,當(dāng)你將數(shù)據(jù)寫入本地文件系統(tǒng)時(shí),數(shù)據(jù)還將會(huì)被發(fā)送到網(wǎng)絡(luò)中另一臺(tái)主機(jī)上.以相同的形式記錄在一個(gè)文件系統(tǒng)中。

本地(master)與遠(yuǎn)程主機(jī)(backup)的保證實(shí)時(shí)同步,如果本地系統(tǒng)出現(xiàn)故障時(shí),遠(yuǎn)程主機(jī)上還會(huì)保留有一份相同的數(shù)據(jù),可以繼續(xù)使用.在高可用(HA)中使用DRBD功能,可以代替使用一個(gè)共享盤陣.因?yàn)閿?shù)據(jù)同時(shí)存在于本地主機(jī)和遠(yuǎn)程主機(jī)上,切換時(shí),遠(yuǎn)程主機(jī)只要使用它上面的那份備份數(shù)據(jù)。

通過本次課程的學(xué)習(xí),大家可以熟練構(gòu)建企業(yè)級(jí)MySQL+DRBD+Keepalived高性能高可用架構(gòu),滿足企業(yè)網(wǎng)站高效的訪問,有突發(fā)故障及時(shí)切換。

?MySQL+DRBD+Keepalived企業(yè)實(shí)戰(zhàn)

MASTER:192.168.77.133
SLAVE:192.168.77.166
VIP:192.168.77.189


初始化配置

1)?128129兩臺(tái)服務(wù)器/etc/hosts里面都添加如下配置:


192.168.77.133? node1
192.168.77.166? node2

每臺(tái)單獨(dú)劃一個(gè)分區(qū),我這里直接各增加一個(gè)大小相同的磁盤
兩臺(tái)服務(wù)器分別添加一塊設(shè)備,用于DRBD主設(shè)備存儲(chǔ),我這里為/dev/sdb 20G硬盤;
執(zhí)行如下命令初始化:

1 mkfs.ext4?/dev/sdb?;dd?if=/dev/zero?of=/dev/sdb?bs=1M?count=1;sync


DRBD安裝配置
Yum方式安裝:在兩臺(tái)機(jī)器上安裝

1 2 3 rpm?-Uvh?http://www.elrepo.org/elrepo-release-6-6.el6.elrepo.noarch.rpm? yum?-y?install?drbd83*?kmod-drbd83?;?modprobe??drbd
1 2 3 4 5 lsmod?|?grep?drbd???查看drbd模塊 [root@192_168_77_133?~]#?modprobe??drbd FATAL:?Module?drbd?not?found. 需要重啟系統(tǒng)

修改配置文件/etc/drbd.conf兩臺(tái)配置文件一樣

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 global?{ ????usage-count?yes; } common?{ syncer?{?rate?100M;?}????#同步每s的速率 } resource?r0?{????????????#節(jié)點(diǎn)r0 ?protocol?C; ?startup?{ ?} ?disk?{ ?on-io-error?detach;???????#錯(cuò)誤的信息 ?#size?1G;?????????????????#同步的磁盤空間 ?} ?net?{?????????????????????#網(wǎng)絡(luò)節(jié)點(diǎn)node1,node2 ?} ?on?node1?{?????????????????# ?device?/dev/drbd0;?????????#塊設(shè)備 ?disk?/dev/sdb; ?address?192.168.77.133:7898; ?meta-disk?internal; ?} ?on?node2?{ ?device?/dev/drbd0; ?disk?/dev/sdb; ?address?192.168.77.166:7898; ?meta-disk?internal; ?} }

配置修改完畢后執(zhí)行如下命令初始化:

1 drbdadm?create-md??r0??;/etc/init.d/drbd?restart?;/etc/init.d/drbd?status

這里主要如果報(bào)錯(cuò)主機(jī)名問題需要修改主機(jī)名為node1、node2


兩臺(tái)都啟動(dòng)后查看狀態(tài)會(huì)發(fā)現(xiàn)兩臺(tái)都是secondary備用狀態(tài)表示目前兩臺(tái)都為從,我們需要設(shè)置node1為master,命令如下:

1 2 3 4 5 6 7 8 9 [root@node1?~]#?drbdadm??--??--overwrite-data-of-peer?primary?all [root@node1?~]#?/etc/init.d/drbd?status drbd?driver?loaded?OK;?device?status: version:?8.3.16?(api:88/proto:86-97) GIT-hash:?a798fa7e274428a357657fb52f0ecf40192c1985?build?by?phil@Build32R6,?2014-11-24?14:49:06 m:res??cs??????????ro?????????????????ds?????????????????????p??mounted??fstype ...????sync'ed:????44.4%??????????????(586368/1048576)K 0:r0???SyncSource??Primary/Secondary??UpToDate/Inconsistent??C

查看為主后初始化塊然后掛載:

1 2 3 4 5 6 7 8 9 10 11 [root@node1?~]#?mkfs.ext4??/dev/drbd0 [root@node1?~]#?mkdir??/app??;mount?/dev/drbd0??/app [root@node1?~]#?df?-h???????#查看app已經(jīng)掛載上 Filesystem??????Size??Used?Avail?Use%?Mounted?on /dev/sda5???????3.1G??2.8G??138M??96%?/ tmpfs???????????442M?????0??442M???0%?/dev/shm /dev/sda1???????190M???40M??141M??23%?/boot /dev/sda2????????15G???55M???14G???1%?/data /dev/drbd0???????20G???44M???19G???1%?/app

注意只需要在主上格式化drbd0然后掛載app即可


LAMP:我這里便于實(shí)驗(yàn)采用yum安裝方式

1 yum?install?http?mysql?mysql-devel?mysql-server?php?php-mysql?php-devel?-y

停止mysql
nohup cp /var/lib/mysql/* . -a &? 后臺(tái)將mysql數(shù)據(jù)copy到app目錄下面


然后將my.cnf中的數(shù)據(jù)文件路徑改為datadir=/app即可,然后重啟mysql

登錄mysql正常

模擬drbd主down機(jī):

1 [root@node1?app]#?poweroff

在從上查看drbd狀態(tài)還是從:

1 2 3 4 5 6 [root@node2?~]#?/etc/init.d/drbd?status drbd?driver?loaded?OK;?device?status: version:?8.3.16?(api:88/proto:86-97) GIT-hash:?a798fa7e274428a357657fb52f0ecf40192c1985?build?by?phil@Build32R6,?2014-11-24?14:49:06 m:res??cs????????????ro?????????????????ds?????????????????p??mounted??fstype 0:r0???WFConnection??Secondary/Unknown??UpToDate/DUnknown??C

把從設(shè)置為主需要執(zhí)行命令:

1 2 3 4 5 6 7 root@node2?~]#?drbdadm??--??--overwrite-data-of-peer?primary?all [root@node2?~]#?/etc/init.d/drbd?status?????????????????????????? drbd?driver?loaded?OK;?device?status: version:?8.3.16?(api:88/proto:86-97) GIT-hash:?a798fa7e274428a357657fb52f0ecf40192c1985?build?by?phil@Build32R6,?2014-11-24?14:49:06 m:res??cs????????????ro???????????????ds?????????????????p??mounted??fstype 0:r0???WFConnection??Primary/Unknown??UpToDate/DUnknown??C

然后創(chuàng)建一個(gè)掛載點(diǎn)app

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 [root@node2?~]#?mkdir?/app [root@node2?~]#?mount?/dev/drbd0?/app [root@node2?~]#?df?-h Filesystem??????Size??Used?Avail?Use%?Mounted?on /dev/sda2????????29G??2.8G???25G??10%?/ tmpfs???????????442M?????0??442M???0%?/dev/shm /dev/sda1???????190M???40M??141M??22%?/boot /dev/sda5????????48G???73M???46G???1%?/data /dev/drbd0???????20G??106M???19G???1%?/app [root@node2?~]#?cd?/app [root@node2?app]#?ls bbs??????????mysql?????????????mysql-bin.000011??mysql-bin.000022??mysql-bin.000033??mysql-bin.000044 cacti????????mysql-bin.000001??mysql-bin.000012??mysql-bin.000023??mysql-bin.000034??mysql-bin.000045 discuz???????mysql-bin.000002??mysql-bin.000013??mysql-bin.000024??mysql-bin.000035??mysql-bin.index ibdata1??????mysql-bin.000003??mysql-bin.000014??mysql-bin.000025??mysql-bin.000036??nagios ib_logfile0??mysql-bin.000004??mysql-bin.000015??mysql-bin.000026??mysql-bin.000037??nohup.out ib_logfile1??mysql-bin.000005??mysql-bin.000016??mysql-bin.000027??mysql-bin.000038??yuning jfdeu????????mysql-bin.000006??mysql-bin.000017??mysql-bin.000028??mysql-bin.000039 li???????????mysql-bin.000007??mysql-bin.000018??mysql-bin.000029??mysql-bin.000040 lijq?????????mysql-bin.000008??mysql-bin.000019??mysql-bin.000030??mysql-bin.000041 linux????????mysql-bin.000009??mysql-bin.000020??mysql-bin.000031??mysql-bin.000042 lixi?????????mysql-bin.000010??mysql-bin.000021??mysql-bin.000032??mysql-bin.000043

查看會(huì)發(fā)現(xiàn)down機(jī)的node1下的文件都掛載到了node2下面的app下面了,,node2下切記不要格式化,否則數(shù)據(jù)會(huì)丟失

然后修改my.cnf路經(jīng)重啟mysql進(jìn)入數(shù)據(jù)庫(kù),會(huì)看到數(shù)據(jù)都存在


以下為DRBD腦裂手動(dòng)恢復(fù)過程:主down機(jī)后主恢復(fù)后發(fā)生腦裂,,無法通信

將Node1設(shè)置為主節(jié)點(diǎn)并掛載測(cè)試

1 2 3 4 5 6 7 [root@node1?~]#/etc/init.d/mysqld?stop [root@node1?~]#?umount?/app [root@node1?~]#?drbdadm?primary?r0 [root@node1?~]#?mount?/dev/drbd0?/app

將Node2設(shè)置為從節(jié)點(diǎn)并丟棄資源數(shù)據(jù)

1 2 3 [root@node2?~]#?drbdadm?secondary?r0 root@node2?~]#?drbdadm?--?--discard-my-data?connect?r0

在Node1主節(jié)點(diǎn)上手動(dòng)連接資源

1 [root@node1?~]#?drbdadm?connect?r0

查看drbd服務(wù)啟動(dòng)沒,,如果沒啟動(dòng)啟動(dòng)后

1 2 3 4 5 [root@node1?~]#?cat?/proc/drbd? version:?8.3.16?(api:88/proto:86-97) GIT-hash:?a798fa7e274428a357657fb52f0ecf40192c1985?build?by?phil@Build64R6,?2014-11-24?14:51:37 ?0:?cs:Connected?ro:Primary/Secondary?ds:UpToDate/UpToDate?C?r----- ????ns:304?nr:0?dw:548?dr:12866?al:12?bm:15?lo:0?pe:0?ua:0?ap:0?ep:1?wo:f?oos:0

Keepalived配置實(shí)現(xiàn)自動(dòng)切換:

安裝:

1 2 3 4 5 6 7 wget? ./configure;?make?;make?install? 做成系統(tǒng)服務(wù) DIR=/usr/local/?;cp?$DIR/etc/rc.d/init.d/keepalived??/etc/rc.d/init.d/?;?cp$DIR/etc/sysconfig/keepalived?/etc/sysconfig/?; mkdir?-p?/etc/keepalived?;?cp?$DIR/sbin/keepalived?/usr/sbin/

???兩臺(tái)服務(wù)器均安裝keepalived,并進(jìn)行配置,首先在node1(master)上配置,keepalived.conf內(nèi)容如下:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 !?Configuration?File?for?keepalived global_defs?{ ???router_id?LVS_DEVEL } vrrp_script?check_mysql?{ ????????script?"/data/sh/check_mysql.sh" ????????interval?5 ????????} vrrp_instance?VI_1?{ ????state?MASTER ????interface?eth0 ????virtual_router_id?52 ????priority?100 ????advert_int?1 ????authentication?{ ????????auth_type?PASS ????????auth_pass?1111 ????} ????virtual_ipaddress?{ ????????192.168.77.189 ?????????} ????????track_script?{ ????????check_mysql ????????} }

?然后創(chuàng)建check_mysql.sh檢測(cè)腳本,內(nèi)容如下:

1 2 3 4 5 6 7 8 #!/bin/sh A=`ps?-C?mysqld?--no-header?|wc?-l` if [?$A?-eq?0?];then /bin/umount?/app/ drbdadm?secondary?r0 killall?keepalived fi


添加node2backup)上配置,keepalived.conf內(nèi)容如下:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 !?Configuration?File?for?keepalived global_defs?{ ???router_id?LVS_DEVEL } vrrp_sync_group?VI{ group?{ ??????VI_1 } notify_master?/data/sh/master.sh notify_backup?/data/sh/backup.sh } vrrp_instance?VI_1?{ ????state?BACKUP ????interface?eth0 ????virtual_router_id?52 ????priority?90 ????advert_int?1 ????authentication?{ ????????auth_type?PASS ????????auth_pass?1111 ????} ????virtual_ipaddress?{ ????????192.168.77.189 ?????????} }


創(chuàng)建master.sh檢測(cè)腳本,內(nèi)容如下:

1 2 3 4 #!/bin/bash drbdadm?primary?r0 /bin/mount?/dev/drbd0?/app/ /etc/init.d/mysqld?start


創(chuàng)建backup.sh檢測(cè)腳本,內(nèi)容如下:

1 2 3 4 #!/bin/bash /etc/init.d/mysqld?stop /bin/umount?/dev/drbd0 drbdadm?secondary?r0

在主上查看vip:

1 2 3 4 5 6 7 8 9 10 11 12 [root@node1?sh]#?ip?add?list 1:?lo:?<LOOPBACK,UP,LOWER_UP>?mtu?65536?qdisc?noqueue?state?UNKNOWN? ????link/loopback?00:00:00:00:00:00?brd?00:00:00:00:00:00 ????inet?127.0.0.1/8?scope?host?lo ????inet6?::1/128?scope?host? ???????valid_lft?forever?preferred_lft?forever 2:?eth0:?<BROADCAST,MULTICAST,UP,LOWER_UP>?mtu?1500?qdisc?pfifo_fast?state?UNKNOWN?qlen?1000 ????link/ether?00:0c:29:3c:a1:5a?brd?ff:ff:ff:ff:ff:ff ????inet?192.168.77.133/24?brd?192.168.77.255?scope?global?eth0 ????inet?192.168.77.189/32?scope?global?eth0 ????inet6?fe80::20c:29ff:fe3c:a15a/64?scope?link? ???????valid_lft?forever?preferred_lft?forever

模擬主down機(jī):

1 [root@node1?sh]#?poweroff

然后在從上查看,,vip自動(dòng)切換到從上,,切mysql啟動(dòng)磁盤自動(dòng)掛載等


discuz安裝:

省略,前面已安裝多次


主上mysql授權(quán)vip權(quán)限,,注冊(cè)數(shù)據(jù)庫(kù)用vip注冊(cè),,然后用vip訪問測(cè)試,可以訪問


copy一份論壇網(wǎng)站到從上的html目錄下面,模擬主down機(jī),,vip自動(dòng)漂移到從上,然后用vip訪問問得出結(jié)果,網(wǎng)站正常訪問。。。



http://www.2cto.com/os/201306/223108.html

http://www.linuxidc.com/Linux/2013-10/91385.htm

http://myhat.blog.51cto.com/391263/606318/

http://blog.itpub.net/29806344/viewspace-1323086/ ?



本文轉(zhuǎn)自 Anonymous123 51CTO博客,原文鏈接:http://blog.51cto.com/woshitieren/1689445


創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的DRBD+keepalived+LAMP+discuz的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 美女mm131爽爽爽免费动视频 | 激情午夜天 | 日韩精品视频在线播放 | 亚洲狼人天堂 | 精品久久久久一区二区国产 | 91伦理在线| 一区二区三区四区在线播放 | 中文字幕乱码中文乱码777 | 亚洲在线激情 | 韩国成人理伦片免费播放 | 四虎永久在线精品免费网址 | 久久影院一区二区 | 国内自拍偷拍视频 | 少妇av在线播放 | 日韩v | 青青草手机视频在线观看 | 国产香蕉一区二区三区 | brazzers猛女系列| 久久传媒| 综合网在线观看 | 91羞羞网站 | 亚洲一二三区视频 | 法国经典free性复古xxxx | 精品香蕉视频 | 一区二区久久精品66国产精品 | 亚洲一区 | 日本乱轮视频 | 一区二区在线免费 | 亚洲熟女综合色一区二区三区 | 欧洲免费毛片 | 亚洲欧美日韩成人 | 日韩欧美高清在线观看 | 欧美久久久影院 | www久久| 国产一区91精品张津瑜 | 依依成人在线视频 | 性爱视频日本 | 亚洲精品成人区在线观看 | 亚洲成年网站 | 国产999在线 | 黑人玩弄人妻一区二区绿帽子 | 九九视频国产 | 久久99精品久久久久久 | 中文字幕人妻丝袜乱一区三区 | 国产精品国产三级国产传播 | 日韩性生活大片 | 亚洲v国产v欧美v久久久久久 | 淫综合网| 天天操好逼 | 激情av在线 | 天天看片中文字幕 | 精品电影一区二区 | 密臀av一区二区 | 婷婷成人综合网 | 男人天堂成人 | 欧美福利在线 | 手机在线永久免费观看av片 | 精品一区二区三区日韩 | 成年人黄色片网站 | 欧美日韩精品中文字幕 | 伊人青青草 | 久久久久亚洲av片无码 | 超碰个人在线 | caoporm超碰| 日韩欧美有码 | 特级西西444www大精品视频免费看 | 国产哺乳奶水91在线播放 | 亚洲毛片一区二区三区 | 亚洲视频一区二区三区 | 欧美日韩理论 | 日韩网站在线观看 | 丁香网五月天 | 国产情侣在线播放 | 亚洲精品国产精品乱码不99热 | 污视频在线观看网站 | 欧美一区二区三区免费看 | 男女久久久 | 国产视频一二三区 | 欧美一卡二卡三卡四卡 | 蜜桃成人在线 | 九七在线视频 | 69天堂网 | 婷婷成人av | 欧美一级二级在线观看 | 午夜激情久久 | 国产男女猛烈无遮挡免费观看网站 | 日本高清www | 在线免费黄色网 | 性折磨bdsm欧美激情另类 | 97se亚洲国产综合在线 | 亚洲成人网在线观看 | 国产第八页 | 91精品国产综合久久久密臀九色 | 精品国产伦一区二区三 | 韩日视频一区 | 日本加勒比在线 | 韩国三级一区 | 国产麻豆一精品一av一免费 | 欧美怡红院一区二区三区 |