Sources
1. “How to Change Interconnect/Public Interface IP or Subnet in Oracle Clusterware”, Doc ID: 283684.1
2. “Modifying the VIP or VIP Hostname of a 10g or 11g Oracle Clusterware Node”, DOC ID: 276434.1
3. “How to change Public and VIP component address in case of RAC?”
Je veux changer le vlan de mes adresses publiques et virtuelles de mon cluster RAc 11.2.0.3.
Sur ce cluster, il y a une base SETRA active/active et une base BLACK active/passive.
Pour commenecr on arrête les ressources correspondantes aux bases.
[root@lrac1 bin]# srvctl stop database -d SETRA
[root@lrac1 bin]# ./crs_stop black.db
Tentative d’arrêt de ‘black.db’ sur le membre ‘lrac2′
‘black.db’ a été arrêté sur le membre ‘lrac2′.
[root@lrac1 bin]# ./crs_stop black.listener
Tentative d’arrêt de ‘black.listener’ sur le membre ‘lrac2′
‘black.listener’ a été arrêté sur le membre ‘lrac2′.
[root@lrac1 bin]# ./crs_stop black.vip
Tentative d’arrêt de ‘black.vip’ sur le membre ‘lrac2′
‘black.vip’ a été arrêté sur le membre ‘lrac2′.
[root@lrac1 bin]# ./crs_stop black.group
Tentative d’arrêt de ‘black.group’ sur le membre ‘lrac2′
‘black.group’ a été arrêté sur le membre ‘lrac2′.
[root@lrac1 bin]#
On arrête les ressources sur lequelles sont montées les VIP
[root@lrac1 bin]# srvctl stop nodeapps -n lrac1 -f
PRKO-2426 : ONS (Oracle Notification Service) est déjà arrêté sur les noeuds : lrac1
[root@lrac1 bin]# srvctl stop nodeapps -n lrac2 -f
Vérifications
[root@lrac1 bin]# crs
HA Resource Target State
———– —— —–
black.db ONLINE OFFLINE
black.group ONLINE OFFLINE
black.listener ONLINE OFFLINE
black.vip ONLINE OFFLINE
ora.DGDATA.dg ONLINE ONLINE on lrac1
ora.DGFRA.dg ONLINE ONLINE on lrac1
ora.LISTENER.lsnr ONLINE OFFLINE
ora.LISTENER_SCAN1.lsnr OFFLINE OFFLINE
ora.OCRVOTING.dg ONLINE ONLINE on lrac1
ora.asm ONLINE ONLINE on lrac1
ora.cvu OFFLINE OFFLINE
ora.gsd OFFLINE OFFLINE
ora.lrac1.ASM1.asm ONLINE ONLINE on lrac1
ora.lrac1.LISTENER_LRAC1.lsnr ONLINE OFFLINE
ora.lrac1.gsd OFFLINE OFFLINE
ora.lrac1.ons OFFLINE OFFLINE
ora.lrac1.vip OFFLINE OFFLINE
ora.lrac2.ASM2.asm ONLINE ONLINE on lrac2
ora.lrac2.LISTENER_LRAC2.lsnr ONLINE OFFLINE
ora.lrac2.gsd OFFLINE OFFLINE
ora.lrac2.ons OFFLINE OFFLINE
ora.lrac2.vip OFFLINE OFFLINE
ora.net1.network OFFLINE OFFLINE
ora.oc4j ONLINE ONLINE on lrac2
ora.ons OFFLINE OFFLINE
ora.registry.acfs ONLINE ONLINE on lrac1
ora.scan1.vip OFFLINE OFFLINE
ora.setra.db OFFLINE OFFLINE
[root@lrac1 bin]#
Editer les fichiers /etc/hosts et les mettre à jour avec les nouvelles adresses publiques et virtuelles.
Ensuite on change le vlan pour l’interface eth0 dans le clusterware.
[oracle@lrac1 bin]$ ./oifcfg getif
eth1 192.168.1.0 global cluster_interconnect
eth0 10.1.0.0 global public
[oracle@lrac1 bin]$ ./oifcfg delif -global eth0
[oracle@lrac1 bin]$ ./oifcfg setif -global eth0/192.168.255.0:public
On modifie les adresses virtuelles dans le clusterware
[root@lrac1 bin]# ./srvctl modify nodeapps -n lrac1 -A 192.168.255.112/255.255.255.0/eth0
[root@lrac1 bin]# ./srvctl modify nodeapps -n lrac2 -A 192.168.255.113/255.255.255.0/eth0
Changement des adresses au niveau OS.
Aller dans l’OS et changer les adresses publiques d’eth0 sur chaque noeud.
Redémarrer le réseau
service network restart (linux)
Changer les adresses dans les fichiers known_hosts sur chaque noeud pour le user oracle (ou grid si c’est le cas)
su – oracle
cd .ssh
cp known_hosts known_hosts.bak
vi known_hosts
Faire le changement des IP des anciennes vers les nouvelles.
Arrêter les crs sur chaque noeud et les redémarrer
crsctl stop crs
crsctl start crs
Changement de l’adresse scan
[root@lrac1 bin]# srvctl config scan_listener
Le processus d’écoute SCAN LISTENER_SCAN1 existe. Port : TCP:1521
[root@lrac1 bin]#
[root@lrac1 bin]# srvctl config scan
Nom SCAN : lrac-scan, réseau : 1/192.168.255.0/255.255.255.0/eth0
Nom d’adresse IP virtuelle SCAN : scan1, IP : /lrac-scan/10.1.1.14
[root@lrac1 bin]#
Vu que l’ip a été changé dans les /etc/hosts, sur les OS, on n’a plus qu’à redémarrer les ressources scan et listener associé.
Les ressources sont arrêtées.
[root@lrac1 bin]# ./crs_start ora.scan1.vip
Tentative de démarrage de ‘ora.scan1.vip’ sur le membre ‘lrac2′
‘ora.scan1.vip’ a été démarré sur le membre ‘lrac2′.
[root@lrac1 bin]#
[root@lrac1 bin]# ./crs_start ora.LISTENER_SCAN1.lsnr
Tentative de démarrage de ‘ora.LISTENER_SCAN1.lsnr’ sur le membre ‘lrac2′
‘ora.LISTENER_SCAN1.lsnr’ a été démarré sur le membre ‘lrac2′.
[root@lrac1 bin]#
[root@lrac1 bin]# crs
HA Resource Target State
———– —— —–
black.db OFFLINE OFFLINE
black.group ONLINE OFFLINE
black.listener ONLINE OFFLINE
black.vip ONLINE OFFLINE
ora.DGDATA.dg ONLINE ONLINE on lrac1
ora.DGFRA.dg ONLINE ONLINE on lrac1
ora.LISTENER.lsnr ONLINE ONLINE on lrac1
ora.LISTENER_SCAN1.lsnr ONLINE ONLINE on lrac2
ora.OCRVOTING.dg ONLINE ONLINE on lrac1
ora.asm ONLINE ONLINE on lrac1
ora.cvu OFFLINE OFFLINE
ora.gsd OFFLINE OFFLINE
ora.lrac1.ASM1.asm ONLINE ONLINE on lrac1
ora.lrac1.LISTENER_LRAC1.lsnr ONLINE ONLINE on lrac1
ora.lrac1.gsd OFFLINE OFFLINE
ora.lrac1.ons ONLINE ONLINE on lrac1
ora.lrac1.vip ONLINE ONLINE on lrac1
ora.lrac2.ASM2.asm ONLINE ONLINE on lrac2
ora.lrac2.LISTENER_LRAC2.lsnr ONLINE ONLINE on lrac2
ora.lrac2.gsd OFFLINE OFFLINE
ora.lrac2.ons ONLINE ONLINE on lrac2
ora.lrac2.vip ONLINE ONLINE on lrac2
ora.net1.network ONLINE ONLINE on lrac1
ora.oc4j ONLINE ONLINE on lrac1
ora.ons ONLINE ONLINE on lrac1
ora.registry.acfs ONLINE ONLINE on lrac1
ora.scan1.vip ONLINE ONLINE on lrac2
ora.setra.db OFFLINE OFFLINE
[root@lrac1 bin]#
Redémarrage de la base SETRA
[root@lrac1 bin]# srvctl start database -d SETRA
Redémarrage de la base standalone BLACK
Si des ressources suite aux redémarrage des crs ont redémarrées, on les arrête proprement et on les relance à la main.
black.db OFFLINE OFFLINE
black.group OFFLINE OFFLINE
black.listener OFFLINE OFFLINE
black.vip OFFLINE OFFLINE
il faut modifier les fichiers /app/oracle/product/11.2.0/db_1/network/admin/listener.ora avec la nouvelle adresse
et faire le changement dans le DNS et/ou le fichier /etc/hosts.
On va maintenant changer l’adresse de la vip spécifique à la base BLACK dans le clusterware.
[root@lrac1 bin]# ./crs_stat -p black.vip
NAME=black.vip
TYPE=application
ACTION_SCRIPT=/app/grid/bin/usrvip
****
****
****
USR_ORA_LANG=
USR_ORA_NETMASK=255.255.0.0
USR_ORA_OPEN_MODE=
USR_ORA_OPI=false
USR_ORA_PFILE=
USR_ORA_PRECONNECT=none
USR_ORA_SRV=
USR_ORA_START_TIMEOUT=0
USR_ORA_STOP_MODE=immediate
USR_ORA_STOP_TIMEOUT=0
USR_ORA_VIP=10.1.1.15
On modifie l’IP et le netmask si besoin
[root@lrac1 bin]# ./crsctl modify resource black.vip -attr “USR_ORA_VIP=192.168.255.115″
[root@lrac1 bin]# ./crsctl modify resource black.vip -attr “USR_ORA_NETMASK=255.255.255.0″
Redémarrage des ressources
[root@lrac1 bin]# ./crs_start black.group
Tentative de démarrage de ‘black.group’ sur le membre ‘lrac2′
‘black.group’ a été démarré sur le membre ‘lrac2′.
[root@lrac1 bin]# ./crs_start black.vip
Tentative de démarrage de ‘black.vip’ sur le membre ‘lrac2′
‘black.vip’ a été démarré sur le membre ‘lrac2′.
[root@lrac1 bin]#
[root@lrac1 bin]# ./crs_start black.listener
Tentative de démarrage de ‘black.listener’ sur le membre ‘lrac2′
‘black.listener’ a été démarré sur le membre ‘lrac2′.
[root@lrac1 bin]# ./crs_start black.db
Tentative de démarrage de ‘black.db’ sur le membre ‘lrac2′
‘black.db’ a été démarré sur le membre ‘lrac2′.
[root@lrac1 bin]#
Il se peut que la ressource ora.cvu se doit mise en target OFFLINE et state OFFLINE
on la redémarre à la main.
[oracle@lrac1 bin]$ ./crs_start ora.cvu
Tentative de démarrage de ‘ora.cvu’ sur le membre ‘lrac1′
‘ora.cvu’ a été démarré sur le membre ‘lrac1′.
[oracle@lrac1 bin]$ crs
HA Resource Target State
———– —— —–
black.db ONLINE ONLINE on lrac2
black.group ONLINE ONLINE on lrac2
black.listener ONLINE ONLINE on lrac2
black.vip ONLINE ONLINE on lrac2
ora.DGDATA.dg ONLINE ONLINE on lrac1
ora.DGFRA.dg ONLINE ONLINE on lrac1
ora.LISTENER.lsnr ONLINE ONLINE on lrac1
ora.LISTENER_SCAN1.lsnr ONLINE ONLINE on lrac2
ora.OCRVOTING.dg ONLINE ONLINE on lrac1
ora.asm ONLINE ONLINE on lrac1
ora.cvu ONLINE ONLINE on lrac1
ora.gsd OFFLINE OFFLINE
ora.lrac1.ASM1.asm ONLINE ONLINE on lrac1
ora.lrac1.LISTENER_LRAC1.lsnr ONLINE ONLINE on lrac1
ora.lrac1.gsd OFFLINE OFFLINE
ora.lrac1.ons ONLINE ONLINE on lrac1
ora.lrac1.vip ONLINE ONLINE on lrac1
ora.lrac2.ASM2.asm ONLINE ONLINE on lrac2
ora.lrac2.LISTENER_LRAC2.lsnr ONLINE ONLINE on lrac2
ora.lrac2.gsd OFFLINE OFFLINE
ora.lrac2.ons ONLINE ONLINE on lrac2
ora.lrac2.vip ONLINE ONLINE on lrac2
ora.net1.network ONLINE ONLINE on lrac1
ora.oc4j ONLINE ONLINE on lrac2
ora.ons ONLINE ONLINE on lrac1
ora.registry.acfs ONLINE ONLINE on lrac1
ora.scan1.vip ONLINE ONLINE on lrac2
ora.setra.db ONLINE ONLINE on lrac2
[oracle@lrac1 bin]$
Toutes les adresses publiques et virtuelles ont été changées et toutes les ressources du cluster sont à nouveau disponibles.
Temps d’indisponibilité entre 10mns et une demi heure.
Alban lepunk