Turbolinux GreatTurbo Cluster Server 10 installation Guide

GreatTurbo Cluster
Server 10
用户快速安装手册
版权所有 (c) 2006
北京拓林思软件有限公司
目录
GREATTURBO CLUSTER SERVER 10 介绍................................................................... 1
1GREATTURBO CLUSTER SERVER 10 的使用限制 ............................................................. 1
2GREATTURBO CLUSTER SERVER 10 的相关术语 ............................................................. 2
3GREATTURBO CLUSTER SERVER 10 快速安装手册的使用方法 ................................................. 4
4GREATTURBO CLUSTER SERVER 10 快速安装的主体过程 ..................................................... 4
1 安装 GREATTURBO CLUSTER SERVER 10 前的准备工作 ............................................... 5
1.了解和分析您的应用 .............................................................................5
2.准备 GREATTURBO CLUSTER SERVER 10 需要的硬件环境..................................................... 6
3. 准备 GREATTURBO CLUSTER SERVER 10 需要的软件环境 ..................................................... 7
4. 安装 GREATTURBO CLUSTER SERVER 10 前需要准备的操作系统的配置 .........................................8
5. 安装 GREATTURBO CLUSTER SERVER 10 前需要准备用户的应用程序 ........................................... 8
6. 安装 GREATTURBO CLUSTER SERVER 10 的配置示例 ......................................................... 9
2 安装 GREATTURBO CLUSTER SERVER 10........................................................... 11
1.确认您所使用的 GREATTURBO CLUSTER SERVER 10 产品的类型..............................................11
2.安装 GREATTURBO CLUSTER SERVER 10 ..................................................................11
3.注册 GREATTURBO CLUSTER SERVER 10 产品.............................................................. 13
3 系统配置 ................................................................................... 16
1.选择其中一节点进行系统配置 ....................................................................16
2.在对方节点上同步配置 ..........................................................................23
3.运行 GREATTURBO CLUSTER SERVER 10 ..................................................................23
4 用户脚本和检测脚本 ......................................................................... 24
1.用户脚本 ...................................................................................... 24
2.检测脚本 ...................................................................................... 27
5 配置 HA 服务--使用共享磁盘 .................................................................. 30
1.配置工具 ...................................................................................... 30
2.配置条件 ...................................................................................... 30
3.配置命令 ...................................................................................... 30
4.配置服务 ...................................................................................... 32
5. 修改服务....................................................................................... 37
6. 删除服务....................................................................................... 38
7. 启动服务....................................................................................... 38
8. 停止服务....................................................................................... 39
9. 切换服务....................................................................................... 39
6 配置 HA 服务--不使用共享磁盘 ................................................................ 40
1.配置工具 ...................................................................................... 40
2.配置条件 ...................................................................................... 40
3.配置命令 ...................................................................................... 40
4.配置服务 ...................................................................................... 42
5. 修改服务....................................................................................... 45
6. 删除服务....................................................................................... 46
7. 启动服务....................................................................................... 46
8. 停止服务....................................................................................... 47
9. 切换服务....................................................................................... 47
7 配置 HA 服务--使用磁盘镜像设备 KERNEL2.4..................................................... 49
1.安装磁盘镜像软件(DRBD) ......................................................................... 49
2.注册具有磁盘镜像功能的 LICENSE .................................................................. 50
3.配置磁盘镜像设备 .............................................................................. 50
4.添加使用磁盘镜像设备的服务 ....................................................................52
5. 修改服务....................................................................................... 57
6. 删除服务....................................................................................... 58
7. 启动服务....................................................................................... 59
8. 停止服务....................................................................................... 59
9. 切换服务....................................................................................... 59
8 配置 HA 服务--使用磁盘镜像设备 KERNEL2.6..................................................... 61
1.安装磁盘镜像软件(DRBD) ......................................................................... 61
2.注册具有磁盘镜像功能的 LICENSE .................................................................. 62
3.配置磁盘镜像设备 .............................................................................. 62
4.添加使用磁盘镜像设备的服务 ....................................................................65
5. 修改服务....................................................................................... 70
6. 删除服务....................................................................................... 71
7. 启动服务....................................................................................... 71
8. 停止服务....................................................................................... 72
9. 切换服务....................................................................................... 72
9 配置 LB 服务--DR 方式........................................................................ 73
1.配置工具 ...................................................................................... 73
2.配置条件 ...................................................................................... 73
3.配置 REALSERVER 环境 ............................................................................. 73
4.配置调度节点环境 .............................................................................. 74
5.配置命令 ...................................................................................... 74
6.配置单端口服务 ................................................................................ 76
7. 修改服务....................................................................................... 81
8. 删除服务....................................................................................... 82
9. 启动服务....................................................................................... 82
10. 停止服务...................................................................................... 83
11. 切换服务...................................................................................... 83
10 配置 LB 服务--TUN 方式...................................................................... 85
1.配置工具 ...................................................................................... 85
2.配置条件 ...................................................................................... 85
3.配置 REALSERVER 环境 ............................................................................. 85
4.配置调度节点环境 .............................................................................. 86
5.配置命令 ...................................................................................... 87
6.配置单端口服务 ................................................................................ 88
7. 修改服务....................................................................................... 93
8. 删除服务....................................................................................... 94
9. 启动服务....................................................................................... 94
10. 停止服务...................................................................................... 95
11. 切换服务...................................................................................... 95
11 配置 LB 服务--NAT 方式...................................................................... 97
1.配置工具 ...................................................................................... 97
2.配置条件 ...................................................................................... 97
3.配置 REALSERVER 环境 ............................................................................. 97
4.配置调度节点环境 .............................................................................. 98
5.配置命令 ...................................................................................... 99
6.配置单端口服务 ............................................................................... 100
7. 修改服务...................................................................................... 105
8. 删除服务...................................................................................... 106
9. 启动服务...................................................................................... 106
10. 停止服务..................................................................................... 107
11. 切换服务..................................................................................... 107
12 配置 LB 服务--多端口 DR 方式 ............................................................... 109
1.配置工具 ..................................................................................... 109
2.配置条件 ..................................................................................... 109
3.配置 REALSERVER 环境 ............................................................................ 109
4.配置调度节点环境 ............................................................................. 110
5.配置命令 ..................................................................................... 111
6.配置多端口服务 ............................................................................... 112
7. 修改服务...................................................................................... 117
8. 删除服务...................................................................................... 118
9. 启动服务...................................................................................... 118
10. 停止服务..................................................................................... 119
11. 切换服务..................................................................................... 119
13 使用 GUIADMIN 来配置 GREATTURBO CLUSTER SERVER 10 .......................................... 121
1GUIADMIN 说明 ..................................................................................121
2.配置条件 ..................................................................................... 122
3.安装、启动 GUIADMIN 的命令 ...................................................................... 122
4.连接 GREATTURBO CLUSTER SERVER 10 服务器........................................................... 123
5GUIADMIN 功能介绍 ..............................................................................125
6. 停止 GUIADMIN................................................................................... 131
7. 卸载 GUIADMIN................................................................................... 131
14 检查 GREATTURBO CLUSTER SERVER 10 的运行状态 .............................................. 132
1.检查各守护进程的运行状态 .....................................................................132
2.检查集群与服务的运行状态 .....................................................................132
3.检查 DRBD 的运行状态 ........................................................................... 136
4.检查 IPVS 调度情况 ............................................................................. 139
15 卸载 GREATTURBO CLUSTER SERVER 10......................................................... 140
1.卸载 GREATTURBO CLUSTER SERVER 10 .................................................................140
2.卸载 DRBD...................................................................................... 141
3.卸载 GREATTURBO CLUSTER SERVER10 REALSERVER ....................................................... 142
4.卸载 GUIADMIN 客户端 ............................................................................ 142
附录 GREATTURBO CLUSTER SERVER 10 的维护 ......................................................... 143
1GREATTURBO CLUSTER SERVER 10 的日志信息 ........................................................... 143
2FAQ .......................................................................................... 143
3. LOG 收集工具的使用方法......................................................................... 146
4.联系拓林思软件有限公司 .......................................................................147
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
介绍
注意事项
在您开始使用 GreatTurbo Cluster Server 10 之前, 请您全面仔细的阅读本用户手册!否则,可能会因为 您的疏忽而使得安装过程出现不必要的问题!
GreatTurbo Cluster Server 10 介绍
GreatTurbo Cluster Server 10 是北京拓林思软件有限公司推出的为满足 Linux
平台企业级应用的高可用和负载均衡产品。它同时具备了高可用和负载均衡产品所 有的功能,而且在原有功能的基础上增加了许多新的功能。它提供的双机高可用方 案在保证负载均衡调度器高可用的同时,还能够满足其他应用对高可用的要求。其 良好的可靠性、可用性、可扩展性为用户业务提供了强有力的支持和保证。
1GreatTurbo Cluster Server 10 的使用限制
GreatTurbo Cluster Server 10 目前只支持 GTES10/TDS10 操作系统平台。 GreatTurbo Cluster Server 10 暂不支持并行处理的应用。也就是说不支
持同一个应用在两个节点同时并发运行的应用。例如:Oracle 9i RAC
GreatTurbo Cluster Server 10 配置的所有负载均衡(LB)服务都必须采用
同一种 ip 负载均衡技术。
GreatTurbo Cluster Server 10 配置的所有 LB 服务都必须运行在同一调度
节点,并且只能对全部服务进行统一操作,如 EnableDisableRelocate 等。
GreatTurbo Cluster Server 10 的稳定性需要 OS 提供支撑。如果当操作系
统宕机时,可能会出现因 OS 没有彻底释放资源而导致 GreatTurbo Cluster Server 10 系统丧失高可用功能。在这种情况下,除非有额外的硬件设备, 否则 GreatTurbo Cluster Server 10 并不能够完全保证能够自动恢复操作 系统。此时需要用户手工干预操作系统,对崩溃的操作系统进行复位操作。 也就是说,当 OS 宕机时(尽管这种可能性很小),如果用户没有以下硬件 作为保障,仍然有可能会出现用户业务中断的可能:
1)采用电子开关。 2)服务器节点采用支持硬件 watchdog 功能的主板。
配置 GreatTurbo Cluster Server 10 的两台计算机节点的心跳方式时,必
须保证至少一条心跳通道正常工作。如果两台节点之间的所有心跳通道都发
1
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
生故障而不能正常连通,有可能会导致 GreatTurbo Cluster Server 10 发 生裂脑(split-brain),发生裂脑后,GreatTurbo Cluster Server 10 有 可能会导致用户的资源不一致。为了完全杜绝裂脑现象的发生,可以采取如 下方法:
1采用电子开关。 2使用第三方参考 IP,有关第三方参考 IP 的介绍将在第三章详述。
其中第一种办法是使用硬件的办法,由于电子开关是额外的电子硬件设 备,需要用户自行购买,所以实际中采用这种方式并不多;而第二种方式是 软件的方法,可以保证 GreatTurbo Cluster Server 10 发生裂脑时,用户 的资源不受损失。这需要用户提供一个能长期(永久性)正常工作的参考 IP 地址。
2GreatTurbo Cluster Server 10 的相关术语
节点 指运行 GreatTurbo Cluster Server 10 程序的计算机。
服务 也叫做资源组,指用户应用相关的一组资源的集合, 包括用户应用的 进程资源,磁盘资源,网卡资源,浮动 IP 资源,drbd 镜像资源等。服务可以是其 中几种资源或者全部资源的组合。 服务也可以为空,即不包括任何资源。通常用户 的一个应用与 GreatTurbo Cluster Server 10 的一个服务对应。GreatTurbo Cluster Server 10 的服务分为两种:高可用服务(HA 服务)和负载均衡服务(LB 服务)。HA 服务针对高可用集群确保高可用的对象。LB 服务是负载均衡系统进行 调度的具体应用,例如 Oracle 服务。HA 服务也可以是具体商业应用。
负载调度器(load balancer):也成为调度节点,它是整个负载均衡集群对 外的前端机。负责将客户的请求发送到一组真实服务器上执行, 而客户认为服务是 来自一个 IP 地址(我们可称之为虚拟 IP 地址)上的。在 GreatTurbo Cluster Server 10 典型应用中,负载调度器需要 2 个或多个,GreatTurbo Cluster Server 10 的 高可用方案保证负载调度器能稳定、24×7 不间断的运行。
真实服务器real server)
:也叫服务器池(server pool),是负载均衡 集群中真正执行客户请求的服务器,执行的服务有 WEBMAILFTP DNS 等。用 户请求由调度节点分发给真实服务器,由真实服务器来处理用户请求。
主节点 备节点
指服务运行所在的节点。 指完全没有服务运行的节点。如果主节点发生任何故障, 服务就会
从主节点迁移到备节点。此时的备节点也就转变成主节点, 此前的主节点也就转变 成备节点。
主备方式
常见的主备方式有Active-StandbyActive-Active
Active-Standby 是指服务仅在一个节点上运行。Active-Active 是指在两个节点都
有服务运行。也就是说,Active-Active 方式时都是主节点,也都是备节点,互为 主备关系。
优先节点(preferred node): 指服务将优先运行的节点。当配置一个服务 时, 可以给这个服务设定优先节点。一般有两种情况建议配置优先节点,一种情况 是当两个服务器节点的硬件配置不一样时,应当将服务的优先节点设定为硬件配置 较好的节点;另一种情况是当需要配置多个服务且应用的负载较重, 而且希望两个
2
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
服务分别在两个节点上运行以分担负载时,可以给这两个服务分别各设定一个节点 作为优先节点。
例如:假设服务 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 Cluster Server 10 的配置参数来进行调整。
服务检测到错误的时间 服务检查的间隔时间(check interval) * 服务 连续检查到错误的次数(check count)。Check interval check count 参数可 以在配置服务的检测脚本时进行指定。这样,只有当 GreatTurbo Cluster Server 10 检测到连续出错次数达到指定的次数后,GreatTurbo Cluster Server 10 才认 为服务确实出错。服务确实出错后,会自动触发 GreatTurbo Cluster Server 10 进行服务的迁移。
裂脑(split-brain): 所谓裂脑,是指 GreatTurbo Cluster Server 10 高可用主备节点之间彼此失去了联系,但是单个节点的 GreatTurbo Cluster Server 10 仍然运行正常。发生裂脑的充要条件是:1. 系统的主备节点之间的所有心跳通 道都发生了故障,导致系统的两个节点失去了任何联系。2. 两个节点的 GreatTurbo Cluster Server 10 软件仍在正常运行。
裂脑带来的直接后果是导致两个节点都会各自启动并运行同一个服务,竞争同 一个服务的资源,这样有可能会导致资源(尤其是共享数据)被损坏。
drbd(磁盘镜像设备) 是指对两个节点各自大小相同的本地磁盘分区进行 实时镜像操作,使得这两个本地磁盘对双方节点而言, 可以当作一个虚拟的共享磁 盘阵列来使用,这个虚拟的共享磁盘阵列就叫做 drbd 设备,可以把 drbd 当作普通 的磁盘设备来使用。
Watchdog(看门狗) Watchdog 分为硬件级和软件级两种。 硬件级watchdog 是用来保障操作系统自动恢复的一种手段,如果服务器节点的主板支持 watchdog 功能,那么在 GreatTurbo Cluster Server 10 中可以进行相应的配置,当操作系 统发生死机等不响应情况,主板就会将操作系统自动重启恢复,而无需人工干预, 这一点对于“24 * 7”方式运行的服务器而言非常有用。而软件级的 watchdog 可 以用来保证 GreatTurbo Cluster Server 10 程序的健壮性但并不能保障操作系统 的自动重启恢复。所以硬件级的 watchdog 更加实用。
3
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
3GreatTurbo Cluster Server 10 快速安装手册的使 用方法
由于本手册是快速安装文档,所以各个章节的部分基本上都需要仔细阅读。 其 中第五章至第八章,第九章至第十二章根据您的应用类型选择进行阅读即可, 其余 章节都是必读部分。
4GreatTurbo Cluster Server 10 快速安装的主体过
GreatTurbo Cluster Server 10 快速安装的主体过程有如下六个步骤:
1) 进行安装/使用 GreatTurbo Cluster Server 10 前的准备工作。(第一章 介绍)
2) 安装 GreatTurbo Cluster Server 10 软件。(第二章介绍)
3) 配置 GreatTurbo Cluster Server 10 软件。(第三章介绍)
4) 准备服务的用户脚本和检测脚本。(第四章介绍)
5) 根据您的应用类型,将应用配置成高可用的服务。(第五/六//八章介绍)
6) 根据您的应用类型,配置具体的 LB 服务(第九//十一/十二章介绍)
7) 监控和维护 GreatTurbo Cluster Server 10 系统。 (第十三、 十四章介绍)
另外本手册在第十五章介绍了如何卸载 GreatTurbo Cluster Server 10,并 且在附录中还列出了 GreatTurbo Cluster Server 10 安装使用过程中常见的问题 以及如何进行一些后期的维护。
4
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
1
安装 GreatTurbo Cluster Server 10 前的准 备工作
安装 GreatTurbo Cluster Server 10 之前需要您做好相关的软硬件环境的准备 工作。否则,可能会影响您随后的安装过程,使您遇到不必要的麻烦。
安装前的准备工作可以分为如下四个步骤:
1) 了解和分析您的应用;
2) 准备 GreatTurbo Cluster Server 10 需要的硬件环境;
3) 准备 GreatTurbo Cluster Server 10 需要的软件环境;
4) 安装 GreatTurbo Cluster Server 10 前需要准备的操作系统的配置。
1.了解和分析您的应用
GreatTurbo Cluster Server 10 可以支持绝大多数的双机高可用和负载均
衡的应用。按照服务类型,GreatTurbo Cluster Server 10 将用户的应用分为 两大类:HA 应用和 LB 应用。
1HA 应用
根据用户应用是否需要使用共享的数据资源,GreatTurbo Cluster Server
10 将用 HA 应用分为以下三类: a)第一类应用:需要使用共享磁盘阵列的应用。
这类应用的特点是,应用的数据非常重要且 I/O 负载较高,必须使用共享 磁盘阵列来保证应用数据的一致性、可靠性和高性能。此类应用的典型例子是 各类数据库应用,如 OracleSybaseMySQL 等。也就是说,使用 GreatTurbo
Cluster Server 10 的双机系统本身作为后台数据系统。
b)第二类应用:不需要使用共享磁盘阵列并且也不需要存取共享数据的应用。
这类应用的特点是,不需要存取共享数据,使用 GreatTurbo Cluster Server 10 的双机系统只是用于进程和浮动 IP 等资源的切换。一般情况下,这种类型的
应用只是用来作为前端接入、前置机来使用。典型的应用有 WEB/MAIL 等网络应 用或者是用户自己的业务应用。这类应用通常会有另外的后台数据库系统来保 存数据。
c)第三类应用:需要使用共享磁盘阵列但是不具备磁盘阵列硬件条件的应用。
5
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
这类应用的特点是 I/O 负载较小(<10MB/s),数据本身并不是关键业务数 据,并且该应用需要使用共享的存储设备来保证数据的一致性。对于此类应用, GreatTurbo Cluster Server 10 提供了虚拟的共享磁盘设备 “磁盘镜像设备” 来保证应用数据的一致性。
2LB 应用
根据使用的负载均衡技术,LB 应用分为以下三类:
a)第一类应用:使用 VS/DR 负载均衡技术的应用。
b)第二类应用:使用 VS/TUN 负载均衡技术的应用。
c)第三类应用:使用 VS/NAT 负载均衡技术的应用。
注意:
通常情况下,用户的一个应用对应于 GreatTurbo Cluster Server 10 的一 个服务。如果有多个应用就需要在 GreatTurbo Cluster Server 10 中配置多个 服务,依照每个应用的类型,您可以分别按照第五、六、七、八章,第九、十、 十一、十二章的内容进行配置。
2.准备 GreatTurbo Cluster Server 10 需要的硬件环 境
1) 两台 X86 架构的计算机;硬件的配置只需满足能够安装主流的 Linux 操作系 统的条件即可。推荐用户使用具备 RAID-1 级别本地磁盘设备的服务器。
2) 虽然 GreatTurbo Cluster Server 10 本身对硬件的要求不高,但是节点的 硬件配置需要和用户的应用负载相匹配,也就是说用户的硬件环境的性能配置 应该满足用户的应用负载的峰值要求!
3) 每台计算机必须配备三块以上网卡。其中,用作两节点心跳信息的网卡采 用直连网线相连接,至少需要两条直连网线作为心跳线。
网卡的性能要求取决于您的应用的类别。如上所述,如果您的应用类别是 第三类应用时,建议您至少需要使用一块 1Gbps 的网卡作为直连网线的设备, 这样可以提高磁盘镜像设备的性能;如果是第一类应用或者是第二类应用时, 网卡性能达到 100Mbps 即可(当然如果您的应用对网络带宽要求较高,则也需 使用 1Gbps 网卡)。
请将两台计算机的所有用作 GreatTurbo Cluster Server 10 通道的对应网 卡用直连网线一一连接起来。
4) 一根串口线。为了保证系统的高可用性,需要再使用一根串口线连接两个节 点的串口。
请将两台计算机对应的串口用串口线连接起来。
5) 是否需要共享的磁盘阵列,取决于您的应用。如果您的应用是第二类或第三HA 应用,您可以不需要使用磁盘阵列。如果您的应用是第一类应用,您需要
6
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
使用共享的磁盘阵列。另外,如果您需要使用共享 raw 磁盘分区作为心跳方式, 则需要使用磁盘阵列
在选用磁盘阵列时,一般分两种情况:第一种是带独立 RAID 处理器的磁盘阵 列,主流厂商的 SCSI 或光纤磁盘阵列都可以满足 GreatTurbo Cluster Server 10 的要求,这类磁盘阵列产品的性能强且价格也较高。第二种是使用主机 RAID 卡和 磁盘柜(磁盘柜是指不具备硬件 RAID 处理器的磁盘盒)的方式,这种磁盘设备不 是真正意义上的磁盘阵列,但通过双机的 RAID clustering 技术和 RAID 的用户 接口工具等,也可以满足 GreatTurbo Cluster Server 10 的共享数据存取的需求, 常见的这种类型的“磁盘阵列”的典型产品有 IBM EXP400DELL 的 220S、HPMSA500-G2 等,这类“磁盘阵列”产品的性能和价格一般都较前一种低。
注意:
1) 在配置磁盘阵列和做 RAID 盘的时候,请认真仔细参考磁盘阵列提供厂商的 手册,根据应用的特点来配置相关参数,如 hotspare 盘、raid 级别、stripe 大小、 cache 策略等。如果不进行配置参数的调优将会导致磁盘阵列的可靠性和 I/O 性能 受到较大影响。
2) 在使用第二种“磁盘阵列”的时候,一定要仔细询问相应的硬件厂家,其 产品是否支持双机 GreatTurbo Cluster Server 10 的数据共享应用。另外,建议 尽量选择那些缓存较大同时附带后备电池的 RAID 卡型号,以提高 RAID 卡的高可用 性。
3) 无论使用那种磁盘阵列,都一定要和硬件厂商确认,该磁盘阵列相关设备 的驱动程序是否为最新的稳定版本,以提高磁盘阵列的高可用性。
3. 准备 GreatTurbo Cluster Server 10 需要的软件环 境
安装 GreatTurbo Cluster Server 10 的软件条件比较简单,必需要安装
GTES10 操作系统平台。
如果您想使用图形界面的管理工具,那么必须保证在客户端和服务器端的操作 系统上提供 Java 运行时环境支持,JRE1.4.2 及其以上版本。如果您不具备 java 环境,那么也可以使用文本方式的管理工具进行配置。
注意:
用户在安装操作系统时,建议用户采用完全安装操作系统的模式,并且将操作 系统安装在本地具有 RAID-1 功能的磁盘设备上。这样可以保证操作系统功能的完 备性和操作系统数据的可靠性。
如果使用图形管理工具,检查/usr/bin 目录下的 java 是否正确链接到 JRE 目 录。
7
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
4. 安装 GreatTurbo Cluster Server 10 前需要准备的 操作系统的配置
两个节点的操作系统配置需要确认如下环节:
1) 请确认您登陆操作系统的身份是 root 权限,因为随后的安装配置都需 要是 root 权限。
2) 如果您需要使用共享的磁盘阵列,请查看磁盘阵列是否已经可以使用 (包括硬件的配置、RAID 的配置、驱动的安装、分区、文件系统等)。
3) 所有网卡是否配置好。(包括直连网线是否连好、hosts 文件是否设置 等)。如果使用了串口,查看双方的串口是否正常连接。
4) 由于 GreatTurbo Cluster Server 10 使用了操作系统的 syslog 服务来 打印 GreatTurbo Cluster Server 10 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 参数对应成最佳。这样可以提高文件系统的 性能。
6) GreatTurbo Cluster Server 10 的日志系统要求两台节点的系统时钟 一致,以方便后期维护。如果两台系统时钟不一致,请使用 hwclock 以及 date 命令来调整时钟,使得两台节点的时钟大致相同,误差小于
30 秒之内。
7) 为了方便后期维护,需要系统的 sshd 服务正常运行,并且允许 root 权限进行 ssh 登陆。
5. 安装 GreatTurbo Cluster Server 10 前需要准备用
户的应用程序
接下来,请在两个节点上安装用户的应用程序,两个节点的安装配置都要 求是对等的,也就是说,在两个节点上安装的用户的应用程序所在的目录、使 用的共享磁盘设备名称、网卡名称等都应该一致。
通常,都会将应用程序安装在两个节点的本地硬盘上。
如果如果您的应用类别是第一类应用时,可能还需要在共享磁盘设备上准 备共享的数据。例如:对于 oracle 应用,您需要表空间文件存放在共享磁盘设 备上。
8
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
上面介绍了安装前需要的准备工作,接下来将通过具体的例子来说明。
6. 安装GreatTurbo Cluster Server 10 的配置示例
现在我们引入一个较为通用的双机软硬件环境的例子来说明具体的过程。 在随后几章的安装、配置、使用等章节中的具体内容将参照如下拓扑结构的情 况进行说明。
交换机
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
SCSIFC
2条直连网线
3条直连网线(可选)
串口线/dev/ttyS0 /dev/ttyS0
3Com
磁盘阵列
eth1 192.168.1.21
eth2 192.168.1.22
eth3 192.168.1.23
服务器
节点B
SCSIFC
如上图所示,有两台节点,服务器节点 A 和节点 B。假设每台机器有四个网卡 eth0-eth3eth0 连接至交换机,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
9
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
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 地址。
其中 hb11hb12、hb13 对应节点 A 的eth1、eth2、eth3 三个网卡;hb21、hb22、
hb23 对应节点 B eth1eth2eth3 三个网卡。
10
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
2
安装 GreatTurbo Cluster Server 10
在做好了第一章中所列的各项准备工作之后,现在就可以安装 GreatTurbo Cluster Server 10 软件了。
安装过程如下:
1) 确认您所使用的 GreatTurbo Cluster Server 10 产品的功能级别
2) 安装 GreatTurbo Cluster Server 10
3) 注册 GreatTurbo Cluster Server 10
1.确认您所使用的 GreatTurbo Cluster Server 10 品的类型
GreatTurbo Cluster Server 10 产品分为两个功能级别,请确认您购买的产
品属于哪一个级别。第一级别只能够满足第一章提到的 HA 应用的第一类和第二类 的用户应用,第二级别能够全部满足第一章提到的三类 HA 应用。也就是说,第一 级别不支持磁盘镜像设备(drbd)功能,第二级别支持 drbd 功能。
当然,具体选购何种级别功能的 GreatTurbo Cluster Server 10,完全取决于 您需要满足的应用类型。确认了 GreatTurbo Cluster Server 10 的功能级别之后, 就可以开始安装 GreatTurbo Cluster Server 10 了。
2.安装 GreatTurbo Cluster Server 10
请分别在节点 A 和节点 B 安装 GreatTurbo Cluster Server 10 软件。
1 如果您购买的是正版的 GreatTurbo Cluster Server 10 产品,GreatTurbo Cluster Server 10 会附带软件的安装光盘。插入安装光盘到节点的光驱并 mount
后,光盘根目录中有一个安装文件 install_cluster,请运行如下命令进行安装。 根据您的操作系统版本并参照其提示完成 GreatTurbo Cluster Server 10 的安装。
如果您的 GreatTurbo Cluster Server 10 产品支持 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_cluster Following RPMs will be installed or upgraded to newer version if necessary:
11
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
*) pdksh *) lsof *) sg_utils *) drbd *) GreatTurbo Cluster Server *) GreatTurbo Cluster Server Agents Please select the operatating system version you are using:
0) GreatTurbo Enterprise Server 10 (x86_32)
1) GreatTurbo Enterprise Server 10 (x86_64)
2) GreatTurbo Enterprise Server 10 (OpenPower ppc64)
3) GreatTurbo Enterprise Server 10 (IA64)
4) cancel Please select an OS version, then the installation procedure will begin. Select 4 to abort [0/1/2/3/4]: 0 Do you want to use drbd? (y/n) [y]: y Please select the network forwarding method you want to use:
0) direct routing
1) NAT
2) IP tunnel Please select a network forwarding method [0/1/2]: 1
2 如果您是从拓林思公司下载的试用产品(使用有效期为 1 个月),您下载的 GreatTurbo Cluster Server 10 将是一个 ISO 文件和 md5 检验文件。ISO 文件的名 称一般为 greatturbocluster-10.x-x.iso md5 文件的名称一般为 greatturbocluster-10.x-x.iso.md5。为了验证您下载的 iso 文件是否正确,可以
先对您的 iso 文件进行 md5sum 操作, 如果发现 md5sum 运行命令所得结果,和您下 载的 md5 文件的内容一致,则表明您下载的 ISO 文件正确无误。
例如:
[root@test1 iso]#md5xum ./greatturbocluster-10.0-1.iso 88f7b387c8cdaca3fa38832c6b7b2b6a greatturbocluster-10.0-1.iso [root@test1 iso]# cat ./ greatturbocluster-10.0-1.iso.md5 88f7b387c8cdaca3fa38832c6b7b2b6a greatturbocluster-10.0-1.iso
证明您下载的 ISO 文件正确之后, 请先将 ISO 文件 mount 到某一个目录, 然后 运行这个目录下的 install_cluster 安装程序进行安装,接下来的过程同从光盘安 装时介绍的一样。
[root@test1 root]# mount –o loop ./ greatturbocluster-10.0-1.iso /mnt/iso [root@test1 root]# cd /mnt/iso [root@test1 iso]# ./install_cluster
12
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
3.注册 GreatTurbo Cluster Server 10 产品
安装完GreatTurbo Cluster Server 10 的软件之后,您需要注册GreatTurbo Cluster Server 10 产品,也就是说需要安装 GreatTurbo Cluster Server 10license,以保证 GreatTurbo Cluster Server 10 正常运行。
注册 GreatTurbo Cluster Server 10 产品的步骤如下:
1) 获得两个节点的硬件号,分别在两个节点上运行”/opt/cluster/bin/syncd
-l ,其输出的第一行信息,例如“Hardware ID: 3355DEJGQWVK”,其中
3355DEJGQWVK”就是硬件号。仔细记录两台节点的硬件号,以便在随后的 注册中使用。
2) 用浏览器登陆注册网站 http://www.turbolinux.com.cn/register。进入如下
图所示的登陆页面:
3) 如果您是第一次注册,请点击“新用户”按钮,按要求详细填写注册信息。
4) 注册完之后,返回如上登陆页,输入电子邮件地址和密码,点击“登陆”,
进入注册页。您还可以在产品序列号栏,输入您购买产品时附带的序列号,以 查看序列号有没有被注册过,如果发现被人盗用注册过,则请与拓林思软件有 限公司联系,因为注册码只允许注册一次。
5) 登陆后,进入以下页面:
13
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
如果您是正版用户,请点击“增加产品序列号”按钮、进入步骤 6)。如果 您没有序列号,只是试用,请点击“评估版许可证”按钮、进入步骤 7)。
6) 点击“增加产品序列号”之后,进入如下页面:
7) SN 栏输入您购买产品时附带在注册卡上的序列号、然后点击“下一步”
按钮,或者点击 5)中“评估版许可证”进入如下页面:
8) 选择您的产品类型,点击“下一步”按钮,进入以下页面:
9) 分别填入两个节点的硬件号,然后点击完成,进入到如下所示的页面:
14
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
10) 点击“取得使用许可证”按钮,在接下来的页面上选择如何保存你得许可证:
寄到信箱或者存到文件。
11) 得到 license 文件之后,你需要把它分别 copy 到两个节点的
/etc/opt/cluster/lic 目录下。
注意: 在/etc/opt/cluster/lic 目录下只能保存一个 license 文件。
至此,GreatTurbo Cluster Server 10 产品注册完毕。接下来在第三章中, 我们将讲述如何对 GreatTurbo Cluster Server 10 进行初始配置。
15
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
3
系统配置
在以上步骤配置完成之后,就可以初始化 GreatTurbo Cluster Server 10 了。 初始化过程是通过 member_config 命令来完成的。
初始化 GreatTurbo Cluster Server 10 的过程如下:
1) 选择其中一节点(例如节点 A)进行系统配置,
2) 在另一节点(例如节点 B)同步配置信息。 注意: member_config 只需要在一个节点上配置;系统运行中不能使用 member_config
1.选择其中一节点进行系统配置
首先我们需要选择其中一节点对 GreatTurbo Cluster Server 10 进行一些配置。
1启动member_config 命令
注意: 如果您使用了 IBM EXP400 系列的磁盘柜,在确定 IBM EXP400 磁盘阵列的硬件
安装和配置正确之后,运行 member_config -s 命令。 运行 member_config 命令,系统显示如下:
[root@test1 root]# /opt/cluster/bin/member_config
-----------------------------------­Cluster Member Configuration Utility
Version10.0 Built: Fri Jun 9 16:51:41 CST 2006 This utility sets up the member systems of a 2-node GreatTurbo Cluster Server 10 cluster, or the 2-node director members of a Load Balancing cluster. It prompts you for the following information:
o Hostname o Number of heartbeat channels
16
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
o Information about the type of channels and their names o Power switch type and device name o Information about the routers and network type of the Load Balancer
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 configure file and saves the configuration information to the configure file
- Checking that cluster daemons are stopped: done
- Configuration file exists already. Would you like to use those prior settings as defaults? (yes/no) [yes]:
如果以前运行过 member_config 命令,那么配置文件中会保存我们的配置结
果,该选项就是问我们是否使用以前的配置结果作为缺省值,通常回答 yes
注意:如果是第一次配置,则不会出现该选项。
2)配置本地节点名称
接下来,输入本地节点的名称。GreatTurbo Cluster Server 10 会自动的从您
系统中/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 Cluster Server 10 heartbeat 通道有两类: 网络(net)和串口
(serial)。 对于网络,您需要配置 heartbeat 使用的网络设备对应的别名;对于串
口,您需要配置 heartbeat 使用的串口的设备名,例如 /dev/ttyS0
注意:为了获得更高的可用性,GreatTurbo Cluster Server 10 建议配置一
条串口通道以及至少两条直连网络心跳通道,并且必须将应用所在的网卡配置成通
17
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
道,配置通道的顺序为:先配置所有的直连网线通道,再配置应用所在网卡的通道, 最后配置串口通道。
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。如果有硬件电子开关,输入相应的
电子开关对应的类型,如:RSARPS10 或者是 APC
软件级的 watchdog 可以用来保证 GreatTurbo Cluster Server 10 程序的健壮
性但并不能保障操作系统的自动重启恢复; 如果有硬件 watchdog,请输入硬件
18
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
watchdog 对应的驱动模块的名字,如果没有硬件 watchdog,建议配置软件 watchdog,输入操作系统默认附带的软件 watchdog 的模块名字 softdog 即可。
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
19
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
Channel name set to: test2 Information about channel 3: Channel type selected as serial 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)配置磁盘心跳设备
利用共享 raw 磁盘分区作为心跳通道后,只要主备节点能够访问共享数据,就 不会发生裂脑, 从而有效的确保了共享数据的一致性。如果需要配置磁盘心跳,请 选择 yes 继续配置。如果条件实在不具备,输入 no,然后回车。
---------------------------­Setting up raw disk heartbeat
----------------------------
Do you want add raw disk heartbeat device? (yes/no) [yes]: The raw disk heartbeat device must be a raw disk device. To enhance redundancy, need to configure two raw disk devices.
Enter the name of first raw disk heartbeat device [/dev/raw/raw1]: /dev/raw/raw1
Enter the name of second raw disk heartbeat device [/dev/raw/raw2]: /dev/raw/raw1 Now begin to initialize the raw disk heartbeat device, it will cause the data in the devices lost. Are you sure to initialize the raw devices which you input? (yes/no) [yes]:yes
7)配置第三方IP 地址
您需要配置两个节点都可以连接的第三方 IP 地址 (要求能ping 通, 一般选择 网关作为第三方 IP)。第三方 IP 能配置多个,以进一步提高系统高可用性。如果
20
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
要使配置的第三方 IP 生效,必须将两个节点的对外网络设置为备用心跳。如果条 件具备,建议您配置第三方 IP
如果条件实在不具备,输入 no,然后回车。
------------------------------­Setting up the third partner ip
-------------------------------
Do you want cluster to determine network status? (yes/no) [yes]:
The IP address of third computer is needed to determine 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. If you want input multiple third part IP, please use comma to separate. For example, 192.168.0.1,192.168.0.3,192.168.0,10
Enter the IP address of third computer [172.16.76.1]:
……
8)配置负载均衡调度信息
首先需要输入两个调度节点的 ip 地址,然后选择一种调度方式。注意此时选 择的调度方式必须和安装软件包时所选择的方式一致(请选择和 realserver 保持 一致的调度方式) 。如果选择 NAT 作为负载调度技术, 那么还需要配置NAT router 地址的相关信息。
---------------------------------------­Setting Load Balancer informations
---------------------------------------­Enter load balancer primary server IP [172.16.70.138]: Looking for IP address 172.16.70.138 (may take a few seconds)... IP address 172.16.70.138 found IP address corresponds to an interface on member 0 Load balancer primary server IP set to: 172.16.70.138 Enter load balancer backup server IP [172.16.70.76]: Looking for IP address 172.16.70.76 (may take a few seconds)... IP address 172.16.70.76 found Load balancer backup server IP set to: 172.16.70.76 Enter load balancer network forwarding type(direct/nat/tunnel) [direct]: nat Load balancer network forwarding type set to: nat Enter NAT router IP address: 172.16.70.76
21
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
NAT router IP address set to: 172.16.70.76 Enter NAT router netmask: 255.255.255.0 NAT router netmask set to: 255.255.255.0 Enter NAT router device(e.g. eth1:1): eth1:1 NAT router device set to: eth1:1
-----------------------------------­The following choices will be saved:
-----------------------------------­ ……
9)保存配置
如果以上内容全部配置完毕,member_config 将会询问是否保存改动。如果
刚才的配置没有错误,请输入"yes"或直接回车;
然后程序还会询问是否运行"diskutil -I"来初始化配置文件,这里请选择
"yes"
注意:当 GreatTurbo Cluster Server 10 的守护进程正在运行时,请不要
选择运行 diskutil -I 来初始化配置文件,以免造成不可预知的后果。
Save changes? yes/no [yes]: Writing to output configuration file...done. Changes have been saved to /etc/opt/cluster/cluster.conf.
---------------------------­Setting up Configure File
---------------------------­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
---------------------------------------------------------------­Setup on this member is complete. If errors have been reported, correct them.
If you have not already set up the other cluster member, before running member_config, invoke the following operation on the
22
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
other cluster member: copy /etc/opt/cluster/cluster_raw.conf to another node with the same path. cluster daemons on each cluster member by invoking the cluster start script located in the System V init directory. For example: # /etc/rc.d/init.d/cluster start
2.在对方节点上同步配置
配置完成之后,需要把配置文件/etc/opt/cluster/cluster_raw.conf
工拷贝到另外一台机器的相同目录里(使用 scp 或者 ftp 均可)。
[root@test2 root]# scp test1:/etc/opt/cluster/cluster* /etc/opt/cluster
3.运行 GreatTurbo Cluster server 10
初始化完成之后,需要在两边节点分别运行 GreatTurbo Cluster Server 10。 脚本/etc/init.d/cluster 可以用来启动 GreatTurbo Cluster Server 10
[root@test1 root]# /etc/init.d/cluster start
-------- Performing cluster start --------------------­Starting Turbo cluster...done.
---- Performing guiadmin server start ---­Starting guiadmin server...done.
---- Completed guiadmin server start ----
-------- Completed cluster start ---------------------
注意:请不要执行完/etc/init.d/cluster start 后立即执行 /etc/init.d/cluster stop,请确认 GreatTurbo Cluster Server 10 启动完成后 再执行/etc/init.d/cluster stop
member_config 初始化完成之后,GreatTurbo Cluster Server 10 就可以正常
运行了,只不过没有配置服务。用户可以参阅第十四章的检测方法来判断 GreatTurbo Cluster Server10 是否可以成功启动。
在配置服务之前,首先需要准备服务所需要的用户脚本和检测脚本。
23
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
4
用户脚本和检测脚本
在配置 GreatTurbo Cluster Server 10 的服务时,需要配置服务要使用的 用户脚本和检测脚本。用户脚本也就是启动和停止脚本,用来启动和停止服务 相关的应用程序。检测脚本在服务运行过程中用来检测服务的运行情况。用户 脚本和检测脚本虽然并不是必需的,这要根据应用的实际情况来决定。如果需 要用户脚本和检测脚本,那么在配置服务之前首先需要准备好用户脚本和检测 脚本,并且测试用户脚本和检测脚本都正确无误后方可开始配置服务。
注意:对于 LB 服务,系统提供了默认脚本供用户使用,故本章讨论的脚本问 题均针对 HA 服务, 而不对LB 服务使用的脚本进行详述。 关于LB 服务使用的脚本, 具体参见第九、十、十一、十二章。
1.用户脚本
用户脚本是一个 shell 的脚本,用来启动和停止 HA 服务相关的应用程序,一
个服务只能配置一个用户脚本。
(1) 编写用户脚本
请参照下面的例子来编写用户脚本,在 GreatTurbo Cluster Server 10 安装光
盘的 doc/examples 目录下也有用户脚本的例子,名字为 usrapp.sh
在编写用户脚本时,需要注意以下的问题
1) 脚本的参数必须包含对输入参数 startstop 的相应处理,在启动部分加 入用户所有程序的启动命令,在停止部分加入用户所有程序的停止命令。 也就是说脚本的格式必须是规定的格式。请参照例子进行编写。
2) 请在脚本中加入 log 信息,以便发生故障时准确定位故障原因。
3) 脚本执行成功时要明确返回 0,失败时要明确返回 1。特别是当应用程序有
标准的启动/停止脚本时,请确认该脚本在成功时是否返回 0,失败时是否 返回 1,如果不是,请不要直接使用应用程序提供的脚本,请手动编写脚本。
4) 对于操作系统默认安装的一些应用的脚本,如 httpd,该脚本的返回值在启/停止时会判断是否已经启动 /停止了,在已经启动 /停止时,该脚本返回 值是 1,这不满足 GreatTurbo Cluster Server 10 的接口,需要将其改成
24
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
0。当然,用户自写的脚本在判断是否已经启动/停止时,也应该满足返回 值为 0 的条件。
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
25
GREATTURBO CLUSTER SERVER 10 用户快速安装手册
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" }
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 d atabase 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 act ual 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=$?."
26
Loading...
+ 121 hidden pages