Solution
Before the SCAN VIPs can be changed, the entry for the SCAN name on the Domain Name Server (DNS) needs to be updated with the new IP addresses. This usually will be done by a network administrator. To check the current setting, the following command can be used:
nslookup <scan_name>
To check the current IP address(es) of the SCAN VIPs, run the following commands as the root user:
$GRID_HOME/bin/srvctl config scan
Stop the SCAN listeners and SCAN
$GRID_HOME/bin/srvctl stop scan_listener $GRID_HOME/bin/srvctl stop scan
Next refresh the SCAN VIPs with the new IP addresses from the DNS entry:
$GRID_HOME/bin/srvctl modify scan -n <scan_name
To check if the SCAN VIPs have been changed, run the following command, it should now show the new IP addresses.
$GRID_HOME/bin/srvctl config scan
Restart SCAN & SCAN listener:
$GRID_HOME/bin/srvctl start scan $GRID_HOME/bin/srvctl start scan_listener
If the number of SCAN VIPs has changed, the SCAN listener needs to be updated:
$GRID_HOME/bin/srvctl modify scan_listener -u
Below is an example using the following configuration:
The name of the SCAN is sales-scan.example.com
subnet of the public network is 10.100.10.0
netmask for the public network is 255.255.255.0
name of the public interface is eth1
old IP addresses: 10.100.10.81, 10.100.10.82 & 10.100.10.83
new IP addresses: 10.100.10.121, 10.100.10.122 & 10.100.10.123
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#53Name: 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
Comments