RHCS&集羣文件系統GFS2&CLVM

RHCS:red hat cluster suite 紅帽集羣套件,RHCS是一個能夠提供高可用性、高可靠性、負載均衡、存儲共享且經濟廉價的集羣工具集合,它將集羣系統中三大集羣架構融合一體,可以給web應用、數據庫應用等提供安全、穩定的運行環境。

RHCS提供三個核心功能:

       高可用集羣:當應用程序出現故障,或系統硬件、網絡出現故障時,可以收高可用性管理組件自動、快速從一個節點切換到另一個節點,節點故障轉移功能對客戶端來說是透明的。

       負載均衡集羣:RHCS通過LVS提供負載均衡,可以將客戶端請求按照一定的算法把請求分配到各個服務節點。同時lvs還提供健康檢查。

        存儲集羣功能:RHCS通過GFS文件系統提供存儲集羣功能。GFS(Global File System)允許多個服務同時去一個單一的共享文件系統,存儲集羣通過將共享數據放到一個共享文件系統中,從而消除了同步數據的麻煩。GFS通過鎖管理機制,來協調和管理多個服務節點對同一個文件系統的讀寫操作。

RHCS的集羣組成:

           集羣構架管理器:這是RHCS集羣的一個基礎套件,提供一個集羣的基本功能,包含分佈式集羣管理器(CMAN)、成員關係管理、鎖管理(DLM)、配置文件管理(CCSD)、柵設備(FENCE)。注:這是rhel5集羣管理套件組成,rhel6中ccsd由cman提供配置文件管理。

          高可用服務管理器:提供服務監控和服務故障轉移功能(rgmanager或pacemaker)

          集羣配置管理器:RHCS最新版是通過Conga來配置和管理RHCS集羣,Conga由兩部份組成,LUCI和RICCI。LUCI是基於web的集羣配置方式,LUCI安裝在一臺獨立的計算機上,用於配置和管理集羣,RICCI安裝在每個集羣的服務節點,LUCI通過RICCI和每個集羣中的節點進行通信。在RHCL5還提供了一生中GUI的管理工具system-config-cluster,但在RHEL6上已經不提供這種管理方式了。

          LVS: 負載均衡軟件,根據各種算法來實現把負載動態分配到各位集羣節點上去。

RHCS集羣的拓撲結構:

image注:圖片來自網絡

RHCS組件

image

實驗環境:

系統全部是 centos6.5
LUCI安裝在一臺機器10.204.80.71,這臺機器做爲模擬ISCSI設備的磁盤提供。

另外3臺機器做爲集羣服務器節點,ip地址分別爲:

10.204.80.75   rs3

10.204.80.76   rs4

10.204.80.77   rs5

在71控制服務器上安裝luci

image

這裏加上參數—disablerepo=epel是因爲有個python模塊在epel源中比basic模塊中要新,但在安裝過程中會有問題,luci裝不上,所以要禁掉epel源。

安裝完成後就可以啓動Luci

image

訪問https://10.204.80.71:8084

image

提示不是受信任的站點

image

點擊已經充分了解風險,

image

就可以看到luci的登陸界面,用71這臺機器的root帳號密碼登陸就可以看到操作界面

image

就可以添加節點了,不過集羣節點需要安裝ricci。

在/etc/hosts文件中入host名稱解析

image

在ansiable的hosts文件中新加一個羣組

image
然後用ansiable命令安裝集羣節點的ricci組件

image

安裝完成後,給ricci帳號添加密碼爲”mypass”

image

顯示密碼添加成功,把ricci服務啓動

image

就可以到luci的控制web頁面上添加集羣節點了

https://10.204.80.71:8084頁面登陸,然後創建一個cluster

image

image

節點添加完成以後就可以看到集羣的狀態了,三個節點rs3,rs4,rs5都已經正常在線了

image

集羣搭建完成以後就可以在Resource裏面添加資源,要啓動資源則要把資源加入到資源組裏面才能啓動資源。

還可以把節點加入的Failover Domains(故障轉移域),在做高可用集羣時就,當一個節點故障時,資源轉移的優先級比較高的節點上去,而且只能在某些在故障轉移域中的節點轉移。因爲沒有fence設備,所以也就沒有再做過多的設置。

 

集羣文件系統的創建:

IP SAN的模擬

GFS文件系統配置需要一臺機器模擬IP SAN,這個裏用71這臺服務器模擬IP SAN

SAN: 塊級別共享存儲,分爲光纖存儲區域網絡(FC SAN)和以太網存儲區域網絡(IP SAN)。

IP SAN:以太網存儲區域網絡,是以iSCSI標準在TCP/IP上進行數據塊傳輸,能夠在高速以太網上進行快速存取備份操作。

要虛擬一個IP SAN設備,首先是虛擬一個target,在target上再連接一個LUN,然後定義target的訪問控制列表。

在71這臺服務器上安裝iSCSI模塊

#yum install –y scsi-target-utils

image

啓動tgtd服務,設爲開機自動啓動,查看tgtd的端口,確定tgtd已在監聽狀態

image

因爲target創建一個磁盤做爲共享磁盤會用到域名,所以,把71的hostname改爲m.mylinux.com,在hosts文件中也改爲相對應的名稱

image

tgtadm創建一個target的語法:

tgtadm:

           [-L --lld <driver>] [-o --op <operation>] [-m --mode <mode>] [-t --tid <id>] [-T --targetname <targetname>]

創建一個tid 爲1的target

#tgtadm -L iscsi -m target -o new -t 1 -T iqn.2014-10.com.mylinux.tgt1:websan.disk1

# tgtadm -L iscsi -m target -o show    顯示target信息

image

創建一個邏輯單元語法:

tgtadm

      --lld [driver] --op new --mode=logicalunit –tid [id] –lun [lun] --backing-store [path]

創建一個LUN號爲1的邏輯設備

#tgtadm --lld iscsi --op new --mode logicalunit --tid 1 --lun 1 -b /dev/mapper/VolGroup-lv02

添加這個teget的訪問控制列表

image

target的用戶認證方式啓用的是CHAP(挑戰式握手認證協議),也可以做單方向的認證。

<IncomingUser>    服務器端自己提供的用戶密碼,客戶端拿這個帳號來登錄服務器的。

<OutgoingUser>    在服務器創建客戶端驗證帳號來驗證服務器的

我這裏啓用的是服務器自己提供用戶密碼,客戶端登陸服務器,添加訪問這個target的訪問帳號,

image

IPSAN服務端配置完成,客戶端可以用發現命令發現這個設備

 

客戶端設置:

用ansiable安裝gfs組中的iscsi-initiator-utils

#ansiable  gfs  -m  yum –a “name=iscsi-initiator-utils   state=installed”

image

客戶端安裝完成,首先要定義initiator的獨有名稱,然後再發現設備,登陸

image

啓用CHAP認證,在rs3,rs4,rs5的三個集羣節點的配置文件/etc/iscsi/iscsid.conf中啓用CHAP認證,

node.leading_login = Yes
node.session.auth.authmethod = CHAP
node.session.auth.username = mygfs
node.session.auth.password = mypass123

啓動iscsi服務,設備iscsi 服務開機啓動

  image

各集羣節點發現、登陸target

#iscsiadm –m descovery –t sendtargets –p 10.204.80.71      #發現target,用ansiable在各節點上同時運行

image

登陸target

image

登陸成功

在rs3中用fdisk –l命令顯示所有磁盤信息,就可以看到有一個新硬盤設備/dev/sdb

ICLL_M0U705DKB66@ZDD0`Y

在rs4,rs5集羣節點上同樣可以看到這個設備

 

安裝gfs2-utils和lvm2-cluster

image

image

在集羣節點上啓用lvm集羣功能 ,啓動clvmd服務

image

image

創建一個gfs文件系統需要提供的信息:

1. 鎖類型:

           lock_nolock

           lock_dlm

2. 鎖文件的名字,通常即文件系統名

3. 日誌的個數,通過一個節點對應一個日誌文件,但建議提供比節點數更多的日誌數目,以提供冗餘

4. 日誌文件的大小

5. 文件系統的大小

裝載gfs2的模塊,查看gfs2模塊

image

在rs3節點上把設備/dev/sdb 添加爲PV,創建VG,然後創建LV

image把/dev/sdb創建爲pv

image把/dev/sdb添加進VG-gfs當中

image

創建容量爲20G的lv

image

把lv-gfs格式化爲gfs文件系統

image

格式化時mkfs.gfs2 –p lock_dlm 要放在-j num 參數前面,不然無法格式化

image

同樣,在節點rs4,rs5上都掛載到/data目錄下

image

image

在rs3節點的/data目錄下touch一個aa.txt文件,有echo即時寫入字符,在rs4,rs5節點上用tail –f  命令查看aa.txt,就會看到,當rs3節點上寫入一段字符,在rs4.rs5節點上都會馬上出現,集羣文件系統搭建完成

image

image

image

把 /data 和gfs 文件寫入到/etc/fstab文件中然後把service gfs2開機啓動,這樣,當節點重新啓動時就會自動掛載gfs2文件系統。

0C)JHYDC~XKO%3MR)BEJ)0S

image

 

注意:上面的實驗過程中,71這臺服務器虛擬的一個target沒有寫入配置文件,只是用命令啓動,當這個主luci管理端重新啓動後就不會再啓動了,所以需要把這個target寫入到/etc/tgt/targets.conf配置 文件中,這樣,開機纔會自動模擬這個IP SAN設備。而在rs3,rs4,rs5這個集羣中並沒有定義fence設備,一旦有節點down掉,而集羣沒有及時fence掉這個節點,那麼這個集羣文件系統有可能會產生分裂。在真實應用場景中fence設備是一定要有的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章