標籤:des c a http tar ext
RHCS: Red Hat Cluster Suite 紅帽子叢集套件,
三位一體,完備的叢集應用解決方案
1.負載平衡
2.高可用
3.共用隱藏檔系統
組成:
1.叢集管理器:CMAN
設定檔管理:CCS ---/sbin/ccsd
/etc/cluster/cluster.conf
cman ---/usr/sbin/cman_tool
表決磁碟:叢集投票超過半數才能正常工作,gfs檔案系統才能使用
Quorum :法定節點數:節點數*vote+qdisk
Quorate :達到法定節點數
<
/sbin/service qdiskd start
後台daemons:
/sbin/groupd
/sbin/fenced
鎖管理 DLM/sbin/dlm_controld
/sbin/gfs_controld
柵裝置:在節點異常宕機時屏蔽,關閉該節點,此時gfs2不能讀寫 Fence--/sbin/fence_tool
fence_xvmd---/sbin/fence_xvmd
2.服務資源管理員:rgmannager ---
/usr/sbin/clurgmgrd
/usr/sbin/clustat
/usr/sbin/clusvcadm
/usr/sbin/clubufflush
/usr/sbin/clufindhostname
/usr/sbin/clulog
/usr/sbin/clunfslock
/usr/sbin/clurmtabd
/usr/sbin/rg_test
/usr/sbin/rhev-check.sh
3.組態管理工具:
圖形化web配置:Conga:Luci和Ricci
工具配置:
clustat
cman_tool
ccs_tool
fence_tool
clusvcadm
4.GFS:RedHat公司叢集檔案系統,安裝使用需要RHCH支援。通過鎖機制實現了一個檔案系統可以供多台主機掛載,並可同時讀寫。
5:其他:ClVM叢集邏輯卷管理,iSCSI
------------叢集安裝部署----------
共用磁碟端:
1.安裝iscsi target
service tgtd start
2.安裝luci:
luci-0.12.2-51.el5.centos.x86_64.rpm
luci_admin init
service luci start
3.修改/etc/hosts
192.168.12.132 web1
192.168.12.133 web2
192.168.12.231 Mysql1
192.168.12.232 Mysql2
節點:
1.安裝RHCS套件:
rpm -ivh perl-XML-NamespaceSupport-1.09-1.2.1.noarch.rpm
rpm -ivh perl-XML-SAX-0.14-11.noarch.rpm
rpm -ivh perl-XML-LibXML-Common-0.13-8.2.2.x86_64.rpm
rpm -ivh perl-XML-LibXML-1.58-6.x86_64.rpm
rpm -ivh perl-Net-Telnet-3.03-5.noarch.rpm
rpm -ivh pexpect-2.3-3.el5.noarch.rpm
rpm -ivh openais-0.80.6-36.el5.x86_64.rpm
rpm -ivh python-pycurl-5.5.1-8.el5.x86_64.rpm
rpm -ivh python-suds-0.4.1-2.el5.noarch.rpm
rpm -ivh cman-2.0.115-96.el5.x86_64.rpm
rpm -ivh modcluster-0.12.1-7.el5.centos.x86_64.rpm
rpm -ivh ricci-0.12.2-51.el5.centos.x86_64.rpm
rpm -ivh gfs2-utils-0.1.62-34.el5.x86_64.rpm
rpm -ivh rgmanager-2.0.52-28.el5.centos.x86_64.rpm
2.安裝iSCSI initiator
iscsiadm -m discovery -t sendtargets -p 192.168.12.246
service iscsi start
3.配置/etc/cluster/cluster.conf
可通過luci配置:
1.建立一個叢集,添加節點
2.建立Failover Domain
3.建立Resources
IP address
httpScript --- /etc/init.d/httpd
ext-fs --- /webdata /dev/sdb6
4.建立Service,添加資源,選擇失敗轉移域
5.配置儲存叢集GFS
fdisk /dev/sdb
mkfs.gfs2 -p lock_dlm -t mucluster:my-gfs2 -j 4 /dev/sdb5
mount.gfs2 /dev/sdb5 /gfs2 -v
6.配置表決磁碟:
mkqdisk -c /dev/sdb7 -l myqdisk 建立共用磁碟(不需要進行格式化)
mkqdisk -L 顯示共用磁碟資訊
在web介面添加Quarum Partition
service qdiskd start 啟動qdiskd服務
7.配置Fence柵裝置
配置完成後:/etc/cluster/cluster.conf
<?xml version="1.0"?>
<cluster alias="mycluster" config_version="8" name="mycluster">
<fence_daemon clean_start="0" post_fail_delay="0" post_join_delay="3"/>
<clusternodes>
<clusternode name="web2" nodeid="1" votes="1">
<fence/>
</clusternode>
<clusternode name="web1" nodeid="2" votes="1">
<fence/>
</clusternode>
</clusternodes>
<cman expected_votes="1" two_node="1"/>
<fencedevices/>
<rm>
<failoverdomains>
<failoverdomain name="webserver-Failover" nofailback="0" ordered="1" restricted="1">
<failoverdomainnode name="web2" priority="10"/>
<failoverdomainnode name="web1" priority="1"/>
</failoverdomain>
</failoverdomains>
<resources>
<ip address="192.168.12.233" monitor_link="1"/>
<script file="/etc/init.d/httpd" name="httpScript"/>
<fs device="/dev/sdb6" force_fsck="1" force_unmount="1" fsid="7108" fstype="ext3" mountpoint="/webdata" name="ext3-fs" self_fence="1"/>
</resources>
<service autostart="1" domain="webserver-Failover" exclusive="0" name="webserver" recovery="relocate">
<ip ref="192.168.12.233"/>
<script ref="httpScript"/>
</service>
</rm>
<quorumd device="/dev/sdb7" interval="2" min_score="1" tko="10" votes="2">
<heuristic interval="3" program="ping -c 3 -t 2 192.168.12.1" score="2"/>
</quorumd>
</cluster>
----------叢集管理------------
啟動叢集:
service cman start
service rgmanager start
關閉叢集:
service rgmanager stop
service cman stop
管理服務:
clusvcadm -e webserver -m web1啟動節點的服務
clusvcadm -s webserver -m web1關閉節點的服務
clusvcadm -R webserver -m web1重啟節點的服務
clusvcadm -r webserver -m web2切換節點服務
監控叢集狀態
cman_tool nodes -a
cman_tool status
clustat -i 3 每個3秒重新整理叢集狀態
css_tool update /etc/cluster/cluster.conf修改完配置後更新配置
(根據config_version判定是否更新)
配置叢集
css_tool create Mycluster
css_tool addfence apc fence_apc ipaddr=apc.domain.net user=apc password =apc
ccc_tool addnode node1 -n 1-f apc prot=1
csstool addnode node2 -n 2 -f apc port=2
ccs_tool addnode node3 -n 3 -f apc port=3
ccs_tool addnode node4 -n 4 -f apc port=4
管理gfs2檔案系統
gfs2_fsck -y /dev/sdb5檢測修複gfs檔案系統錯誤
gfs_tool df /gfs2 查看gfs2檔案系統掛載詳細資料
gfs_tool freeze /gfs2 鎖定gfs2檔案系統
gfs_tool unfreeze /gfs2解鎖gfs2檔案系統
gfs2_tool journals /gfs2查詢gfs2可掛載節點數
gfs2_tool version查詢gfs2版本資訊
gfs2_jadd -J 64M journals大小改為64M
gfs2_jadd -j 5 /gfs2 可掛載節點改為5個
------------工作過程---------------
節點順利關機:
1.qdiskd檢測到節點shut down
2.openais處理
3.dlm關閉串連該節點
4.clurgmgrd資源轉移
正常開機:
重新加入叢集
獲得服務資源
節點異常宕機:
echo c>/proc/sysrq-trigger 是核心崩潰
1.qdiskd檢測到節點evicted
openais處理
dlm 關閉串連該節點
fence進程隔離節點,gfs2無法使用。
fence 進程隔離成功後,gfs2恢複。
clrgmgrd接管服務