暂无图片
分享
徐sir
2019-03-15
关于RAC 的VIP是如何漂移的问题??求指教

请教个问题,我的RAC的IP配置如下

192.168.56.10 rac1

192.168.56.11 rac2

10.10.10.10 rac1-priv

10.10.10.11 rac2-priv

192.168.56.12 rac1-vip

192.168.56.13 rac2-vip

192.168.56.14 rac-scan

现在我模拟场景,RAC1主机宕机,RAC1-VIP漂移到RAC2节点。数据库的服务名是ORCL

我通过192.168.56.13去连接ORCL服务名是可以的,通过192.168.56.12去连接服务名是不可连接的,这种情况是不是正常的现像??

我看网上有人说修改监听listener.ora,增加如下内容就可以实现我说的用RAC1-VIP去连接服务名,

LISTENER_RAC2 =

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = rac2)(PORT = 1521))

)

)

给出的解释是:

如果关键字HOST配置为IP地址解析名,则绑定步骤如下:

(1)oracle根据IP地址解析名调用gethostbyname()函数取得IP地址(IP地址可能有多个)。

(2)oracle调用gethostname()函数获取服务器的主机名,并再次调用gethostbyname()函数获取主机名对应的IP地址(IP地址可能有多个)。

(3)将步骤(1)获取的第一个IP地址和步骤(2)获取的所有IP地址进行比对,如果匹配成功,则监听运行在该服务器所有激活的网卡上。如果匹配不成功,则监听只运行在步骤(1)解析出来的Ip地址上。

结论:如果关键字HOST配置为主机名,则监听运行在该服务器所有激活的网卡上。

注意:如果将关键字HOST设置为主机名,当加有关键字IP=FIRST时,监听只运行在主机名对应的IP地址上,这种配置在oracle 10G RAC系统中较为常见。


在我看来这只是新建一个监听,只监听本机主机名对应的IP。这块实在有点蒙圈,求指点



收藏
分享
4条回答
默认
最新
Minor

rac的vip在不发生故障的时段,连接数据库是正常。

一旦发生漂移,这个vip漂到别的节点,就是不可以连接数据库的。这是正常现象。

vip在这里的意义是迅速给app反馈信息,让app去连别的vip。如果没有vip,那app要等待60秒才能等到tcp超时。这个时间是不允许的 。

暂无图片 评论
暂无图片 有用 0
徐sir

后半断说的那个,指向主机名的话就能监听到本地的所有IP么??这块不理解,真的是这样么。??我朋友测试说新增个LISTENER_RAC2是可以达到效果,但是我测试是不可以的。

暂无图片 评论
暂无图片 有用 0
Minor

不是,飘走的vip在新的host上,新的host的监听是不监听这个IP的。所以连不上。RAC就是这么设计。

这一段在《大话RAC》里面有详细描述,10G版本的,张晓明写的那个。

暂无图片 评论
暂无图片 有用 0
章芋文
问题已关闭: 问题已经得到解决
暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏