In this Documentnode
Goal |
Solution |
References |
Oracle Database - Enterprise Edition - Version 11.2.0.1 and later
Information in this document applies to any platform.
oracle
The purpose of this document is to explain how to change the IP addresses associated with the SCAN VIPs in a 11gR2 Grid (CRS) environment.
The IP addresses associated with the SCAN VIP resources are initially set when the SCAN resources are created.
Any changes to the DNS entry for the SCAN are not automatically propagated to the clusterware and need to be done manually.
This applies only to installations that are not using GNS.
The information in this note can also be helpful in cases where SCAN was originally configured with just one address and is now being expanded to accommodate three IP addresses.app
nslookup <scan_name>ide
$GRID_HOME/bin/srvctl config scanui
$GRID_HOME/bin/srvctl stop scan_listener
$GRID_HOME/bin/srvctl stop scanthis
$GRID_HOME/bin/srvctl modify scan -n <scan_name.net
$GRID_HOME/bin/srvctl config scanorm
$GRID_HOME/bin/srvctl start scan
$GRID_HOME/bin/srvctl start scan_listenerserver
$GRID_HOME/bin/srvctl modify scan_listener -udns
Below is an example using the following configuration:
Stopping & starting the SCAN VIPs/listeners can be done by the grid user, however the 'srvctl modify scan' command must be executed by root user, so it's practical to execute all steps as the root user.
A lookup of the SCAN on the DNS server shows that the entry has already been updated with the new IP addresses:
$ nslookup sales-scan.example.com
Server: dns1.example.com
Address: 10.100.10.70#53
Name: sales-scan.example.com
Address: 10.100.10.123
Name: sales-scan.example.com
Address: 10.100.10.122
Name: sales-scan.example.com
Address: 10.100.10.121
Stop the SCAN listener and the SCAN VIP resources:
# $GRID_HOME/bin/srvctl stop scan_listener
# $GRID_HOME/bin/srvctl stop scan
# $GRID_HOME/bin/srvctl status scan
SCAN VIP scan1 is enabled
SCAN VIP scan1 is not running
SCAN VIP scan2 is enabled
SCAN VIP scan2 is not running
SCAN VIP scan3 is enabled
SCAN VIP scan3 is not running
# $GRID_HOME/bin/srvctl status scan_listener
SCAN Listener LISTENER_SCAN1 is enabled
SCAN listener LISTENER_SCAN1 is not running
SCAN Listener LISTENER_SCAN2 is enabled
SCAN listener LISTENER_SCAN2 is not running
SCAN Listener LISTENER_SCAN3 is enabled
SCAN listener LISTENER_SCAN3 is not running
The SCAN VIP resources still show the old IP addresses:
# $GRID_HOME/bin/srvctl config scan
SCAN name: sales-scan, Network: 1/10.100.10.0/255.255.255.0/eth1
SCAN VIP name: scan1, IP: /sales-scan.example.com/ 10.100.10.81
SCAN VIP name: scan2, IP: /sales-scan.example.com/ 10.100.10.82
SCAN VIP name: scan3, IP: /sales-scan.example.com/ 10.100.10.83
Now tell CRS to update the SCAN VIP resources:
# $GRID_HOME/bin/srvctl modify scan -n sales-scan.example.com
To verify that the change was successful, check the SCAN configuration again:
# $GRID_HOME/bin/srvctl config scan
SCAN name: sales-scan, Network: 1/10.100.10.0/255.255.255.0/eth1
SCAN VIP name: scan1, IP: /sales-scan.example.com/ 10.100.10.121
SCAN VIP name: scan2, IP: /sales-scan.example.com/ 10.100.10.122
SCAN VIP name: scan3, IP: /sales-scan.example.com/ 10.100.10.123
Start SCAN and the SCAN listener:
# $GRID_HOME/bin/srvctl start scan
# $GRID_HOME/bin/srvctl start scan_listener
Please note that if the SCAN VIPs are being changed because of a change of the subnet of the public network additional changes may be required , e.g. the node VIPs and the network resource (ora.net1.network). For more information please refer to Document 276434.1 and the 11.2 documentation .
In this Document
Goal |
Solution |
A. To update SCAN setting |
B. To modify SCAN listener port |
References |
Oracle Database - Enterprise Edition - Version 11.2.0.1 and later
Information in this document applies to any platform.
This note provides steps to update 11gR2 Grid Infrastructure (CRS) Single Client Access Name (SCAN) setting or SCAN listener port setting if it's not setup properly or if it's changed after setup.
Note:
1. This procedure does not apply when GNS is being used
2. Even though clustername and SCAN name is set to the same during 'typical' installation, changing SCAN name will not affect clustername as change of clustername requires deconfigure and reconfigure of the entire cluster.
1. As per documentation "Oracle Grid Infrastructure Installation Guide", Oracle strongly recommend to configure SCAN name in either DNS or GNS as /etc/hosts file can only resolve to one IP address.
SCAN IP must be in same subnet as public and VIP. If the new SCAN IP will be in different subnet, refer to note 276434.1 to change nodeapps/network resource first.
1a. If you intend to use /etc/hosts for SCAN name resolution, the same and only entry for SCAN name must exist on all nodes.
1b. If you intend to use DNS for SCAN name resolution, remove entries for SCAN name from /etc/hosts on all nodes, and make sure nslookup returns good result on all nodes, for example:
$ nslookup pay-scan.us.oracle.com
..
Name: pay-scan.us.oracle.com
Address: 10.4.0.201
Name: pay-scan.us.oracle.com
Address: 10.4.0.202
Name: pay-scan.us.oracle.com
Address: 10.4.0.203
2. Once #1a or #1b is configured properly, execute the following to modify:
If name resolution for SCAN is being switched from local hosts file to DNS, be sure to remove SCAN name in local hosts file on all nodes prior to execute below commands.
2.1. To modify SCAN name or SCAN VIP addresses:
2.1.1. As grid user stop resources:
$ $GRID_HOME/bin/srvctl stop scan_listener
$ $GRID_HOME/bin/srvctl stop scan
2.1.2. As root user modify SCAN:
# $GRID_HOME/bin/srvctl modify scan -n pay-scan.us.oracle.com
### For 11.2.0.1 only, if you intend to change SCAN name, due to bug 9603829, execute the following:
# $GRID_HOME/bin/crsctl modify type ora.scan_vip.type -attr "ATTRIBUTE=SCAN_NAME,DEFAULT_VALUE=<new SCAN name>"
### Example:
# $GRID_HOME/bin/crsctl modify type ora.scan_vip.type -attr "ATTRIBUTE=SCAN_NAME,DEFAULT_VALUE=pay-scan.us.oracle.com"
Once SCAN name is changed, update database init.ora/spfile parameter remote_listener to the new one.
2.1.3. As grid user modify and start resources:
$ $GRID_HOME/bin/srvctl modify scan_listener -u
$ $GRID_HOME/bin/srvctl start scan_listener
2.1.4. To confirm the change
$ $GRID_HOME/bin/srvctl config scan
SCAN name: pay-scan.us.oracle.com, Network: 1/10.4.0.0/255.255.255.0/eth1
SCAN VIP name: scan1, IP: /10.4.0.201/120.0.0.201
SCAN VIP name: scan2, IP: /10.4.0.202/120.0.0.202
SCAN VIP name: scan3, IP: /10.4.0.203/120.0.0.203
$ $GRID_HOME/bin/srvctl config scan_listener
SCAN Listener LISTENER_SCAN1 exists. Port: TCP:1521
SCAN Listener LISTENER_SCAN2 exists. Port: TCP:1521
SCAN Listener LISTENER_SCAN3 exists. Port: TCP:1521
2.2. To change SCAN to be on second network:
By default, SCAN will be configured on first public network (ora.net1.network), however in multiple public network environment, SCAN can run on second or other network.
There's no option to modify SCAN to use non-first network, to change to second or other network, scan_listener and scan resources need to be removed and added back.
In this example, we'll move SCAN from net1 to net2
$ $GRID_HOME/bin/srvctl config network
Network exists: 1/10.1.0.0/255.255.255.128/eth3, type static
Network exists: 2/10.1.1.0/255.255.255.128/eth4, type static
2.2.1. As grid user stop resources and remove scan_listener:
$ $GRID_HOME/bin/srvctl stop scan_listener$ $GRID_HOME/bin/srvctl stop scan
$ $GRID_HOME/bin/srvctl remove scan_listener -f
2.2.2. As root user remove and add SCAN:
# $GRID_HOME/bin/srvctl remove scan -f
#$GRID_HOME/bin/srvctl add scan -n <scan-name> -k 2
Once SCAN name is changed, update database init.ora/spfile parameter remote_listener to the new one.
2.2.3. As grid user add scan_listener and start resources:
$ $GRID_HOME/bin/srvctl add scan_listener-p <port>
$ $GRID_HOME/bin/srvctl start scan_listener
As grid user:
1. Modify SCAN listener port:
$GRID_HOME/bin/srvctl modify scan_listener -p <new-SCAN-port>
Update 11gR2 database init.ora parameter: alter system set remote_listener='<SCAN-name>:<new-port-number>' scope=both;
2. Restart SCAN listener so the new port will be effective:
$GRID_HOME/bin/srvctl stop scan_listener
$GRID_HOME/bin/srvctl start scan_listener
3. Confirm the change:
$GRID_HOME/bin/srvctl config scan_listener
NOTE:975457.1 - How to Troubleshoot Connectivity Issue with 11gR2 SCAN Name NOTE:276434.1 - How to Modify Public Network Information including VIP in Oracle Clusterware NOTE:887471.1 - PRVF-4664 PRVF-4657: Found inconsistent name resolution entries for SCAN name NOTE:887522.1 - Grid Infrastructure Single Client Access Name (SCAN) Explained NOTE:359277.1 - Changing Default Listener Port Number