Turbolinux GreatTurbo HA10 installation Guide

GreatTurbo HA10
用户快速安装手册 
版权所有 (c) 2005
北京拓林思软件有限公司
GREATTURBO HA10介绍................................................................................................................................................................1
1.GREATURBO HA的历史 ............................................................................1 2.GREATURBO HA10的使用限制 ......................................................................1 3.GREATURBO HA10的相关术语 ......................................................................2 4.GREATURBO HA10快速安装手册的使用方法 ..........................................................3 5.GREATURBO HA10快速安装的主体过程 ..............................................................3
1 章 安装 GREATTURBO HA10前的准备工作.........................................................................................................................5
1.了解和分析您的应用............................................................................5 2.准备 GREATURBO HA10需要的硬件环境..............................................................6 3. 准备 GREATURBO HA10需要的软件环境 ..............................................................7 4. 安装 GREATURBO HA10前需要准备的操作系统的配置 ..................................................7 5. 安装 GREATURBO HA10前需要准备用户的应用程序 ....................................................8 6. 安装 GREATURBO HA10的配置示例 ..................................................................8
2 章 安装 GREATTURBO HA10................................................................................................................................................11
1.确认您所使用的GREATURBO HA10产品的类型.......................................................11 2.安装 GREATURBO HA10...........................................................................11 3.注册 GREATURBO HA10产品.......................................................................12
3 章 系统配置.......................................................................................................................................................................16
1.选择其中一节点进行系统配置...................................................................16 2.在对方节点上同步配置.........................................................................21 3.运行 GREATURBO HA10...........................................................................21
4 章 用户脚本和检测脚本...................................................................................................................................................23
1.用户脚本.....................................................................................23 2.检测脚本.....................................................................................26
5 章 配置服务(使用共享磁盘).......................................................................................................................................29
1.配置工具.....................................................................................29 2.配置条件.....................................................................................29 3.配置命令.....................................................................................29 4.配置服务.....................................................................................31 5. 修改服务.....................................................................................36 6. 删除服务.....................................................................................36 7. 启动服务.....................................................................................37 8. 停止服务.....................................................................................37 9. 切换服务.....................................................................................38
6 章 配置服务(不使用共享磁盘) ...................................................................................................................................39
1.配置工具.....................................................................................39 2.配置条件.....................................................................................39 3.配置命令.....................................................................................39 4.配置服务.....................................................................................41 5. 修改服务.....................................................................................44 6. 删除服务.....................................................................................45 7. 启动服务.....................................................................................45 8. 停止服务.....................................................................................46 9. 切换服务.....................................................................................46
7 章 配置服务(使用磁盘镜像设备,KERNEL2.4)..........................................................................................................47
1.安装磁盘镜像软件(DRBD)........................................................................47 2.注册具有磁盘镜像功能的LICENSE.................................................................48 3.配置磁盘镜像设备.............................................................................48 4.添加使用磁盘镜像设备的服务...................................................................50 5. 修改服务.....................................................................................55 6. 删除服务.....................................................................................56 7. 启动服务.....................................................................................56 8. 停止服务.....................................................................................57 9. 切换服务.....................................................................................57
8 章 配置服务(使用磁盘镜像设备,KERNEL2.6)..........................................................................................................58
1.安装磁盘镜像软件(DRBD)........................................................................58 2.注册具有磁盘镜像功能的LICENSE.................................................................59 3.配置磁盘镜像设备.............................................................................59 4.添加使用磁盘镜像设备的服务...................................................................62 5. 修改服务.....................................................................................67 6. 删除服务.....................................................................................67 7. 启动服务.....................................................................................68 8. 停止服务.....................................................................................68 9. 切换服务.....................................................................................69
9 章 使用 GUIADMIN来配置 GREATTURBO HA......................................................................................................................70
1.GUIADMIN说明..................................................................................70 2.配置条件.....................................................................................71 3.安装、启动 GUIADMIN的命令......................................................................71 4.连接 GREATURBO HA服务器.......................................................................72 5.GUIADMIN功能介绍..............................................................................74 6. 停止 GUIADMIN..................................................................................79 7. 卸载 GUIADMIN..................................................................................79
10 章 检查 GREATTURBO HA10的运行状态.........................................................................................................................80
1.检查各守护进程的运行状态.....................................................................80 2.检查集群与服务的运行状态.....................................................................80 3.检查 DRBD的运行状态...........................................................................83
11 章 卸载 GREATTURBO HA10.............................................................................................................................................. 83
1.卸载 GREATTURBO HA10 .......................................................................83 2.卸载 DRBD....................................................................................83 3.卸载 GUIADMIN 客户端..........................................................................83
附录 GREATTURBO HA10 的维护......................................................................................................................................83
1.GREATURBO HA10的日志信息 .....................................................................83 2.FAQ..........................................................................................83 3. OG收集工具的使用方法 ........................................................................83 4.联系拓林思软件有限公司.......................................................................83
G R E A T T U R B O H A 1 0 用 户 快 速 安 装 手 册
介绍 
注意事项 
在您开始使用 GreatTurbo HA10之前,请您全面仔细 的阅读本用户手册!否则,可能会因为您的疏忽而使 得安装过程出现不必要的问题! 
 0介绍 
GreatTurbo HA10是北京拓林思软件有限公司推出的、为满足 Linux平台电信级 和企业级应用的高可用产品。GreatTurbo HA10提供的双机高可用方案能够更好 的满足用户业务的连续性,并且能够满足不同应用对高可用的要求。 
1.GreatTurbo HA的历史 
自 2001年以来,北京拓林思软件有限公司先后推出了两个系列的 HA产品: TurboHA6.0和 TurboHA6.5。GreatTurbo HA是 TurboHA的升级版,GreatTurbo  HA10对 TurboHA进行了多个方面的改进。 
2.GreatTurbo HA10的使用限制 
² GreatTurbo HA10只支持主流 Linux平台的双节点高可用。  ² GreatTurbo HA10暂不支持并行处理的应用。也就是说,不支持同一个应用
在两个节点同时并发运行的应用。例如:Oracle 9i RAC。 
² GreatTurbo HA10的稳定性需要 OS提供支撑。如果当操作系统宕机时,可
能会出现因 OS没有彻底释放资源而导致 HA系统丧失高可用功能。在这种情 况下,除非有额外的硬件设备,否则 GreatTurbo HA10并不能够完全保证能 够自动恢复操作系统。此时需要用户手工干预操作系统,对崩溃的操作系统 进行复位操作。也就是说,当 OS宕机时(尽管这种可能性很小),如果用 户没有以下硬件作为保障,仍然有可能会出现用户业务中断的可能: 
1)采用电子开关。  2)服务器节点采用支持硬件 watchdog功能的主板。 
² 配置 GreatTurbo HA10的两台计算机节点的心跳方式时,必须保证至少一条
心跳通道正常工作。如果两台节点之间的所有心跳通道都发生故障而不能正 常连通,有可能会导致 GreatTurbo HA10发生裂脑(split-brain)。发生 裂脑后,GreatTurbo HA10有可能会导致用户的资源不一致。为了完全杜绝 裂脑现象的发生,可以采用如下方法: 
1
G R E A T T U R B O H A 1 0 用 户 快 速 安 装 手 册
1) 采用电子开关。  2) 使用第三方参考 IP,有关第三方参考 IP的介绍将在第三章详述。 
其中第一种办法是使用硬件的办法,由于电子开关是额外的电子硬件设 备,需要用户自行购买,所以实际中采用这种方式并不多;而第二种方式是 软件的方法,可以保证 GreatTurbo HA10发生裂脑时,用户的资源不受损失, 但是需要用户提供另一个永久性正常工作的参考性 IP地址。 
3.GreatTurbo HA10的相关术语 
节点 : 指运行GreatTurbo HA10程序的计算机。  服务 : 也叫做资源组,指用户应用相关的一组资源的集合,包括用户应用的进程
资源、磁盘资源、网卡资源、浮动 IP资源、drbd镜像资源等。服务可以是其中几 种资源或者全部资源的组合。服务也可以为空,即不包括任何资源。通常用户的一 个应用与GreatTurbo HA10的一个服务对应。 
主节点 : 指服务运行所在的节点。  备节点 : 指完全没有服务运行的节点。如果主节点发生任何故障,服务就会从主
节点迁移到备节点。此时的备节点也就转变成主节点,此前的主节点也就转变成备 节点。 
主备方式 : 常见的主备方式有Active-Standby、Active-Active。Active-Standby 是指服务仅在一个节点上运行。Active-Active是指在两个节点都有服务运行。也 就是说,Active-Active方式时都是主节点,也都是备节点,互为主备关系。 
优先节点(preferred node): 指服务将优先运行的节点。当配置一个服务时, 可以给这个服务设定优先节点。一般有两种情况建议配置优先节点,一种情况是当 两个服务器节点的硬件配置不一样时,应当将服务的优先节点设定为硬件配置较好 的节点;另一种情况是当需要配置多个服务且应用的负载较重,而且希望两个服务 分别在两个节点上运行以分担负载时,可以给这两个服务分别各设定一个节点作为 优先节点。 
例如:假设服务s配置的优先节点是节点 A,并且将服务s在A节点启动,当 A节点发生故障时,服务s会迁移到B节点,后来当A节点恢复之后,服务s会因 为A节点设置成优先节点而自动回迁移到 A节点。 
当然,配置优先节点带来的弊病是,会导致服务多迁移一次。  服务的迁移(relocate): 是指服务在一个节点发生故障之后,服务先在故障节
点进行服务的停止以释放服务的所有资源,然后在另一节点启动服务,使服务继续 可用的过程。 
服务迁移的时间 :是指服务不可用的时间,也就是服务正在恢复之中但尚不可用 的时间段。 
例如:服务在 A节点发生故障的时刻为 T(a),服务自动迁移到 B节点并在 B 节点成功运行的时刻为 T(b),那么服务的迁移时间 T(relocate)=T(b)-T(a)。另一 方面,从整个迁移的子过程来看,服务迁移的时间(近似等于)≈服务在 A节点检 测到错误的时间+服务在 A节点停止的时间+服务在B节点启动的时间。其中,服 务的启动/停止时间是由用户的应用来决定的,一般不能够进行调整,而服务检测 到错误的时间可以通过GreatTurbo HA的配置参数来进行调整。 
2
G R E A T T U R B O H A 1 0 用 户 快 速 安 装 手 册
服务检测到错误的时间 = 服务检查的间隔时间(check interval) * 服务连续 检查到错误的次数(check count)。Check interval和 check count参数可以在 配置服务的检测脚本时进行指定。这样,只有当GreatTurbo HA检测到连续出错次 数达到指定的次数后,GreatTurbo HA才认为服务确实出错。服务确实出错后,会 自动触发GreatTurbo HA进行服务的迁移。 
裂脑(split-brain): 所谓裂脑,是指 HA的节点之间彼此失去了联系,但是单 个节点的 HA仍然运行正常。发生裂脑的充要条件是:1. HA的两个节点之间的所 有心跳通道都发生了故障,导致HA的两个节点失去了任何联系。2. 两个节点的HA 软件正在正常运行。 
裂脑带来的直接后果是导致两个节点都会各自启动并运行同一个服务,竞争同 一个服务的资源,这样有可能会导致资源(尤其是共享数据)被损坏。 
drbd(磁盘镜像设备) : 是指对两个节点各自大小相同的本地磁盘分区进行实时 镜像操作,使得这两个本地磁盘对双方节点而言,可以当作一个虚拟的共享磁盘阵 列来使用,这个虚拟的共享磁盘阵列就叫做drbd设备,可以把drbd当作普通的磁 盘设备来使用。 
Watchdog(看门狗) : Watchdog分为硬件级和软件级两种。硬件级watchdog是 用来保障操作系统自动恢复的一种手段,如果服务器节点的主板支持 watchdog功 能,那么在GreatTurbo HA10中可以进行相应的配置,当操作系统发生死机等不响 应情况,主板就会将操作系统自动重启恢复,而无需人工干预,这一点对于“24 *  7”方式运行的服务器而言非常有用。而软件级的 watchdog可以用来保证 GreatTurbo HA程序的健壮性但并不能保障操作系统的自动重启恢复。所以硬件级 的watchdog更加实用。 
4.GreatTurbo HA10快速安装手册的使用方法 
由于本手册是快速安装文档,所以各个章节的部分基本上都需要仔细阅读。其 中第五章、第六章、第七章根据您的应用类型选择其中一章进行阅读即可,其余章 节都是必读部分。 
5.GreatTurbo HA10快速安装的主体过程 
    GreatTurbo HA10快速安装的主体过程有如下六个步骤:  1) 进行安装/使用GreatTurbo HA10前的准备工作。(第一章介绍) 
2) 安装GreatTurbo HA10软件。(第二章介绍)  3) 配置GreatTurbo HA10软件。(第三章介绍)  4) 准备服务的用户脚本和检测脚本。(第四章介绍)  5) 根据您的应用类型,将应用配置成高可用的服务。(第五/六/七/八章介绍)  6) 监控和维护GreatTurbo HA10系统。(第九章介绍) 
3
G R E A T T U R B O H A 1 0 用 户 快 速 安 装 手 册
另外本手册在第十章介绍了如何卸载GreatTurbo HA10,并且在附录中还列出 了GreatTurbo HA10安装使用过程中常见的问题以及如何进行一些后期的维护。 
4
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
1章 
安装G 0前的准备工作 
安装 GreatTurbo HA10之前需要您做好相关的软硬件环境的准备工作。否则, 可能会影响您随后的安装过程,使您遇到不必要的麻烦。 
安装前的准备工作可以分为如下四个步骤:  1) 了解和分析您的应用; 
2) 准备GreatTurbo HA10需要的硬件环境;  3) 准备GreatTurbo HA10需要的软件环境;  4) 安装GreatTurbo HA10前需要准备的操作系统的配置。 
1.了解和分析您的应用 
GreatTurbo HA10可以支持绝大多数的双机高可用的应用。根据用户应用是
否需要使用共享的数据资源,GreatTurbo HA10将用户的应用分为三类:  1)第一类应用:需要使用共享磁盘阵列的应用。 
这类应用的特点是,应用的数据非常重要且 I/O负载较高,必须使用共享 磁盘阵列来保证应用数据的一致性、可靠性和高性能。此类应用的典型例子是 各类数据库应用,如 Oracle、Sybase、MySQL等。也就是说,使用 GreatTurbo HA10 的双机系统本身作为后台数据系统。 
2)第二类应用:不需要使用共享磁盘阵列并且也不需要存取共享数据的应用。 
这类应用的特点是,不需要存取共享数据,使用 GreatTurbo HA10的双机 系统只是用于进程和浮动 IP等资源的切换。一般情况下,这种类型的应用只是 用来作为前端接入、前置机来使用。典型的应用有 WEB/MAIL等网络应用或者是 用户自己的业务应用。这类应用通常会有另外的后台数据库系统来保存数据。 
3)第三类应用:需要使用共享磁盘阵列但是不具备磁盘阵列硬件条件的应用。 
这类应用的特点是 I/O负载较小(<10MB/s),数据本身并不是关键业务数 据,并且该应用需要使用共享的存储设备来保证数据的一致性。对于此类应用, GreatTurbo HA10提供了虚拟的共享磁盘设备 “磁盘镜像设备”来保证应用数 据的一致性。 
注意: 
5
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
通常情况下,用户的一个应用对应于 GreatTurbo HA10的一个服务。如果 有多个应用就需要在 GreatTurbo HA10中配置多个服务,依照每个应用的类型, 您可以分别按照第四章、第五章、第六章的内容进行配置。 
2.准备GreatTurbo HA10需要的硬件环境 
1) 两台 X86架构的计算机;硬件的配置只需满足能够安装主流的 Linux操作系 统的条件即可。推荐用户使用具备 RAID-1级别本地磁盘设备的服务器。 
2) 虽然 GreatTurbo HA10本身对硬件的要求不高,但是节点的硬件配置需要 和用户的应用负载相匹配,也就是说用户的硬件环境的性能配置应该满足用户 的应用负载的峰值要求! 
3) 每台计算机必须配备三块以上网卡。其中,用作两节点心跳信息的网卡采 用直连网线相连接,至少需要两条直连网线作为心跳线。 
网卡的性能要求取决于您的应用的类别。如上所述,如果您的应用类别是 第三类应用时,建议您至少需要使用一块 1Gbps的网卡作为直连网线的设备, 这样可以提高磁盘镜像设备的性能;如果是第一类应用或者是第二类应用时, 网卡性能达到 100Mbps即可(当然如果您的应用对网络带宽要求较高,则也需 使用 1Gbps网卡)。 
请将两台计算机的所有用作 GreatTurbo HA通道的对应网卡用直连网线一 一连接起来。 
4) 一根串口线。为了保证系统的高可用性,需要再使用一根串口线连接两个节 点的串口。 
请将两台计算机对应的串口用串口线连接起来。 
5) 是否需要共享的磁盘阵列,取决于您的应用。如果您的应用是第二类或第三 类应用,您可以不需要使用磁盘阵列。如果您的应用是第一类应用,您需要使 用共享的磁盘阵列。 
在选用磁盘阵列时,一般分两种情况:第一种是带独立 RAID处理器的磁盘阵 列,主流厂商的 SCSI或光纤磁盘阵列都可以满足 GreatTurbo HA10的要求,这类 磁盘阵列产品的性能强且价格也较高。第二种是使用主机 RAID卡和磁盘柜(磁盘 柜是指不具备硬件 RAID处理器的磁盘盒)的方式,这种磁盘设备不是真正意义上 的磁盘阵列,但通过双机的 RAID卡 clustering技术和RAID的用户接口工具等, 也可以满足GreatTurbo HA10的共享数据存取的需求,常见的这种类型的“磁盘阵 列”的典型产品有IBM 的EXP400、DELL的 220S、HP的 MSA500-G2等,这类“磁盘 阵列”产品的性能和价格一般都较前一种低。 
注意: 
1) 在配置磁盘阵列和做RAID盘的时候,请认真仔细参考磁盘阵列提供厂商的 手册,根据应用的特点来配置相关参数,如 hotspare盘、raid级别、stripe大小、 cache 策略等。如果不进行配置参数的调优将会导致磁盘阵列的可靠性和I/O性能 受到较大影响。 
2) 在使用第二种“磁盘阵列”的时候,一定要仔细询问相应的硬件厂家,其 产品是否支持双机 HA的数据共享应用。另外,建议尽量选择那些缓存较大同时附 带后备电池的 RAID卡型号,以提高 RAID卡的高可用性。 
6
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
3) 无论使用那种磁盘阵列,都一定要和硬件厂商确认,该磁盘阵列相关设备 的驱动程序是否为最新的稳定版本,以提高磁盘阵列的高可用性。 
3. 准备GreatTurbo HA10需要的软件环境 
安装GreatTurbo HA10的软件条件比较简单,只需要满足 TurboLinux 7.0 及
以上操作系统平台即可。 
如果您想使用图形界面的管理工具,那么必须保证在客户端和服务器端的操作 系统上提供Java运行时环境支持,JRE1.4.2及其以上版本。如果您不具备 java 环境,那么也可以使用文本方式的管理工具进行配置。 
注意: 
用户在安装操作系统时,建议用户采用完全安装操作系统的模式,并且将操作 系统安装在本地具有 RAID-1功能的磁盘设备上。这样可以保证操作系统功能的完 备性和操作系统数据的可靠性。 
如果使用图形管理工具,检查/usr/bin目录下的 java是否正确链接到 JRE 目录。 
4. 安装GreatTurbo HA10前需要准备的操作系统的配置 
两个节点的操作系统配置需要确认如下环节:  1) 请确认您登陆操作系统的身份是 root权限,因为随后的安装配置都需
要是 root权限。 
2) 如果您需要使用共享的磁盘阵列,请查看磁盘阵列是否已经可以使用
(包括硬件的配置、RAID的配置、驱动的安装、分区、文件系统等)。 
3) 所有网卡是否配置好。(包括直连网线是否连好、hosts文件是否设置
等)。如果使用了串口,查看双方的串口是否正常连接。 
4) 由于 GreatTurbo HA10 使 用 了 操 作 系 统的 syslog服务来打印
GreatTurbo HA10的 LOG日志,所以请确认 syslog服务已经配置并且 正在运行。例如: 
[root@test1 root]# /etc/init.d/syslog status  syslogd (pid 447) is running...  klogd (pid 457) is running... 
5) 如果你需要使用共享磁盘阵列,并且需要在共享磁盘上 make文件系统,
除非特殊的要求,强烈建议文件系统的类型为日志文件系统(例如 EXT3 等)。同时 make文件系统时,注意调整 block参数的大小以便与磁盘 阵列做 RAID盘时的 stripe参数对应成最佳。这样可以提高文件系统的 性能。 
7
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
6) GreatTurbo HA10的日志系统要求两台节点的系统时钟一致,以方便后
期维护。如果两台系统时钟不一致,请使用 hwclock以及 date命令来 调整时钟,使得两台节点的时钟大致相同,误差小于 30秒之内。 
7) 为了方便后期维护,需要系统的 sshd服务正常运行,并且允许 root
权限进行 ssh登陆。 
5. 安装GreatTurbo HA10前需要准备用户的应用程序 
接下来,请在两个节点上安装用户的应用程序,两个节点的安装配置都要 求是对等的,也就是说,在两个节点上安装的用户的应用程序所在的目录、使 用的共享磁盘设备名称、网卡名称等都应该一致。 
通常,都会将应用程序安装在两个节点的本地硬盘上。 
如果如果您的应用类别是第一类应用时,可能还需要在共享磁盘设备上准 备共享的数据。例如:对于 oracle应用,您需要表空间文件存放在共享磁盘设 备上。 
上面介绍了安装前需要的准备工作,接下来将通过具体的例子来说明。 
6. 安装GreatTurbo HA10的配置示例 
现在我们引入一个较为通用的双机软硬件环境的例子来说明具体的过程。 在随后几章的安装、配置、使用等章节中的具体内容将参照如下拓扑结构的情 况进行说明。 
8
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
交换机
eth0 172.16.70.10 eth0 172.16.70.20
浮动IP 172.16.70.100
eth1 192.168.1.11 第1条直连网线
Data General Data General
服务器
节点A
eth2 192.168.1.12
eth3 192.168.1.13
SCSI或FC
第2条直连网线
第3条直连网线(可选)
串口线/dev/ttyS0 /dev/ttyS0
3Com
磁盘阵列
eth1 192.168.1.21
eth2 192.168.1.22
eth3 192.168.1.23
服务器
节点B
SCSI或FC
如上图所示,有两台节点,服务器节点A和节点 B。假设每台机器有四个网卡 eth0-eth3,eth0连接至交换机,eth1-eth3和另一节点的对应网卡通过直连网线 相连,并且两个节点通过串口线将各自的第一个串口相连。此外,两台机器通过 SCSI线缆与共享的磁盘阵列相连。 
在节点 A/B两个节点上分别配置好各个网卡的信息(包括IP地址、网络掩码、 广播地址等),分别将 eth0的 hostname设置成主机的 hostname,假设节点 A的 hostname对应于eth0,且设置成test1,节点B的 hostname对应于eth0,且设置 成test2。并且分别在/etc/hosts文件中添加两个主机eth0-eth3网卡的别名。例 如hosts文件内容如下: 
172.16.70.10         test1 
172.16.70.20         test2 
192.168.1.11         hb11 
192.168.1.12         hb12 
192.168.1.13         hb13 
192.168.1.21         hb21 
192.168.1.22         hb22 
192.168.1.23         hb23 
注意:不要把 hostname对应到127.0.0.1这个IP地址。 
9
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
其中hb11、hb12、hb13对应节点A的 eth1、eth2、eth3三个网卡;hb21、hb22、 hb23对应节点 B的 eth1、eth2、eth3三个网卡。 
10
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
2章 
安装G  
在做好了第一章中所列的各项准备工作之后,现在就可以安装 GreatTurbo HA10 软件了。 
安装过程如下:  1) 确认您所使用的 GreatTurbo HA10产品的功能级别  2) 安装GreatTurbo HA10  3) 注册GreatTurbo HA10 
1.确认您所使用的GreatTurbo HA10产品的类型 
GreatTurbo HA.6.5产品分为两个功能级别,请确认您购买的产品属于哪一个 级别。第一级别只能够满足第一章提到的第一类和第二类的用户应用,第二级别能 够全部满足第一章提到的三类应用,也就是说第二级别是支持 drbd(磁盘镜像设 备)的功能级别。 
当然,具体选购何种级别功能的 GreatTurbo HA10,完全取决于您需要满足的 应用类型。确认了GreatTurbo HA10的功能级别之后,就可以开始安装GreatTurbo  HA10了。 
2.安装GreatTurbo HA10 
请分别在节点A和节点 B安装GreatTurbo HA10软件。  1) 如果您购买的是正版的GreatTurbo HA10产品,GreatTurbo HA10会附带软件
的安装光盘。插入安装光盘到节点的光驱并mount后,光盘根目录中有一个安装文 件 install_ha,请运行如下命令进行安装。根据您的操作系统版本并参照其提示 完成GreatTurbo HA的安装。  
如果您的GreatTurbo HA10产品支持 drbd(磁盘镜像设备),请在“Do you want  to use drbd ?”时选择yes,否则选择no。 
例如: [root@test1 root]# mount  /dev/cdrom  /mnt/cdrom 
[root@test1 root]# cd  /mnt/cdrom  [root@test1 cdrom]# ./install_ha  Following RPMs will be installed or upgraded to newer version if  necessary:    *) pdksh 
11
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
  *) lsof    *) sg_utils    *) drbd    *) GreatTurbo HA    *) GreatTurbo HA Agents  Please select the operatating system version you are using: 
0) Red Hat 7.2 (kernel:2.4.7-10)    1) Turbolinux Data Server 7 (TDS7 kernel:2.4.18-17, 2.4.18-3.10.2)    2) Turbolinux Data Server 7.1 (TDS7.1 kernel:2.4.21-18)    3) United Linux 1(UL,TLES8 kernel:2.4.21-138)    4) Turbolinux Data Server 10 (TDS10 32bit, kernel:2.6.9-5.11)    5) Turbolinux Data Server 10 (TDS10 64bit, kernel:2.6.9-5.11)    6) cancel  Please select an OS version, then the installation procedure will begin.  Select 6 to abort [0/1/2/3/4/5/6]2  Do you want to use drbd? (y/n) [y]: y  
2) 如果您是从拓林思公司下载的试用产品(使用有效期为 1个月),您下载的 GreatTurbo HA10将是一个 ISO文件和 md5检验文件。ISO文件的名称一般为 GreatTurbo HA-6.5.x-x.iso, md5 文 件 的 名 称 一 般 为 GreatTurbo  HA-6.5.x-x.iso.md5。为了验证您下载的iso文件是否正确,可以先对您的iso文 件进行 md5sum操作,如果发现md5sum运行命令所得结果,和您下载的md5文件的 内容一致,则表明您下载的ISO文件正确无误。 
例如: 
[root@test1 iso]# md5sum ./GreatTurbo HA-6.5.0-8.iso  88f7b387c8cdaca3fa38832c6b7b2b6a  GreatTurbo HA-6.5.0-8.iso  [root@test1 iso]# cat ./GreatTurbo HA-6.5.0-8.iso.md5  88f7b387c8cdaca3fa38832c6b7b2b6a  GreatTurbo HA-6.5.0-8.iso 
证明您下载的ISO文件正确之后,请先将ISO文件mount到某一个目录,然后 运行这个目录下的 install_ha安装程序进行安装,接下来的过程同从光盘安装时 介绍的一样。 
[root@test1 root]# mount o loop  ./GreatTurbo HA-6.5.0-8.iso   /mnt/cdrom  [root@test1 root]# cd  /mnt/cdrom  [root@test1 cdrom]# ./install_ha 
3.注册GreatTurbo HA10产品 
安装完 GreatTurbo HA10的软件之后,您需要注册 GreatTurbo HA10产品, 也就是说需要安装 GreatTurbo HA 6.5的 license,以保证 GreatTurbo HA10 正常运行。 
12
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
注册 GreatTurbo HA10产品的步骤如下:  1) 获得两个节点的硬件号,分别在两个节点上运行”/opt/cluster/bin/syncd 
-l” ,其输出的第一行信息,例如“Hardware ID: 3355DEJGQWVK”,其中 “3355DEJGQWVK”就是硬件号。仔细记录两台节点的硬件号,以便在随后的 注册中使用。 
2) 用浏览器登陆注册网站 http://www.turbolinux.com.cn/register。 
3) 点击 Turbolinux GreatTurbo HA 6.5,进入如下图所示的登陆页面: 
4) 如果您是第一次注册,请点击“新用户”按钮,按要求详细填写注册信息。  5) 注册完之后,返回如上登陆页,输入电子邮件地址和密码,点击“登陆”,
进入注册页。 
您还可以在产品序列号栏,输入您购买产品时附带的序列号,以查看序列 号有没有被注册过,如果发现被人盗用注册过,则请与拓林思软件有限公司联 系,因为注册码只允许注册一次。  6) 登陆后,进入以下页面: 
13
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
如果您是正版用户,请点击“增加产品序列号”按钮。如果您没有序列号, 只是试用,请点击“评估版许可证”按钮。  7) 点击“增加产品序列号”之后,进入如下页面: 
在 SN栏输入您购买产品时附带在注册卡上的序列号,然后点击“下一步” 按钮,进入如下页面: 
8) 分别填入两个节点的硬件号,然后点击完成,进入到如下所示的页面: 
14
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
9) 点击“取得使用许可证”按钮,在接下来的页面上选择如何保存你得许可证:
寄到信箱或者存到文件。 
10) 得 到 license 文 件 之 后 , 你 需 要 把 它 分 别 copy 到 两 个 节 点 的
/etc/opt/cluster/lic目录下。 
注意:  在/etc/opt/cluster/lic目录下只能保存一个 license文件。 
至此,GreatTurbo HA10产品注册完毕。接下来在第三章中,我们将讲述如 何对 GreatTurbo HA进行初始配置。 
15
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
3章 
系统配置 
在以上步骤配置完成之后,就可以初始化 GreatTurbo HA10了。 初始化过程是 通过 member_config命令来完成的。 
初始化 GreatTurbo HA10的过程如下:  1) 选择其中一节点(例如节点 A)进行系统配置,  2) 在另一节点(例如节点B)同步配置信息。  注意:  member_config只需要在一个节点上配置。 
1.选择其中一节点进行系统配置 
首先我们需要选择其中一节点对 GreatTurbo HA10进行一些配置。 
1)启动member_config命令 
注意:  如果您使用了 IBM的EXP400系列的磁盘柜,在确定IBM的 EXP400磁盘阵列的硬件
安装和配置正确之后,运行member_config -s命令。 
运行member_config命令,系统显示如下: 
[root@test1 root]# /opt/cluster/bin/member_config  ------------------------------------  Cluster Member Configuration Utility  ------------------------------------  Version: 6.5.0 Built: Mon Apr 11 20:29:21 CST 2005 
This utility sets up the member systems of a 2-node cluster.  It prompts you for the following information: 
o  Hostname  o  Number of heartbeat channels  o  Information about the type of channels and their names 
16
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
o  Power switch type and device name 
In addition, it performs checks to make sure that the information entered  is consistent with the hardware, the Ethernet ports, the raw partitions  and the character device files. 
After the information is entered, it initializes the partitions and saves  the configuration information to the quorum partitions. 
- Checking that cluster daemons are stopped: done  - Configuration file exists already.    Would you like to use those prior settings as defaults? (yes/no)  [yes]yes 
如果以前运行过 member_config命令,那么配置文件中会保存我们的配置结
果,该选项就是问我们是否使用以前的配置结果作为缺省值,通常回答yes。 
注意:如果是第一次配置,则不会出现该选项。 
2)配置本地节点名称 
接下来,输入本地节点的名称。GreatTurbo HA会自动的从您系统中/etc/hosts 中得到本地节点的名称,前提是您没有把这个名称对应到127.0.0.1。 如果这个名 称对应到127.0.0.1,安装程序会退出,并提醒您正确的配置/etc/hosts。 
----------------------------------------  Setting information for cluster member 0  ----------------------------------------  Enter name of cluster member [test1]: test1  Looking for host test1 (may take a few seconds)...  Host test1 found  Cluster member name set to: test1  
3)配置本地节点的 heartbeat选项: 
GreatTurbo HA10的 heartbeat通道有两类: 网络(net)和串口(serial)。对 于网络,您需要配置 heartbeat使用的网络设备对应的别名;对于串口,您需要配 置heartbeat使用的串口的设备名,例如 /dev/ttyS0。 
注意:为了获得更高的可用性,GreatTurbo HA 6.5建议配置一条串口通道以 及至少两条直连网络心跳通道,并且必须将应用所在的网卡配置成通道,配置通道 的顺序为:先配置所有的直连网线通道,再配置应用所在网卡的通道,最后配置串 口通道。 
17
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
Enter number of heartbeat channels (minimum = 1) [1]: 4  You selected 4 channels  Information about channel 0:   Channel type: net or serial [net]:   Channel type set to: net  Enter hostname of cluster member test1 on heartbeat channel 0 [test1]:  hb11    Looking for host hb11 (may take a few seconds)...  Host hb11 found  Hostname corresponds to an interface on member 0  Channel name set to: hb11  Information about channel 1:   Channel type: net or serial [net]:   Channel type set to: net  Enter hostname of cluster member test1 on heartbeat channel 1: hb12   Looking for host hb12 (may take a few seconds)...  Host hb12 found  Hostname corresponds to an interface on member 0  Channel name set to: hb12  Information about channel 2:   Channel type: net or serial [net]:   Channel type set to: net  Enter hostname of cluster member test1 on heartbeat channel 2: test1  Looking for host test1 (may take a few seconds)...  Host test1 found  Hostname corresponds to an interface on member 0  Channel name set to: test1  Information about channel 3:   Channel type: net or serial [net]: serial  Channel type set to: serial  Enter device name: /dev/ttyS0  Device /dev/ttyS0 found and no getty running on it  Device name set to: /dev/ttyS0 
4)配置本地节点的 power switch和 watchdog选项: 
如果没有硬件电子开关设备,请输入NONE。如果有硬件电子开关,输入相应的 电子开关对应的类型,如:RSA、RPS10或者是 APC。 
软件级的 watchdog可以用来保证 GreatTurbo HA程序的健壮性但并不能保障 操作系统的自动重启恢复; 如果有硬件watchdog,请输入硬件watchdog对应的驱 动模块的名字,如果没有硬件 watchdog,建议配置软件 watchdog,输入操作系统 默认附带的软件watchdog的模块名字softdog即可。 
18
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
Information about power switch connected to member 0  Specify one of the following switches (NONE/RSA/RPS10/APC) [NONE]: NONE  Power switch type set to NONE 
Information about watchdog to member 0  Choose one of the following watchdog drivers: NONE/softdog/...) [NONE] :  softdog 
5)配置对方节点信息 
对方节点信息包括节点的机器名,heartbeat的设置,watchdog driver等。 设置方法和本地完全一样。 
----------------------------------------  Setting information for cluster member 1  ----------------------------------------  Enter name of cluster member: test2  Looking for host test2 (may take a few seconds)...  Host test2 found  Cluster member name set to: test2 
You previously selected 4 channels  Information about channel 0:   Channel type selected as net  Enter hostname of cluster member test2 on heartbeat channel 0: hb21    Looking for host hb21 (may take a few seconds)...  Host hb21 found  Channel name set to: hb21  Information about channel 1:   Channel type selected as net  Enter hostname of cluster member test2 on heartbeat channel 1: hb22    Looking for host hb22 (may take a few seconds)...  Host hb22 found  Channel name set to: hb22  Information about channel 2:   Channel type selected as net  Enter hostname of cluster member test2 on heartbeat channel 2: test2  Looking for host test2 (may take a few seconds)...  Host test2 found  Channel name set to: test2  Information about channel 3:   Channel type selected as serial 
19
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
Enter device name [/dev/ttyS0]: /dev/ttyS0  Device name set to: /dev/ttyS0 
Information about power switch connected to member 1  Specify one of the following switches (NONE/RSA/RPS10/APC) [NONE]: NONE  Power switch type set to NONE 
Information about watchdog to member 1  Choose one of the following watchdog drivers(NONE/softdog/...) [NONE]:  softdog 
6)配置第三方 IP 地址 
您需要配置两个节点都可以连接的第三方IP地址(要求能 ping通,一般选择 网关作为第三方IP)。如果条件具备,建议您配置第三方IP。 
如果条件实在不具备,输入no,然后回车。 
Do you want GreatTurbo HA to determin network status? (yes/no) []: yes 
The IP address of a third computer is needed to determin network status.  The third computer should be up all the time, so it is recommend to use  gateway IP address here. Please use IP address instead of domain name. 
Enter the IP address of a third computer []: 172.16.68.1  Looking for host 172.16.68.1 (may take a few seconds)...  Host 172.16.68.1 found 
   
7)保存配置 
如果以上内容全部配置完毕,member_config将会询问是否保存改动。如果
刚才的配置没有错误,请输入"yes"或直接回车; 
然后程序还会询问是否运行"diskutil -I"来初始化配置文件,这里请选择
"yes"。  
注意:当 GreatTurbo HA的守护进程正在运行时,请不要选择运行 diskutil 
-I 来初始化配置文件,以免造成不可预知的后果。 
Save changes? yes/no [yes]: yes 
20
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
Writing to output configuration file...done.  Changes have been saved to /etc/opt/cluster/cluster.conf  ----------------------------  Setting up Quorum Partitions  ----------------------------  Run diskutil -I to set up the configure file now?  - Select 'yes' to clean up a previous install  - Select 'no' if you have just set them up on other member    and have not started the cluster services on that member  - Select 'no' if you are running it on other cluster member  Warning: Do not run 'diskutil -I' on a running cluster, because it would  have severe consequences. yes/no [no]: yes 
Saving configuration information to configure file: done 
2.在对方节点上同步配置 
配置完成之后,需要把配置文件/etc/opt/cluster/cluster_raw.conf 手
工拷贝到另外一台机器的相同目录里(使用 scp或者 ftp均可)。 
[root@test2 root]# scp test1:/etc/opt/cluster/cluster*  /etc/opt/cluster 
3.运行GreatTurbo HA10 
初始化完成之后,需要在两边节点分别运行 GreatTurbo HA10。脚本 /etc/init.d/cluster可以用来启动GreatTurbo HA10。 
[root@test1 root]# /etc/init.d/cluster start  -------- Starting Cluster Daemons ---------------------  Start GreatTurbo HA...done  -------- Completed Cluster Startup ---------------------  [root@test1 root]# 
注 意 : 请 不 要 执 行 完 /etc/init.d/cluster start 后 立 即 执 行 /etc/init.d/cluster stop, 请 确 认 GreatTurbo HA 启 动 完 成 后 再 执 行 /etc/init.d/cluster stop。 
21
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
member_config初始化完成之后,GreatTurbo HA就可以正常运行了,只不过 没有配置服务。用户可以参阅第九章的检测方法来判断GreatTurbo HA是否可以成 功启动。 
在配置服务之前,首先需要准备服务所需要的用户脚本和检测脚本。 
22
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
4章 
用户脚本和检测脚本 
在配置 GreatTurbo HA的服务时,需要配置服务的用户脚本和检测脚本。用户 脚本也就是启动和停止脚本,用来启动和停止服务相关的应用程序。检测脚本 在服务运行过程中用来检测服务的运行情况。 
用户脚本和检测脚本虽然并不是必需的,这要根据应用的实际情况来决定。如果需 要用户脚本和检测脚本,那么在配置服务之前首先需要准备好用户脚本和检测脚 本,并且测试用户脚本和检测脚本都正确无误后方可开始配置服务。
1.用户脚本 
用户脚本是一个shell的脚本,用来启动和停止服务相关的应用程序,一个服 务只能配置一个用户脚本。 
(1) 编写用户脚本 
请参照下面的例子来编写用户脚本,在 GreatTurbo HA10安装光盘的
doc/examples 目录下也有用户脚本的例子,名字为usrapp.sh。
在编写用户脚本时,需要注意以下的问题:
1) 脚本的参数必须包含对输入参数 start、stop 的相应处理,在启动部分加入 用户所有程序的启动命令,在停止部分加入用户所有程序的停止命令。也 就是说脚本的格式必须是规定的格式。请参照例子进行编写。
2) 请在脚本中加入log 信息,以便发生故障时准确定位故障原因。
3) 脚本执行成功时要明确返回 0,失败时要明确返回 1。特别是当应用程序有
标准的启动/停止脚本时,请确认该脚本在成功时是否返回0,失败时是否返1,如果不是,请不要直接使用应用程序提供的脚本,请手动编写脚本。
4) 对于操作系统默认安装的一些应用的脚本,如 httpd,该脚本的返回值在启/停止时会判断是否已经启动/停止了,在已经启动/停止时,该脚本返回值1,这不满足 GreatTurbo HA 的接口,需要将其改成0。当然,用户自写 的脚本在判断是否已经启动/停止时,也应该满足返回值为 0 的条件。
5) 如果启动和停止分别有多步操作,停止操作的执行顺序一定要和启动操作的 执行顺序相反。
23
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
6) 用户脚本要有可执行权限。
(2) 测试用户脚本 
用户脚本写好后,请务必通过测试检查用户脚本是否正确。  例如,用户脚本的名字为 usrapp.sh。 
1) 启动 
首先执行 usrapp.sh  start。  然后 echo $? ,判断脚本的返回值是否为0,0表示脚本执行成功。  检查应用程序是否正常启动。  如果脚本的返回值为0并且应用程序正常启动了,表示用户脚本在启动时是
正确的。  2) 停止 
首先执行 usrapp.sh  stop。  然后 echo $? ,判断脚本的返回值是否为0,0表示脚本执行成功。  检查应用程序是否正常停止。  如果脚本的返回值为0并且应用程序正常停止了,表示用户脚本在停止时是
正确的。 
(3) 用户脚本的例子 
#!/bin/sh
# userscript sample
LOG_EMERG=0 # system is unusable LOG_ALERT=1 # action must be taken immediately LOG_CRIT=2 # critical conditions LOG_ERR=3 # error conditions LOG_WARNING=4 # warning conditions LOG_NOTICE=5 # normal but significant condition LOG_INFO=6 # informational LOG_DEBUG=7 # debug-level messages
script_name=`basename $0`
clulog() { log_level=$1 log_info=$2
24
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
/opt/cluster/bin/clulog -p $$ -n $script_name -s $log_level "$log_info" }
case "$1" in start)
# start your application, put actual start actions here
su - oracle -c "dbstart"
if [ $? -eq 0 ]; then
# should check application process here pmon=`ps -ef | egrep ora_pmon_$ORACLE_SID | grep -v grep` if [ "$pmon" = "" ]; then
clulog $LOG_ERR " oracle database start failed, process not exist."
# must return 1 here exit 1 fi clulog $LOG_INFO " dbstart succeeded." else clulog $LOG_ERR " dbstart failed, ret=$?." # must return 1 here exit 1 fi su - oracle -c "lsnrctl start" if [ $? -eq 0 ]; then clulog $LOG_INFO " lsnrctl start succeeded." # must return 0 here exit 0 else clulog $LOG_ERR " lsnrctl start failed, ret=$?." # must return 1 here exit 1 fi
;;
stop) #stop your application, put actual stop actions here su - oracle -c "lsnrctl stop" if [ $? -eq 0 ]; then clulog $LOG_INFO " lsnrctl stop succeeded." else clulog $LOG_ERR " lsnrctl stop failed, ret=$?." # must return 1 here exit 1 fi su - oracle -c "dbshut" if [ $? -eq 0 ]; then pmon=`ps -ef | egrep ora_pmon_$ORACLE_SID | grep -v grep` if [ "$pmon" != "" ]; then
clulog $LOG_ERR " oracle database shut failed, process still exist."
# must return 1 here exit 1 fi clulog $LOG_INFO " dbshut succeeded." # must return 0 here exit 0
25
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
else clulog $LOG_ERR " dbshut failed, ret=$?." # must return 1 here exit 1 fi
;;
esac
2.检测脚本 
服务的检测脚本是一个shell的脚本,用来检测服务是否正常运行,一个服务
只能配置一个检测脚本。 
根据应用的实际情况,您可以自己编写检测脚本,也可以使用GreatTurbo HA10
自带的位于/opt/cluster/usercheck/目录下的agent脚本。 
(1) 编写检测脚本 
请参照下面的例子来编写检测脚本,在 GreatTurbo HA10安装光盘的
doc/examples 目录下也有检测脚本的例子,名字为usrchk.sh。
在编写检测脚本时,需要注意以下的问题:
1) 请在脚本中加入 log信息,以便发生故障时准确定位故障原因。为减小log 文件的大小,检查成功时请不要打印log 信息。
2) 脚本执行成功时返回0,失败时返回非0 值。当有多步检查时,请将每步检 查失败时的返回值设置为不同的值。
3) 服务检测脚本的名称不要和待检测服务应用程序进程的名字相同。
4) 检测脚本要有可执行权限。
(2) 测试检测脚本 
检测脚本写好后,请务必测试检测脚本是否正确。  例如,检测脚本的名字为 usrchk.sh。 
1) 应用程序正常运行时 
执行检测脚本 usrchk.sh。  然后 echo $? ,判断脚本的返回值是否为0。 
如果脚本的返回值为0,表示检测脚本是正确的。 
26
G R E A T T U R B O H A 6 . 5 用 户 快 速 安 装 手 册
2) 应用程序运行不正常时 
执行检测脚本 usrchk.sh。  然后 echo $? ,判断脚本的返回值是否为非0值。 
如果脚本的返回值为非0值,表示检测脚本是正确的。 
(3) 检测脚本的例子 
#!/bin/sh
# checkscript sample
LOG_EMERG=0 # system is unusable LOG_ALERT=1 # action must be taken immediately LOG_CRIT=2 # critical conditions LOG_ERR=3 # error conditions LOG_WARNING=4 # warning conditions LOG_NOTICE=5 # normal but significant condition LOG_INFO=6 # informational LOG_DEBUG=7 # debug-level messages
script_name=`basename $0`
clulog() { log_level=$1 log_info=$2 /opt/cluster/bin/clulog -p $$ -n $script_name -s $log_level "$log_info" }
# check applications'process parts, you can add or delete part to check your actual processes
/opt/cluster/usercheck/oracleCheck 172.16.74.127 1521 if [ $? -ne 0 ] then # please add log information here clulog $LOG_ERR "oracleCheck failed, ret=$?." exit 1 fi
ps -ef | grep ora_pmon_ora10g | grep -v $0 | grep -v grep > /dev/null if [ $? -ne 0 ] then # please add log information here clulog $LOG_ERR "check oracle instance process failed." exit 2 fi
ps -ef | grep tnslsnr | grep -v $0 | grep -v grep > /dev/null if [ $? -ne 0 ] then # please add log information here
27
Loading...
+ 68 hidden pages