RAC中的各種IP-PUBLIC-VIP-Private-SCAN IP

wolfreturn發表於2015-04-30
1、PUBLIC和VIP
Oracle RAC中每個節點都有一個虛擬IP,簡稱VIP, 與公網PUBLIC IP在同一個網段。vip 附屬在public網口介面。

VIP和PUBLIC IP最主要的不同之處在於:VIP是浮動的,而PUBLIC IP是固定的。在所有節點都正常執行時,每個節點的VIP會被分配到public NIC上;在linux下ifconfig檢視,public網路卡上是2個IP地址;如果一個節點當機,這個節點的VIP會被轉移到還在執行的節點上。也就是倖存的節點的public NIC這個網路卡上,會有3個IP地址。
VIP 的作用:
VIP並不能把使用者請求轉到例項上;但是可以讓使用者可以連通IP,不能連到監聽,這樣可以快速收到連線報錯資訊。快速切換到正常的節點。

2再看RAC中的 Private

RAC中的 Private私有IP用於心跳同步,這個對於使用者層面,可以直接忽略。簡單理解,這個Ip用來保證兩臺伺服器同步資料用的,屬於RAC內部之間通訊。priv 與public 不應同屬一個介面。

另外一個大家疑問的問題:做RAC時,用於兩個node間互連的網路卡是否可以用交叉線連線?
Metalink上的RAC文件是推薦使用交換機作為內部網路卡的連線,而不使用交叉線,原因是避免因為對連節點關閉或重啟而導致網路卡檢查到連結故障狀態而刪除繫結的協議。導致快取記憶體合併網路將會變為不可用。
從圖上看,兩個節點間的內部通訊透過交換機S2來進行互動。

3.RAC中的SCAN IP

在11gR2中,SCAN IP是作為一個新增IP出現的, scan ip其實是oracle在客戶端與資料庫之間,新加的一個連線層,當有客戶端訪問時,連線到 SCAN IP LISTENER, 而SCAN IP LISTENER接收到連線請求時,會根據 LBA 演算法將該客戶端的連線請求,轉發給對應的instance上的VIP LISTENER,從而完成了整個客戶端與伺服器的連線過程。簡化如下:

client -> scan listener -> local listener -> local instance

也可以把scan理解為一個虛擬主機名,它對應的是整個RAC叢集。客戶端主機只需透過這個scan name即可訪問資料庫叢集的任意節點。當然訪問的節點是隨機的,oracle強烈建議透過DNS Server的round robin模式配置解析SCAN,實現負載均衡(即輪換連線SCAN對應的IP地址)。這有點類似透過vip和listener loadbalance配置實現負載均衡的原理。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24742969/viewspace-1613995/,如需轉載,請註明出處,否則將追究法律責任。

相關文章