高可用與存儲(chǔ)的結(jié)合
創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站建設(shè)、做網(wǎng)站、曲周網(wǎng)絡(luò)推廣、小程序設(shè)計(jì)、曲周網(wǎng)絡(luò)營銷、曲周企業(yè)策劃、曲周品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供曲周建站搭建服務(wù),24小時(shí)服務(wù)熱線:18982081108,官方網(wǎng)址:jinyejixie.com
之前我們做好了fence,今天將高可用和存儲(chǔ)結(jié)合起來。
試驗(yàn)主機(jī):172.25.0.2 172.25.0.3 172.25.0.251(做數(shù)據(jù)輸出端)
第一部分:
##在做實(shí)驗(yàn)之前,需要將luci打開,并且查看集群狀態(tài):
##將集群的apach關(guān)閉:
##查看ip發(fā)現(xiàn)沒有vip:
##檢測server2的apache(也就是看他開啟再關(guān)閉是否正常):
##確定集群的apache是關(guān)閉的:
##以上做法也不知道意義何在,且往下看
##增加存儲(chǔ),存貯在哪都可以,這里是將instructor這臺(tái)主機(jī)的/dev/vol0/demo邏輯卷作為存貯空間,因?yàn)橹白鰧?shí)驗(yàn)這里邊有數(shù)據(jù),所以我們將它清空:
##這里是用scsi做為存貯類型用到iscsi協(xié)議,所以先查詢需要的軟件,可以用rpm -qa |grep ##也可以用yum list ##
##在數(shù)據(jù)輸出端(也就是做存儲(chǔ)的機(jī)子)安裝scsi,對(duì)應(yīng)服務(wù)為tgtd,在集群節(jié)點(diǎn)中安裝iscsi協(xié)議,服務(wù)名稱是iscsi:
##編輯配置文件:
##開啟服務(wù):
##查看進(jìn)程,只能有兩個(gè)tgtd,這是正確的,這就需要每次在編輯配置文件時(shí)需要將tgtd關(guān)閉,這也是經(jīng)常出的問題。
##查看配置信息:
##在兩個(gè)節(jié)點(diǎn)上安裝iscsi:
##默認(rèn)iscsi是開機(jī)自啟的:
##發(fā)現(xiàn)目標(biāo)(target),后面的ip就是做存儲(chǔ)的主機(jī)ip。
##登入節(jié)點(diǎn):
#這個(gè)時(shí)候用fdisk -l查看會(huì)發(fā)現(xiàn)多了一塊磁盤:
##從節(jié)點(diǎn)上卸載iscsi:
#再用fdisk -l就找不到那塊共享的磁盤
#卸載后就可以將這個(gè)節(jié)點(diǎn)上的緩存刪除,否則每次開啟iscsi都會(huì)自動(dòng)登陸這個(gè)磁盤:
#再次發(fā)現(xiàn)和登陸:
#創(chuàng)建分區(qū),類型為8e邏輯卷:
#查詢,sda1的類型是8e:
#查看clvmd服務(wù),這是對(duì)集群中邏輯卷管理的服務(wù),確定開啟:
##在節(jié)點(diǎn)2創(chuàng)建邏輯卷,
##會(huì)發(fā)現(xiàn)現(xiàn)在節(jié)點(diǎn)3同步過來了,說明clvmd起作用了,他就是來管理邏輯卷的:
##當(dāng)然了,節(jié)點(diǎn)2也會(huì)同步過來的:
##查看怎么創(chuàng)建集群vg:
##將剛剛創(chuàng)建的pv用作集群vg:
##查看我們剛剛創(chuàng)建的vg:
##用clustervg創(chuàng)建lv,名字叫demo:
##當(dāng)然所做的一切都會(huì)在節(jié)點(diǎn)3中有相應(yīng)體現(xiàn)。
##然后就是將集群邏輯卷格式化:
##然后就是在節(jié)點(diǎn)3中進(jìn)行掛載到/mnt,在/mnt中寫下首頁,內(nèi)容為www.westos.org。再卸載,當(dāng)然首頁將保存到磁盤中,如果換到http發(fā)布目錄中將可以通過web訪問。
##然后將邏輯卷(存儲(chǔ))添加到資源中:
##有時(shí)會(huì)因?yàn)槌瑫r(shí)的原因在你保存之后會(huì)退出lusi,這時(shí)只需要重新登錄,再次填寫相關(guān)內(nèi)容就好。
##有了資源我們需要將它和http聯(lián)系起來,這就要在服務(wù)選項(xiàng)中的http下面增加資源,選擇webdata:
##這時(shí)候會(huì)多一個(gè)文件系統(tǒng):
##我們這里是將http服務(wù)于存儲(chǔ)整合,所以需要http服務(wù),如果沒有的話,當(dāng)然需要自己先增加一個(gè)資源,然后再添加到papache中。
##查看現(xiàn)在的集群狀態(tài),并將集群的apache打開:
##當(dāng)然也可以在圖形中打開:
##現(xiàn)在是apache打開了,Apache下面包括資源vip,存儲(chǔ),http服務(wù),當(dāng)然這三者的打開順序也應(yīng)該是這樣,顯示vip,然后指存儲(chǔ),最后才是http服務(wù),這也是為啥在我們往Apache中添加資源時(shí)先將之前的http服務(wù)停掉,在添加完存儲(chǔ)之后再將http服務(wù)加上:
##查看集群是否管理了資源:
#vip添加上了。
##http也打開了,磁盤也實(shí)現(xiàn)了掛載:
##網(wǎng)頁也能夠訪問了:
##現(xiàn)在將Apache手動(dòng)交給連一個(gè)節(jié)點(diǎn),當(dāng)參數(shù)忘了,可以用clusvcadm --help查看相關(guān)參數(shù):
##使用-r -m 可以實(shí)現(xiàn)節(jié)點(diǎn)的轉(zhuǎn)換:
##轉(zhuǎn)換完成后節(jié)點(diǎn)二就會(huì)將vip添加,實(shí)現(xiàn)自動(dòng)掛載,并且開啟http服務(wù),相反的節(jié)點(diǎn)3上會(huì)將相同的服務(wù)關(guān)閉,也就是說高可用集群同時(shí)只有一個(gè)在工作,解決的是單點(diǎn)故障。
第二部分:
##displayvg clustervg:
##給集群邏輯卷擴(kuò)展分區(qū)這里加的511就相當(dāng)于加入2G這樣更精確,現(xiàn)在邏輯卷就會(huì)有4G大?。?/p>
##擴(kuò)展完成后,發(fā)現(xiàn)掛載的磁盤實(shí)際并沒有刷新,這就需要刷新一下:
##df 默認(rèn)顯示的是塊的大小,df -h顯示的是真實(shí)大?。?/p>
##從集群中刪除Apache:
##將節(jié)點(diǎn)2邏輯卷掛載在/mnt,并復(fù)制passwd目錄進(jìn)去:
##在節(jié)點(diǎn)3上掛載,并且追加westos進(jìn)去,但是,在節(jié)點(diǎn)3中只能看到自己的追加,并不能看到之前的文件:
##然后將兩邊都卸載。再掛載,在節(jié)點(diǎn)2中卻只能看到在節(jié)點(diǎn)3中追加的westos,并不能看到之前的文件:
##這說明集群同一時(shí)間只能有一個(gè)節(jié)點(diǎn)接管存儲(chǔ),這是文件呢系統(tǒng)的原因,所以我們就用到了gfs2文件系統(tǒng),也叫做可擴(kuò)展的分布式文件系統(tǒng)(也叫做全局文件系統(tǒng)),可以實(shí)現(xiàn)多個(gè)節(jié)點(diǎn)同時(shí)掛載在同一文件系統(tǒng),保證數(shù)據(jù)的同步性,說到同步我們需要知道,在RHCS套件中是css在處理文件系統(tǒng)的同步:
##檢查邏輯卷的文件系統(tǒng)的正確性。
fsck(file system check)用來檢查和維護(hù)不一致的文件系統(tǒng)。若系統(tǒng)掉電或磁盤發(fā)生問題,可利用fsck命令對(duì)文件系統(tǒng)進(jìn)行檢查。
##將邏輯卷縮小,當(dāng)然也可以不做這一步:
resize2fs命令被用來增大或者收縮未加載的“ext2/ext3”文件系統(tǒng)的大小。如果文件系統(tǒng)是處于mount狀態(tài)下,那么它只能做到擴(kuò)容,前提條件是內(nèi)核支持在線resize。,linux kernel 2.6支持在mount狀態(tài)下擴(kuò)容但僅限于ext3文件系統(tǒng)。
##在查看大小,確實(shí)縮小了:
##當(dāng)然這樣并沒有縮小邏輯卷還是用另一種方法來縮小吧:
##再刪除邏輯卷,再創(chuàng)建邏輯卷:
##當(dāng)然這些都是說明集群中邏輯卷的擴(kuò)展,縮小,新建,這一步可以不做的。
##現(xiàn)在我們就擁有了一個(gè)2G的新的邏輯卷:
##補(bǔ)充一下裸設(shè)備與文件系統(tǒng)的區(qū)別:
裸設(shè)備到文件系統(tǒng),格式化的才叫文件系統(tǒng)。
自己對(duì)裸設(shè)備的理解,。沒有經(jīng)過格式化的磁盤分區(qū),操作系統(tǒng)不對(duì)其進(jìn)行管理,而是應(yīng)用程序直接管理,所以I/O效率更高,正因?yàn)檫@樣對(duì)于讀寫頻繁的數(shù)據(jù)庫等應(yīng)用程序可以用裸設(shè)備,這樣可以極大的提高性能。
文件系統(tǒng)是對(duì)一個(gè)存儲(chǔ)設(shè)備上的數(shù)據(jù)和元數(shù)據(jù)進(jìn)行組織的機(jī)制。文件系統(tǒng)的工作就是維護(hù)文件在磁盤上的存放,記錄文件占用了哪幾個(gè)扇區(qū)。另外扇區(qū)的使用情況也要記錄在磁盤上。文件系統(tǒng)在讀寫文件時(shí),首先找到文件使用的扇區(qū)號(hào),然后從中讀出文件內(nèi)容。如果要寫文件,文件系統(tǒng)首先找到可用扇區(qū),進(jìn)行數(shù)據(jù)追加。同時(shí)更新文件扇區(qū)使用信息。在掛載后就可以將掛載點(diǎn)當(dāng)做一個(gè)新的文件系統(tǒng)。
fsck是如何工作的:通常情況下,當(dāng) Linux 系統(tǒng)啟動(dòng)時(shí),首先運(yùn)行fsck,由它掃描/etc/fstab 文件中列出的所有本地文件系統(tǒng)。fsck 的工作就是確保要裝載的文件系統(tǒng)的元數(shù)據(jù)是處于可使用的狀態(tài)。當(dāng)系統(tǒng)關(guān)閉時(shí),fsck又把所有的緩沖區(qū)數(shù)據(jù)轉(zhuǎn)送到磁盤,并確保文件系統(tǒng)被徹底卸載,以保證系統(tǒng)下次啟動(dòng)時(shí)能夠正常使用。
##得到最恰當(dāng)?shù)膲K大小:
##查看幫助:
##然后就是對(duì)邏輯卷的再次格式化:
##然后就是兩個(gè)節(jié)點(diǎn)都掛載:
##然后在節(jié)點(diǎn)2的中寫一個(gè)首頁:
##這會(huì)同步到節(jié)點(diǎn)三中:
##當(dāng)然在節(jié)點(diǎn)3的首頁中增加一行,也會(huì)在節(jié)點(diǎn)2中同步:
##要想實(shí)現(xiàn)文件系統(tǒng)的永久掛載,查看UUID,然后將掛載信息添加到/etc/fstable:
##當(dāng)然在節(jié)點(diǎn)3中也要做相同的掛載
##把service group中之前的那個(gè)ext3文件系統(tǒng)刪除,再在資源中增加一個(gè)新的文件系統(tǒng):
##上面這一步是不是可以改為只是把service group中的文件系統(tǒng)刪除,而不增加另一個(gè)文件系統(tǒng),這樣在重新開啟Apache是否會(huì)自動(dòng)添加???
##查看iscsi狀態(tài),是開啟的.
##查看系統(tǒng)中的可掛載設(shè)備和pv:
##當(dāng)然,做完,最好能先卸載掉,查看是否 能夠自動(dòng)掛載:
##現(xiàn)在開啟Apache:
##就可以訪問了:
第三部分 將Apache換成數(shù)據(jù)庫:
##首先將apache刪除:
##當(dāng)然也可以用命令刪除,然后安裝MySQL:
##進(jìn)入MySQl目錄,將MySQL打開:
##當(dāng)然節(jié)點(diǎn)3上也要安裝:
##檢查存儲(chǔ),因?yàn)槲覀円獙①Y源交給集群管理,所以我們要將存儲(chǔ)資源關(guān)閉:
##并且將邏輯卷掛載到MySQL的發(fā)布目錄中:
##然后將邏輯卷掛載到/mnt上,并且將MySQL發(fā)布目錄中的所有數(shù)據(jù)移動(dòng)到/mnt下,然后從/mnt下面卸載:
##這樣MySQL中就沒有文件,文件被保存到邏輯卷中,然后再用mount -a,就實(shí)現(xiàn)邏輯卷到數(shù)據(jù)庫默認(rèn)目錄的掛載:
##這樣數(shù)據(jù)庫的配置文件就有回來了。
##將數(shù)據(jù)庫的apache的首頁文件刪除,并打開數(shù)據(jù)庫:
##當(dāng)然最后還是要關(guān)閉的將它交給集群,我們?cè)谶@里的一番折騰只是檢測存儲(chǔ)與MySQL都沒有錯(cuò)誤,可以正常使用:
##節(jié)點(diǎn)3中也要做相同的工作:
##為數(shù)據(jù)庫增加資源,還是添加一個(gè)腳本,這里腳本是只需要輸入名字,和啟動(dòng)的路徑這樣就可以讓集群來管理開關(guān)了:
##查看集群,發(fā)現(xiàn)并沒有將數(shù)據(jù)庫加進(jìn)來:
##這就需要將資源加進(jìn)服務(wù):
##Run exclusive:意思是這個(gè)服務(wù)獨(dú)占集群,當(dāng)然不能這樣了。然后就是將我們的資源vip和數(shù)據(jù)庫加進(jìn)來:
##在查看集群,發(fā)現(xiàn)就將數(shù)據(jù)庫服務(wù)加進(jìn)來了:
##現(xiàn)在就可以登錄數(shù)據(jù)庫了:
##將數(shù)據(jù)庫服務(wù)轉(zhuǎn)交給節(jié)點(diǎn)3:
##現(xiàn)在邏輯卷掛載到了節(jié)點(diǎn)3,vip也轉(zhuǎn)移到了節(jié)點(diǎn)3:
##在節(jié)點(diǎn)三登錄數(shù)據(jù)庫:
##刪除集群數(shù)據(jù)庫:
##在兩個(gè)節(jié)點(diǎn)中都將存儲(chǔ)卸載:
##之前所做沒有將存儲(chǔ)加進(jìn)去:
邏輯卷的掛載是我們手動(dòng)掛載的,現(xiàn)在將gfs資源加進(jìn)MySQL服務(wù)就可以實(shí)現(xiàn)自動(dòng)掛載了:
##然后在DB服務(wù)中將之前增加的數(shù)據(jù)庫先刪了,再添加存儲(chǔ)和數(shù)據(jù)庫,因?yàn)榧涸趩?dòng)服務(wù)中的資源時(shí),是按照資源的順序的,而在數(shù)據(jù)庫之前必須要有存儲(chǔ)。
##現(xiàn)在DB服務(wù)是關(guān)閉的,我們將只需將DB服務(wù)打開,就可以自動(dòng)調(diào)配其他的資源,包括資源的開啟,當(dāng)一個(gè)存儲(chǔ)有問題會(huì)自動(dòng)跳到另一臺(tái)機(jī)子上等:
##已經(jīng)實(shí)現(xiàn)了存儲(chǔ)的自動(dòng)掛載:
##將DB服務(wù)轉(zhuǎn)交給節(jié)點(diǎn)2:
##存儲(chǔ)和vip都轉(zhuǎn)移到了節(jié)點(diǎn)2:
##至此,我們就完成了數(shù)據(jù)庫的服務(wù)的高可用,就解決了數(shù)據(jù)庫的單點(diǎn)故障。
第四部分:圖形修改對(duì)應(yīng)進(jìn)程:
##將DB服務(wù)關(guān)閉并且刪除,將gfs2資源刪除:
第五部分:不用圖形的高可用集群(不用luci的高可用集群)pacemake。
##在rhcl7之后就沒有了luci,就不能借助圖形來管理集群了,下面就來介紹費(fèi)圖形界面的高可用集群管理。
##首先將之前在rhcl6中做的都給刪除,包括將節(jié)點(diǎn)從集群中脫離并刪除:
##還有cman,rgmanager
##還有modclusterd
##還有iscsi,關(guān)閉,啟動(dòng)項(xiàng)也關(guān)閉:
##在安裝scsi的機(jī)子上,檢查iscsi的情況:
##將scsi關(guān)閉:
##兩個(gè)節(jié)點(diǎn)安裝pacemake:
##若用新的虛擬機(jī),需要安裝heartbeat、drbd、mysql-server、httpd
##安裝完pacemake后將會(huì)有一個(gè)控制心跳的配置文件目錄:
##編輯配置文件:
#原始的例子內(nèi)容:
##修改后的配置文件其實(shí)就修改了兩處,一個(gè)是將綁定的網(wǎng)絡(luò)地址改為集群的網(wǎng)絡(luò)地址,在最后一行增加服務(wù):
............................................
##上述修改的目的:
#當(dāng)最后的ver設(shè)置為1的時(shí)候,插件打不開pacemake的守護(hù)進(jìn)程,這里我們還是設(shè)置為0,表示可以打開pacemaker的守護(hù)進(jìn)程,通過組件調(diào)動(dòng)而不是腳本。
Plugin:插件
Daemons:是守護(hù)進(jìn)程的意思,代表在后臺(tái)運(yùn)行而沒有終端或者運(yùn)行的shell與其結(jié)合的進(jìn)程。
##可以到官網(wǎng)下載關(guān)于pacmake的官方文檔:
##將修改后的配置文件復(fù)制到節(jié)點(diǎn)3.
##開啟心跳服務(wù):
##這里的報(bào)錯(cuò)是因?yàn)閟tonish的原因,默認(rèn)stonish是開啟的這樣verify時(shí)會(huì)報(bào)錯(cuò),并且也不能commit,所以在配置之前需要將stonish關(guān)閉:
##然后需要安裝連個(gè)包,最好先安裝pssh在安裝crm,,因?yàn)榈诙€(gè)是第一個(gè)的依賴性,當(dāng)然也可以一起安裝,但是需要安裝兩遍:
##然后將兩個(gè)包拷貝給節(jié)點(diǎn)3,安裝:
##然后就可以用crm服務(wù)了:
因?yàn)橹癱oroysnc的原因這里節(jié)點(diǎn)指直接加進(jìn)去的,如果沒有加進(jìn)去可以用edit加進(jìn)去,也可以重啟coroysnc,這樣就加進(jìn)去了。
##然后切換到資源管理模塊:
##將stonish關(guān)閉:
##這樣檢測語法就不會(huì)有錯(cuò)了:
##不管在哪邊增加策略,兩邊都會(huì)同步的:
##定義資源:
例子:
crm(live)configure# primitive webvip ocf:heartbeat:IPaddr params ip=172.16.12.100 op monitor interval=30s timeout=20s on-fail=restart
//定義一個(gè)主資源名稱為webvip,資源代理類別為ocf:heartbeat,資源代理為IPaddr。params:指定定義的參數(shù) ,op代表動(dòng)作,monitor設(shè)置一個(gè)監(jiān)控,每30s檢測一次,超時(shí)時(shí)間為20s,一旦故障就重啟
#增加一個(gè)vip資源:
##也可以用edit編輯配置文件:
##在0.251這臺(tái)機(jī)子上是可以ping通增加的資源的:
##對(duì)參數(shù)的解釋:
crm_verify -LV 檢測配置信息
crm_mon 監(jiān)控主機(jī)狀態(tài)
網(wǎng)頁題目:高可用與存儲(chǔ)的結(jié)合
文章位置:http://jinyejixie.com/article34/ggeise.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)、微信公眾號(hào)、品牌網(wǎng)站建設(shè)、品牌網(wǎng)站制作、全網(wǎng)營銷推廣、軟件開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)