大綱
一、高可用集群的定義
二、高可用集群的衡量標準
三、高可用集群的層次結構
推薦閱讀:
centos
99.9% 一年宕機時間不超過10小時
99.99% 一年宕機時間不超過1小時
99.999% 一年宕機時間不超過6分鐘
三、高可用集群的層次結構
說明:高可用集群可分為三個層次結構,分別由紅色部分的messaging與membership層,藍色部分的cluster resource manager(crm)層,綠色部分的local resource manager(lrm)與resource agent(ra)組成,下面我們就來具體說明(如上圖), 1.位於最底層的是資訊和成員關係層(messaging and membership),messaging主要用於節點之間傳遞心跳資訊,也稱為心跳層。節點之間傳遞心跳資訊可以通過廣播,組播,單播等方式。成員關係(membership)層,這層最重要的作用是主節點(dc)通過cluster consensus menbership service(ccm或者ccs)這種服務由messaging層提供的資訊,來產生乙個完整的成員關係。這層主要實現承上啟下的作用,承上,將下層產生的資訊生產成員關係圖傳遞給上層以通知各個節點的工作狀態;啟下,將上層對於隔離某一裝置予以具體實施。 2.集群資源管理層(cluster resource manager),真正實現集群服務的層。在該層中每個節點都執行乙個集群資源管理器(crm,cluster resource manager),它能為實現高可用提供核心元件,包括資源定義,屬性等。在每乙個節點上crm都維護有乙個cib(集群資訊庫 xml文件)和lrm(本地資源管理器)元件。對於cib,只有工作在dc(主節點)上的文件是可以修改的,其他cib都是複製dc上的那個文件而來的。對於lrm,是執行crm傳遞過來的在本地執行某個資源的執行和停止的具體執行人。當某個節點發生故障之後,是由dc通過pe(策略引擎)和te(實施引擎)來決定是否搶奪資源。 3.資源**層(resource agents),集群資源**(能夠管理本節點上的屬於集群資源的某一資源的啟動,停止和狀態資訊的指令碼),資源**分為:lsb(/etc/init.d/*),ocf(比lsb更專業,更加通用),legacy heartbeat(v1版本的資源管理)。
核心元件的具體說明(如上圖): 1.ccm元件(cluster consensus menbership service):作用,承上啟下,監聽底層接受的心跳資訊,當監聽不到心跳資訊的時候就重新計算整個集群的票數和收斂狀態資訊,並將結果轉遞給上層,讓上層做出決定採取怎樣的措施,ccm還能夠生成乙個各節點狀態的拓撲結構概覽圖,以本節點做為視角,保證該節點在特殊情況下能夠採取對應的動作。 2.crmd元件(cluster resource manager,集群資源管理器,也就是pacemaker):實現資源的分配,資源分配的每個動作都要通過crm來實現,是核心組建,每個節點上的crm都維護乙個cib用來定義資源特定的屬性,哪些資源定義在同乙個節點上。 3.cib元件(集群資訊基庫,cluster infonation base):是xml格式的配置檔案,在記憶體中的乙個xml格式的集群資源的配置檔案,主要儲存在檔案中,工作的時候常駐在記憶體中並且需要通知給其它節點,只有dc上的cib才能進行修改,其他節點上的cib都是拷貝dc上。配置cib檔案的方法有,基於命令列配置和基於前台的圖形介面配置。 4.lrmd元件(local resource manager,本地資源管理器):用來獲取本地某個資源的狀態,並且實現本地資源的管理,如當檢測到對方沒有心跳資訊時,來啟動本地的服務程序等。 5.pengine元件: pe(policy engine):策略引擎,來定義資源轉移的一整套轉移方式,但只是做策略者,並不親自來參加資源轉移的過程,而是讓te來執行自己的策略。
te(transition engine): 就是來執行pe做出的策略的並且只有dc上才執行pe和te。
6.stonithd元件 stonith(shoot the other node in the head,」爆頭「), 這種方式直接操作電源開關,當乙個節點發生故障時,另 乙個節點如果能偵測到,就會通過網路發出命令,控制故障節點的電源開關,通過暫時斷電,而又上電的方式使故障節點被重啟動, 這種方式需要硬體支援。 stonith應用案例(主從伺服器),主伺服器在某一端時間由於服務繁忙,沒時間響應心跳資訊,如果這個時候備用伺服器一下子把服務資源搶過去,但是這個時候主伺服器還沒有宕掉,這樣就會導致資源搶占,就這樣使用者在主從伺服器上都能訪問,如果僅僅是讀操作還沒事,要是有寫的操作,那就會導致檔案系統崩潰,這樣一切都玩了,所以在資源搶占的時候,可以採用一定的隔離方法來實現,就是備用伺服器搶占資源的時候,直接把主伺服器給stonith,就是我們常說的」爆頭 」。
高可用集群 HA 的搭建 翻譯
高可用集群的搭建 解決方案一 the mon heartbeat fake coda solution mon 乙個通用的資源監控系統,它能監控網路服務的可用性和服務節點。heartbeat 通過 序列線 或者 udp 提供兩個節點之間的心跳檢測。fake 通過arp欺騙 spoofing 實現ip...
高可用HA配置
注意 在此之前zookeeper要配置好 1.首先我們修改core site.xml檔案 1 指定hdfs的nameservice為mycluster fs.defaultfs hdfs mycluster 2 指定hadoop臨時目錄 hadoop.tmp.dir home master hado...
HDFS的HA 高可用
問題 namenode是單節點的,容易發生單點故障。在hadoop2.x之後,可以部署兩個namenode,乙個active 活躍的 另外乙個是standby 備份的 如果要實現這種高可用,需要解決兩個問題 1.資料的同步 資料的同步包括兩部分 靜態資料和動態資料,靜態資料是指元資料資訊 塊名稱,大...