歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

Redhatadvanceserver2.1集群的安裝與管理

  1.介紹     Redhat中的集群提供數據與服務的高可用性,可以使用盤櫃,進行電源的管理,也可以進行Server之間的failover的切換,可以滿足一些企業的需求。集群可以就用在數據庫服務,文件服務器,WWW服務器等應用服務器上,可以實現負載均衡。他是基於Linux的LVS的基礎上開發而來,同時又增加了數據的可靠性和服務的可用性,還有負載均衡。     2.特點:   (1)將形成沒有單點硬件故障的系統     集群將利用獨立的服務器,形成一個具體彼此互連的整體,可以避免的因為一台機器down掉而造成數據丟失,服務停止。同時是低成本,高可用性的集群服務。   (2)服務的高可用性     集群可以讓管理員輕松地將獨立的服務聯合起來,保證數據的安全性和服務的可用性。為了搭建一個服務,管理員必須此服務的資源與一些必要的屬性,如服務的名字,啟動停止的腳本,硬盤的分區等。   (3)數據的高可靠性   (4)提供簡捷的用戶管理接口   (5)多集群互通(這個功能沒有研究過)   (6)服務的Failover切換     當集群中提供服務的一台服務器出了問題的時候,在集群中會自動將用戶過來訪問的請求發到集群中其他的機器上來處理。當這個服務器的系統起來後,可以讀寫有關集群的Quotum(裸設備)的時候,將自動讀取有關集群的相應信息,自動加入到本集群中。   (7)可以同時提供多種服務   (8)事件日志功能   (9)應用服務的監測功能   (10)狀態的監測功能     3.最小的硬件環境:   2台Server(原則上需要兩塊網卡)   以太網連接,心跳監測   共享storage,來共享信息     4.建立cluster server   (1)安裝基本的系統,主要是包括硬件的驅動   (2)確認網絡,包括交換機的部分,網卡的使用,用來進行心跳監測   (3)cluster的安裝步驟:    A.在兩台機器上安裝Redhat Advance Server 2.1,記得在安裝的時候要選擇kernel source和cluster system 兩個部分    B.重啟編輯一下/etc/hosts,將所有加入到集群中的機器寫到裡面,包括主機和IP地址的對應關系。    C.確認每個系統都已經認出了所需要的硬件環境,如網卡等    D.對於內核的一些要求:     IP ALIAS的支持 (CONFIG_IP_ALIAS)    E.由於有一些cluster可能會用的storage(盤櫃)一類的設備,同時系統在啟動的時候,內核也會對cluster在時間有一定的限制,所以這個時候建議更改lilo.conf將裡面:    TIMEOUT=30   (4)創建裸設備:    /dev/raw/下的設備文件,配置文件則去更改/etc/sysconfig/rawdevices這個文件,在集群中首先需要一個Quorum Partition。這些分區和一些數據庫的應用必須要求有裸設備,因為他們需要滿足自己的buffer cache,而不是系統的,所以他們不包括文件系統。   一個/etc/sysconfig/devices的樣式文件:    /dev/raw/raw1 /dev/sdb1   /dev/raw/raw2 /dev/sdb2   這個可以根據自己的需要來進行相應的更改,因為對應的設備可能會有所不同,這事前必要要用fdisk來為Quorum Partition來提定兩個分區,不用太大,100M就足夠用了。    在機器查看裸設備可以用raw ?aq的命令,更多的信息可以用man raw。   (5)確認機器上是否安裝clumanager-xxx.rpm(rpm ?qa grep clumanager)。如果沒有安裝的話,可以找到這個文件後,rpm ?ivh clumanager-xxx.rpm   (6)確認裸設備建立無誤後,那麼如何來測試Quorum Partition是否正常的工作,可以用如下的命令來進行測試:     cludiskutil ?p,列出的信息裡,不同服務器上相同的裸設備,如(/dev/raw/raw1)的Magic和Version的值應該是一樣的。這一點還請大家多多注意。   然後再來運行clUConfig進行cluster server的配置,會問一些相關的信息,正確的回答給他,會自動的更新cluster的一個信息文件,以備為cluster的運行使用。     這其中會問到一個關於IP adderss for cluster alias的地方,就是指這個集群建立起來後,客戶用來訪問的一個總的地址。   (7)用cludiskutil ?t來檢查Quorum Partition,假如用了Power switch的話,可以用clustonith來進行檢查。   (最後就可以用命令來啟動cluster了,命令方式如下:services cluster start。當cluster運行的時候,系統會有幾個進程起動,下面將這幾個進程都是作什麼,給大家說一些:     cluquorumd Quorum deamon(裸設備的守護進程)     clusvcmgrd Service manager daemon(管理服務的守護)     clupowerd Power daemon (電源管理的守護)   cluhbd Heartbeat daemon (心跳的守護)   clumibd Administrative system monitoring daemon (監測守護)     5.Cluster的管理:     可能這個東東相對來說要比較簡單一些,因為目前在Redhat Advance Server 2.1上的已經用clumanager這樣的管理包,將cluster的管理功能利用TUI的方式來管理的很好,下面主要給大家介紹一下相關的命令的使用,希望能對大家有所幫助。     一個管理的命令就是cluadmin,這個命令可以提供如下的功能:    A.增加,刪除和修改cluster裡的服務    B.啟動和停止cluster    C.顯示cluster和裡面所跑服務的狀態    D.修改cluster日志級別    E.備份和恢復cluster的數據     當cluadmin命令執行後,如果你對網絡有一定了解的話,他的接口就像是cisco設備的字符管理界面一樣的,主要是來使用一些命令來控制,這裡你可以用help來列出所有的可用命令和一些簡單的幫助信息,對你的使用可能會比較有幫助的,這個功能就在這裡不給大家詳細的講解了,如果有什麼問題,最好還是在這裡直接去help來看一下他的幫助信息。     ----------------------------------------------------------------------------------------------------------------------   在此作一個小結,以上的工作如果順利作完的話,那就說明你的cluster已經正常的運轉起來報,但是我們的最後的目的是什麼,不是只讓cluster跑起來,而是要在這個cluster的基本來跑我們的應用服務,讓cluster來對我們所應用的服務起到一個很好的保護作用。   ----------------------------------------------------------------------------------------------------------------------     6.Cluster裡服務的建立:   (1)所必要的幾個條件:    A.所保護服務必須要有一個可能控制啟動和停止的腳本,安裝了clumanage-xxx.rpm後,這個包裡面自帶了一些常用服務的控制腳本,這個很方便的,省著自己去動手寫這樣的一個東東,具體的位置放在/usr/share/cluster/doc/services/examples    B.確認所要運行的服務在每一台cluster server的機器上都能正常的運行   (2)務份一下/etc/cluster.conf,以備如果出錯後,可以恢復到原始的狀態,以免以前的工作都浪費了   (3)運行如下的命令:    /sbin/cluadmin   cluadmin>service add這樣就可以來增加服務了,這個過程中同樣會問你許多有關此項服務的信息,所以需要你對這個服務有一些了解,如他的啟動停止控制腳本在哪?所必要的配置文件在哪裡等這樣的問題。不是很難的,如果不能確認,可以先到服務器看去轉一轉,了解一下所要的信息。     對於cluster裡面服務的一些管理,以及一些系統狀態的監測,可以直接用cluadmin裡面提供的一些命令去跟蹤,這些就不詳細地講解了,有空的大家可以去看命令的幫助信息,也可以去www.redhat.com網站去查看官方的doc。     7.Cluster數據的備份與恢復   /sbin/cluadmin   cluadmin>cluster backup [filename] 這裡的filename可以不指定   cluadmin>cluster restore [filename] 同上   然後要將cluster重新啟動一下,才會生效     大概就寫這些東東,希望對各位有需要的網友帶來一些幫助的說,結合最近所作的一個項目,同時翻譯了redhat官方doc裡的內容形成了此篇文章,今天早上終於在被窩裡抱著筆記本把這個東東寫完了!希望能給大家帶來一些啟示。




Copyright © Linux教程網 All Rights Reserved