+ -
当前位置:首页 → 问答吧 → PowerHA5.5导致网关丢失的诊断过程

PowerHA5.5导致网关丢失的诊断过程

时间:2009-04-16

来源:互联网

1,
问题现象
AIX在安装了PowerHA5.5之后,一旦系统重启,网关就丢失。
2,
诊断
01)检查inet0设备的属性,网关存在,排除ODM库出错的可能性。
02)通常网关是由/etc/rc.net脚本在系统启动时候添加的。init进程根据/etc/inittab文件调用的第一个脚本是/sbin/rc.boot 3。rc.boot脚本在phase 3调用cfgmgr -p2,/etc/rc.net就是在此时被cfgmgr调用的。是否可能没被调用?
3,
检查Config_Rules
Config_Rules:

phase = 2

seq = 18

boot_mask = 0

rule = "/usr/lib/methods/cfgrcnet"
这个感觉和rc.net有点关系,应该是在这个二进制可执行文件内部调用了/etc/rc.net。通过strings命令输出/usr/lib/methods/cfgrcnet命令的字符串。
/etc/rc.net -2
说明/etc/rc.net在系统启动时候确实被调用了。那么看看rc.net的日志输出吧。
4,
检查/tmp/rc.net.out
0821-003 cfgif: No interfaces were configured.
<hostname>
0821-279 writing to routing socket: Cannot reach the destination network.
0821-103 : The command /usr/sbin/route add -net -hopcount 0
-static 0 <gateway> failed.
这个是重点。一二行是说和hostname匹配的IP地址不存在,三四行是说添加网关失败。其中hostname就是HACMP永久IP地址对应的主机名,而gateway就是丢似乎的网关。
几个说明:
a.
网关应该和service ip在同一网段
b.
serviced ip和base ip应该在不同网段
c.
如果没有其他手段,service ip不起来,那么网关也不会起来,因为没有IP地址
d.
HACMP的persistent ip就是解决这个问题的手段之一,persistent ip可以和service ip在同一网段,并且可以在/etc/hosts中和hostname绑定
e.
persistent ip在开机后自动添加,但是通过HACMP的harc.net脚本添加的
f.
harc.net在rc.boot后执行。所以在rc.boot在调用rc.net脚本时候系统中还没有persistent ip,因此出现0821-003 cfgif: No interfaces were configured报错。系统抱怨找不到和主机名匹配的ip地址。
g.
因为persistent ip和service ip都没有起来,所以网关也无法起来。就是route命令失败。
h.
原因可以确定下来是harc.net调用的太晚,或者说harc.net被调用后没有再次调用/etc/rc.net脚本。那么为什么HACMP5.2没有这个问题,而PowerHA5.5有这个问题?
i.
对比HACMP5.2和PowerHA 5.5的harc.net脚本,有很多不同,但是和这个问题相关的应该是这个。
在HACMP5.2的脚本中:
cl_configure_persistent_address config_all -d
/etc/rc.net –boot
在PowerHA5.5的脚本中:
clutils_log "configure all persistent IP addresses"
cl_configure_persistent_address config_all –d
不管什么原因,PowerHA5.5的脚本中将调用/etc/rc.net的命令去掉了。这个应该就是网关丢失的关键。
j.
编辑harc.net,添加/etc/rc.net
clutils_log "configure all persistent IP addresses"
cl_configure_persistent_address config_all -d

########edit by xxx########
clutils_log "invoke /etc/rc.net -boot by xxx"
/etc/rc.net -boot
k.
重启机器
重启后网关仍然存在,检查rc.net.out。虽然仍有0821-003错误,但是网关添加成功。至此可以认为诊断结束。
l.

5,
后继处理
a.
因为手工修改了HACMP的脚本,所以继续观察。
b.
等待IBM的补丁。
6,

作者: mike79   发布时间: 2009-04-16

诊断过程中走了不少弯路,但所幸大方向是对的,所以最终还是找到了原因。发文纪念

作者: mike79   发布时间: 2009-04-16

好细致的分析
汗颜

作者: endlesssky   发布时间: 2009-04-16

分析的不错。

作者: APPS   发布时间: 2009-04-16

学习了...mike79好牛,在CU和那个SUN的家伙PK n轮了....

作者: diyxyj   发布时间: 2009-04-16

不错,学习一下.

作者: brucewoo   发布时间: 2009-04-16

学习了...mike79好牛,在CU和那个SUN的家伙PK n轮了....
diyxyj 发表于 2009-4-16 23:30
CU搞SUN的人很轻狂,没啥水平,和他们辩论都没意思。

作者: 老农   发布时间: 2009-04-17

在LU讨论技术,到CU灌水

作者: mike79   发布时间: 2009-04-17

LZ果然牛X
CU的SUN那个家伙,难道是指南非蜘蛛?

作者: xiaoxiaoqiushui   发布时间: 2009-04-17

受益非浅!!!

作者: updownman   发布时间: 2009-04-17

思路很清晰,牛

作者: lichx123   发布时间: 2009-04-17

其实有一个很好解决的办法,不用那么麻烦:
用alias方式把persisitent ip配置到boot1网卡上,这样网卡起来就有persistent ip,而不是依赖HACMP来起persistent ip,就算HACMP软件都被删除了,persistent ip永远是可以访问的。自然也不再需要关心rc.net与harc的先后问题

作者: larryh   发布时间: 2009-04-18

我记得以前网关是不需要和本机IP在同网段的,我以前就这样玩过主机路由。不知道为什么现在限制住了。

作者: 老农   发布时间: 2009-04-18

larryh
但是这样的话一旦boot1宕掉,persistent ip不就丢掉了?绕过HACMP设置persistent ip就不能保障persistent ip在本机网卡间的漂移了。

作者: mike79   发布时间: 2009-04-18

我说的并非HACMP中不设persistent ip了,只是先把persistent ip用系统的方法强行设置在网卡上。一旦HACMP本身正常运行,自然接管persistent ip的管理权,功能当然有效。

作者: larryh   发布时间: 2009-04-19

但是这条alias命令应该放在哪个时间点执行?理论上讲应该是在network interface被配置之后,但是在网关设置之前,那就是/etc/rc.net的defif/cfgif命令之后,defnet/cfgnet之前?难道要修改/etc/rc.net脚本?
如果放在其他地方的话,除非再次调用/etc/rc.net,否则也不会增加网关

作者: mike79   发布时间: 2009-04-19



怎么老是用普通UNIX的想法搞AIX?除了普通UNIX的配置文件+命令方法,忘记了ODM了吗?

用smit配置alias,直接就在network interface的ODM中了,启动的时候,一cfgmgr,alias就存在了,而且enX肯定在inet0之前,不就自然实现了地址配置在路由配置之前吗?更不用说rc.net之类非AIX标准方法了,肯定在cfgmgr之后吧?

作者: larryh   发布时间: 2009-04-19

没尝试过基于ODM的alias,受教

作者: mike79   发布时间: 2009-04-19

正确的就应该基于ODM

作者: 老农   发布时间: 2009-04-19

难得好贴,收藏了

作者: 哞哞牛   发布时间: 2009-04-20

高手的讨论,有点朦啊

作者: zhanghaiyang   发布时间: 2009-04-20

AIX+FAST+HACMP配置信息

作者: dxb828   发布时间: 2009-04-20

怎么HA5.5还有这个问题?我在HA5.41上碰到过,打800电话告诉我要打IZ22483和IZ11326补丁,难道到了HA5.5还依然如旧?听说这是HACMP一个著名的问题,为什么不能彻底地解决?

作者: water1997b   发布时间: 2009-04-21

经典。黄老大

作者: qian1110   发布时间: 2009-04-28

哇,楼主真的好厉害的呀,真的让我豁然开朗了哦










十二之天2官网可你别忘了有句老话这样讲站得高摔得重到头天子下载来受伤害的总是自己快乐与热心的人让你心烦路尼亚战记我们周围总有一些热心人士整天乐呵呵地永恒之塔视频

作者: 冰雨雪   发布时间: 2009-04-29

顶,Bump up!

作者: sunsun   发布时间: 2009-05-07

配置persisitent ip解决路由问题后,service ip万一和persisitent ip跑到同一块网卡上,service ip和persisitent ip是同网段IP,这样两个IP都丢包(局域网通讯使用MAC地址)怎么办?

作者: traveller2   发布时间: 2009-05-11

一个网卡上的两个IP在同个网段是不会丢包的。
不知道LS是想什么呢。。。。。

作者: 老农   发布时间: 2009-05-11

谢农哥指正,我很晕,一些基础我没理解清楚。我想说的,实际上是在同一网段的两个IP地址分别在UNIX系统两个网卡上的情况。刚才向同事请教了一下,被告知alias方式persisitent ip和service ip会启在同一块网卡上不会出现丢包现象,逮个机会我验证一下。

作者: traveller2   发布时间: 2009-05-12

larry,提议的思路不错,但无法做到persistent ip的本地切换。本人感觉HA这块HP的Service guard做的就比IBM的好一点。

作者: huangxiang   发布时间: 2009-05-18

外行瞎以为。认真点了解HA就那么难么?

作者: 老农   发布时间: 2009-05-18

不要抱着IBM什么都好的态度好不好!在cluster的评测中IBM的HA就没得过什么好评?拜托你老农专业一点好吗???

作者: huangxiang   发布时间: 2009-05-18

另外,我说的只是自己的实施中的一点体会,我也喜欢IBM的产品,特别是AIX,一个我感觉最棒的Unix系统,但她不是完美无缺的,在IT这一行我干了十几年还没有见过完美无缺的产品!也许你见过?老农.不要妄加评论一个人或者他说的话,特别是在你不了解的情况下。

作者: huangxiang   发布时间: 2009-05-18

谁说什么IBM都好了?BC。
骂IBM我骂得多了。

我不专业?你算哪门子专业,有啥好说的。你干了十几年又怎么样了?就代表你专业了?

你认为我不了解你就是不了解你了?你要不怕丢人,就把自己的情况说说,然后我告诉你你怎么地不专业!

否则,就废话少说。

作者: 老农   发布时间: 2009-05-18

呵呵!这么牛啊!我是谁并不重要,重要的是我倒想向你请教请教AIX HA和HP MC/SG到底各有什么优劣?如果你真的有你自我感觉的这么好,把你的高见亮出来,让大家见识见识如何?用的着那么多的废话吗?了不起的人物我也见过,你这号的我也见过。

作者: huangxiang   发布时间: 2009-05-18

larry,提议的思路不错,但无法做到persistent ip的本地切换。本人感觉HA这块HP的Service guard做的就比IBM的好一点。
huangxiang 发表于 2009-5-18 00:06


这不是因为MCSG做得好,而是因为AIX做得不如HPUX好。原因如下:
HACMP是个第三方小公司给IBM做的,属于OEM产品,我曾经找到过这个公司的网站,但现在忘了;
HACMP不可能超过AIX能提供的能力来处理网络环境;
MCSG的网络部分强的原因是:HPUX提供加载虚拟网络接口设备的能力,类似lan0:1、lan1:1、lan1:2之类,而AIX不提供,只有死板的en0、en1等等,如果有HPUX提供的能力,应该可以有en0.1、en1.2。所以,HACMP早年连网络接口上配置的alias(非HACMP管辖)都会在切换中丢失,因为处理alias,显然比在设备层就把网络接口分开更加复杂难以控制;
HACMP自身也有一点问题:不会自动保持所有相同子网的IP在同一物理网卡上。

作者: larryh   发布时间: 2009-05-18

热门下载

更多