2023年12月20日发(作者:)
HP双机常见操作步骤和相关命令
激活锁盘:vgchange -a y /dev/vglock
去激活锁盘:vgchange -a n /dev/vglock
编译生成二进制配置文件:# cmapplyconf -v -C /etc/cmcluster/
配置双机软件包
修改以下主要文件:
同步两边节点的PKG配置文件
编译生成PKG:cmapplyconf -v -P /etc/cmcluster/scupkg/
启动双机系统:
以root用户身份在SCU_A上进行下列操作:
scu% su - root
# cmruncl -v -f -n SCU_A
# cmviewcl
确认CLUSTER在SCU_A启动后,再执行下列操作:
# cmrunnode -v SCU_B
# cmviewcl -v
CLUSTER启动正常运行,且SCU_B加入到CLUSTER中屏幕显示如下:
CLUSTER STATUS
hpcluster up
NODE STATUS STATUS
SCU_A up running
SCU_B up running
PACKAGE STATUS STATE PKG_SWITCH NODE
scupkg up running enabled SCU_A
如果一切顺利,此时各节点状态应为Running,包的状态为up。
HP双机常见命令:
1、cmruncl -f –v –n node_name(如scp1) //启动cluster
2、cmhaltcl -v //停止cluster
3、cmrunnode –v node_name //节点加入cluster
4、cmhaltnode –v node_name //节点退出cluster
5、cmrunpkg –v package_name (如scppkg) //运行软件包
6、cmmodpkg –e –v package_name(包可切换) //修改软件包切换标志
7、cmhaltpkg –v package_name //停止软件包
8、cmviewcl –v –p package_name(smppkg) //查看双机状态
9、cmcheckconf [-v] [-C cluster_ascii_file] [-P pkg_ascii_file] //检查双机配置,包配置
10、cmapplyconf [-v] [-C cluster_ascii_file] [-P pkg_ascii_file] //编译生成双机配置文件,包配置文件
11、./ auto_recover standby(启动备机应用,修改机器切换标记,至少执行3分钟才能
完成)
Hp双机操作命令, HP双机操作命令
一、HP-UX系统管理
1、创建卷组和逻辑卷(LVM)
(1)创建物理卷
# pvcreate -f /dev/rdsk/c0t1d0
# pvcreate -f /dev/rdsk/c0t2d0
(2)创建卷组
# mkdir /dev/vg01
# mknod /dev/vg01/group c 64 0x010000
# vgcreate /dev/vg01 /dev/dsk/c0t1d0 /dev/dsk/c0t2d0
(3)创建两个逻辑卷
# lvcreate -L 100 -n lvoldata1 vg01
# lvcreate -L 100 -n lvoldata2 vg01
(4)查看物理卷、卷组和逻辑卷信息
# pvdisplay -v /dev/dsk/c0t1d0
# vgdisplay -v vg01
# lvdisplay -v /dev/vg01/lvoldata1
(5)扩展卷组和逻辑卷
例1 向vg01增加一块物理硬盘c2t6d0,大小500MB
# pvcreate –f /dev/rdsk/c2t6d0
# vgextend /dev/vg01 /dev/dsk/c2t6d0
例2 给逻辑卷lvoldata1增加到600M空间
# lvextend –L 600 /dev/vg01/lvoldata1
2、创建文件系统
(1)创建文件系统
# newfs –F vxfs /dev/vg01/lvmyfs
注意# newfs –F vxfs –o largefiles /dev/vg01/lvmyfs2 支持2GB以上大文件系统
# newfs –F vxfs /dev/rdsk/c1t1d0 把整个磁盘做成一个文件系统
(2)创建mount点
# mkdir /myfs
(3)mount文件系统
# mount /dev/vg01/lvmyfs /myfs
(4)查看文件系统是否mount上
# bdf 或 # mount -v
(5)卸载文件系统
# umount /myfs 或 # umount /dev/vg01/lvmyfs
(6)如果要系统启动时自动mount,则把文件系统加入到/etc/fstab。
其他:
(1)查看
# cat /etc/fstab
cat /etcfsta
cat /etc/fstab
t/
(2)扩展
例:给/data文件系统增加500MB空间,其所在逻辑卷为/dev/vg01/lvoldata1
a 扩展逻辑卷lvoldata1
# pvcreate –f /dev/rdsk/c2t6d0
# vgextend /dev/vg01 /dev/dsk/c2t6d0
# lvextend –L 600 /dev/vg01/lvoldata1
b 扩展文件系统
# shutdown –y 0 进入单用户模式
# umount /data
# extendfs /dev/vg01 /lvoldata1
# mount /data
# reboot
3、网络管理
(1)修改IP地址方法(三种)
a 命令方式 # set_parms initial
b 图形方式 # sam
c 直接修改/etc/.d/netconf和/etc/hosts文件
最后都需要重启网络:
# /sbin/init.d/net stop
# /sbin/init.d/net start
(2)主机名解析
a /etc/hosts文件(注意127.0.0.1 localhost loopback绝不可去掉)
b DNS(Domain Name Service) client解析
# SAM-->DNS(BIND)-->DNS Resolver-->Actions-->Specify Name Servers
c NIS(Network Information Service)解析
具体由/etc/文件决定解析先后顺序,可通过# sam-->Networking and
Communications-->Name Service Switch(Select a
lookup type)-->Actions-->Configure Name Service Switch看到
(3)常用网络管理命令
# ioscan -funC lan 看所有网卡情况
# ifconfig lan0 看1块网卡情况
# cat /etc/hosts 看主机名情况
# netstat -rn 看路由情况
# ping 10.77.220.1 检测网络
# nslookup 看机器名、IP等
# traceroute 10.77.9.113 跟踪路由
4、性能管理
(1)综合分析
# glance hp-ux特有工具
# sar (如系统情况sar –u 5 4/ 磁盘情况sar –d 5 4)
# top
(2)内存、交换分区分析
# vmstat
# swapinfo
(3)磁盘分析工具
# bdf
# du
# iostat
5、备份与恢复
(1)备份工具
a fbackup/frecover 功能强大、速度快
#fbackup -f /dev/rmt/0m -0iv / -I /tmp/
(其中-f : 设备文件名 ( such as DDS tape driver)
-i : 要包含的目录
-e: 不包含的目录
-I: 备份内容检索目录
-v: 备份内容详细列表
-0 : 零级备份(有0~9 个级别,如果当前系统采用零级备份,当下一次采用5 级备份时,系统
只会对有变化的文件进行备份)
# frecover -rf /dev/rmt/0m
(其中-f: 设备文件名
-r: 恢复磁带上的所有数据
-I: 将磁带上文件索引存到指定的文件中)
例# frecover -I /tmp/ -f /dev/rmt/0m
# frecover -xi /dir
# frecover -x -i /dir1 -i /dir2
# frecover -xoi /dir
b tar 只适合打包传送文件用
c cpio 类似tar,适合按目录备份
d dd 字节硬COPY,不能按文件方式备份,只适合裸设备
(另外还有SAM图形工具操作)
6、Cron定时
一般用来:定期清理日志、定期执行备份、定期生成报告
二、HP MC/ServiceGuard双机备份
第一步:做好双机的MC/SG逻辑卷
(1)在node A(主机)配置卷组
a 创建卷组VG01
# mkdir /dev/vg01
# mknod /dev/vg01/group c 64 0x010000
# pvcreate -f /dev/rdsk/c0t3d0
# pvcreate -f /dev/rdsk/c0t4d0
# vgcreate /dev/vg01 /dev/dsk/c0t3d0 /dev/dsk/c0t4d0
b 创建一个500MB的逻辑卷/dev/vg01/lvolshare
# lvcreate –L 500 –n lvolshare /dev/vg01
c 对逻辑卷做镜像
# lvextend –m l /dev/vg01/lvolshare
d 用该逻辑卷做文件系统
# newfs –F vxfs /dev/vg01/rlvolshare
# mkdir /share
# mount /dev/vg01/lvolshare /share
(2)把卷组信息分发到node B(备机)
卸载文件系统
[nodeA]# umonut /share
去激活卷组
[nodeA]# vgchange -a n /dev/vg01
a 将nodeA信息倒出来
[nodeA]# vgexport -p -s -m /tmp/map /dev/vg01
b 将倒出的信息ftp到nodeB
[nodeA]# ftp nodeB (也可rcp过去)
ftp>put /tmp/map
c 在nodeB建立对应的vg信息
[nodeB]# mkdir /dev/vg01
[nodeB]# mknod /dev/vg01/group c 64 0x010000
d 在nodeB将信息同步
[nodeB]# vgimport –s –m /tmp/map /dev/vg01 /dev/dsk/c0t3d0 /dev/dsk/c0t4d0
(如果加-r参数就不用写后面的磁盘?)
[nodeB]# vgcfgbackup /dev/vg01 (备份此信息?)
(注意增加了物理卷或者逻辑卷时会产生新的设备文件,同样需要同步到noteB机上)
第二步:做双机的Cluster Manager(配主机、备机这2个节点)
(1)创建cluster配置文件并编辑
# cd /etc/cmcluster
# cmquerycl –C –n nodeA –n nodeB
# vi
需要检查下面参数点:
CLUSTER_NAME cluster1
FIRST_CLUSTER_LOCK_VG /dev/vg01
NODE_NAME nodeA
NETWORK_INTERFACE lan0
HEARTBEAT_IP 192.168.1.11
FIRST_CLUSTERLOCK_PV /dev/dsk/c1t3d0
FIRST_CLUSTERLOCK_PV /dev/dsk/c12t3d0(两个节点的磁盘名不一样,都要配置)
SERIAL_DEVICE_FILE
HEARTBEAT_INTERVAL 1000000
NODE_TIMEOUT 5000000
AUTOSTART_TIMEOUT 6000000
NETWORK_POLLING_INTERVAL 2000000
VOLUME_GROUP /dev/vg01
MAX_CONFIGURED_PACKAGES 0(默认,需要改为5)
VOLUME_GROUP /dev/vglock
VOLUME_GROUP /dev/vgdata
(2)检查和编译、分发
# vgchage -a y /dev/vglock
# cmcheckconf –v –C
# cmapplyconf –v –C
# ls -l /etc/cmcluster(可看到多了个配置文件)
(3)启动Cluster
# cmruncl –v
# cmviewcl -v
第三步:配置应用Package Manager
包可以包括VG、IP、SERVICE PROCESS;每个包必须包含(配置文件)、(控制脚本)
(1)创建应用Package
#mkdir /etc/cmcluster/pkg_name
(2)进入包路径并创建包配置文件模板
#cd /etc/cmcluster/pkg_name
#cmmakepkg -p
(3)修改此模板文件
#vi 手工配置
注意下面参数:
PACKAGE_NAME 应用包名
NODE_NAME 首先运行的节点名,一般用机器名
NODE_NAME 其次运行的节点名
FAILBACK_POLICY MANUAL(A机故障后好了之后不会切换回来)
RUN_SCRIPT /etc/cmcluster/pkg1/(运行脚本)
RUN_SCRIPT_TIMEOUT NO_TIMEOUT
HALT_SCRIPT /etc/cmcluster/pkg1/(停止脚本)
HALT_SCRIPT_TIMEOUT NO_TIMEOUT
SERVICE_NAME 服务名
SERVICE_FAIL_FAST_ENABLED
SERVICE_HALT_TIMEOUT
SUBNET 子网掩码
AUTO_RUN
NET_SWITCHING_ENABLED
NODE_FAIL_FAST_ENABLED
FAILOVER_POLICY CONFIGURED_NODE
FAILBACK_POLICY
RESOURCE_NAME
RESOURCE_POLLING_INTERVAL
RESOURCE_UP_VALUE
IP[0] = 10.77.218.111
SUBNET[0] = 10.77.218.0
(4)创建Package控制文件
#cmmakepkg -s
(5)编辑Package控制文件
#vi
(6)将Package控制文件传到节点B的相同目录下
#rcp nodeB:/etc/cmcluster/pkg_name
(7)检查是否配置正确
#cmcheckconf -P /etc/cmcluster/pkg_name/
(8)编译成二进制文件
#cmapplyconf -P /etc/cmcluster/pkg_name/
三、日常维护
1、硬件
看外围:主机液晶面板显示、设备指示灯(SCSI卡/网卡/磁盘阵列/磁带库)。一般正常情况下,自检灯暗,连接灯或电源灯亮
2、操作系统
a 查看终端控制台(Console)信息:按CTRL+B进入GSP/MP/SP ,用sl命令查看最近CONSOLE信息。
b 查看日志
1)系统日志/var/adm/syslog/
2)运行日志/etc/
3)关机日志/etc/shutdownlog
4)登陆失败日志/var/adm/btmp
5)登陆成功日志/var/adm/wtmp
6)系统近期有无Core Dump,检查是否有/var/adm/crash新文件
c 常用检查命令
# dmesg 查看系统是否有硬件故障或文件系统错误等信息
# uptime 查看系统开机时长
# bdf 查看文件系统空间使用率,是否超过90%
# mail 查看是否有严重错误信息
# ioscan –nf 查看是否有UNCLAIMED,UNKNOWN,NO_HW等状态的设备
# sar 1 10 查看CPU利用情况
#sar –d 1 5 查看系统盘IO使用状况
d 清理日志和文件
# >/var/adm/wtmp
# find / -name core –exec rm {} ;
# swapinfo –atm 查看交换分区, Pct Used(Total)使用率
HP 双机cluster中共享卷的扩充
1、 cmhaltpkg –v package 停止包运行
2、 vgchange –c n /dev/vgdata HA cluster将不在vgdata上运行
3、 vgchange –a y /dev/vgdata 激活vgdata卷组
4、 lvextend –L 10000 /dev/vgdata/lv001(扩大到20G)
5、 extendfs /dev/vgdata/lv001
6、 vgexport –p –v –s –m /tmp/vgmap/ /dev/vgdata
7、 rcp /tmp/vgmap/ node1: /tmp/vgmap/ 拷贝map信息到node1上
8、 rlogin node1 登陆node1
9、 ll /dev/vgdata -----查看node1上vgdata的设备编号,假设为0x0x0000
10、 vgexport /dev/vgdata 导出vgname
11、 mkdir /dev/vgdata
12、 mknod /dev/vgdata/group c 64 0x0x0000
13、 vgimport –s –v –m /tmp/vgmap/ /dev/vgdata 倒入扩容后的vgdata的map
14、 exit
15、 vgchange –a n /dev/vgdata 将vgdata状态改为非激活状态
16、 vgchange –c y /dev/vgdata 将HA cluster运行在vgdata卷组
17、 cmmodpkg –e package 允许package进行切换
HP双机方法
1.安装好A机和B机的操作系统后,安装相应的软件MC/SG等
软件安装完后在安装GOLDENPATCH和最新的megaPATCH
2.在配置双机前必须使A机和B机能够相互信任
使用VI 编辑文件根目录下的.rhosts,如没有,自己就建立一个
#vi .rhosts
A root #A为A机的主机名
B root #B为B机的主机名
3.在A机和B机上重复上面的步骤或将此文件直接拷贝至B机的根目录,
然后使用“rlogin 主机名”在两台主机间切换,验证信任关系是否成立。
如不需要密码认证则表示成功。
4.编辑/etc/hosts文件,将所有的(这里为两台主机)IP地址
(包括心跳地址、网卡地址等)加到此文件中,以备解析时使用。
5.创建需要共享的VG,这里VG的创建就不详细说明了。
6.为双机创建锁卷组和锁磁盘
目前比较流行的方式是利用共享的卷组作为锁卷组
利用共享卷组中的磁盘作为锁磁盘
举例说明如下:
我建立了一个共享的VG名字叫VGSYB,上安装SYBASE
在下面将要讲的如何配置群集ASCII文件的时候,里面将会碰到下面的配置
FIRST_CLUSTER_LOCK_VG /dev/vgsyb
FIRST_CLUSTER_LOCK_PV /dev/dsk/c4t1d2
这里的VGSYB就是我建立的共享卷组,同时我将其也作为了锁卷组。
这个共享卷组中的c4t1d2磁盘被我用来当作锁磁盘,这样的好处是,不用单独建立VGLOCK和锁磁盘
7.在两台主机分别执行以下命令来将共享卷组非激活,然后在一台上激活共享卷组(共享卷组只能在一台主机上激活)
#vgchange -a n /dev/vgsyb
在A机上激活卷组/dev/vgsyb
#vgchange -a y /dev/vgsyb
此时你可以根据客户的需要在此卷组上建立裸设备或者文件系统了。在A机上建立完卷组
后,我们将要将此卷组分发到群集的其他节点上,也就是B机,使用下面的命令:
#vgexport -v -s -p -m /tmp/ /dev/vgsyb
将此文件拷贝至b机:
#rcp /tmp/ hostB:/tmp/
非激活A机上的vgsyb卷组#vgchange -a n /dev/vgsyb
切记共享卷组只能在一台操作的主机上被激活。
然后#rlogin hostb
这是我们就登陆了B机,并且在B机上激活VGSYB
#vgchange -a y /dev/vgsyb
建立和A机上同样的卷组文件和目录,如下:
#mkdir /dev/vgsyb
#mknod /dev/vgsyb/group c 64 0x010000
导入VGSYB的map文件。如下
#vgimport -v -s -m /tmp/ /dev/vgsyb
此时两机的VG就同步了,并停止激活共享卷组#vgchange -a n /dev/vgsyb
8. 在其中的一台机器上执行此命令,在此我选择在A机上生成双机的配置模板
#cmquerycl -v -n A机名 -n B机名 -C /etc/cmcluster/
如没有错误的话,将生成上面的模板文件,并用vi编辑它
10. #cmcheckconf -v -C /etc/cmcluster/ 让系统检查模板
11.执行下面的命令前必须使锁卷组为激活状态,在这里也就是我的共享卷组要激活在使用此命令的主机上,如下:
#vgchange -a y /dev/vgsyb
再分发双机文件#cmapplyconf -v -C /etc/cmcluster/ 分发二进制文件到所有的节点
12.#vgchange -a n /dev/vgsyb 停用此锁卷组,修改/etc/lvmrc文件,将
双机设置为手工启动,等待由双机软件来激活锁卷组
13.因为共享卷组是由双机来激活的,也就是由包控制文件来激活,所以在此篇文章中我没有介绍如何去配置包,所以按照正常的使用#cmruncl可以启动双机但是不能启动共享卷组的。但是可以启动双机,但是你在A/B上都看不到vgsyb,应为包没有启动成功,所以vgsyb就没有被激活。但是我们可以使用此命令来激活共享卷组#vgchange -a e /dev/vgsyb(此方法只在配置双机时做测试用)
#双机启动成功后,你可以使用如下命令来查看
cmhaltcl -f 停双机
cmviewcl -v 查看双机的状态
cmrunnode 启动一个节点
cmhaltnode 停一个节点
14.注明:/etc/fstab中不能出现被双机共享的卷组
关于包配置脚本的编写及包控制文件的编写请参考HP随机的双机文档中的说明和你的DBA工程师。在此时间不够就不说了。
15.注明:以下为一个的文件内容,大家可以看一看里面的英文注释,及以下相关的配置参数
# **********************************************************************
# ********* HIGH AVAILABILITY CLUSTER CONFIGURATION FILE ***************
# ***** For complete details about cluster parameters and how to ****
# ***** set them, consult the cmquerycl(1m) manpage or your manual. ****
# **********************************************************************
# Enter a name for this cluster. This name will be used to identify the
# cluster when viewing or manipulating it.
CLUSTER_NAME cl_db
# Cluster Lock Device Parameters. This is the volume group that
# holds the cluster lock which is used to break a cluster formation
# tie. This volume group should not be used by any other cluster
# as cluster lock device.
# Warning: No volume groups were found on all nodes.
# A cluster lock volume group is required for clusters of only two nodes.
FIRST_CLUSTER_LOCK_VG /dev/vgsyb
# Definition of nodes in the cluster.
# Repeat node definitions as necessary for additional nodes.
NODE_NAME JSta
NETWORK_INTERFACE lan2
HEARTBEAT_IP 192.9.200.2
NETWORK_INTERFACE lan3
NETWORK_INTERFACE lan1
STATIONARY_IP 132.228.39.2
# Warning: No volume groups were found on all nodes.
# A cluster lock device is required for clusters of only two nodes.
FIRST_CLUSTER_LOCK_PV /dev/dsk/c4t1d2
# List of serial device file names
# For example:
# SERIAL_DEVICE_FILE /dev/tty0p0
# Possible standby Network Interfaces for lan1: lan3.
# Warning: There are no standby network interfaces for lan2.
NODE_NAME JStb
NETWORK_INTERFACE lan2
HEARTBEAT_IP 192.9.200.3
NETWORK_INTERFACE lan3
NETWORK_INTERFACE lan1
STATIONARY_IP 132.228.39.3
# Warning: No volume groups were found on all nodes.
# A cluster lock device is required for clusters of only two nodes.
FIRST_CLUSTER_LOCK_PV /dev/dsk/c4t1d2
# List of serial device file names
# For example:
# SERIAL_DEVICE_FILE /dev/tty0p0
# Possible standby Network Interfaces for lan1: lan3.
# Warning: There are no standby network interfaces for lan2.
# Cluster Timing Parmeters (microseconds).
HEARTBEAT_INTERVAL 1000000
NODE_TIMEOUT 2000000
# Configuration/Reconfiguration Timing Parameters (microseconds).
AUTO_START_TIMEOUT 600000000
NETWORK_POLLING_INTERVAL 2000000
# Package Configuration Parameters.
# Enter the maximum number of packages which will be configured in the cluster.
# You can not add packages beyond this limit.
# This parameter is required.
MAX_CONFIGURED_PACKAGES 4
# List of cluster aware Volume Groups. These volume groups will
# be used by package applications via the vgchange -a e command.
# For example:
# VOLUME_GROUP /dev/vgdatabase.
# VOLUME_GROUP /dev/vg02.
VOLUME_GROUP /dev/vgsyb


发布评论