VCS双机原理
VCS双机的配置目录:/etc/VRTSvcs/conf/config/main.cf
VCS双机的监控脚本目录:/opt/VRTSvcs/bin/mdcc/
VCS双机日志目录:/var/VRTSvcs/log
Xmanager 看:Linux双机命令:hagui&
Xmanager 看管双机的默认用户名/密码 admin/password
hastart -force
hastop -force
hastop -all -force
hasys -force hostname
hastatus -sum
有时启动VCS后,hastatus -sum无反应,日志中说GAB错的,通常由于心跳没配好:
1. vi /etc/llttab,通常有如下几行:
set-node mtymxsdpmsdp11 --主机名
set -cluster 400 --Cluster组ID
link link1 eth0 -ether --第一心跳,保证网卡顺序呢正确的前提下,这个铁定是eth0
link link2 bond1 -ether--第二心跳,绑定内外IP的网卡,就是192.168.0.*所在的网卡
link -lowpri link3 bond0 -ether --低优先级心跳,绑定外网IP的网卡,就是10.216.78.*所在的网卡
view /etc/llthosts,这里面是双机机器名,通常如下:
0 mtymxsdpmsp 15
1 mtymxsdpmsp 16
view /etc/gabtab,里面是一个命令:/sbin/gabconfig -c -n 2 --这个2是集群中主机数量
2:修改后cd /etc/rc.d目录执行:
./llt restart
./gab restart
双机概念:
双机之前至少要有两条独立的通信链路,心跳之间的通信决定哪些系统是集群的成员,集群中的资源和服务组的信息,通过广播更新到各个节点。
LLT:Low Latency Transport 低时延,传输协议,使用以太网的链路层,基于连接但不需要路由,提供内核到内核的快速通信
GAB:Group Membership Service/Atomic Broadcast 运行在LLT之上,使用广播维护集群状态、管理集群成员
HAD:这是VCS的引擎,通过GAB与集群的其他成员通信,维护整个集群所有资源的配置信息和状态信息由后台进程hashadow来监控,可认为had是agent的管理者,它使用agent来监视所有节点上的所有资源的状态。
常用命令:
运行lsmod|grep gab,若显示如下,则表明veritas启动所需llt、gab已经加载到内核中。
#lsmod|grep gab
gab 211684 3
intermodule 20868 2 gab,llt
否则检查/etc/llttab、/etc/llthosts、/etc/gabtab这三个文件是否正确,确认正确后,手动加载llt、gab,然后再运行lsmod|grep gab检查,确保llt、gab已加载到内核中。
在/opt/VRTS/bin 目录下运行 ./lltstat -nvv 查看主、备的llt运行情况,/etc/llttab里的各个link全部UP才行。
虽然有时hastatus -sum可以显示内容,但是Application Probed的时候两台服务器不能全部为1,此时也是所有link没有全部UP的原因,所以各个link一定要全部UP才行。
检查LLT模块
运行/sbin/lltconfig,检查LLT状态,若不是running,则检查/etc/llttab是否正确
并且这里配的网卡必须是UP状态,可用ifconfig查看
然后检查/etc/llthosts文件中的主机名是否正确,前面的主机序号需在0-31之内
若都OK,那运行lltstat -n检查是否所有的心跳线都OK,正确显示应该如下:
LLT node information: Node state Links *0 mdsp1 open 3 1 mdsp2 open 3 |
检查GAB模块
运行/sbin.gabconfig -a查看主、备的GAB状态,两台机器显示如下:
GAB Port Membership Port a gen 459401 membership 01 Port h gen 349402 membership 01 |
如果gabconfig -a 提示GAB Port Memberships,需要检查/etc/gabtab文件是否正确
如果GAB一起动就关闭,那就是LLT的文件,如果没有h端口输入则表明HAD有问题
检查HAD
1、确认LLT、GAB是否正常启动;
2、运行hacf -verify /etc/VRTSvcs/conf/config,若运行后没有输出,则表明该目录下的main.cf正确
3、使用vxlicrep检查License是否正确,若出现vxlicrep ERROR V-21-3-1003,则需要重新输入License,使用命令vxlicinst,提示重新输入License
4、使用hastatus -sum检查各状态
只有保证llt、gab成功加载、Licence有效、main.cf文件正确后才能使用hatart(主、备都要执行)启动HAD
用hastatus -sum检查,显示如下表明VCS已成功启动:
--SYSTEM STATE --System State Frozen A mtymxsdpmsp15 RUNNING 0 A mtymxsdpmsp16 RUNNING 0 |
若VCS启动的时候资源组没有自动Online,则需要检查AutoStart、AutoStartList这两个属性 hagrp -display mdmc-rg
VCS的日志
VCS的引擎日志文件:/var/VRTSvcs/engine_A.log,agent代理日志文件也在这里,以代理的名字命名,例如IP_A.log
VCS的日志默认级别为error,可以使用hatype -modify res_type_LogLevel debug来更改日志级别。
查看资源组和资源状态:hastatus -sum
启动资源组:hargrp -online 资源组名 -sys 主机名
停止资源组:hargrp -offline 资源组名 -sys 主机名
切换资源组:hargrp -switch 资源组名 -to 主机名
停止双机软件和服务:hastop -all -force
启动双机软件和服务组:hastart