Chinaunix首页 | 论坛 | 博客
  • 博客访问: 149500
  • 博文数量: 29
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 286
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-24 21:51
文章分类

全部博文(29)

文章存档

2015年(4)

2014年(25)

我的朋友

分类: 系统运维

2015-01-28 14:30:35

日常总结的笔记,比较杂乱,有兴趣的同学将就着看吧。

使用 cmquerycl 命令指定要包括在群集中的节点集,并生成群集配置文件的

模板。 节点名称不能超过 31 个字节。下面是此命令的一个示例:

# cmquerycl -v -C /etc/cmcluster/clust1.config -n ftsys9 -n ftsys10

 

在包含多个节点、网络或与群集相连接的磁盘的较大、较复杂的配置中,

cmquerycl 命令可能需要几分钟的时间才能完成。为加快配置过程,可以使

用 -k 和 -w 选项,使命令直接返回所选择的信息:

-k 消除一些磁盘探测,并且不返回有关潜在群集锁卷组和锁物理卷的信息。

-w local 指定进行本地网络探测,这种情况下,只验证每个节点内部接口之

间的 LAN 连接。

-w full 指定进行整个网络探测,这种情况下,将验证群集中所有节点上所

有 LAN 接口之间的实际连接。这是缺省值。

-w none 跳过网络查询。如果最近检查过网络,该选项将节省时间。

有关详细信息,请参考 cmquerycl(1m) 的联机帮助页。

 

 

 

 

 

cmquerycl -v -C /etc/cmcluster/cmclconfi.ascii -n sgsimis -n sgsimis1

 

cmcheckconf -v -C /etc/cmcluster/cmclconfi.ascii

cmapplyconf -v -C /etc/cmcluster/cmclconfi.ascii

cmruncl -v

 

118 sgsbpkg1

50 sgsbpkg2

 

 

mkdir /etc/cmcluster/sgsbpkg1

cd /etc/cmcluster/sgsbpkg1

cmmakepkg -v -p pkg.conf

cmmakepkg -v -s sgsbpkg1.cntl

 

cmcheckconf -v –P sgsbpkg1.conf

 

cmapplyconf -v –P sgsbpkg1.conf

 

mkdir /etc/cmcluster/sgsbpkg2

cd /etc/cmcluster/sgsbpkg2

cmmakepkg -v -p sgsbpkg2.conf

cmmakepkg -v -s sgsbpkg2.cntl

 

cmcheckconf -v –P sgsbpkg2.conf

cmapplyconf -v –P sgsbpkg2.conf

 

 

执行下列步骤进行非滚动软件升级:

1. 暂停群集中的所有节点:

cmhaltcl -f

2. 如有必要,请将群集中的所有节点升级到 HP-UX 新发行版。(有关详细信息,请参阅“运行

滚动升级” (第 312 页)中的第 3 步)。

3. 将群集中的所有节点升级到 Serviceguard 新发行版(有关详细信息,请参阅“运行滚动升级”

(第 312 页)中的第 3 步)。

4. 重新启动群集:

cmruncl

 

 

要暂停其上正在运行程序包的节点,请使用 -f 选项。如果正在运行的程序包可以切换到代管节

点上,那么程序包将进行切换并在代管节点上启动。例如,以下命令将导致示例配置中在 ftsys9

节点上运行的Serviceguard 守护程序暂停,并将在 ftsys9 节点上运行的程序包移动到代管节

点。-v(详细)选项可输出下列消息:

cmhaltnode -f -v ftsys9

通过执行每个程序包控制脚本中的暂停指令,可以暂停运行在节点 ftsys9 上的任何程序包。节

 ftsys9 将暂停,而程序包将在代管节点上启动。

cmrunnode -n ftsys9

 

 

测试群集:

建立客户端连接。

提供一个正常的系统负载。

在第一个节点上暂停程序包,将其转移到第二个节点上:

cmhaltpkg pkg1

cmrunpkg -n node2 pkg1

cmmodpkg -e pkg1

将程序包移回。

cmhaltpkg pkg1

cmrunpkg -n node1 pkg1

cmmodpkg -e pkg1

使其中一个系统失败。例如,关闭节点 1 的电源。确保程序包在节点 2 上启动。

重复上述步骤,由节点 2 故障切换回节点 1




验证群集配置

在 ServiceguardManager 中,可以单击“检查”按钮来验证配置。

如果您通过命令行编辑了一个 ASCII群集配置文件,请使用下列命令验证该

文件的内容:

# cmcheckconf -k -v-C /etc/cmcluster/clust1.config

这两种方法都会检查下列内容:

网络地址和连接。

群集锁连接(如果正在配置锁磁盘)。

群集和程序包配置参数的有效性。

名称的唯一性。

命令行中指定的脚本是否存在及其权限。

指定的所有节点是否都在同一个心跳线子网中。

是否指定了错误的配置文件名。

是否可以访问所有节点。

是否指定了唯一的 CLUSTER_NAMEHEARTBEAT_INTERVAL 

AUTO_START_TIMEOUT。

程序包运行和暂停脚本超时值是否小于 4294 秒。

? NODE_TIMEOUT 值至少是 HEARTBEAT_INTERVAL 值的两倍。

AUTO_START_TIMEOUT变量的值是否 >=0。

心跳线网络的最低要求。群集必须配置下列之一:一个心跳线 LAN 和一

个备用心跳线 LAN ;两个心跳线LAN ;一个心跳线 LAN 和一个 RS232

连接;或一个无本地 LAN切换的心跳线网络,并配有一个主 LAN(配置

为至少两个接口的链路聚合)。

至少指定了一个 NODE_NAME

每个节点均连接到每个心跳线网络。

所有心跳线网络都是相同类型的 LAN

指定的网络接口设备文件是有效的 LAN 设备文件。

如果配置了串行 (RS-232) 心跳线,群集中的节点将不会多于两个,每个节

点的串行 (RS232)端口连接将不会多于一个。

?VOLUME_GROUP 项当前未标记为“群集可识别的”。

如果使用的是 CVM 3.5 磁盘存储,则只有一个已配置的心跳线子网。

如果群集处于联机状态,则此检查过程还会验证是否满足配置中的特定更改

所需的所有条件。

注释使用 -k 选项意味着 cmcheckconf 只检查在ASCII 文件中标识的至 LVM 磁

盘的磁盘连接。忽略 -k选项(缺省行为)意味着 cmcheckconf 测试所有节

点上所有 LVM 磁盘的连接。使用 -k选项可以明显加快命令的执行速度。


各类参数

FAILOVER_POLICY。如果希望 Serviceguard 尝试按节点所列顺序启动(或


重新启动)程序包,请输入 CONFIGURED_NODE。如果希望 Serviceguard 在


当前所运行程序包数量最少的节点上重新启动失败的程序包,请输入


MIN_PACKAGE_NODE(仅限故障切换类型的程序包)。


 


? FAILBACK_POLICY。如果程序包的主节点发生故障,您希望 Serviceguard


能在主节点恢复运行时将程序包故障切换回主节点,请输入 AUTOMATIC。


如果不希望 Serviceguard 将程序包移回主节点,请输入 MANUAL(仅限故


障切换程序包)。


 


? NODE_NAME。输入群集中各个节点的名称,每个名称占一行。对于所有


群集节点,请使用“*”通配符(对于系统多节点程序包,必须指定


NODE_NAME *)。


 


? AUTO_RUN。对于故障切换程序包,输入 YES 以允许Serviceguard 在第一


个可用节点上启动程序包,并允许在其失败后稍后再自动重新启动它。输


入 NO 以禁止 Serviceguard 自动启动程序包(对于系统多节点程序包,必


须输入 YES)。


 


? LOCAL_LAN_FAILOVER_ALLOWED。输入 YES 以允许将程序包 IP 地址切换


到备用 LAN,输入 NO 以禁止程序包地址进行本地切换(对于多节点程序


包及系统多节点程序包,必须输入 NO)。


 


? NODE_FAIL_FAST_ENABLED。如果输入 YES,则当程序包在节点上发生失


败时,该节点将被暂时,并发生控制转移。这可防止 Serviceguard 重复尝


试在该节点上启动程序包,从而防止重复失败。对于系统多节点程序包,


必须将它设置为 YES。


 


RUN_SCRIPT 和 HALT_SCRIPT。指定程序包控制脚本的路径名(在下一


节介绍)。不提供缺省值。


 


TIMEOUT:对于运行和暂停脚本,输入在 Serviceguard 确认失败之前它应


该尝试完成脚本所用的秒数。如果为暂停脚本设置了超时值,则此值必须


大于所有暂停脚本超时值的总和。


 


SCRIPT_LOG_FILE(可选)可以为运行和暂停脚本指定放置日志消息的


位置。如果未指定路径, Serviceguard 将创建一个文件,并将“.log”附


加到每个脚本路径后面,然后在该文件中放置消息。


 


? STORAGE_GROUP。指定程序包将使用的 CVM 存储组的名称。每个存储组


(CVM 磁盘组)占一行。请注意勿将 CVM 存储组输入到群集 ASCII 配置


文件中。




锁盘

设置锁盘


可使用 cmquerycl -L 来创建定义锁 LUN 的群集配置文件。


? 如果所有节点上的锁 LUN 的路径名都是相同的,可使用如下命令:


cmquerycl -C $SGCONF/config.ascii -L /dev/dsk/c0t1d1 -n <节点1> -n


<节点2>


? 如果某些节点上的锁 LUN 的路径名不相同,则必须在每个节点上指定路径;例如(在一行


上指定所有路径):


cmquerycl -C $SGCONF/config.ascii -n <节点1> -L /dev/dsk/c0t1d1 -n


<节点2> -L /dev/dsk/c0t1d2


 


 



  • 如果锁盘上没有锁盘的标志,可用以下命令将锁盘标志重新写到锁盘上(建议和客户另外约时间)。



  # cd /etc/cmcluster


 # cmcheckconf -C CONF -P pkg1/conf ...


确认原集群的配置文件还是可用的


       # 备份原配置文件


       # cmhaltcl -f


       # cmdeleteconf -f


       # vgchange -a y vglock   (cluster lock VG)


       # cmapplyconf -C CONF -P pkg1/conf ...


       # vgcfgbackup vglock


       # vgchange -a n vglock


       # cmruncl


 


 


 


 


1. If the cluster lock disk path is still correct, and if a vgcfgbackup


was performed on the lock VG after the cluster was created (using


cmapplyconf), a vgcfgrestore command of this form will restore


the cluster lock structure:


 # vgcfgrestore -n vglock /dev/rdsk/cxtxdx 


 


2. 使用cminitlock工具(不影响cluster的up状态)


Command usage: cminitlock [-v] [-t] vg_name pv_name 


       -t Test the cluster lock only.


       -v Verbose output.


3. 重新派发。


对于老版本,The cluster must be halted for cmapplyconf to install the cluster lock


structure.


 


4. 新版本的MC/SG,可以使用cmdisklock。


   If you restore or recreate the volume group for the lock disk and you need


to re-create the cluster lock (for example if no vgcfgbackup is available),


you can run cmdisklock to re-create the lock.


 


cmdisklock reset /dev/rdsk/cxtxdx


cmdisklock checks that the specified device is not in use by LVM, VxVM,


ASM, or the file system, and will fail if the device has a label marking it


as in use by any of those subsystems.


cmdisklock -f overrides this check.


CAUTION You are responsible for determining that the device is not being used by


any subsystem on any node connected to the device before using


cmdisklock -f. If you use cmdisklock -f without taking this


precaution, you could lose data.


 


附录:


Determine if a disk has a cluster lock structure loaded.


Perform the command on a cluster lock disk. An example of this command follows:


 # echo '0x2084?4D' | adb /dev/dsk/c0t2d0


 2084:           1               4194145         1010590466      256


                 ^                  ^^^             ^^^          ^^^


            (lock flag)      (lock location)    (clusterID)  (activation/


          1=initialized,                                      configured mode)


          0=uninitialized  


 


The 1 in the second column indicates that this disk is a cluster lock disk.


阅读(2710) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~