如何修改叢集的公網資訊(包括 VIP) (文件 ID 1674442.1)
文件內容
|
用途 |
|
適用範圍 |
|
詳細資訊 |
情況1. 修改公網對應的主機名 |
情況2. 只修改公網 IP, 但是不修改網路卡、子網或網路掩碼資訊,或者只是修改MAC地址,而不需要修改其他資訊 |
情況3. 修改公網網路卡,子網或網路掩碼資訊 |
情況4. 修改 VIP 相關的公網資訊 |
準備修改VIP |
獲得當前的 VIP 配置 |
停止資源 |
修改 VIP 和相關屬性 |
重新啟動資源 |
其它 |
情況5:修改 SCAN VIP 相關的公網資訊 |
|
參考 |
適用於:
Oracle Database - Enterprise Edition - 版本 10.1.0.2 到 12.1.0.2 [發行版 10.1 到 12.1]本文件所含資訊適用於所有平臺
用途
本文的目標是透過舉例說明的方式說明在 Oracle 叢集/GI 環境下如何修改公網對應的主機名,公網 IP、VIP、VIP 對應的主機名或者其他 VIP 相關的屬性。
適用範圍
客戶端使用 VIP(虛擬 IP)連線 Oracle 資料庫的版本為 10g 和 11g 的叢集環境。這些虛擬 IP 是和虛擬主機名對應的靜態 IP 地址並且透過 DNS 解析(除非您使用了 11gR2 GNS)。
在安裝 Oracle 叢集管理軟體時,使用者會被要求為叢集中的每一個節點輸入一個虛擬 IP 和虛擬主機名。這些資訊會被記錄在 OCR
(Oracle Cluster Registry)中,而且 HA 框架中的不同元件會依賴於這些 VIP。如果出於某種原因,需要修改
VIP、VIP 對應的主機名或者公網的子網、網路掩碼等資訊,請按照本文介紹的過程。
詳細資訊
情況1. 修改公網對應的主機名
叢集公網對應的主機名是在安裝時輸入的,並且被記錄在 OCR 中。這個主機名在安裝之後是不能修改的。唯一的修改方法是刪除節點,修改主機名,之後將節點重新新增到叢集,或者直接重新安裝叢集軟體,並完成後續的克隆配置。
情況2. 只修改公網 IP, 但是不修改網路卡、子網或網路掩碼資訊,或者只是修改MAC地址,而不需要修改其他資訊
如果只需要修改公網 IP 地址,而且新的地址仍然在相同的子網,或者只是修改公網IP的MAC地址,IP/interface/subnet/netmask仍舊保持不變,叢集層面不需要做任何修改,所有需要的修改是在 OS 層面反映 IP 地址的變化。
1. 關閉 Oracle 叢集管理軟體
2. 在網路層面,DNS 和 /etc/hosts 檔案中修改 IP 地址,或者直接修改MAC地址
3. 重新啟動 Oracle 叢集管理軟體
以上的修改可以使用滾動的方式完成,例如:每次修改一個節點。
情況3. 修改公網網路卡,子網或網路掩碼資訊
如果修改涉及到了不同的子網(網路掩碼)或者網路卡,需要將 OCR 中已經存在的網路卡資訊刪除並重新新增新的資訊。在以下的示例中子網從 10.2.156.0 被修改為 10.2.166.0,需要執行兩個步驟 –首先‘delif’,接下來 ‘setif’:
% $CRS_HOME/bin/oifcfg/oifcfg setif -global <if_name>/<subnet>:public
例如:
% $CRS_HOME/bin/oifcfg delif -global eth0/10.2.156.0
% $CRS_HOME/bin/oifcfg setif -global eth0/10.2.166.0:public
然後,在作業系統層面進行修改。除非 OS 層面的修改需要重新啟動節點,否則不需要重啟 Oracle 叢集管理軟體。修改可以使用滾動的方式完成。
一旦公網資訊被修改,與其相關的 VIP 和 SCAN VIP 也需要修改,請參考情況4和情況5。
[grid@racnode1 bin]$ ./oifcfg delif -global eth0/192.168.1.0
PRIF-33: Failed to set or delete interface because hosts could not be discovered
CRS-02307: No GPnP services on requested remote hosts.
PRIF-32: Error in checking for profile availability for host racnode2
CRS-02306: GPnP service on host "racnode2" not found.
情況4. 修改 VIP 相關的公網資訊
準備修改VIP
一般而言,只有 10.2.0.3 之前的版本需要完全的停機。從 10.2.0.3 開始,ASM 和資料庫例項對 VIP 資源的依賴關係已經被刪除,所以修改 VIP 不需要停止 ASM 和資料庫例項,只有當修改 VIP 時產生的客戶端連線會受影響。如果修改只涉及到特定的節點,那麼只有連線到對應節點的客戶端連結在修改時會受影響。
首先,請參考情況3以確保公網資訊被修改。如果在 OS 層面的網路修改後發生了節點或者叢集管理軟體重啟,VIP 將不會被啟動,請跳過步驟“修改 VIP 和相關屬性”。
獲得當前的 VIP 配置
1. 獲取當前設定
對於版本 10g 和 11gR1, 使用 Oracle 叢集管理軟體的擁有者執行下面的命令:
例如:
$ srvctl config nodeapps -n racnode1 -a
VIP exists.: /racnode1-vip/101.17.80.184/255.255.254.0/eth1
對於版本 11gR2, 使用 Grid Infrastructure 的擁有者執行下面的命令:
例如:
$ srvctl config nodeapps -a
Network exists: 1/101.17.80.0/255.255.254.0/eth1, type static
VIP exists: /racnode1-vip/101.17.80.184/101.17.80.0/255.255.254.0/eth1, hosting node racnode1
VIP exists: /racnode2-vip/101.17.80.186/101.17.80.0/255.255.254.0/eth1, hosting node racnode2
2. 驗證 VIP 狀態
$ crs_stat -t
版本 11.2:
$ crsctl stat res -t
- 以上命令應該顯示 VIPs 狀態為 ONLINE
$ ifconfig -a
(HP 平臺請使用 netstat –in, Windows 平臺請使用 ipconfig /all)
- VIP 邏輯網路卡對應公網網路卡
停止資源
3. 停止 nodeapps 資源 (如果有必要的話,停止存在依賴關係的 ASM 和資料庫資源):
對於版本 10g 和 11gR1, 使用 Oracle 叢集管理軟體的擁有者執行下面的命令:
$ srvctl stop asm -n <node_name> (對於 10.2.0.3 及以上版本,可以忽略)
$ srvctl stop nodeapps -n <node_name>
例如:
$ srvctl stop instance -d RACDB -i RACDB1
$ srvctl stop asm -n racnode1
$ srvctl stop nodeapps -n racnode1
對於版本 11gR2, 使用 Grid Infrastructure 的擁有者執行下面的命令:
$ srvctl stop vip -n <node_name> -f
例如:
$ srvctl stop instance -d RACDB -n racnode1
$ srvctl stop vip -n racnode1 -f
PRCR-1014 : Failed to stop resource ora.racnode1.vip
PRCR-1065 : Failed to stop resource ora.racnode1.vip
CRS-2529: Unable to act on 'ora.racnode1.vip' because that would require stopping or relocating 'ora.LISTENER.lsnr', but the force option was not specified
...
4. 驗證 VIP 現在處於 OFFLINE 狀態,並且 VIP 不再繫結到公網網路卡
$ ifconfig -a
(HP 平臺請使用 netstat –in, Windows 平臺請使用 ipconfig /all)
修改 VIP 和相關屬性
5. 確定新的 VIP 地址/子網/網路掩碼或者 VIP 對應的主機名,在 OS 層面修改網路配置資訊,確認新的 VIP 地址應經註冊到 DNS 或者確認 /etc/hosts 檔案(Unix/Linux 平臺),\WINDOWS\System32\drivers\etc\hosts 檔案(Windows平臺)已經被修改。如果網路卡資訊被修改,確認在修改之前新的網路卡在伺服器上已經可用。
新VIP 地址:110.11.70.11 racnode1-nvip
新子網資訊:110.11.70.0
新網路掩碼:255.255.255.0
新網路卡:eth2
6. 使用 root 使用者修改 VIP 資源:
例如:
# srvctl modify nodeapps -n racnode1 -A racnode1-nvip/255.255.255.0/eth2
注意 1:從版本 11.2 開始,VIP 依賴於 network 資源(ora.net1.network),OCR 只記錄 VIP 主機名或者 VIP 資源相關的 IP 地址。叢集公網的屬性(子網/網路掩碼)透過網路資源記錄。當 nodeapps 資源被修改後,network資源(ora.net1.network)相關的屬性也會隨之被修改。
從 11.2.0.2 開始,如果只修改子網/網路掩碼資訊,網路資源可以透過以下的 srvctl modify network 命令直接修改。
使用 root 使用者:
# srvctl modify network -k <network_number>] [-S <subnet>/<netmask>[/if1[|if2...]]
例如:
# srvctl modify network -k 1 -S 110.11.70.0/255.255.255.0/eth2
如果其他屬性沒有變化,不需要修改 VIP 或 SCAN VIP。
注意 2:在12.1.0.1的版本上由於Bug 16608577 - CANNOT ADD SECOND PUBLIC INTERFACE IN ORACLE 12.1 ,srvctl modify network 的命令會失敗並提示:
# srvctl modify network -k 1 -S 110.11.70.0/255.255.255.0/eth2
PRCT-1305 : The specified interface name "eth2" does not match the existing network interface name "eth1"
需要透過以下workaround來解決:
# srvctl modify network -k 1 -S 110.11.70.0/255.255.255.0
# srvctl modify network -k 1 -S 110.11.70.0/255.255.255.0/eth2
* 一個 11gR2 修改 VIP 主機名,但是不修改 IP 地址的例子。
如果 IP 地址保持不變,以上的命令將不會改變命令‘crsctl stat res ora.racnode1.vip -p’的輸出中專案 USR_ORA_VIP 的值。請使用下面的命令:
# crsctl modify res ora.racnode1.vip -attr USR_ORA_VIP=racnode1-nvip
驗證專案 USR_ORA_VIP 的改變:
# crsctl stat res ora.racnode1.vip -p |grep USR_ORA_VIP
使用管理員使用者或者軟體安裝使用者:
> srvctl modify nodeapps -n racnode1 -A 110.11.70.11/255.255.255.0/"Local Area Connection 1"
7. 驗證改變
$ srvctl config nodeapps -a (11gR2)
例如:
$ srvctl config nodeapps -n racnode1 -a
VIP exists.: /racnode1-nvip/110.11.70.11/255.255.255.0/eth2
重新啟動資源
8. 啟動 nodeapps 和其它資源
對於版本 10g 和 11gR1, 使用 Oracle 叢集管理軟體的擁有者執行下面的命令:
$ srvctl start asm -n <node_name> (對於 10.2.0.3 及以上版本,可以忽略)
$ srvctl start instance -d <dbanme> -i <inst> (對於 10.2.0.3 及以上版本,可以忽略)
例如:
$ srvctl start nodeapps -n racnode1
$ srvctl start asm -n racnode1
$ srvctl start instance -d RACDB -i RACDB1
對於版本 11gR2, 使用 Grid Infrastructure 的擁有者執行下面的命令:
$ srvctl start vip -n <node_name>
$ srvctl start listener -n <node_name>
$ srvctl start instance -d <db_name> -n <node_name> (可以忽略)
$ srvctl start vip -n racnode1
$ srvctl start listener -n racnode1
$ srvctl start instance -d RACDB -n racnode1
注意:如果網路的屬性做了修改,比如netmask 等做了修改,需要重新啟動nodeapps
9. 驗證新的 VIP 狀態為 ONLINE 並且已經繫結到叢集公網網路卡
$ ifconfig -a
(HP 平臺請使用 netstat –in, Windows 平臺請使用 ipconfig /all)
10. 如果叢集中的其它節點也需要類似的改變,請重複同樣的步驟。
其它
11. 如果需要,修改 listener.ora, tnsnames.ora 和 LOCAL_LISTENER/REMOTE_LISTENER 引數反應 VIP 的改變。
情況5:修改 SCAN VIP 相關的公網資訊
對於 11gR2 Grid Infrastructure,客戶端可以透過 SCAN 和 SCAN VIP 連線資料庫。請參考下面的 Note 修改 SCAN VIP。
Note 952903.1 How to update the IP address of the SCAN VIP resources (ora.scan<n>.vip)
Note 972500.1 How to Modify SCAN Setting or SCAN Listener Port after Installation
參考
NOTE:283684.1 - How to Modify Private Network Information in Oracle ClusterwareNOTE:952903.1 - How to update the IP address of the SCAN VIP resources (ora.scan{n}.vip)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31393455/viewspace-2130397/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 如何在 oracle 叢集環境下修改私網資訊 (文件 ID 2103317.1)Oracle
- 【RAC】Oracle rac 如何修改公網及vipOracle
- RAC更改叢集VIP
- RAC如何修改VIP
- 【RAC】如何修改vip 或者vip 對應的hostname
- 修改vip (Doc ID 276434.1)
- oracle 11g rac 修改VIP、scan VIP、priv IP操作文件Oracle
- 更改rac的vip地址和叢集互聯地址
- 將Standard標準叢集修改為Flex叢集Flex
- Elasticsearch——叢集管理及文件CRUDElasticsearch
- Hadoop叢集搭建文件Hadoop
- oracle 11gR2 如何修改vipOracle
- 修改RAC叢集私網地址和子網掩碼的實施步驟
- 更改oracle叢集中的的vipOracle
- 基於同網段的RAC架構VIP修改架構
- 基於不同網段的RAC架構VIP修改架構
- 網站修改登入密碼?如何修改網站後臺資訊?網站密碼
- MongoDB叢集搭建(包括隱藏節點,仲裁節點)MongoDB
- 修改叢集資料庫的歸檔模式資料庫模式
- 聊聊如何讓辦公網路直連Kubernetes叢集PodIP/ClusterIP/Service DNS等DNS
- tidb dm叢集修改某個dm-worker的儲存目錄TiDB
- 網站後臺管理如何修改?網站後臺修改自己資訊?網站
- 如何檢視Oracle RAC叢集的叢集名稱(CLUSTER NAME)Oracle
- Sybase IQ 16叢集修改啟動埠
- k8s-mongodb叢集部署(副本集) (包括規劃文件-攢)K8SMongoDB
- 【手摸手玩轉 OceanBase 77】如何檢視叢集的資源資訊?
- RAC中修改IP, VIP
- kubernetes叢集證書期限修改(三)
- elasticsearch如何設計叢集Elasticsearch
- 如何部署hadoop叢集Hadoop
- RAC 11.2.0.3 修改VIP地址
- Zookeeper叢集 + Kafka叢集Kafka
- RAC修改叢集兩個節點public ip地址
- OracleRAC管理 之 叢集狀態&資訊檢視Oracle
- 共建世界級電子資訊和裝備製造產業叢集、人工智慧產業叢集產業人工智慧
- EJB叢集和Webservice叢集的討論Web
- 政府網站叢集建設網站
- ClickHouse(04)如何搭建ClickHouse叢集