1、VCS技能总结1、概述&概念 12、VCS日常维护 23、VCS胶片总结 31、概述&概念VCS全称VERITAS Cluster Server(1)秉承VERITAS的产品的优良特性,跨硬件,跨平台。支持主要厂商的硬件,各种UNIX, windows等,虽然有很多平台,但是对于管理员来说只需要学会一套命令就可以了,很轻松的就可以成为VCS专家了,呵呵。当然也有基于java-GUI的很人性化的界面操作。(2)在一个cluster里面做多可以支持32个node,恩,这足够了(3)支持各种主流的第三方存储硬件环境,例如SCSI,ISCSI,NAS,SAN(4)提供了非常灵活的FAILOVER方式,
2、1对1,1 对多,多对1,多对多。(5)支持动态的FAILOVER方式,就是可以根据cluster的情况动态的选择目标机。(6)支持Service Group的FAILOVER,就是说可以支持很多台有关联的机器同时FAILOVER(7)通过agent提供了很好的扩展性,用户可以简单的开发出各种agent(8)具有很好的稳定性,高性能Clusters,Resources and resource types, Agents, Service Groups, Resource Dependencies, Heartbeat(1) Cluser: 就是集群,一个集群就是一群机器来共享同一组硬件存储设
3、备,VCS监控这所有机器上运行的程序,出现任何问题,就将它在另一台机器上运行。一个集群是通过同一个cluster-ID来识别的。这一组机器通过各种心跳线来保持通讯,详细的内容在此不表,一个Cluster只能包含一种操作系统,原因很简单,你不能把运行在AIX上的程序在SOLARIS上启动阿。(2) Resources and resource types资源包括硬件和软件资源,例如硬盘,网卡,数据库,IP地址,程序等等各种概念,这些都可以被VCS控制,状态基本就是两种:ONLINE和OFFLINE。VCS的作用就是监控这些资源。 资源的概念是逻辑的,例如,可以将IP地址和网卡设成一个资源。(3)
4、 Agents针对各种资源,可以开发各种Agent,VCS就是通过Agent来控制各种资源,例如导入数据库,启动等等各种操作。有个朋友说过一句”Agent的成熟度决定了一个产品的成熟度”,呵呵,很有道理啊(4) Resource Dependencies恩,任何东西都有依赖性,何况资源阿,例如启动一个web服务资源,应该先把网卡和IP启动吧,如果网卡资源有问题,这台机器上所有的资源差不多都应高FAILOVER了,这就是依赖性。(5) Heartbeat心跳,主流的保持集群同步的方式,就看大家谁做的好了。VERITAS整个通讯基本都是自己写的,主要包括LLT(LOW Latency Thansp
5、ort)和GAB (Group Membership and Atomic Broadcast)。 LLT依赖于MAC地址实现稳定的底层协议,GAB基于LLT,实现VCS资源的同步。关于LLT和GAB有很多内容,这里就不叙述了。(6) Splitbrian如果一个集群由于网络原因被分成了2个和多个部分,资源该在哪些机器上启动呢,这个问题涉及内容很多,以后再讨论。 2、VCS日常维护输入License#vxlicinst查看License:#vxlicrep查看磁盘:(STATUS 为online invalid,不受vxvm 管理;为Online,受vxvm 管理)#vxdisk list查看
6、磁盘组:#vxdg list查看卷:(输出中dg 是磁盘组,dm 是磁盘,v 是卷,pl 是plex,sd 是子磁盘。每个卷与关联的plex 和子磁盘一起列出。正常工作时状态应该为ACTIVE,内核状态为ENABLED,表示卷已经启动)#vxprintCluster 状态检查:#hastatus -summary检查机器上日志文件:#tail -f /var/VRTSvcs/log/engine_A.log检查服务组的状态#hagrp -state service_group -sys system_name检查main 的语法:(语法正确将没有任何返回结果)# haconf/hacf -ve
7、rify /etc/VRTSvcs/conf/config切换服务资源:#hagrp -switch service_group -to system_name停止资源监控:(此时可以对资源进行手工启停操作。在资源(例如:cg)需要手工启停的时候,需要冻结资源组,然后进行资源的手工操作)#hagrp -freeze service_group启动资源监控:(资源手工操作后,需要恢复正常运行模式)#hagrp -unfreeze service_group清除错误信息:(如果系统中显示error 信息后,不能正常切换,需要清除error 信息)#hagrp -clear service_grou
8、p停掉所有的VCS:#hastop -all -force停止本机上的VCS:#hastop启动本机上的VCS:#hastart强制启动VCS:(如果main.cf 被修改后,不能启动vcs,需要强制启动)#hastart -force启动VCS的图形界面,/opt/VRTSvcs/bin/hagui,默认的用户名和密码分别是admin、password,在安装过程中可以选择添加其他的用户 3、VCS胶片总结service group A “service group” is a collection of resources that monitor the status of an app
9、lication (服务组是各种监控应用状态的资源的集合); Application failover is controlled by the service group(应用的失效转移是由服务组来控制的)Active/Passive Clustering(主备方式)“asymmetric configuration”(非对称配置):每个主机都需要一个专用的备机做备份,成本很高,实际中不适用。Active/Active Clustering(互备方式)“symmetric configuration”(对称配置):两个节点提供不同的服务,互相备用,当一个节点故障,服务马上有第二个节点接管服务
10、基本概念和术语: 集群 Several networked systems几个节点 Shared storage共享存储 Single administrative entity单个管理节点 Peer monitoring相互监控systems 系统 Members of a cluster集群的一个成员 Referred to as nodes也称之为节点 Contain copies of: 包括如下内容 Communication protocol configuration files通信协议的配置文件 VCS configuration files VCS的配置文件 VCS libr
11、aries and directories VCS的库文件和安装目录 VCS scripts and daemons VCS的脚本和后台程序 Share a single dynamic cluster configuration 共享一个动态的集群配置 Provide application services 提供应用的服务Service Groups 服务组 A service group is a related collection of resources.服务组是资源的一个集合 Resources in a service group must be available to th
12、e system.服务组中的资源在系统中必须是可用的 Resources and service groups have interdependencies.服务组和资源存在相互依赖关系Service Group Types 服务组的类型 Failover失效转移 Can be partially or fully online on only one server at a time同一时间只能在一台机器上运行 VCS controls stopping and restarting the service group when components fail当服务组某个资源出错时,VCS控
13、制它的停止和重启 Parallel并行 Can be partially or fully online on multiple servers simultaneously可以同时在多台机器上运行 Examples: Oracle Parallel Server Web, FTP serversResources 资源 VCS objects that correspond to hardware or software components包括软件和硬件组件 Monitored and controlled by VCS通过VCS来监控和控制 Classified by type通过资源类
14、型分类 Identified by unique names and attributes通过唯一的名称和属性来标识 Can depend on other resources within the same service group在同一服务组中可依赖其他资源Resource Types 资源类型 General description of the attributes of a resource通常描述一种资源的属性 Example Mount resource type attributes:例如mount资源类型的属性 MountPoint 挂载点 BlockDevice 挂载设备
15、 Other example resource types:其他类型的资源 Disk磁盘 Share共享 IP浮动IP NIC网卡Agents 代理 Processes that control resources 控制资源的程序 One agent per resource type每种类型的资源对应一个代理 Agent controls all resources of that type.一个代理控制对应类型的所有资源 Agents can be added into VCS agent framework.用户可以加入自己的代理到VCS的框架中Dependencies依赖关系 Reso
16、urces can depend on other resources. 资源可以依赖其他资源 Parent resources depend on child resources. 父资源依赖子资源 Service groups can depend on other service groups.服务组可以依赖其他服务组 Resource types can depend on other resource types.资源类型之间也存在依赖,比如IP类型必须依赖NIC类型 Rules govern service group and resource dependencies.资源和服务
17、组之间的依赖关系由规则管理 No cyclic dependencies are allowed.不允许出现循环依赖Private Network 私有网络 Minimum two communication channels with separate infrastructure:至少需要两条独立的通信链路 Multiple NICs (not just ports)多块网卡 Separate hubs, if used独立的hub Heartbeat communication determines which systems are members of the cluster.心跳之
18、间的通信决定哪些系统是集群的成员 Cluster configuration broadcast updates cluster systems with status of each resource and service group.集群中的资源和服务组的状态信息通过广播更新到各个节点Low Latency Transport (LLT)低时延传输协议 Provides fast, kernel-to-kernel communications提供快速,内核到内核的通信 Is connection oriented Is not routable 不需要路由 Uses Data Link
19、 Provider Interface (DLPI) over Ethernet 使用以太网的链路层Group Membership Services/Atomic Broadcast (GAB) Manages cluster membership 管理集群成员 Maintains cluster state 维护集群状态 Uses broadcasts 使用广播 Runs in kernel over Low Latency Transport (LLT) 运行在llt之上VCS Engine (had)VCS的引擎 Maintains configuration and state in
20、formation for all cluster resources维护整个集群的所有资源的配置和状态信息 Uses GAB to communicate among cluster systems通过gab与集群的其他成员通信 Is monitored by hashadow process由后台进程hashadow来监控VCS Architecture总体架构管理集群服务: 集群配置main.cf 启动VCShastart The hastart command starts the had and hashadow daemons. Syntax: hastart -option Op
21、tions: -stale -force Example: hastart -force 停止VCShastop The hastop command stops the VCS engine. Syntax:hastop option arg -option Options:-local -force | -evacuate退出-sys sys_name -force | -evacuate-all -force Example:hastop -sys train4 -evacuate The hastatus Command Displays status of items in the
22、cluster. Syntax:hastatus -option arg -option arg Options:-group service_group -summary Example:hastatus -group OracleSG Protecting the Cluster Configuration 保护集群的配置1. Cluster configuration opened; .stale file created2. Resources added to cluster configuration in memory; main.cf out of sync with memo
23、ry configuration3. Changes saved to disk; .stale removedThe haconf command opens, closes, and saves the cluster configuration. Syntax: haconf option -option Options:-makerw Opens configuration-dump Saves configuration-dump makero Saves and closes configuration Example: haconf -dump -makeroAlters or
24、queries state of had Syntax: hasys option arg Options: -force system_name -list -display system_name -delete system_name -add system_name Example: hasys -force train11 Forcing a System to Start配置文件的传播1. Stop VCS on all systems in the cluster and leave applications running: hastop -all -force2. Start
25、 VCS stale on all other systems: hastart -stale The -stale option causes these systems to wait until a running configuration is available from which they can build.3. Start VCS on the system with the main.cf that you are propagating: hastart验证集群配置The hacf utility checks the syntax of the main.cf fil
26、e. Syntax:hacf -verify config_directory Example:hacf -verify /etc/VRTSvcs/conf/config修改集群属性The haclus command is used to view and change cluster attributes. Syntax: haclus option arg Options:-display-help -modify-modify modify_options-value attribute-notes Example: haclus value ClusterLocation启动的状态和
27、迁移停止的状态和迁移Troubleshooting 从以下几个方面来监控VCS: VCS的日志文件 系统的日志文件 使用hastatus命令查看VCS的状态 SNMP 事件告警机制 集群管理图形界面cluster managerVCS Log Entries VCS引擎日志: /var/VRTSvcs/log/engine_A.log 通过GUI图形界面查看日志或者 hamsg 命令: hamsg engine_A代理日志:Agent Log Entries 代理日志在 /var/VRTSvcs/log目录下面 日志文件用 AgentName_A.log来命名,如:IP_A.log 日志级别的
28、设置: none、error (默认设置)、info、debug、all 通过命令来改变日志级别: hatype -modify res_type LogLevel debug集群通信问题解决: 使用命令 hastatus summary检查VCS 如果输出类似如下,则表明集群之间的通信有问题 VCS:11307:Node has not received cluster membership yet, cannot process HA command 如果输出类似如下,则表明VCS的引擎启动有问题 hatest1 STALE ADMIN WAIT: all system stale 首先用
29、lltconfig命令检查llt模块是否是running状态,如果不是检查/etc/llttab文件 LLT模块问题解决: 检查/etc/llthost文件,主机名必须与/etc/llttab中的主机名保持一致,主机序列号必须在0-31范围内 如果llt的状态是running,用命令lltstat n检查是否所有的心跳线都是好的(请先确认在/etc/llttab中配置的网卡是否都是UP状态的,可以用ifconfig查看),类似输出如下: LLT node information: Node State Links * 0 test-smc3 OPEN 3 1 storage-1 OPEN 3G
30、AB模块问题解决: 首先检查GAB模块是否已经运行,gabconfig a 如果输出如下,则表明GAB模块有问题,请检查/etc/gabtab文件, GAB Port Memberships 如果GAB一启动马上关闭了,请检查LLT模块是否有问题 如果没有h端口的输出则表明HAD 有问题,正常的输出如下: GAB Port Memberships = Port a gen a76401 membership 01 Port h gen a76404 membership 01HAD模块问题解决 首先确认LLT模块和GAB模块已经正确启动 使用hacf verify /etc/VRTSvcs/conf/config检查VCS的配置文件是否配置正确,无输出则表明是正确的 确认VCS的license是否是正确的:vxlicrep,如果输出类似如下,则需要重新输入license vxlicrep ERROR V-21-3-1003 There are no valid VERITAS License keys installed in the system. 重新输入有效的lic
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1