免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1432 | 回复: 0
打印 上一主题 下一主题

[集群与高可用] 实战:如何用VCS构筑双机的基础 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-07-28 11:21 |只看该作者 |倒序浏览

本文将涉及一些VCS双机软件的工作方式和基础原理,帮助用户更好地了解VCS的工作原理,在使用中可以更为灵活。    参考链接:高手教你用VCS配置DB2双机
    高手教你用VCS  DB2双机高级配置
    高手教你用Symantec VCS配置Oracle双机
    VCS是一个机群管理软件,最大的特点在于多平台和产品的兼容性,同时也提供了集群环境的全面的可用性管理,降低计划的和非计划的停机时间。
集群软件的分类
    一般来讲,集群软件分为三种:
    高性能集群(High performance cluster,HPC),它是利用一个集群中的多台机器共同完成同一件任务,使得完成任务的速度和可靠性都远远高于单机运行的效果。弥补了单机性能上的不足。该集群在天气预报、环境监控等数据量大,计算复杂的环境中应用比较多;
    负载均衡集群(Load balance cluster, LBC),它是利用一个集群中的多台单机,完成许多并行的小的工作。一般情况下,如果一个应用使用的人多了,那么用户请求的相应时间就会增大,机器的性能也会受到影响,如果使用负载均衡集群,那么?褐腥我庖惶ɑ?鞫寄芟嘤τ没У那肭螅?庋??壕突嵩谟没Х⒊龇?袂肭笾?螅?≡竦笔备涸刈钚。?芄惶峁┳詈玫姆?竦恼馓ɑ?骼唇邮芮肭蟛⑾嘤Γ?庋?涂捎糜眉?豪丛黾酉低车目捎眯院臀榷ㄐ浴U饫嗉?涸谕?局惺褂媒隙啵?br />     高可用性集群(High availability cluster,HAC),它是利用集群中系统 的冗余,当系统中某台机器发生损坏的时候,其他后备的机器可以迅速的接替它来启动服务,等待故障机的维修和返回。最大限度的保证集群中服务的可用性。这类系统一般在银行,电信服务这类对系统可靠性有高的要求的领域有着广泛的应用。
    VCS是属于其中的高可用性的集群,它能够在最短的时间内保证服务的可用性。对于当机时间有严格要求的需求来说,VCS可以提供良好的服务保证。
VCS环境的搭建与逻辑结构
    与所有的集群软件一样,VCS需要内部心跳线来通信,监控整个集群中所有节点的状态,为了保证高可用性,一般选择两条心跳线,以免某条网线发生故障影响系统的使用。
    心跳线的连接有两种方法,直连或者通过通过交换机连接。如果使用的是交换机连接的方式,需要配置两个交换机分别接在不同的心跳上面。这样可以避免因为交换机故障而破坏系统使用。此外,心跳线使用的网卡最好不是公网网卡,因为心跳信息是每时每刻都要往外面发送数据,如果用公网网卡作为心跳网卡,第一可能会影响公网的使用速率;第二是可能在公网网络中增加了大量的垃圾信息,增加网络负载。
    如果需要连接SAN存储,那么光纤卡也是不可或缺的。虽然一般的光纤卡上面都配置有两个光纤口,但是尽快选择两块不同的光纤卡以免单一光纤卡成为了高可用环境的瓶颈所在。
    VCS 使用的心跳协议叫做LLT(低延迟传输协议,Low Latency Transport),LLT运行在IP之下。这个协议比IP更快且更可靠。这能确保集群成员保持同步和在集群中能马上联系对方;
    在LLT上方的协议是GAB(组成员服务和广播,Group Membership Services/Atomic Broadcast),它负责发送广播,接收集群中所有节点的相应,得出集群中节点的状态信息;它也能接受上层服务的注册,将上层服务发出的命令通过LLT发送到各个节点中去。
    HAD(高可用进程, hign availability daemon)就是VCS的主要进程,它在gab上注册之后,可以监控管理整个集群中节点的状态。
    Agent是veritas提供或者个人用户自己实现的代理,用来实现用户特定的应用。举例来说,oracle服务就可以是一个代理,该代理可以通过监控oracle数据库的进程来判断oracle数据库的运行状态。VCS了解到判断方法后,会通过GAB和LLT服务来监控集群中所有节点上这些进程,从而监控oracle数据库的状态以及切换。
VCS的使用
启动VCS的图形界面,/opt/VRTSvcs/bin/hagui,默认的用户名和密码分别是admin、password,在安装过程中可以选择添加其他的用户。
    VCS中有两个概念,一个是服务组(service group),另外一个是资源(resource)。资源是监控的最小单位,可以监控某个特定的硬件或者软件的状态。多个资源可以构成一个服务组,共同监控一个应用的运行。多个组也可以组成一个更大的服务组。
    举例说起来比较容易,以oracle应用为例来说明一下:
    首先应该创建一个oracle服务组,然后在该组里面添加所需的节点,oracle服务将在这些节点中进行切换,保证服务的高可用性。
    另外,如果需要启动oracle,那么至少需要以下资源能够正常工作:
    网卡:提供oracle服务所需的IP地址所在的网卡;网卡设置必须指明设备名称;
     IP地址:提供oracle服务的IP地址必须在该主机上时刻存在;IP地址必须指明IP地址和设备,掩码和广播地址是可选的;
    目录1:$ORACLE_HOME所在的目录必须存在;目录必须指明目录名,如果是共享磁盘,还需要指明设备地址和文件系统类型;
     目录2:Oracle数据做存放的位置必须存在;
    Oracle代理:监控oracle进程的存在以及系统表空间可以访问;Oracle代理必须指明SID,数据库的owner,$ORACLE_HOME这些变量;
    除此之外,如果oracle数据需要放在共享磁盘上面,那么还要添加磁盘组资源和 卷资源。


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/66684/showart_1094323.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP