1.主机规划
| 节点1 | 节点2 | 节点3 |
Hostname | node1 | node2 | node3 |
Public IP | 10.10.10.10 | 10.10.10.20 | 10.10.10.30 |
VIP | 10.10.10.11 | 10.10.10.22 | 10.10.10.33 |
Private IP | 192.168.1.10 | 192.168.1.20 | 192.168.1.30 |
Scan IP | 10.10.10.100 |
1)验证节点状态
查看将要删除的节点是被pin住,如果pin住需要,unpin节点
Unpin节点。需要root权限,在所有正常节点上执行:
Crsctl unpin css -n node2
[grid@node1 ~]$ olsnodes -n -t -s
node1 1 Active Unpinned
node2 2 Active Unpinned
node3 3 Active Unpinned
Pinned or unpinned,如果是pinned,那么节点编号将会固定,否则,节点编号有可能会变
2)使用dbca删除故障实例
[oracle@node1 ~]$ dbca -silent -deleteInstance -nodeList rac3 -gdbName rac11g -instanceName rac11g3 -sysDBAUserName sys -sysDBAPassword oracle
Deleting instance
1% complete
2% complete
6% complete
13% complete
20% complete
26% complete
33% complete
40% complete
46% complete
53% complete
60% complete
66% complete
Completing instance management.
100% complete
Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/rac11g5.log" for further details.
3)停掉要删除节点的监听
[grid@node2 ~]$ srvctl config listener -a
Name: LISTENER
Network: 1, Owner: grid
Home: <CRS home>
/u01/app/grid on node(s) node1,node2,node3
End points: TCP:1521
[grid@node2 ~]$ srvctl disable listener -l listener -n node3
[grid@node2 ~]$ srvctl stop listener -l listener -n node3
4)更新删除节点的集群列表(oracle用户)(可选)
[oracle@node3 ~]$ /u01/app/oracle/product/11.2.0/db_1/oui/bin/runInstaller -updateNodeList ORACLE_HOME=$ORACLE_HOME "CLUSTER_NODES={node3}" -local
Starting Oracle Universal Installer...
Checking swap space: must be greater than 500 MB. Actual 3997 MB Passed
The inventory pointer is located at /etc/oraInst.loc
The inventory is located at /u01/app/oraInventory
'UpdateNodeList' was successful.
5)删除节点三的oracle软件
[oracle@node3 ~]$ /u01/app/oracle/product/11.2.0/db_1/deinstall/deinstall -local
Checking for required files and bootstrapping ...
Please wait ...
Location of logs /u01/app/oraInventory/logs/
......
Cleaning the config for CCR
As CCR is not configured, so skipping the cleaning of CCR configuration
CCR clean is finished
Successfully detached Oracle home '/u01/app/oracle/product/11.2.0/db_1' from the central inventory on the local node.
Successfully deleted directory '/u01/app/oracle/product/11.2.0/db_1' on the local node.
Oracle Universal Installer cleanup was successful.
Oracle deinstall tool successfully cleaned up temporary directories.
#######################################################################
############# ORACLE DEINSTALL & DECONFIG TOOL END #############
6)在任一正常的节点上停止故障节点NodeApps
[oracle@node1 ~]$ srvctl stop nodeapps -n node3 -f
[oracle@node1 ~]# su - grid
[grid@node1 ~]$ crsctl stat res -t
——通过crsctl stat res -t可以发现停了故障节点的ons和VIP
7)更新正常节点的集群列表(oracle用户),在每个正常的节点上都执行
##一节点:
[oracle@node1 ~]$ /u01/app/oracle/product/11.2.0/db_1/oui/bin/runInstaller -updateNodeList ORACLE_HOME=$ORACLE_HOME "CLUSTER_NODES={node1,node2}"
Starting Oracle Universal Installer...
Checking swap space: must be greater than 500 MB. Actual 3979 MB Passed
The inventory pointer is located at /etc/oraInst.loc
The inventory is located at /u01/app/oraInventory
'UpdateNodeList' was successful.
##二节点:
[oracle@node2 ~]$ /u01/app/oracle/product/11.2.0/db_1/oui/bin/runInstaller -updateNodeList ORACLE_HOME=$ORACLE_HOME "CLUSTER_NODES={node1,node2}"
Starting Oracle Universal Installer...
Checking swap space: must be greater than 500 MB. Actual 3607 MB Passed
The inventory pointer is located at /etc/oraInst.loc
The inventory is located at /u01/app/oraInventory
'UpdateNodeList' was successful.
8)删除故障节点的集群软件
[root@node3 ~]# /u01/app/grid/crs/install/rootcrs.pl -deconfig -force
Using configuration parameter file: /u01/app/grid/crs/install/crsconfig_params
Network exists: 1/10.0.0.0/255.0.0.0/eth0, type static
VIP exists: /node1-vip/10.10.10.11/10.0.0.0/255.0.0.0/eth0, hosting node node1
VIP exists: /node2-vip/10.10.10.22/10.0.0.0/255.0.0.0/eth0, hosting node node2
VIP exists: /node3-vip/10.10.10.33/10.0.0.0/255.0.0.0/eth0, hosting node node3
GSD exists
ONS exists: Local port 6100, remote port 6200, EM port 2016
PRKO-2426 : ONS is already stopped on node(s): node3
PRKO-2425 : VIP is already stopped on node(s): node3
PRKO-2440 : Network resource is already stopped.
CRS-2673: Attempting to stop 'ora.registry.acfs' on 'node3'
CRS-2677: Stop of 'ora.registry.acfs' on 'node3' succeeded
CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'node3'
CRS-2673: Attempting to stop 'ora.crsd' on 'node3'
CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on 'node3'
CRS-2673: Attempting to stop 'ora.ARCH.dg' on 'node3'
CRS-2673: Attempting to stop 'ora.DATA.dg' on 'node3'
CRS-2673: Attempting to stop 'ora.OCR.dg' on 'node3'
CRS-2677: Stop of 'ora.DATA.dg' on 'node3' succeeded
CRS-2677: Stop of 'ora.ARCH.dg' on 'node3' succeeded
CRS-2677: Stop of 'ora.OCR.dg' on 'node3' succeeded
CRS-2673: Attempting to stop 'ora.asm' on 'node3'
CRS-2677: Stop of 'ora.asm' on 'node3' succeeded
CRS-2792: Shutdown of Cluster Ready Services-managed resources on 'node3' has completed
CRS-2677: Stop of 'ora.crsd' on 'node3' succeeded
CRS-2673: Attempting to stop 'ora.mdnsd' on 'node3'
CRS-2673: Attempting to stop 'ora.drivers.acfs' on 'node3'
CRS-2673: Attempting to stop 'ora.ctssd' on 'node3'
CRS-2673: Attempting to stop 'ora.evmd' on 'node3'
CRS-2673: Attempting to stop 'ora.asm' on 'node3'
CRS-2677: Stop of 'ora.evmd' on 'node3' succeeded
CRS-2677: Stop of 'ora.ctssd' on 'node3' succeeded
CRS-2677: Stop of 'ora.mdnsd' on 'node3' succeeded
CRS-2677: Stop of 'ora.asm' on 'node3' succeeded
CRS-2673: Attempting to stop 'ora.cluster_interconnect.haip' on 'node3'
CRS-2677: Stop of 'ora.cluster_interconnect.haip' on 'node3' succeeded
CRS-2673: Attempting to stop 'ora.cssd' on 'node3'
CRS-2677: Stop of 'ora.cssd' on 'node3' succeeded
CRS-2673: Attempting to stop 'ora.crf' on 'node3'
CRS-2677: Stop of 'ora.drivers.acfs' on 'node3' succeeded
CRS-2677: Stop of 'ora.crf' on 'node3' succeeded
CRS-2673: Attempting to stop 'ora.gipcd' on 'node3'
CRS-2677: Stop of 'ora.gipcd' on 'node3' succeeded
CRS-2673: Attempting to stop 'ora.gpnpd' on 'node3'
CRS-2677: Stop of 'ora.gpnpd' on 'node3' succeeded
CRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'node3' has completed
CRS-4133: Oracle High Availability Services has been stopped.
Removing Trace File Analyzer
Successfully deconfigured Oracle clusterware stack on this node
9)删除故障节点的VIP
如果第八步执行顺利的,故障节点的VIP此时已被删除,在任一正常节点执行crs_stat -t验证一下:
[root@node1 ~]# crs_stat -t
如果仍有故障节点的VIP服务存在,执行如下:
[root@node1 ~]# srvctl stop vip -i ora.node3.vip -f
[root@node1 ~]# srvctl remove vip -i ora.node3.vip -f
[root@node1 ~]# crsctl delete resource ora.node3.vip -f
10)在任一正常的节点上删除故障节点
[root@node1 ~]# crsctl delete node -n node3
CRS-4661: Node node3 successfully deleted.
[root@node1 ~]# olsnodes -t -s
node1 Active Unpinned
node2 Active Unpinned
11)验证
[root@node1 ~]# crsctl stat res -t
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.ARCH.dg
ONLINE ONLINE node1
ONLINE ONLINE node2
ora.DATA.dg
ONLINE ONLINE node1
ONLINE ONLINE node2
ora.LISTENER.lsnr
ONLINE ONLINE node1
ONLINE ONLINE node2
ora.OCR.dg
ONLINE ONLINE node1
ONLINE ONLINE node2
ora.asm
ONLINE ONLINE node1 Started
ONLINE ONLINE node2 Started
ora.gsd
OFFLINE OFFLINE node1
OFFLINE OFFLINE node2
ora.net1.network
ONLINE ONLINE node1
ONLINE ONLINE node2
ora.ons
ONLINE ONLINE node1
ONLINE ONLINE node2
ora.registry.acfs
ONLINE ONLINE node1
ONLINE ONLINE node2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
1 ONLINE ONLINE node2
ora.cvu
1 ONLINE ONLINE node2
ora.node1.vip
1 ONLINE ONLINE node1
ora.node2.vip
1 ONLINE ONLINE node2
ora.oc4j
1 ONLINE ONLINE node2
ora.rac11g.db
1 ONLINE ONLINE node1 Open
2 ONLINE ONLINE node2 Open
ora.scan1.vip
1 ONLINE ONLINE node2