Using KVM Configure Oracle HA With RHCS IN RHEL6.1

本文包含以下幾個知識點:

1、rhel6中配置Oracle ASM。

2、KVM中安裝配置RHCS。

3、RHCS中註冊oracle資源。

4、禁用IPV6。

環境介紹:

這裏的共享存儲使用的是KVM的共享存儲功能,分別使用了三個10G大小的虛擬磁盤。

主機名 IP 內存 硬盤 註釋
server.exmaple.com 192.168.1.10 16G /dev/vda系統盤,/dev/vd{b,c,d}共享磁盤,用於創建ASM磁盤 DNS服務器,管理RHCS節點,KVM
cs01.example.com 192.168.2.11 2G /dev/vda系統盤,/dev/vd{b,c,d}共享磁盤,用於創建ASM磁盤 RHCS節點1
cs02.example.com 192.168.2.12 2G /dev/vda系統盤,/dev/vd{b,c,d}共享磁盤,用於創建ASM磁盤 RHCS節點2
oracle.example.com 192.168.2.20 N/A /dev/vda系統盤,/dev/vd{b,c,d}共享磁盤,用於創建ASM磁盤 oracle邏輯主機名

一、KVM的配置:

具體的KVM安裝配置過程請參考我的另一篇博文:RHEL6之KVM的安裝配置。這裏操作系統使用的是rhel6.1系統。這裏具體描述下創建共享存儲以及虛擬網絡。

1、創建共享存儲:

首先在虛擬系統管理器界面,右鍵點擊localhost(QEMU),選擇詳情,會出現物理主機詳情的界面:

image

image

然後,點擊存儲,在存儲池中創建卷,如圖所示創建了三個ASM卷,接着打開任意一個虛擬機,在虛擬硬件詳情裏點擊”添加硬件”,將上述的三個卷添加進去,如圖:

image

點完成之後,在新添加的磁盤選項中,在”可共享”選項中打勾。在另外一臺上,按照上述方法添加新硬盤,點完成後,會彈出以下對話框:

image

選擇”是”即可,完成之後,共享存儲就設置完畢,兩節點開機後,就可以看到新加的三塊虛擬硬盤。

image

在KVM虛擬機中,可以在線添加硬盤,添加完畢後,不用重啓系統就可以立即被識別。

2、創建虛擬網絡:

image

在上圖中點擊”+”,出現創建新的虛擬網絡畫面:

image

image

image

image

image

image

最後,點擊完成即可。

image

最後,ifconfig下會出現新的虛擬網絡接口:

image

3、禁用IPV6:

首先編輯/etc/sysconfig/network文件,加入以下內容:

IPV6INIT=no

接着在/etc/modprobe.d目錄下,創建disable-ipv6.conf文件,加入以下內容:

image

最後重啓系統使其生效即可。關於上述幾個語句的具體含義,請參考/usr/share/doc/initscripts-9.03.23/sysconfig.txt文件。

二、RHCS的安裝:

在rhel6.1中,安裝luci之後,不用再使用luci_admin命令執行初始化操作了,默認的訪問地址還是https://ip:8084,直接使用root帳號登錄即可。這裏先建個cluster框架,暫時不註冊oracle資源,待oracle安裝完了之後,再向rhcs中註冊oracle資源。

1、server上安裝luci軟件:

image

這個組裏就一個luci軟件包,所以在cs01和cs02上不需要安裝。

2、cs01和cs02上安裝集羣軟件:

image

image

3、編輯hosts文件,將三個節點的名稱及IP加進去:

image

4、如果防火牆啓用,則需要啓用以下端口:

image

image

5、使用luci創建一個cluster:

(1)、構建cluster框架:

啓動luci並登錄rhcs的web管理界面,開始配置rhcs:

image

image

image

點擊上圖中的Create按鈕,創建集羣:

image

在點擊Create Cluster之前,確保兩個節點上的ricci處於運行狀態,否則會出現以下報錯:

image

還有就是在初次使用的時候,必須在集羣節點上設置ricci用戶的密碼,否則會出現以下錯誤:

image

image

經過一系列的配置重啓節點後,如下圖所示:

image

點擊任意一個節點,就可以看到所有的cluster服務已經啓動:

image

image

(2)、創建Failover Domain:

點擊”Failover Domain”選項卡,然後點擊”Add”按鈕:

image

Failover domain name:定義Failover域名稱。
Prioritized:是否在Failover domain 中啓用域成員優先級設置。
Restrict Failover to this domain’s member:是否在失敗轉移域成員中啓用服務故障切換限制。
Do not fail back services in this domain:表示在這個域中使用故障切回功能,也就是說,主節點故障時,備用節點會自動接管主節點服務和資源,當主節點恢復正常時,集羣的服務和資源會從備用節點自動切換到主節點。最後,在Failover domain membership的Member複選框中,選擇加入此域的節點,在“priority”處將cs01的優先級設置爲1,cs02的優先級設置爲5。對於“priority”的值設置爲1代表優先級最高的,隨着數值的增加,節點優先級也依次降低。

(3),配置Fence設備:

點擊Fence Devices選項卡再點擊Add,如圖:

image

這裏使用的是SCSI_Fence,使用的是裸設備。

接着在各個節點中關聯fence設備:

點擊節點名稱,然後選擇Add Fence Method,設置名稱,完成之後,再添加fence實例:

image

使用命令行查看fence設備信息:

image

image

(4)、使用命令查看rhcs相關信息:

image

image

image

三、Oracle的安裝:

1、RHEL6中ASMlib的安裝:

對於rhel6,oracle已經不提供ASMlib支持了。oracle只對自己的Oracle Enterprise Linux提供Oracle支持。在oracle linux中,默認已經將ASM模塊編譯進內核了,只需安裝oracleasm-support軟件即可使用。由於oracle提供的Unbreakable Enterprise Kernel內核與rhel6的內核完全兼容,所以在rhel6中只需安裝kernel-uek開頭的內核文件,然後再安裝oracleasm-support軟件即可使用ASM。

Oracle ASM軟件以及Unbreakable Enterprise Kernel內核下載站點:http://public-yum.oracle.com/repo/OracleLinux/OL6/1/base/x86_64/,主要下載下圖中的幾個軟件包,兩個節點都進行安裝:

image

對/dev/vd{b,c,d}進行分區操作:

image

image

完成之後,在其中一個節點上使用oracleasm進行初始化並創建ASM磁盤:

image

最後,在另外一個點上掃描下asm磁盤即可:

image

2、Oracle數據庫軟件的安裝:

這裏不使用ASM磁盤組,安裝的數據庫版本是11.2.0.2。共享存儲使用的是LVM。Oracle軟件安裝過程、監聽創建過程以及建庫過程全省略,請參考其他博文。

3、創建共享文件系統:

使用/dev/vd{b,c,d}三個虛擬硬盤創建LVM卷組oradata。

image

接着,創建了一個邏輯卷組u02用於存放oracle數據。

四、註冊oracle資源:

1、創建IP資源:

image

這個IP就是Oracle監聽器的地址,對應的主機名是oracle.example.com.

2、創建LVM HA資源:

image

對這個做個解釋:用於LVM HA的vg是oradata,其中劃分了一個15G大小的u02用於存放oracle數據文件。

image

LVM的HA切換是這樣的,當前oradata存在於cs02上面,首先系統卸載u02文件系統,接着將/dev/oradata/u02設置爲未激活狀態,然後執行vgexport將oradata導出。在cs01上面,首先執行vgimport將oradata導入,接着將/dev/oradata/u02設置爲激活狀態,最後掛載到指定點。

3、創建文件系統資源:

image

這個資源依賴於上面的LVM-HA資源。

4、創建監聽器資源:

image

這個agent調用的是/usr/share/cluster/oralistener.sh腳本。

5、oracle數據庫實例資源:

image

這個agent調用的是/usr/share/cluster/orainstance.sh。

6、創建服務組:

這裏創建了一個oracle服務組,上述創建的5個資源將其添加到oracle組裏構成一個服務組。這個不好截取web界面,所以使用命令行界面:

image

上述的資源所調用的腳本都位於/usr/share/cluster目錄下。創建完服務組之後,系統會自動啓動它。當前oracle服務組已處於online狀態:

image

image

image

針對於oracle.example.com這個IP地址,不能使用ifconfig查看,要使用下面的ip命令進行查看:

image

五、RHCS的命令行管理:

1、查看RHCS服務組狀態:

image

2、切換服務組:

當前oracle運行於cs02上,將其切換至cs01上:

image

3、ccs命令的相關使用:

查看資源以及服務組信息:

image

查看當前的cluster配置信息:

image

這個命令實質上就是查看cluster.conf文件。

查看Failoverdomain信息:

image

查看fence信息:

image

查看節點信息:

image

ccs這個命令也可以創建cluster,增加節點,創建資源、刪除資源、修改資源等操作,其類似於在web管理界面的操作。

參考文獻:

                Red Hat Enterprise Linux 6 Cluster Administration

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