首页 > 代码库 > VCS双机原理

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

 

VCS双机原理