1. PowerHA  简述

1.1  架构图

PowerHA for AIX® 是 HACMP (High Availability Cluster Multiprocessing) 的新名称。HACMP 是 IBM 的一款集群软件,可以让系统能够应付故障,减少应用程序的停机时间。PowerHA 基于 RSCT 构建,其基本构成示意图如下:

上图说明 PowerHA 由许多软件组件组成:

1. 集群管理器 clstrmgr 是核心进程,它监视集群成员关系。集群管理器包含管理拓扑组件的拓扑管理器、管理资源组的资源管理器、通过 RMC 设施起作用的事件管理器和事件脚本以及对故障做出反应的 RSCT。

2. clinfo 进程提供用于在集群管理器和应用程序之间进行通信的 API。clinfo 还提供远程监视功能,可以在集群状态发生变化时运行脚本。

3. 在 PowerHA 5 中,clcomdES 使集群管理器能够以安全的方式进行通信,不需要使用 rsh 和 /.rhost 文件

从 PowerHA 7.1 开始,引入了 CAA 架构,下图为带 CAA 的新架构图和原有架构之间的差别。这些差别只是底层支持框架略有区别,上层基本变化不大。

可以看出,新的架构取消了原来的 Topology Services,由 CAA 管理。

1.2 PowerHA  相关术语

PowerHA 使用许多术语。它们可以分为拓扑组件和资源组件两类。

拓扑组件基本上是物理组件。它们包括:

节点:System p 服务器可以是单独的分区或 VIOS 客户机

网络:IP 网络和非 IP 网络

通信接口:令牌环网或以太网适配器

通信设备:RS232 或磁盘的心跳机制

资源组件是需要保持高可用性的逻辑实体。它们包括:

应用服务器:它涉及应用程序的启动/停止脚本。

服务 IP 地址:最终用户一般通过 IP 地址连接应用程序。这个 IP 地址映射到实际运行应用程序的节点。 因为 IP 地址需要保持高可用性, 所以它属于资源组。

文件系统:许多应用程序需要挂载文件系统。

卷组:许多应用程序需要高可用的卷组。

所有资源一起组成资源组实体。PowerHA 把资源组当作单一单元处理。它会保持资源组高可用性。资源组有与其相关联的策略。这些策略包括:

启动策略:这决定资源组应该激活哪个节点。

故障转移策略:当发生故障时,这决定故障转移目标节点。

故障恢复策略:这决定资源组是否执行故障恢复。

当发生故障时,PowerHA 寻找这些策略并执行相应的操作。


2. PowerHA  常见故障排查

日常工作中接到用户的第一反馈就是集群无法切换、 业务停止、 宕机、 等问题。迅速的发现问题并解决需要一个清晰的排查思路。 不能被故障的表面现象迷惑也不能被其他人的判断打乱了你的排查思路。建议多查多看多问,可能疏忽了一个最基本的问题恰恰是导致无法切换的根本原因。在 PowerHA SystemMirrorV7 提了诊断工具能够帮助我们准确定位故障, Problem Determination Tools 包括集群的配置验证、集群节点状态显示、日志管理、集群监控 、备份恢复等。利用诊断工具并参照如下五个方向逐一排查。

1. Application

2. PowerHA SystemMirror

3. Logical Volume Manager

4. TCP/IP

5. AIX操作系统

2.1  排查的第一步先从应用层开始

一般一个配置好的集群做过验收测试, 并且后期没有做配置变更无法切换的原因大部分是应用的原因导致。首先查看应用的启动关闭监控等相关日志,通过应用的日志向下延伸。 例如 oracle,在启动过程中就在日志中体现出来无权限读取某一个文件,oracle 的启动失败,必然在用户看来就是无法切换。在集群中应用的启动 HA 只是去调用应用的启动及关闭的脚本, 首先确认应用的启动关闭脚本是否存在问题,可以在节点上分别验证应用的启停脚本是否有问题。应用层确定无问题后仍然无法切换,可以尝试在资源组中把应用启停脚本删除,然后进行切换测试, 确认在无应用的情况下, 资源组是否能正常切换, 如果不能再逐一排查。

2.2  排查第二步  集群自身问题

集群是检查分两个方向,分别是组件和配置

1、检查集群的进程状态

Cluster Manager (clstrmgrES) daemon

Cluster Communications (clcomdES) daemon

Cluster Information Program (clinfoES) daemon

通过命令查看这三个进程是否是活动状态

# l***c –g cluster

# ps –ef |grep clstrmagrEs

也可通过集群提供的工具来查看集群的状态 SMIT System Management (C-SPOC)Cluster ServicesShow ClusterServices

某个进程异常终止或者不存在集群必然无法切换, 如果有异常可尝试关闭启动集群。

2、检查集群配置

集群中的节点配置必须一致, 先和用户进一步沟通 近期做什么配置做什么操这样能够帮忙我们快速找到问题的切入点, 同时建议用户做好相关的备份工作。

检查每个节点上的资源组配置情况网络、卷组、心跳、节点名称、脚本信息、资源组的切换策略等。常见问题比如主机名称别改动脚本文件权限发生变化,切换策略配置发生变化。

通过命令行查看集群的配置情况/usr/es/sbin/cluster/utilities/cltopinfo

也可通过集群提供的工具来查看SMIT panel, select Problem Determination Tools > PowerHASystemMirror Verification > Verify PowerHA SystemMirror Configuration Extended Configuration > Extended Resource Configuration > PowerHA SystemMirror Extended Resource Group Configuration > Show All Resources by Node or Resource Group.

2.3  排查第三步 logical volume manager

检查资源组中需要切换的volume groups, 通过命令查看状态

# lsvg volume groups

# lsvg –l volume groups

# lspv hdiskX

# lsdev –l hdiskX

# lspv -l hdiskX

通过集群提供的工具看System Management(C-SPOC) > PowerHA SystemMirror Logical Volume Management > Shared Volume Groups

检查volume groups在集群每个节点上能否正常激活,常见的问题卷组的物理盘状非激活状态,PVID在节点上是否相同,用户在某一个节点上改变了卷组的配置信息例如在卷组中增加了新的硬盘来扩展空间,新建LV等,导致集群中的信息不同步.我们可以使用v7.1提供工具PowerHA SystemMirror Verification进行验证同步工作协助排查。

检查文件系统

能否手工激活及空间是否已满, 文件系统的激活方式是由系统激活还是由集群来激活,文件系统如果无法挂载可进一步排查fack、Logform等,常见问题超级块丢索引表失效等

# mount

# df

# lsfs

# more /etc/filesystem

通过工具查看System Management (C-SPOC) > PowerHA SystemMirror Logical Volume Management> Shared Filesystems .

2.4  排查第四步  网络

首先检查集群中的节点/ect/hosts 文件中 boot serviceIP 配置是否正确, 常见问题:更改了主机名,配置文件中有多余的字符或者格式不对,路由丢失。确保各节点之间可以互相通信并且在一个 VLAN 中,检查网络服务是否正常。

# more /etc/hosts

# netstat –in

# ifconfig -a

# ping

# l***c –g tcpip

2.5  排查第五步  系统层 AIX

系统层的问题导致集群无法切换比较常见, 首先检查系统日志中是否有严重的软硬件错误,系统及集群软件的 BUG 也会到导致异常终止具体查看官方兼容性列表。系统层重点检查网卡、光纤卡、磁盘状态。

配合系统日志及用户的描述重点查看集群日志 Hacmp.out 记录集群的启动关资源的切换获取及释放过程及最终结果一个失败事件中资源组的状态。

2.6  集群的备份恢复

在 powerHA 软件中提供了备份恢复功能,如果确认是集群配置上的问题导致无法切换并且确认集群配置无变化可采用此功能快速恢复业务。

Start smit sysmirror and select Cluster Nodes and Networks 》Manage the Cluster –》Snapshot Configuration –》 Create a Snapshot of the Cluster Configuration


©著作权归作者所有:来自51CTO博客作者mob604756f19185的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. kubernetes-ingress 安装
  2. dom的增删改查
  3. 新东方的Kubernetes实践:从服务化ES到Kafka和Redis
  4. “驯服云野兽”:自节点而上,Kubernetes安全总攻略
  5. Rancher 2.2.5发布,CVE修复,支持K8S 1.15
  6. SkipList和java中ConcurrentSkipListMap的实现
  7. dom元素的增删改查
  8. ORA-15038: disk '/dev/mapper/mpath' mismatch on 'Time Stamp'
  9. 【故障处理】队列等待之enq IV - contention案例

随机推荐

  1. Android 写xml
  2. Android draw onAttachToWindow
  3. Android Icon drawable-hdpi drawable-xh
  4. android ImageSwitch
  5. 解决Error:Android(安卓)Dex: com.androi
  6. Android 圆角的Button
  7. android 使用异步加载图片
  8. Android九宫格抽奖
  9. android p vts VtsTrebleVendorVintfTest
  10. Android Tips