今天,在操作10g RAC的时候,遇到了这样的一个问题:

如上所示,RAC的集群资源状态不正常。
且,仅能在节点二上“crsctl start crs”(启动CRS),节点一启动CRS失败(节点一的私有网卡启动失败,IP地址占用)。

在节点二的报错日志中,可以看到如下信息:
Log File:/u01/app/10g/grid/log/xymis2/racg/ora.xymis2.vip.log

————————————————
该问题是由于:误配VIP而引发的。

在我的环境中,网络IP的分配策略如下:

发生问题的时候,能够启动CRS的节点二的网络IP状态是:

节点一的IP地址占用是由于节点二的VIP错误的启用了节点一的私有IP导致的。

在VIPCA的配置过程中,会需要提供VIP的别名信息,如下图所示:
vipca_choose_alias
如果上述提供的别名错了,那么最终指向的IP地址也会错误。
应该填写的是“XXXX-vip”的别名。

在本文文首的错误中,VIPCA被错误的设置为了RAC的私有网卡的地址,而私有网卡的地址已经启用,故而VIP的进程日志中会提示:
“IP:10.0.0.2 is already up in the network (host=xymis2)”

解决方法:
修改RAC集群资源中的VIP的设定,具体如下所示。

首先,停掉节点一和节点二的Nodeapp。

因为当前仅能通过节点二访问集群件,故而在节点二操作。

所有节点的NodeApp全部停掉后的状态:

所有及诶单的NodeAPP都关闭后,节点二对节点一的私有IP的占用就解除了。
在节点一上,通过“ifup eth1”,将私有网卡拉起来。

然后,根据当前系统的IP资源分配策略,修改VIP的设定:

节点一之前由于私有网卡没有起来,所以CRS资源没有起来。
在继续操作前,需要将节点一的CRS资源拉起来:/u01/app/10g/grid/bin/crsctl start crs

启动节点一跟节点二的Nodeapp:

最后,查看下当前的RAC集群件状态:

——————————————————————————————————
Done。

1 thought on “Oracle DB 10g RAC:VIPCA配置错误后的修复”

  1. 在NODEAPP服务异常的状态下别用VIPCA,越搞越复杂,不过技术进步了,分析有条理了!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

隐藏
变装