中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL-創(chuàng)新互聯(lián)

這篇文章將為大家詳細(xì)講解有關(guān)DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)的關(guān)注點(diǎn)不是能為您做些什么網(wǎng)站,而是怎么做網(wǎng)站,有沒有做好網(wǎng)站,給創(chuàng)新互聯(lián)公司一個(gè)展示的機(jī)會來證明自己,這并不會花費(fèi)您太多時(shí)間,或許會給您帶來新的靈感和驚喜。面向用戶友好,注重用戶體驗(yàn),一切以用戶為中心。

(1)節(jié)點(diǎn)之間需要傳遞事務(wù)信息,節(jié)點(diǎn)之間識別節(jié)點(diǎn)是通過節(jié)點(diǎn)名稱實(shí)現(xiàn),所以需要DNS解析,將相應(yīng)IP對應(yīng)節(jié)點(diǎn)名稱,但是如果依賴DNS服務(wù)器時(shí),高可用集群服務(wù)又增大了風(fēng)險(xiǎn),為了避免DNS服務(wù)器存在的隱患,配置解析時(shí)直接使用本地/etc/hosts配置文件定義

(2)節(jié)點(diǎn)名稱必須要與‘uname–n’命令顯示的名稱一致

(3)高可用集群節(jié)點(diǎn)的管理,比如停止某一節(jié)點(diǎn)時(shí),是不能在自身這個(gè)節(jié)點(diǎn)停止其服務(wù),需要在一個(gè)運(yùn)行正常的節(jié)點(diǎn)上停止其他節(jié)點(diǎn);所以,提供ssh互信通信(配置每個(gè)節(jié)點(diǎn)基于密鑰的方式與節(jié)點(diǎn)進(jìn)行通信)

(4)時(shí)間需要同步

節(jié)點(diǎn)之間網(wǎng)絡(luò)通信配置

test1節(jié)點(diǎn) IP配置

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

test2節(jié)點(diǎn) IP配置

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

配置完成重啟網(wǎng)絡(luò)服務(wù)

各節(jié)點(diǎn)節(jié)點(diǎn)名稱配置

test1節(jié)點(diǎn)名稱配置

# vim /etc/sysconfig/network

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

# hostname test1.magedu.com

test2 節(jié)點(diǎn)名稱配置

# vim /etc/sysconfig/network

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

# hostname test2.magedu.com

配置完成重新登錄一下終端

主機(jī)名解析配置

RS1 主機(jī)名解析配置

# vim /etc/hosts

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

RS2 主機(jī)名解析配置

# vim /etc/hosts

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

節(jié)點(diǎn)之間的ssh互信功能配置

節(jié)點(diǎn) test1(簡稱)配置

# ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ''

# ssh-copy-id -i .ssh/id_rsa.pub root@test2.magedu.com

測試一下

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

節(jié)點(diǎn) test2配置

# ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ''

# ssh-copy-id -i .ssh/id_rsa.pub root@test1.magedu.com

測試

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

時(shí)間同步

配置一臺主機(jī)為時(shí)間服務(wù)器,進(jìn)行時(shí)間同步,這里直接使用的是實(shí)驗(yàn)提供的時(shí)間服務(wù)器,沒有做其他配置

節(jié)點(diǎn)test1與test2同時(shí)同步

# ntpdate 172.16.0.1

計(jì)劃任務(wù)制定

定義一條計(jì)劃任務(wù),時(shí)刻同步著時(shí)間

# crontab –e

*/5 * * * * ntpdate 172.16.0.1 >/dev/null

本次實(shí)驗(yàn)中在節(jié)點(diǎn)test1與test2需要安裝的rpm包列表

cluster-glue-1.0.6-1.6.el5.i386.rpm

cluster-glue-libs-1.0.6-1.6.el5.i386.rpm

corosync-1.4.5-1.1.i386.rpm

corosynclib-1.4.5-1.1.i386.rpm

heartbeat-3.0.3-2.3.el5.i386.rpm

heartbeat-libs-3.0.3-2.3.el5.i386.rpm

libesmtp-1.0.4-5.el5.i386.rpm

openais-1.1.3-1.6.el5.i386.rpm

openaislib-1.1.3-1.6.el5.i386.rpm

pacemaker-1.1.5-1.1.el5.i386.rpm

pacemaker-cts-1.1.5-1.1.el5.i386.rpm

pacemaker-libs-1.1.5-1.1.el5.i386.rpm

resource-agents-1.0.4-1.1.el5.i386.rpm

在節(jié)點(diǎn)test1上的操作配置

準(zhǔn)備配置文件

# cd /etc/corosync/

# cp corosync.conf.example corosync.conf

# vim corosync.conf

修改內(nèi)容如下

totem {

secauth:on

interface{

bindnetaddr:172.16.0.0

mcastaddr:239.151.51.51

添加的內(nèi)容

service {

ver: 0

name: pacemaker

}

aisexec {

user: root

group: root

}

創(chuàng)建日志文件目錄

# mkdir /var/log/cluster

# ssh test2 'mkdir /var/log/cluster'

生成一對密鑰

# corosync-keygen

復(fù)制密鑰文件與配置文件到test2節(jié)點(diǎn)

# scp -p authkey corosync.conf test2:/etc/corosync/

啟動(dòng)corosyncDRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

查看節(jié)點(diǎn)狀態(tài)信息
 

開始crm配置

說明:因?yàn)闆]有stonith設(shè)備并且只有兩個(gè)節(jié)點(diǎn)所以需要禁用stonith功能,并更改節(jié)點(diǎn)默認(rèn)屬性

crm(live)configure#property stonith-enabled=false

crm(live)configure#verify

crm(live)configure#property no-quorum-policy=ignore

crm(live)configure#verify

crm(live)configure#commit

定義資源粘性,配置在當(dāng)前節(jié)點(diǎn)test1粘性

crm(live)configure#rsc_defaults resource-stickiness=100

crm(live)configure#verify

crm(live)configure#commit

全局資源配置信息查看

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

資源配置

(1)將drbd配置為基本資源

(2)將drbd配置為克隆類資源

資源代理查看

crm(live)# ra

crm(live)ra#providers drbd

查看元數(shù)據(jù)信息

crm(live)ra# metaocf:heartbeat:drbd

定義一個(gè)主資源與一個(gè)主從類資源

crm(live)#configure

crm(live)configure#primitive mydrbdservice ocf:heartbeat:drbd params drbd_resource=mydrbd op starttimeout=240 op stop timeout=100 op monitor role=Master interval=20 timeout=30op monitor role=Slave interval=30 timeout=30

crm(live)configure#ms ms_mydrbd mydrbdservice meta master-max=1 master-node-max=1 clone-max=2clone-node-max=1 notify=true

crm(live)configure#verify

crm(live)configure#commit

狀態(tài)信息查看

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

主從轉(zhuǎn)換驗(yàn)證

crm(live)# node

crm(live)node#standby

crm(live)node#online test1.magedu.com

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

配置資源,通過NFS使其能夠?qū)崿F(xiàn)自動(dòng)掛載

Filesystem資源添加

crm(live)configure#primitive mystore ocf:heartbeat:Filesystem params device=/dev/drbd0directory=/mydata fstype=ext3 op start timeout=60 op stop timeout=60

定義排列colocation使Filesystem必須跟主節(jié)點(diǎn)在一起

crm(live)configure#colocation mystore_with_ms_mydrbd inf: mystore ms_mydrbd:Master

定義排列order約束

crm(live)configure#order mystore_after_ms_mydrbd mandatory: ms_mydrbd:promote mystore:start

節(jié)點(diǎn)狀態(tài)信息查看

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

在節(jié)點(diǎn)test2上查看是否成功掛載

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

主備節(jié)點(diǎn)切換驗(yàn)證

crm(live)# node

crm(live)node#standby test2.magedu.com

狀態(tài)信息查看

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

查看test1節(jié)點(diǎn)上Filesystem是否成功掛載

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL


準(zhǔn)備mysql服務(wù)

現(xiàn)在的主節(jié)點(diǎn)是test1,首先在節(jié)點(diǎn)1上配置mysql服務(wù)

創(chuàng)建mysql用戶與mysql組

# groupadd -g3306 mysql

# useradd -g 3306-u 3306 -M mysql

準(zhǔn)備mysql

# tar xf mysql-5.5.28-linux2.6-i686.tar.gz-C /usr/local/

# ln -sv mysql-5.5.28-linux2.6-i686mysql

準(zhǔn)備數(shù)據(jù)目錄

# cd /mydata

# mkdir data

# chownmysql.mysql data -R

更改mysql文件屬主屬組

# cd/usr/local/mysql

# chown root.mysql/usr/local/mysql/* -R

準(zhǔn)備配置文件與服務(wù)腳本

# cd/usr/local/mysql

# cpsupport-files/my-large.cnf /etc/my.cnf

# cpsupport-files/mysql.server /etc/init.d/

修改配置文件

# vim /etc/my.cnf

添加以下內(nèi)容(線程數(shù)與datadir目錄位置)

thread_concurrency= 2

datadir=/mydata/data

設(shè)置mysql服務(wù)不能開機(jī)啟動(dòng)

# chkconfig --addmysqld

# chkconfigmysqld off

初始化mysql

# cd/usr/local/mysql

#scripts/mysql_install_db --user=mysql --datadir=/mydata/data

啟動(dòng)mysql

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

test2節(jié)點(diǎn)mysql服務(wù)配置與test1節(jié)點(diǎn)相同,說明流程如下

1 關(guān)閉節(jié)點(diǎn)test1的 mysql服務(wù)

2 把節(jié)點(diǎn)test2 轉(zhuǎn)換成Master

crm(live)# node

crm(live)node#standby test1.magedu.com

crm(live)node#online test1.magedu.com

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

3 開始配置test2的mysql服務(wù)流程與test1相同(不執(zhí)行初始化操作)

 

配置mysql服務(wù)為高可用服務(wù)

添加mysql為集群資源

crm(live)configure#primitive mysqld lsb:mysqld

crm(live)configure#verify

crm(live)configure#

定義colocation約束(mysql與mystore在一起;即與主節(jié)點(diǎn)在一起)

crm(live)configure#colocation mysql_with_mystore inf: mysqld mystore

crm(live)configure#verify

定義order約束(最后啟動(dòng)mysql服務(wù))

crm(live)configure#order mysqld_after_mystore mandatory: mystore mysqld

crm(live)configure#verify

crm(live)configure#commit

節(jié)點(diǎn)狀態(tài)信息查看

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

test2上mysql服務(wù)啟動(dòng)狀態(tài)查看

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

主從節(jié)點(diǎn)切換測試

crm(live)# node

crm(live)node#standby test2.magedu.com

crm(live)node#online test2.magedu.com

查看狀態(tài)信息

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

查看test1節(jié)點(diǎn)是否成功運(yùn)行mysql服務(wù)

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

到這里一個(gè)基于drbd與corosync實(shí)現(xiàn)的高可用mysql就完成了,希望能為大家提供一些幫助

DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL

關(guān)于“DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯(cuò),請把它分享出去讓更多的人看到。

當(dāng)前題目:DRBD和Corosync如何實(shí)現(xiàn)高可用MySQL-創(chuàng)新互聯(lián)
網(wǎng)頁路徑:http://www.rwnh.cn/article40/isoeo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版企業(yè)網(wǎng)站制作、網(wǎng)站營銷App設(shè)計(jì)、云服務(wù)器、全網(wǎng)營銷推廣

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)
敦化市| 鄢陵县| 汤阴县| 罗山县| 牡丹江市| 孝感市| 黑山县| 南宫市| 孝昌县| 买车| 玉山县| 昌图县| 棋牌| 林州市| 郯城县| 镇原县| 柞水县| 襄汾县| 宜兰市| 太保市| 通州区| 景谷| 永顺县| 常熟市| 米易县| 曲阜市| 鄂尔多斯市| 卓尼县| 银川市| 天镇县| 通渭县| 铜梁县| 阳山县| 淮北市| 常德市| 同江市| 凌海市| 喜德县| 昌乐县| 方山县| 定西市|