免费注册 查看新帖 |

Chinaunix

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

HP 下面有什么好的cluster解决方案? [复制链接]

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

论坛徽章:
0
2 [报告]
发表于 2007-07-24 08:19 |只看该作者
能说详细点吗?

论坛徽章:
0
3 [报告]
发表于 2007-07-24 09:45 |只看该作者
MC呗

论坛徽章:
0
4 [报告]
发表于 2007-07-24 10:57 |只看该作者

倾情奉献:HP-UX MC/SG 安装详细参考手册

HP-UX MC/SG安装详细参考手册

目录
一、        配置MC的基本过程        3
二、        关于本文        4
编写本文的目的        4
规则定义及说明        4
三、        安装软件        4
四、        准备系统        4
建立主机信任关系        4
启动时间同步进程        4
五、        网卡准备        4
六、        准备磁盘        5
创建逻辑卷(LV)结构        5
创建root盘的镜像        5
创建卷组(VG)和逻辑卷(LV)        5
修改卷组属性        6
在另一台主机上设置VG        6
创建其他卷组结构        7
所有卷组创建完成后        7
最后步骤        7
七、        配置CLUSTER        7
生成CLUSTER配置文件模板        7
编辑CLUSTER配置文件模板        7
检查CLUSTER配置的正确性        8
设置自动启动参数        8
八、        配置PACKAGE和SERVICES        8
创建子目录        8
建立配置文件模板        9
编辑配置文件模板        9
建立控制脚本的模板        9
控制脚本模式设置        9
编辑控制脚本        10
检查并分发配置文件        10
九、        管理CLUSTER和PACKAGE        10
管理CLUSTER和节点        10
启动Cluster        10
在已运行的Cluster中增加一个节点运行        10
在已运行的Cluster中停止一个节点运行        10
停止整个Cluster        10
对Cluster进行重新配置        10
管理PACKAGE和SERVICE        11
启动Package        11
停止Package,不切换        11
移动Package        11
对Package进行重新配置        11
查看运行情况        11
十、        测试CLUSTER配置        11
测试PACKAGE MANAGER        11
测试CLUSTER MANAGER        11
测试NETWORK MANAGER        12
十一、        故障诊断方法        12
附:一些有用的系统命令        13
查看硬件配置情况        13
配置LAN        13
创建新文件系统        13
扩充HFS文件系统        13
移动文件系统        13
文件系统日常维护        13
删除CORE文件        14
将磁盘从一个卷组移到另一个卷组        14
PV-LINK(物理卷链路)配置        14
手工启动HP-UX        14
进入ISL界面:        14
进入单用户状态        14
安装软件时检查SWAGENTD是否启动        14
软件打包到磁带(SWINSTALL格式)        14
杀死指定名字的进程        15
检测INFORMIX SERVER状态        15


一、        配置MC的基本过程
本表仅供参考:
建立 /.rhosts, 使root对两机的所有资源都有所需的权限
建立Cluster的配置文本:
        /etc/cmcluster/config.d
建立pkg1:
        /etc/cmcluster/pkg1/pkg1.conf
        /etc/cmcluster/pkg1/pkg1.cntl
        /etc/cmcluster/pkg1/service1
同步两机的MC配置文件:
        rcp -r /etc/cmcluster MachineB:/etc
检查配置是否正确:
        cmcheckconf -v -C /etc/cmcluster/cmclconf -P /etc/mcluster/pkg0/pkg0.conf \
        -P /etc/cmcluster/pkg1/pkg1.conf
编译、分发配置:
        cmapplyconf -v -C /etc/cmcluster/cmclconf -P /etc/cmcluster/pkg0/pkg0.conf \
        -P /etc/cmcluster/pkg1/pkg1.conf
修改LVM启动文件 /etc/lvmrc
        AUTO_VG_ACTIVATE=0
        使VG00,VG01,VG02不随系统的启动便置为可用
修改 /etc/hosts增加对pkg0和pkg1浮动地址的定义[Optional]:
        pkg0 132.97.4.12
        pkg1 132.97.4.14
修改MC/ServiceGuard启动文件 /etc/rc.config.d/cmcluster
        AUTOSTART_CMCLD=1
检查/etc/rc.config.d/nfsconf,参数值应设置如下:[没必要]
        NFS_CLIENT=0
        NFS_SERVER=0
同步两机的相关的配置文件:
        /.rhosts
        /etc/lvmrc
        /etc/rc.config.d/nfsconf
        /etc/rc.config.d/cmcluster
        /etc/passwd
        /etc/group
        /etc/hosts
        /etc/cmcluster/*
运行cluster:
        cmruncl -v
        cmviewcl –v
检查LOG:
        /etc/cmcluster/pkg1/control.sh.log
        /var/adm/syslog/syslog.log



二、        关于本文
编写本文的目的
公司的技术人员,根据该模板均能成功安装配置统一风格、符合FR规范的MC高可用系统,通过本文档,系统管理员可对双机的基本概念有一定的了解;可完成双机的安装配置、日常管理、监控等任务。
规则定义及说明
主机命名规则:
本文的主机名分别是:node1和node2;并用蓝色表示该名称可随不同环境改变。
其他说明:
本文所有蓝色字符均为根据不同环境修改的;而褐色部分则为可选内容,即这些操作可根据用户实际需要选择;红色表示重要部分。
三、        安装软件
        安装MC/ServiceGuard软件。
        安装Database Toolkits软件
        (安装后位于/opt/cmcluster/toolkit/<Database>目录内)。
        使用swinstall命令进行上述安装。
四、        准备系统
建立主机信任关系
        编辑安全控制文件/.rhosts:包含其他节点的根用户授权,如
        node1        root
        node2        root
启动时间同步进程
        建议在各个节点上面激活NTP(xntpd进程),编辑/etc/ntp.conf文件。
        (注:该项可以跳过)
五、        网卡准备
    硬件要求:每台服务器三块网卡(lan0、lan1、lan2)或两块网卡(lan0、lan1)加RS232串口(只有在双节点群集中使用),其中lan0作为主机的主网卡 ,作为数据通讯用,而lan1作为lan0的备份网卡,lan2(RS232)作为心跳信号通讯;[光两块网卡也可以,数据和心跳走一条线]
    网卡配置:网卡的配置在/etc/rc.config.d/netconf文件中定义。
        注意,在此文件中应将主网卡进行配置,而备份网卡不能配置IP地址。
六、        准备磁盘
        (关键是共享磁盘--如:磁盘阵列)
创建逻辑卷(LV)结构
创建root盘的镜像
        如果不需要的话,可以不做(只能使用命令完成,不能使用SAM)
        建立bootable LVM,以备作为root盘的镜像:
        # pvcreate -B /dev/rdsk/cxtydz 
        加入root VG:
        # vgextend /dev/vg00 /dev/dsk/cxtydz 
        将新盘作成boot盘:
        # mkboot /dev/rdsk/cxtydz 
        将AUTO File复制到新盘的LIF区内:
        # mkboot -a “hpux (disk;0)/stand/vmunix” \
        /dev/rdsk/cxtydz 
        对root和primary swap LV在新盘上做镜像(注意,应将VG00中的所有设备均做镜像,如/usr、/swap等):
        # lvextend -m 1 /dev/vg00/lvol1 /dev/dsk/cxtydz 
        更新BDRA中的boot信息:
        # /usr/sbin/lvlnboot -v -r /dev/vg00/lvol1 
        # /usr/sbin/lvlnboot -s /dev/vg00/lvol2 
        检查BDRA是否正确:
        # /usr/sbin/lvlnboot -R /dev/vg00 
        确认镜像的正确性:
        # lvlnboot -v 
       
创建卷组(VG)和逻辑卷(LV)
注:(可以使用SAM或命令方式)
        选择VG所使用的磁盘(得到每个节点上可以看见的磁盘,识别出共享磁盘一般表现为磁盘阵列设备文件),在每个节点上面均执行下面的命令,列出每个节点可见的磁盘设备:
        # lssf /dev/dsk/*d0 
        在节点1上面创建物理卷(PV)
        # pvcreate /dev/rdsk/c1t2d0 
        # pvcreate /dev/rdsk/c0t2d0 
        在节点1上面创建卷组(VG)
        创建卷组目录
        # mkdir /dev/卷组名 
        在卷组目录内创建卷组控制文件
        # mknod /dev/卷组名/group c 64 0xhh0000 
        (其中,主设备号总是64,次设备号以16进制数0xhh0000表示,hh必须在系统内唯一,使用系统中下一个可用的数值。使用下面的命令可以得到系统中已经存在的卷组:
        # ls -l /dev/*/group )
        创建卷组并将物理卷加入其中
        # vgcreate /dev/卷组名 /dev/dsk/c1t2d0 
        # vgextend /dev/卷组名 /dev/dsk/c0t2d0 
        重复上述步骤创建其他卷组
        在节点1上面创建逻辑卷(LV)
        # lvcreate -L 12 /dev/卷组名 
        在节点1上面创建文件系统(如果需要)
        在新建的逻辑卷上面创建文件系统
        # newfs -F vxfs /dev/卷组名/rlvol1 
        创建mount目录点
        # mkdir /mnt1 
        Mount文件系统以检查正确性
        # mount /dev/卷组名/lvol1 /mnt1 
修改卷组属性
   在node1上deactivate 卷组:
        # umount /mnt1 
        # vgchange -a n /dev/卷组名 
       
在另一台主机上设置VG
(只能使用命令方式完成)
1)        在节点1上面,生成卷组映像文件
        #vgchange –c y /dev/卷组名       //改为cluster模式
        # vgexport -v –s -p -m /tmp/卷组名.map /dev/卷组名 
2)        在节点1上面,将卷组映像文件复制到节点2
        # rcp /tmp/卷组名.map node2:/tmp/卷组名.map 
3)        在节点2上面,创建卷组目录
        # mkdir /dev/卷组名 
4)        在节点2上面,创建卷组控制文件
        # mknod /dev/卷组名/group c 64 0xhh0000 
5)        在节点2上面,使用从节点1复制的卷组映像文件中的信息建立卷组结构
        # vgimport -v –s -m /tmp/卷组名.map /dev/卷组名 \ 
          /dev/dsk/c1t2d0 /dev/dsk/c0t2d0 
        (注意,在节点2上面的设备文件名字可能与节点1上面不同,必须确认)
6)        在节点2上面激活卷组
        # vgchange -a y /dev/卷组名 
7)        创建mount目录点
        # mkdir /mnt1 
        Mount文件系统以检查正确性
        # mount /dev/卷组名/lvol1 /mnt1 
9)        Umount文件系统
        # umount /mnt1 
10)        Deactivate VG
        # vgchange -a n /dev/卷组名 
       
创建其他卷组结构
重复上述步骤,创建其他卷组结构
所有卷组创建完成后
编辑/etc/lvmrc文件,保证在系统启动时不自动激活与CLUSTER有关的卷组(将AUTO_VG_ACTIVATE置为0,并确认root卷组包含在custom_vg_activation函数内)。这些卷组将在应用包的control.sh文本中激活。
       
最后步骤
配置MC/ServiceGuard双机前的最后步骤
        在配置节点(节点1)上激活所有卷组
        # vgchange -a y /dev/卷组名 
       
七、        配置CLUSTER
        (可以使用SAM或命令方式完成)
生成CLUSTER配置文件模板[可以用现成的改]
        # cmquerycl -v -C /etc/cmcluster/cmclconf.ascii -n node1 \ 
           -n node2 
       
编辑CLUSTER配置文件模板
       
        CLUSTER_NAME  cluster1                                           #CLUSTER的名字
       
        FIRST_CLUSTER_LOCK_VG  /dev/vg01                        #LOCK卷组,集群解体,各节点谁先抢到Lock VG就有谁重组集群。
       
        NODE_NAME  node1                                                                #节点名字
          NETWORK_INTERFACE  lan1
            HEARTBEAT_IP  15.13.171.32                                #lan1是HEARTBEAT网络
          NETWORK_INTERFACE  lan2                                        #lan2是备份网络
          NETWORK_INTERFACE  lan0                                        #[此网卡不配也可]
            STATIONARY_IP  192.6.143.10                            #lan0的静态IP地址
          FIRST_CLUSTER_LOCK_PV /dev/dsk/c1t2d0            #LOCK盘的物理卷名字
        # SERIAL_DEVICE_FILE  /dev/tty0p0                        #RS232串行HEARTBEAT线路
       
        NODE_NAME  node2
          NETWORK_INTERFACE  lan1
            HEARTBEAT_IP  15.13.171.30                //心跳
          NETWORK_INTERFACE  lan2                        //备份
          NETWORK_INTERFACE  lan0                        //数据
            STATIONARY_IP  192.6.143.20
          FIRST_CLUSTER_LOCK_PV /dev/dsk/c1t2d0
        # SERIAL_DEVICE_FILE  /dev/tty0p0
       
        HEARTBEAT_INTERVAL  1000000
        NODE_TIMEOUT  2000000
       
        AUTO_START_TIMEOUT  600000000
        NETWORK_POLLING_INTERVAL  2000000
       
        VOLUME_GROUP  /dev/vg01
        VOLUME_GROUP  /dev/vg02                                        #注:所有CLUSTER相关的卷组都要在此写出
       
检查CLUSTER配置的正确性
(强烈建议:任何时候对双机配置文件做过改动,重新启动双机之前必须进行配置的检查)

        # cmcheckconf -v -C /etc/cmcluster/cmclconf.ascii 
       
设置自动启动参数
        编辑文件/etc/rc.config.d/cmcluster,将参数AUTOSTART_CMCLD设为1,则在系统自举时自动启动CLUSTER。
       
八、        配置Package和Services
(可以使用SAM或命令方式完成)
创建子目录
在/etc/cmcluster中为每个Package创建子目录
        # mkdir /etc/cmcluster/pkg1 
        # mkdir /etc/cmcluster/pkg2 
       
建立配置文件模板
为每个Package建立一个配置文件模板
        # cmmakepkg -p /etc/cmcluster/pkg1/pkg1conf.ascii 
        # cmmakepkg -p /etc/cmcluster/pkg2/pkg2conf.ascii 
       
编辑配置文件模板
编辑Package配置文件,根据实际需要修改相关项:
        PACKAGE_NAME  pkg1                                                       
       
        NODE_NAME  node1                                                                主节点
        NODE_NAME  node2                                                                备份节点
       
        RUN_SCRIPT  /etc/cmcluster/pkg1/control.sh                Package启动脚本
        RUN_SCRIPT_TIMEOUT  NO_TIMEOUT
        HALT_SCRIPT  /etc/cmcluster/pkg1/control.sh                Package停止脚本
        HALT_SCRIPT_TIMEOUT  NO_TIMEOUT
       
        SERVICE_NAME  service1                                对每个service重复此3行定义
        SERVICE_CMD[]
        SERVICE_FAIL_FAST_ENABLED  NO                Service是标识应用avalible与否的。       
        SERVICE_HALT_TIMEOUT  300
       
        SUBNET  15.16.168.0                                        Package对应的子网(可以多个)。虚拟IP的子网。各个不同的Package间子网可以相同。此子网和真实的子网必须一致。虚拟IP在control.sh中指定。
       
        PKG_SWITCHING_ENABLED  YES
        NET_SWITCHING_ENABLED  YES
        NODE_FAIL_FAST_ENABLED  NO
       
建立控制脚本的模板
建立Package控制脚本的模板
        # cmmakepkg -s /etc/cmcluster/pkg1/control.sh 
       
控制脚本模式设置
将Package控制脚本设为可执行模式
        # chmod +x /etc/cmcluster/pkg1/control.sh 
       
编辑控制脚本
        编辑修改Package控制脚本时注意进行以下工作:
        在PATH中增加启动service所需要的路径
        增加需要激活的卷组名字
        增加需要mount的文件系统和逻辑卷的名字
        定义IP地址和子网
        增加service名字
        增加service命令
        注意函数start_services和halt_services中启动和停止service使用的脚本参数,保证service启动和停止命令的正确性
检查并分发配置文件
        将Package控制脚本复制到其他节点
        # rcp /etc/cmcluster/pkg1/control.sh \ 
              node2:/etc/cmcluster/pkg1/control.sh 
        检查CLUSTER配置(强烈建议:任何时候对双机配置文件做过改动,重新启动双机之前必须进行配置的检查)
        # cmcheckconf -C /etc/cmcluster/cmclconf.ascii \ 
              -P /etc/cmcluster/pkg1/pkg1conf.ascii \ 
              -P /etc/cmcluster/pkg2/pkg2conf.ascii 
        停止Cluster
        生成并分发二进制CLUSTER配置文件
        # cmapplyconf -v -C /etc/cmcluster/cmclconf.ascii \ 
              -P /etc/cmcluster/pkg1/pkg1conf.ascii \ 
              -P /etc/cmcluster/pkg2/pkg2conf.ascii 
        启动Cluster
九、        管理Cluster和Package
管理Cluster和节点
启动Cluster
        # cmruncl -v 
        # cmruncl -v -n node1 -n node2 
在已运行的Cluster中增加一个节点运行
        # cmrunnode -v node2 
在已运行的Cluster中停止一个节点运行
        # cmhaltnode -f -v node2 
停止整个Cluster
        # cmhaltcl -f -v 
对Cluster进行重新配置
        停止整个Cluster
        如果要改变CLUSTER LOCK VG,则
        # vgchange -c n vg01 
        # vgchange -a y vg01 
        重新进行配置工作
        cmapplyconf
        cmruncl
管理Package和Service
启动Package
        # cmrunpkg -n node1 pkg1 
        # cmmodpkg -e node1 pkg1  //把切换属性置为yes.故障发生后可以自动切换。很重要!!
停止Package,不切换
        # cmhaltpkg pkg1 
移动Package
        # cmhaltpkg pkg1 -n node1 
        # cmrunpkg -n node2 pkg1 
        # cmmodpkg -e pkg1 //让package可以切换
对Package进行重新配置
        停止整个Cluster
        修改配置文件
        修改control.sh文件(注意保证所有节点一致)
        cmapplyconf
        cmruncl
查看运行情况
        # cmviewcl -v 
十、        测试Cluster配置
测试Package Manager
1)        得到service的pid(使用ps -ef命令)
2)        杀死service进程(使用kill命令)
3)        使用cmviewcl -v命令查看状态
4)        将Package移动回原节点
5)        对数据库系统的测试可以根据具体情况进行
测试Cluster Manager
1)        关闭一个节点的电源
2)        使用cmviewcl -v命令查看状态
3)        打开节点的电源
4)        使用cmviewcl -v命令查看状态
5)        将Package移动回原节点
6)        对数据库系统的测试可以根据具体情况进行
测试Network Manager
1)        使用lanscan命令得到主/备网络信息
2)        使用cmviewcl -v命令查看状态
3)        从主网卡上拔掉网线
4)        使用cmviewcl -v命令查看状态(应完成本地网络切换)
5)        重新连接网线
6)        使用cmviewcl -v命令查看状态

激活VG的方式
1)        独占方式
#vgchange –a e /dev/vgxx                                //以独占方式激活
2)        普通方式
#vgchange –c n /dev/vgxx
#vgchange –a y /dev/vgxx
十一、        故障诊断方法
1、        检查Cluster和Package状态
        使用cmviewcl -v命令
2、        检查RS232状态
        使用cmviewcl -v命令
3、检查Package IP地址
        使用netstat -in命令
4、查看LOG文件
        /var/adm/syslog/syslog.log
        /etc/cmcluster/pkg1/control.sh.log
5、查看Cluster和Package配置文件
6、查看Package控制脚本文件(control.sh)
7、使用cmquerycl和cmcheckconf命令检查配置的合法性
8、检查LAN配置情况
        # netstat -in
        # lanscan
        # arp -a
        # landiag
        # linkloop
        # /usr/contrib/bin/cmgetconfig -f
        # cmviewcl -v
附:一些有用的系统命令
查看硬件配置情况
        # /usr/sbin/dmesg
        # /usr/sbin/ioscan
        # /usr/sbin/lssf /dev/rdsk/c0t5d0
        # diskinfo /dev/rdsk/c0t5d0
        # swapinfo 
        # lanscan 
配置LAN
        # /sbin/set_parms hostname
        # /sbin/set_parms ip_address
        编辑etc/hosts 文件
        reboot
        或
        # /sbin/set_parms initial(根据提示操作)
创建新文件系统
        # newfs -F hfs <char_device_filename> 
        # mkdir /mountpoint 
        # mount <block_device_filename> /mountpoint 
        Edit /etc/fstab file
扩充HFS文件系统
        # umount /mountpoint 
        # lvextend -L 400 <block_device_filename> 
        # extendfs <block_device_filename> 
        # mount <block_device_filename> /mountpoint 
移动文件系统
        # newfs -F hfs /dev/vg01/rlvol1 
        # mkdir /home.new 
        # mount /dev/vg01/lvol1 /home.new 
        # cd /home 
        # find . | cpio -pdumv /home.new 
        # rm -rf /home/* 
        # umount /home.new 
        # mount /dev/vg01/lvol1 /home 
        # rmdir /home.new 
文件系统日常维护
        /var/adm/wtmp
        /var/adm/btmp
        /var/adm/sulog
        /var/adm/cron/log
        /var/spool/mqueue/syslog
        /var/spool/mqueue/senmail.st
        /var/spool/uucp/.Admin/*
        /usr/spool/uucp/.Log/*
        /var/adm/lp/log
        /var/adm/messages
        /var/adm/sw/swinstalllog
        /var/adm/sw/swremovelog
        /var/adm/sw/sw*.log
删除core文件
        # find / -name core -exec rm {} 
将磁盘从一个卷组移到另一个卷组
        # pvmove /dev/dsk/c3t2d0 
        # vgreduce /dev/vg01 /dev/dsk/c3t2d0 
        # vgextend /dev/vg02 /dev/dsk/c3t2d0 
PV-Link(物理卷链路)配置
只在主链路上面执行pvcreate。
在创建卷组时将所有链路包含在vgcreate命令的参数内。
在已有的卷组中增加PV-Link:vgextend vgXX /dev/dsk/<new_link>
在已有的卷组中删除PV-Link:vgreduce vgXX /dev/dsk/<new_link>
手工启动HP-UX
进入ISL界面:
        Boot from primary boot path > n 
        Boot from alternate boot path > n 
        Enter boot path > 52.6.0 
        . . .
        Interact with ISL > y 
        ISL> hpux (;0)/stand/vmunix 
进入单用户状态
        ISL> hpux -is (;0)/stand/vmunix 
安装软件时检查swagentd是否启动
(单用户时不会自动启动)
        # /sbin/init.d/swagentd start 
软件打包到磁带(swinstall格式)
        # swcopy到/var/spool/sw(或其他目录)
        # swpackage -s /var/spool/sw -d /dev/rmt/0m \ 
           -x target_type=tape 
杀死指定名字的进程
        # ps -e | awk “/name1|name2/ {print \“ kill -9 \“ \$1} “ |sh 
检测INFORMIX SERVER状态
在SHELL中检测INFORMIX SERVER状态是否为ON-LINE
        if ( ! ( onstat -p | grep -E “On_Line“ > /dev/null 2>&1 ) ) ; then
        . . .
        fi
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP