学堂 学堂 学堂公众号手机端

修改rac环境IP

lewis 4年前 (2020-11-29) 阅读数 5 #技术
数据库:oracle 11.2.0.4
系统:CentOS7.9
环境:rac双节点
实验目标:修改rac环境IP

说明:ens33网卡有修改到桥接模式.


1、简要步骤
a、正常关库、监听和CRS
b、修改/etc/hosts配置文件
c、OS层面修改公有网卡地址
d、启动CRS
e、修改Public IP、VIP、SCAN VIP
f、修改Private IP

2、关库、监听和CRS
正常关库、监听和CRS
[grid@hisdb1 ~]$ srvctl stop database -d orcl -o immediate
[grid@hisdb1 ~]$ srvctl stop listener
[grid@hisdb1 ~]$ which crsctl
[root@hisdb1 ~]# /u01/app/11.2.0/grid/bin/crsctl stop crs
查看节点2状态
[grid@hisdb2 ~]$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg
ONLINE ONLINE hisdb2
ora.FRA.dg
ONLINE ONLINE hisdb2
ora.LISTENER.lsnr
OFFLINE OFFLINE hisdb2
ora.OCR.dg
ONLINE ONLINE hisdb2
ora.asm
ONLINE ONLINE hisdb2 Cluster Reconfigura
tion
ora.gsd
OFFLINE OFFLINE hisdb2
ora.net1.network
ONLINE ONLINE hisdb2
ora.ons
ONLINE ONLINE hisdb2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
1 ONLINE ONLINE hisdb2
ora.cvu
1 ONLINE ONLINE hisdb2
ora.hisdb1.vip
1 ONLINE INTERMEDIATE hisdb2 FAILED OVER
ora.hisdb2.vip
1 ONLINE ONLINE hisdb2
ora.oc4j
1 ONLINE ONLINE hisdb2
ora.orcl.db
1 OFFLINE OFFLINE
2 OFFLINE OFFLINE
ora.scan1.vip
1 ONLINE ONLINE hisdb2

[root@hisdb2 ~]# /u01/app/11.2.0/grid/bin/crsctl stop crs
注意:按如上步骤关服务,再次启动crs时,监听和数据库不会自动启动.

3、修改/etc/hosts配置文件
说明:双节点执行.
根据需求,先备份原来的/etc/hosts文件为/etc/hosts.bak
[root@hisdb1 ~]# cp /etc/hosts /etc/hosts.bak
[root@hisdb2 ~]# cp /etc/hosts /etc/hosts.bak

然后修改/etc/hosts文件,将public ip、vip、scan ip修改为如下值:
#Public IP (ens33)
192.168.0.60 hisdb1
192.168.0.61 hisdb2

#Virtual IP
192.168.0.62 hisdb1-vip
192.168.0.63 hisdb2-vip

#Scan IP
192.168.0.64 hisdb-scan

注意:其他内容不变.关于private ip,等后面修改private ip时再做修改.

4、OS层面修改公有网卡地址
说明:4.1-4.2双节点执行.
确认之前公网网卡信息:
[root@hisdb1 ~]# ifconfig -a
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.133.160 netmask 255.255.255.0 broadcast 192.168.133.255
inet6 fe80::9a82:e42d:1d3a:2eef prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:3d:aa:80 txqueuelen 1000 (Ethernet)
RX packets 1759 bytes 177515 (173.3 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1017 bytes 172763 (168.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@hisdb2 ~]# ifconfig -a
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.133.161 netmask 255.255.255.0 broadcast 192.168.133.255
inet6 fe80::a001:d6ae:9117:3874 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:28:bd:8c txqueuelen 1000 (Ethernet)
RX packets 1446 bytes 151145 (147.6 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 787 bytes 123237 (120.3 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
4.1、修改虚拟机环境的网卡连接方式
将“nat模式(N)”修改为“桥接网卡”
4.2、修改public ip地址
到虚拟机管理界面进行主机的对应网卡IP地址修改,之后重新启动对应的网卡.
主要命令如下:
vi /etc/sysconfig/network-scripts/ifcfg-ens33
ifdown ens33
ifup ens33
ifconfig ens33
ping 192.168.0.60
ping 192.168.0.61

以节点1为例,修改后的网卡信息:
[root@hisdb1 ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=96baac06-d46a-4699-9db6-073fcd8bae3f
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.0.60
HWADDR=00:0c:29:3d:aa:80
PREFIX=24
#GATEWAY=192.168.146.2
#DNS1=192.168.146.2
IPV6_PRIVACY=no
说明:绿色高亮部分为修改内容.

[root@hisdb1 ~]# ifconfig ens33
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.60 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::9a82:e42d:1d3a:2eef prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:3d:aa:80 txqueuelen 1000 (Ethernet)
RX packets 2181 bytes 206654 (201.8 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1196 bytes 192806 (188.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

注意:此时可使用局域网其他机器配置CRT连接到新修改的IP地址,确认主机的Public IP地址在主机层面已经修改完毕.
5、启动CRS
[root@hisdb1 ~]# /u01/app/11.2.0/grid/bin/crsctl start crs
CRS-4123: Oracle High Availability Services has been started.
[grid@hisdb1 ~]$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg
ONLINE ONLINE hisdb1
ONLINE ONLINE hisdb2
ora.FRA.dg
ONLINE ONLINE hisdb1
ONLINE ONLINE hisdb2
ora.LISTENER.lsnr
OFFLINE OFFLINE hisdb1
OFFLINE OFFLINE hisdb2
ora.OCR.dg
ONLINE ONLINE hisdb1
ONLINE ONLINE hisdb2
ora.asm
ONLINE ONLINE hisdb1 Started
ONLINE ONLINE hisdb2 Started
ora.gsd
OFFLINE OFFLINE hisdb1
OFFLINE OFFLINE hisdb2
ora.net1.network
ONLINE OFFLINE hisdb1
ONLINE OFFLINE hisdb2
ora.ons
ONLINE OFFLINE hisdb1
ONLINE OFFLINE hisdb2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
1 ONLINE OFFLINE
ora.cvu
1 ONLINE OFFLINE
ora.hisdb1.vip
1 ONLINE OFFLINE
ora.hisdb2.vip
1 ONLINE OFFLINE
ora.oc4j
1 ONLINE ONLINE hisdb1
ora.orcl.db
1 OFFLINE OFFLINE Instance Shutdown
2 OFFLINE OFFLINE Instance Shutdown
ora.scan1.vip
ONLINE OFFLINE
说明:绿色高亮部分需注意.

6、修改public ip、vip、scan ip
说明:6.1-6.3主要步骤节点1执行
6.1、修改public ip
--查看当前设定
[root@hisdb1 ~]# /u01/app/11.2.0/grid/bin/oifcfg getif
ens33 192.168.133.0 global public
ens37 192.168.11.0 global cluster_interconnect
删除旧值并设定新值
[root@hisdb1 ~]# /u01/app/11.2.0/grid/bin/oifcfg delif -global ens33
[root@hisdb1 ~]# /u01/app/11.2.0/grid/bin/oifcfg setif -global ens33/192.168.0.0:public
查看验证修改成功:
[root@hisdb1 ~]# /u01/app/11.2.0/grid/bin/oifcfg getif
ens37 192.168.11.0 global cluster_interconnect
ens33 192.168.0.0 global public
[root@hisdb2 ~]# /u01/app/11.2.0/grid/bin/oifcfg getif
ens37 192.168.11.0 global cluster_interconnect
ens33 192.168.0.0 global public
6.2、修改vip
说明:需停止数据库、监听和vip(此处数据库和监听已经处于停止状态)
[grid@hisdb2 ~]$ srvctl stop vip -n hisdb1
[grid@hisdb2 ~]$ srvctl stop vip -n hisdb2
查看当前vip设置
[grid@hisdb1 ~]$ olsnodes -s
hisdb1 Active
hisdb2 Active
[grid@hisdb1 ~]$ srvctl config vip -n hisdb1
VIP exists: /hisdb1-vip/192.168.0.62/192.168.133.0/255.255.255.0/ens33, hosting node hisdb1
[grid@hisdb1 ~]$ srvctl config vip -n hisdb2
VIP exists: /hisdb2-vip/192.168.0.63/192.168.133.0/255.255.255.0/ens33, hosting node hisdb2
修改vip设置
[root@hisdb1 ~]# /u01/app/11.2.0/grid/bin/srvctl modify nodeapps -n hisdb1 -A 192.168.0.62/255.255.255.0/ens33
[root@hisdb1 ~]# /u01/app/11.2.0/grid/bin/srvctl modify nodeapps -n hisdb2 -A 192.168.0.63/255.255.255.0/ens33
再次验证vip
[root@hisdb1 ~]# /u01/app/11.2.0/grid/bin/srvctl config vip -n hisdb1
VIP exists: /hisdb1-vip/192.168.0.62/192.168.0.0/255.255.255.0/ens33, hosting node hisdb1
[root@hisdb1 ~]# /u01/app/11.2.0/grid/bin/srvctl config vip -n hisdb2
VIP exists: /hisdb2-vip/192.168.0.63/192.168.0.0/255.255.255.0/ens33, hosting node hisdb2
启动vip
[grid@hisdb1 ~]$ srvctl start vip -n hisdb1
[grid@hisdb1 ~]$ srvctl start vip -n hisdb2
启动监听
[grid@hisdb1 ~]$ srvctl start listener
启动数据库
[grid@hisdb1 ~]$ srvctl start database -d orcl

确认local_listener信息:
查看local_listener信息,如果不正确需要修改
SQL> show parameter local_listener

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
local_listener string (ADDRESS=(PROTOCOL=TCP)(HOST=
192.168.0.62)(PORT=1521))
SQL> show parameter local_listener

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
local_listener string (ADDRESS=(PROTOCOL=TCP)(HOST=
192.168.0.63)(PORT=1521))
节点1
SQL> alter system set local_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.0.62)(PORT=1521))' sid='hisdb1';

System altered.
节点2
SQL> alter system set local_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.0.63)(PORT=1521))' sid='hisdb2';

System altered.

6.3、修改scan ip
查看scan ip当前设置
[grid@hisdb1 ~]$ srvctl config scan
SCAN name: hisdb-scan, Network: 1/192.168.0.0/255.255.255.0/ens33
SCAN VIP name: scan1, IP: /hisdb-scan/192.168.133.164
[grid@hisdb2 ~]$ srvctl config scan
SCAN name: hisdb-scan, Network: 1/192.168.0.0/255.255.255.0/ens33
SCAN VIP name: scan1, IP: /hisdb-scan/192.168.133.164
停止scan_listener和scan资源
[grid@hisdb1 ~]$ srvctl stop scan_listener
[grid@hisdb1 ~]$ srvctl stop scan
确认:
[grid@hisdb1 ~]$ srvctl status scan_listener
SCAN Listener LISTENER_SCAN1 is enabled
SCAN listener LISTENER_SCAN1 is not running
[grid@hisdb1 ~]$ srvctl status scan
SCAN VIP scan1 is enabled
SCAN VIP scan1 is not running
使用root用户修改scan vip
[root@hisdb1 ~]# /u01/app/11.2.0/grid/bin/srvctl modify scan -n hisdb-scan
注意:root用户执行修改,且确认/etc/hosts映射关系已修改为新的san vip.

修改并启动资源
[root@hisdb1 ~]# /u01/app/11.2.0/grid/bin/srvctl modify scan_listener -u
[root@hisdb1 ~]# /u01/app/11.2.0/grid/bin/srvctl start scan_listener
注意:执行后确认scan_listener和scan都已经启动.
确认修改成功
[grid@hisdb1 ~]$ srvctl config scan
SCAN name: hisdb-scan, Network: 1/192.168.0.0/255.255.255.0/ens33
SCAN VIP name: scan1, IP: /hisdb-scan/192.168.0.64
[grid@hisdb1 ~]$ srvctl config scan_listener
SCAN Listener LISTENER_SCAN1 exists. Port: TCP:1521
查看整个集群状态正常
[grid@hisdb1 ~]$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg
ONLINE ONLINE hisdb1
ONLINE ONLINE hisdb2
ora.FRA.dg
ONLINE ONLINE hisdb1
ONLINE ONLINE hisdb2
ora.LISTENER.lsnr
ONLINE ONLINE hisdb1
ONLINE ONLINE hisdb2
ora.OCR.dg
ONLINE ONLINE hisdb1
ONLINE ONLINE hisdb2
ora.asm
ONLINE ONLINE hisdb1 Started
ONLINE ONLINE hisdb2 Started
ora.gsd
OFFLINE OFFLINE hisdb1
OFFLINE OFFLINE hisdb2
ora.net1.network
ONLINE ONLINE hisdb1
ONLINE ONLINE hisdb2
ora.ons
ONLINE ONLINE hisdb1
ONLINE ONLINE hisdb2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
1 ONLINE ONLINE hisdb2
ora.cvu
1 ONLINE ONLINE hisdb1
ora.hisdb1.vip
1 ONLINE ONLINE hisdb1
ora.hisdb2.vip
1 ONLINE ONLINE hisdb2
ora.oc4j
1 ONLINE ONLINE hisdb1
ora.orcl.db
1 ONLINE ONLINE hisdb1 Open
2 ONLINE ONLINE hisdb2 Open
ora.scan1.vip
1 ONLINE ONLINE hisdb2

至此,oracle 11g rac的public ip、vip、scan ip修改结束.

7、修改private ip
参考网址:https://wenku.baidu.com/view/7a704240aa8271fe910ef12d2af90242a895abf2.html
说明:很少会遇到修改private ip的需求,不过此处依然实验一下.
7.1、备份文件
从oracle 11.2 gi开始,私有网络配置不仅仅存在ocr中,还存在gpnp profile中,所以首先备份profile.xml
--MOS上的说明:
Please take a backup of profile.xml on all cluster nodes before proceeding, as grid user:
$ cd $GRID_HOME/gpnp/
/profiles/peer/
$ cp -p profile.xml profile.xml.bk
节点1备份:
[grid@hisdb1 peer]$ pwd
/u01/app/11.2.0/grid/gpnp/hisdb1/profiles/peer
[grid@hisdb1 peer]$ cp profile.xml profilebk.xml

节点2备份
[grid@hisdb2 ~]$ cp /u01/app/11.2.0/grid/gpnp/hisdb2/profiles/peer/profile.xml /u01/app/11.2.0/grid/gpnp/hisdb2/profiles/peer/profilebk.xml
确认crs集群在各节点状态
[grid@hisdb1 ~]$ olsnodes -s
hisdb1 Active
hisdb2 Active
[grid@hisdb1 ~]$ olsnodes -s -n -i
hisdb1 1 hisdb1-vip Active
hisdb2 2 hisdb2-vip Active
7.2、设定新的私网信息
如果只是修改private ip而不用更改网卡时,参考以下:
[grid@hisdb1 ~]$ oifcfg getif (查看private ip配置)
ens37 192.168.11.0 global cluster_interconnect
ens33 192.168.0.0 global public
[grid@hisdb1 ~]$ oifcfg setif -global ens37/192.168.12.0:cluster_interconnect 添加ens37新的private ip
[grid@hisdb1 ~]$ oifcfg delif -global ens37/192.168.11.0 删除ens37旧的private ip
[grid@hisdb1 ~]$ oifcfg getif
ens33 192.168.0.0 global public
ens37 192.168.12.0 global cluster_interconnect

如果需要更改private ip网卡时,参考如下命令:
oifcfg getif
oifcfg setif -global ens38/192.168.12.0:cluster_interconnect
oifcfg delif global ens37
oifcfg getif

7.3、关闭crs服务
说明:双节点执行
[root@hisdb1 ~]# /u01/app/11.2.0/grid/bin/crsctl stop crs -f
root@hisdb2 ~]# /u01/app/11.2.0/grid/bin/crsctl stop crs -f
7.4、修改是由网络物理ip地址和/etc/hosts文件
说明:双节点执行
[root@hisdb2 ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens37
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens37
UUID=d0b249b5-1263-3de5-af4d-9b6b6945fbbb
DEVICE=ens37
ONBOOT=yes
IPADDR=192.168.12.126
HWADDR=00:0c:29:28:bd:96
PREFIX=24
#GATEWAY=192.168.133.2
#DNS1=192.168.133.2
IPV6_PRIVACY=no
[root@hisdb2 ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
#Public IP (ens33)
192.168.0.60 hisdb1
192.168.0.61 hisdb2

#Private IP (ens37)
192.168.12.125 hisdb1-priv
192.168.12.126 hisdb2-priv

#Virtual IP
192.168.0.62 hisdb1-vip
192.168.0.63 hisdb2-vip

#Scan IP
192.168.0.64 hisdb-scan
7.5、启动和查看crs服务
[root@hisdb1 ~]# /u01/app/11.2.0/grid/bin/crsctl start crs
[grid@hisdb2 ~]$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg
ONLINE ONLINE hisdb1
ONLINE ONLINE hisdb2
ora.FRA.dg
ONLINE ONLINE hisdb1
ONLINE ONLINE hisdb2
ora.LISTENER.lsnr
ONLINE ONLINE hisdb1
ONLINE ONLINE hisdb2
ora.OCR.dg
ONLINE ONLINE hisdb1
ONLINE ONLINE hisdb2
ora.asm
ONLINE ONLINE hisdb1 Started
ONLINE ONLINE hisdb2 Started
ora.gsd
OFFLINE OFFLINE hisdb1
OFFLINE OFFLINE hisdb2
ora.net1.network
ONLINE ONLINE hisdb1
ONLINE ONLINE hisdb2
ora.ons
ONLINE ONLINE hisdb1
ONLINE ONLINE hisdb2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
1 ONLINE ONLINE hisdb1
ora.cvu
1 ONLINE ONLINE hisdb1
ora.hisdb1.vip
1 ONLINE ONLINE hisdb1
ora.hisdb2.vip
1 ONLINE ONLINE hisdb2
ora.oc4j
1 ONLINE ONLINE hisdb1
ora.orcl.db
1 ONLINE ONLINE hisdb1 Open
2 ONLINE ONLINE hisdb2 Open
ora.scan1.vip
1 ONLINE ONLINE hisdb1

版权声明

本文仅代表作者观点,不代表博信信息网立场。

热门