- 论坛徽章:
- 1
|
Solaris sybase HA 的实现
Solaris sybase HA 的实现
HA+是LEGATO公司的高可用性服务器容错软件,适用于需要保证不间断服务的各种操作系统平台。其工作原理类似于
Microsoft CLUSTER,它需要二台以上主机提供服务,一个硬盘陈列或盘柜共享数据。另外,至少要三块网卡,其中两块用于心跳连线,一块或一
块以上用于应用服务。使用两块网卡而不是使用一块网卡用于心跳连线的目的在于服务切换与管理全靠心跳连线交换工作的状态,虽然一块网卡或串口(PPP方
式)也能工作,但是如果心跳连线出现故障,同一服务组内的服务器就不能互相交换工作状态,服务切换将会失败,因此,为确保提供安全可靠的服务,必须安装两
路以上的心跳连线。
在Sun Solaris上实现HA+一定要注意同一服务组中的服务器的服务程序环境与资源配置应完全相同。如果稍有不同就有可能导致服务切换
失败。但其对主机硬件的要求并不苛刻,使用不同型号的服务器也能正常工作。以下通过介绍Sybase数据库在Solaris上实现HA+的过程来说明在
Solaris上实现HA+的方法。在实现HA+时应先准备好硬件环境,在Sybase服务组上建好盘柜。如果采用单通道的盘柜应注意通道的ID值在不同
的主机上应不相同,然后在所有Sybase服务组内的主机上安装Sybase数据库,安装配置应完全相同,并注意在配置Host值时应填入IP地址而不是
主机名。因为HA+切换时需要绑定相同的IP地址。安装过程如下:
用format命令从盘柜上为Sybase分4个区其中:
? /dev/rdsk/c1t0d0s0 = 100Mb;
? /dev/rdsk/c1t0d0s1 = 100Mb;
? /dev/rdsk/c1t0d0s3 = 100Mb;
? /dev/rdsk/c1t0d0s4 = 用户数据所需大小;
建立 sybase 用户和 dba 组,以 sybase 用户登录:
#rlogin sunsever-lsybase 或者是 #su-sybase ( 注:这里 sunserver 是主机名)
从 CD-ROM 上下载 Sybase Adaptive Server Enterprise 软件
$cd/cdrom/sybasecd
$sybsetup
在接下来的 sybsetup 屏幕中,依此完成以下步骤:
在" SYBASE directory: "栏中输入" /seybase ";
选择" Unload ssybase products from CD-ROM or Tape "后,进入" lnstallationDestination "屏幕;
在" Sybase lnstallation Directory "栏中输入" sybase "(选中符号按钮),显示" lnstallation Source Device "屏幕;
先选择" CD-ROM ",再输入" /cdrom/sybasecd/sybinage "作为 CD-ROM 图象名,单击" continue "(选中符号按钮),显示" productSelection "屏幕。
单击要安装的产品,包括:
Adaptive Server
Backup Server
Monitor Server
XPServer
单击" continue "(选中符号按纽),显示" lnstall Products? "对话框:
单击" OK "开始下载:
下载完毕时,显示" installsybsetup "屏幕,单击" Yes ":
成功下载 sybsetup 后,将显示标题为" success "的屏幕。
安装 Sybase 服务器
2) 启动安装进程
#su Sybase
$cd $SYBASE/bin
$./srvbuild
稍等一会儿,在出现有窗口菜单中作如下选择:
第一步:选择要安装的 Server 类型。
选择所有的 Server Type 进行安装,并输入每个要安装的 Server 的名称,单击" OK ";
第二步:显示"Adaptive Server"属性屏幕;
? 在"Master device path: "栏中输入"/dev/rdsk/c1t0d0s0";
? 在"sybsystempros device path:"栏中输入"/dev/rdsk/c1t0d0s1";
? 在" Error log path: "栏中输入" /sybase/install/sunserver.log ";
? 在" Transport type: "栏中选择" tli tcp ";
? 在" Host name: "栏中输入"192.168.123.123";
? 在" Port number: "栏中输入" 4100 ";
? 确认输入正确后,单击" Build Server! "
? 第三步:显示" Backup Server "属性屏幕;
? 在"Related Adaptive Server name:"栏中输入"192.168.123.123";
? 在"Adaptive Srver SA user name:"栏中输入" sa ";
? 在"Adaptive Server SA password:"栏中输入" admin ";
? 在"Error log path: "栏中输入"/sybase/install/sunserver_bacd.log";
? 在"Tape configuration file:" 栏中输入"/sybase/bacdup/data.tar";
? 在" Language: "栏中输入" us-english ";
? 在" Character set: "栏中输入" iso_1 ";
? 在" Maxinum munber of network connection: "栏中输入" 100 "
? 在" Maxinum number of server connection: "栏中输入" 10 ";
? 在" Transport type: "栏中选择" tli tcp ";
? 在" Host name :"栏中输入"192.168.123.123";
? 在" Port number: "栏中输入" 4200 ";
确认输入正确后,单击" Build Server! "
第四步:显示" Monitor Server "属性屏幕;
? 在" Related Adaptive Server name: "栏中输入"192.168.123.123";
? 在" Adaptive Server SA user name: "栏中输入" sa "
? 在" Adaptive Server SA password: "栏中输入" admin ";
? 在" Maxinum number of commection: "栏中输入" 100 ";
? 在" Error log path: "栏中输入"/sybase/install/sunserver_back.log";
? 在"configuration file path:" 栏中输入"/sybase/install/mon.log";
? 在" Shared memory directory: "栏中输入" /sybase/shm ";
? 在" Transport type: "栏中选择" tli tcp ";
? 在" Host name: "栏中输入"192.168.123.123";
? 在" Port number: "栏中输入" 4300 ";
确认输入正确后,单击" Build Server! "
第五步:显示" XPServer "属性屏幕:
? 在" Related Adaptive Server name: "栏中输入"192.168.123.123";
? 在" Adaptive Server SA user name: "栏中输入" sa ";
? 在" Adaptive Server SA password: "栏中输入" admin ";
? 在" Transport type: "栏中选择" tli tcp ";
? 在" Host name :"栏中输入" sunserver ";
? 在" Port number: "栏中输入" 4400 ";
确认输入正确后,单击" Build Server! "
第五步:指定缺省语言和字符集
srvblid 将自动创建带有如下缺省项的语言和字符集:
美国英语
iso-Latinl 字符集
二进制排序顺序
以后,如果您想改变它,可使用使用 splloc 工具。
第五步:退出。
四、 Servet 端的测试
1 )确认 Sybase Adaptive Server 已经启动
$ps-aefgrep datasever
如果没有启动,则手工启动它
2 )启动 Sybase Adaptive Server
$/SYBASE/install/startserver
查看屏幕上有无错误信息。
3 )执行 isqpl
$/SYBASE/bin/isql-Usunserver
这里的用户名为 SA ,口令为 admin, 登录的 Server 名为 sunserver, 如果 Server 正常运行,将会看到 isql 提示符:
1>
4 )设置或修改系统管理员口令
1>sp_password null,admin
2>go
Sybase安装好以后就可以安装HA+了,安装过程如下:
1. 将 HA+ 光碟放入 cd-rom
2. 键入命令:cd /cdrom/avail_and_rep_products/HAPLUS/SOLARIS/SPARC
3. 键入命令:pkgadd -d HAP.PDS
4. 回车装入 all PKG
5. 编辑 /etc/opt/QUALha/etc/machine.conf 文件加入:
machine.key: E9AE L5I6 JCL2 L5J5 A7K8 PAC8
heartbeat.interface: hme1
heartbeat.interface: hme2
group.name: sybase server
group.id: 192.168.123.123
group.priority: 1
group.ok_to_serve_on_startup: 1
service.name: Sybase
6. 键入命令:/etc/opt/QUALha/bin/addsg 192.168.123.123
7. 键入命令:/etc/opt/QUALha/bin/addsvc -g 192.168.123.123 sybase
8. 键入命令:将HA+ Modules 光碟放入cdrom
9. 键入命令:cd /etc/opt/QUALha/sg/192.168.123.123
10. 键入命令:
tar xvf /cdrom/cdrom0/HAPLUS/MODULES/SOLARIS/SYBASE.TAR
11. 在文件/etc/opt/QUALha/sg/192.168.123.123/if.tab中加入一行:
hme0:1 192.168.123.123 - - - - - -
12. 编辑文件/etc/opt/QUALha/sg/192.168.123.123/sybase.d/env为:
SYBASE="/opt/sybase"
export SYBASE
DSQUERY="sybase"
export DSQUERY
BACKUP_SERVER="sybase_BACKUP"
export BACKUP_SERVER
SYBASE_ACCT="sa"
export SYBASE_ACCT
SYBASE_PASSWORD=""
export SYBASE_PASSWORD
SHUTDOWN_WAIT_OPTION="nowait"
export SHUTDOWN_WAIT_OPTION
if test "${SHUTDOWN_WAIT_OPTION}" = "nowait"
then
SHUTDOWN_CHECKPOINT="checkpoint"
Else
SHUTDOWN_CHECKPOINT=""
Fi
export SHUTDOWN_CHECKPOINT
SYBASE_UNIX_ACCT="sybase"
export SYBASE_UNIX_ACCT
在sybase服务组的其它主机上重复安装Sybase和HA+,注意修改HA+的配置文件
/etc/opt/QUALha/etc/machine.conf中的group.priority值大于1,
group.ok_to_serve_on_startup值为0,安装完成后重起主机,在命令行输入qhup cui 启动监控程序,就可以看到HA+
的服务状态了。
一、 准备工作:
a) 安装主机以及磁盘阵列。(磁盘柜调线到Hi)
b) 将网卡的0,1口进行互连,通过网卡的3口连入网络(需要2条直连线,2条普通网线)。
c) 连接RAID卡与磁盘阵列:
如果配备2台4500。则建议将磁盘柜连入RAID卡的A口,此时磁盘柜的硬盘设备号应该为c1t9d0,c1t10d0。
d) 获得2个主机IP地址,一个服务IP地址,网关等。
二、 安装Solaris系统:
a) 开机加电自检。
b) 按 Stop+A 键,回到系统监控状态,即OK状态。
c) 打入probe-scsi-all,显示系统上所有SCSI设备名,应该有2个本地硬盘,2个磁盘阵列硬盘,1个CDROM(CD的SCSI地址一定要设置为6)。
d) 打入printenv,显示NVRAM配置参数,查看scsi-initiator-id的值。
e) 打入setenv scsi-initiator-id 4,修改其中一台主机的scsi-initiator-id值,使2台主机的值不同。
f) 插入"Operating Enviroment Installation CD",并打入boot cdrom,进行系统安装。
g) language选择9,simple Chinese。
h) 不进行Format,并选择在本机第一块硬盘上安装(/dev/dsk/c0t0d0),交换区大小设为4096Mb。
i) 输入机器名。
j) 选择连入网络,输入IP地址,不选择名称服务。
k) 设置地理信息、日期、时间。
l) 关闭电源管理。
m) 输入用户名和密码。
n) 选择安装Solaris 2.6 5/98,并插入Solaris 2.6 5/98 CD。
o) 选择自定义安装,并选择安装Entire solaris software group plus OEM。选定系统盘(c0t0d0)及做盘的分区等工作,开始安装。
/ 4096
swap 4096
/var 4096
/opt 4096
/export/home 8000
/usr 10240
(注意:应该剩余空间100M以上,如不够则调整/export/home大小)
p) 重新引导后,选择公用桌面环境(CDE)。
三、 利用Format命令检查2台主机的磁盘阵列的设备名是否一致。如果不一致,则需要调整其中一台主机的SCSI口的插入位置(调整后需运行
drvconfig),使之一致。然后运行disks以及reboot -- -r命令,重新引导机器。(关机:init 0)
四、 安装补丁:
a) 插入solais补丁CD。
b) 将 /cdrom/cdrom0/sunpatch下的26_rec~1.z和26_y20~1.z拷入/tmp:
#cp /cdrom/cdrom0/sunpatch/26_rec~1.z /tmp/rec.Z
#cp /cdrom/cdrom0/sunpatch/26_y20~1.z /tmp/y20.Z
c) 展开文件:
#cd /tmp
#uncompress rec.Z
#uncompress y20.Z
#tar -xvf rec
#tar -xvf y20
d) 首先安装2000年补丁:
#cd 2.6_y2000_ALL
#./INSTALL_CLUSTER
e) 然后安装建议补丁:
#cd ..
#cd 2.6_RECOMMENDED
#./INSTALL_CLUSTER
f) 重新引导机器:reboot
五、 修改配置文件:
a) 文件:/etc/hosts (主机名在/etc/nodename)
127.0.0.1 localhost
168.4.49.103 atm2 atm2. loghost
168.4.49.102 atm1
其中168.4.49.103为本机IP地址,atm2为本机主机名,168.4..49.102为另一主机IP地址,atm1为另一主机主机名。
b) 文件:/.rhosts (新文件)
atm1
atm2
其中atm1,atm2为两台主机名。
c) 文件:/etc/default/login
将Console=/dev/console一行注释掉。
d) 文件:/etc/hostname.hme0改名为/etc/hostname.qfe3
#cd /etc
#mv hostname.hme0 hostname.qfe3
e) 文件:/etc/hostname.qfe0 (新文件)
192.168.1.1
另一台主机为192.168.1.2
f) 文件:/etc/hostname.qfe1 (新文件)
192.168.2.1
另一台主机为192.168.2.2
g) 文件 /etc/defaultrouter (新文件)
168.4.49.254
168.4..49.254为网关地址。
h) 文件:/etc/rc2.d/S99mac(新文件)
增加三行:
ifconfig qfe0 ether xxxx.xxxx.xxxx.xxxx
ifconfig qfe1 ether xxxx.xxxx.xxxx.xxxx
ifconfig qfe3 ether xxxx.xxxx.xxxx.xxxx
其中xxxx.xxxx.xxxx.xxxx为主机hme0网卡物理地址分别加1,2,3得到。hme0网卡物理地址可以通过命令ifconfig -a 得到。
i) 重新引导机器:reboot。
j) 利用ping 、ifconfig、netstat等测试网络。(ping 网关、另一台主机、另一台主机的2个直连口,查看网卡的物理地址等)。
六、 进行阶段性备份:
a) reboot
b) stop+A
c) boot -s (单用户)
d) dd if=/dev/rdsk/c0t0d0s2 of=/dev/rdsk/c0t1d0s2 bs=1024k
其中:if为源目标,of为目的目标。设备名可以通过format命令取得。(250的第2块硬盘应为c0t8d0,450的第2块硬盘应为c0t1d0)
七、 安装Disksuite:
a) 放入Diskusuite CD。
b) #cd /cdrom/cdrom0/PRODUCTS/DISKSUITE_4.2
c) ./INSTALLER
d) 选择默认安装。
e) 重新引导后,检查安装情况:
#pkginfo |grep SUNWmd
八、 配置DiskSuite的分区:
通过format命令设置本机系统安装硬盘(c0t0d0)的第7分区,starting cylinder为第6分区结束柱面+1,Partion Size 为100Mb。(需要label)
九、 检查磁盘阵列的磁盘的次设备号:
a) 通过format得到 RAID信息,例如:
c2t9d0/PCI@1f,4000/SCSI@4,1/sd@9,0
c2t10d0/PCI@1f,4000/SCSI@4,1/sd@a,0
/PCI@1f,4000/SCSI@4,1/sd@9,0即为磁盘阵列的第一个硬盘的设备路径名
b) 根据设备路径名在文件 /etc/path_to_inst中查看主机的次设备号,如果不一致,则修改其中一个,使之一致。
c) Reboot -- -r
十、 配置Disksuite:
a) 文件:/.profile 增加如下:
PATH=/usr/opt/SUNWmd/sbin:$PATH
MANPATH=/usr/opt/SUNWmd/man:$MANPATH
export PATH
export MANPATH
b) Exit使.profile起作用。
c) #metadb -c 3 -a -f c0t0d0s7 其中 c0t0d0为系统安装硬盘。
d) #metaset -s shareset -a -h atm1 atm2
注意:从d)开始到h)只在一台主机运行。atm1 atm2为两台主机名。
e) #metaset -s shareset -a c2t9d0 c2d10d0
其中c2t9d0 c2d10d0为磁盘阵列的两个硬盘的设备号。
f) 利用format对磁盘阵列的2个硬盘进行分区,其中0区从1开始,size为15gb。6区从0区的结束+1开始,size为1gb。7区不变。(需要label)
g) #metatool -s shareset &
对磁盘阵列做镜像,16gb的做数据, 1gb的做transaction。最后形成 s6。(图形界面)。需要提交、存储。
h) #newfs /dev/md/shareset/dsk/d6
i) 测试:
#df -k
#mount /dev/md/shareset/dsk/d6 /mnt
#df -k
#umount /mnt
#metaset -s shareset -r (释放)(先释放后获取!!!)
#metaset -s shareset -t (获取)
#metaset
十一、 安装HA:
a) 放入HA CD
b) #cd /cdrom/cdrom0/FTHAPLUS/SOLARIS/SPARC
c) #pkgadd -d ./HAP.PDS
d) 默认安装
十二、 安装HA Service Module
a) 放入HA Service Module CD
b) #cd /cdrom/cdrom0/FTHAPLUS/MODULES
c) #./INSTALL.SH
d) 选择7:oracle
e) q退出
十三、 配置HA
a) 文件/etc/opt/QUALha/etc/machine.conf
machine.key: E9X3 L4B3 AFDF C8C2 J6X2 MRFG
heartbeat.interface: qfe0
heartbeat.interface: qfe1
group.name: oracle server
group.id: 168.4.49.101
group.priority: 1
group.ok_to_serve_on_startup: 1
SERVICE.name: oracle
SERVICE.name: nif
说明:heartbeat.interface为主机直连网口,group.name为组名,group.id为服务IP地址,备机的group.priority的值为5,备机的group.ok_to_serve_on_startup: 1
注释掉。
b) #qhap checkkey (检查注册码)
c) #qhap addsg 168.4.49.101 (增加服务组,168.4.49.101为服务地址)
d) 文件/etc/opt/QUALha/sg/168.4.49.101/if.tab 增加一行:
qfe3:1 168.4.49.101 255.255.255.0
e) 文件/etc/opt/QUALha/sg/168.4.49.101/fs.tab 增加一行:
/dev/md/shareset/dsk/d6 /dev/md/shareset/rdsk/d6 /usr/dy ufs sds - (c2t9d0+c2t10d0)
说明:/usr/dy为应用程序安装点,c2t9d0 c2t10d0为磁盘阵列的两个硬盘设备号。
f) 文件/etc/opt/QUALha/sg/168.4.49.101/sds.ds.tab增加一行:
shareset
g) #qhap addsvc -g 168.4.49.101 oracle
h) #qhap addsvc -g 168.4.49.101 nif
i) 文件/etc/opt/QUALha/sg/168.4.49.101/oracle.d/test 在可执行语句前增加一行:
exit 0
j) 文件/etc/opt/QUALha/sg/168.4.49.101/oracle.d/start 最后一行注释掉:
#SU…..
k) 文件/etc/opt/QUALha/sg/168.4.49.101/oracle.d/stop 最后一行注释掉:
#SU…..
l) 文件/etc/opt/QUALha/sg/168.4.49.101/nif.d/nif.tab 增加最后一行:
-S 168.4.49.101 168.4.49.254
其中:16.84.49.101为服务地址,168.4.49.254为网关
m) #reboot
n) 测试HA: qhap cui、qhap log …
o) 测试服务地址
十四、 系统备份:
a) reboot
b) stop+A
c) boot -s (单用户)
d) dd if=/dev/rdsk/c0t0d0s2 of=/dev/rdsk/c0t1d0s2 bs=1024k
其中:if为源目标,of为目的目标。设备名可以通过format命令取得。
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/894/showart_13987.html |
|