• 1. Hacmp 培训安装和使用
    • 2. 学习目标了解高可用性概念 学会设计一个高可用性集群 掌握安装和配置AIX操作系统下的Hacmp 能够执行基本的系统管理任务 能够维护一个高可用性集群 能够做出基本问题的判断
    • 3. 第一章 高可用性介绍了解基本概念
    • 4. 什么是高可用性?最大的系统的可用性(正常工作时间) 减少或者消除系统停机时间 减少系统的计划和非计划停机时间 消除系统的单点失败 高可用性是结合体 软件、硬件、设计、应用、管理。
    • 5. 可用性 总共年停机时间 99.999 5分钟 99.99 50分钟 99.90 8.8小时 99.86 12小时 99.73 24小时 99.00 3.6天 98 7.2天 97 10.8天 96 14.4天 95 18天高可用性百分比高可用性花费增长正常标准
    • 6. 可用性比较标准升级高可用性容错恢复时间 24小时4小时1-3分钟5-10秒数据可靠性 备份保留最后成功结果保留最后成功结果无数据丢失花费比率 N/A1.524+CPU1CPU2CPU3
    • 7. 为什么要选择高可用性越来越多的应用需要7×24 许多应用是关键的核心 客户忠诚度是最难获得,并且容易失去 高可用性可以减少计划的和非计划的系统停机时间
    • 8. 单点失败(single points of failure)memorycpuNICScsi controller电源操作系统应用软件硬盘LAN
    • 9. 计划和非计划停机90%的系统停机是计划的。 备份、维护、升级、测试、业务扩展 10%的系统停机是非计划的。 用户错误占90% 应用错误 部件失败 操作系统失败 环境因素
    • 10. 高可用性结构RS/6000 集群 2-8台服务器一起工作 共享存储和网络 共享数据访问 灵活配置设备级别的容错 多个硬盘控制器 多个网卡适配器 多网络
    • 11. 成功的高可用性系统需求正确的计划和设计 选择合适的硬件设备 镜像核心的数据 好的自动机制脚本 修订合适的管理策略 建立文档操作记录 教育和培训
    • 12. 是与非高可用系统提供所有硬件设备的容错 系统大部分的停机时间跟硬件失败相关 高可用系统无任何停机时间 高可用系统不需要很特殊的硬件设备 高可用系统只保护系统的非计划停机 HACMP是一个安装即可使用的高可用性解决方案 ×××√××
    • 13. 第二章 Hacmp介绍High Availablity Cluster Muti-Processing
    • 14. Hacmp概念 Cluster 连接到一个公共ip网络的2-8台运行Hacmp的RS/6000主机的集合 Node 在cluster中的每一个RS/6000主机 Topology node、network、network adapter在ODM数据库中的逻辑表达 Resource 受Hacmp保护的逻辑实体,包括ip地址,文件系统,卷组,应用等 Resource group 用于系统保护的一组资源的集合 Application server 受Hacmp控制的一组应用的启动和停止脚本 Reintegration 一个发生失败的节点,网络,网卡,重新加入cluster Global ODM 通过网络,同步到cluster中的所有node的配置信息 Synchronization 从cluster中单点升级global odm到所有节点的进程 Event cluster中导致一个或者多个node的脚本执行的某个状态的改变
    • 15. Hacmp的软件构成Clstrmgr 检测节点、网络、网卡状态并且在cluster状态发生变化时初始化事件 Clsmuxpd cluster的网络状态管理工具 Clinfo cluster状态信息接口 Cllockd cluster并发访问应用接口 Event scripts cluster状态发生改变时执行的重新配置资源的命令。 可以手工为每个事件执行进程重新定义前事件和后事件。
    • 16. C-SPOC cluster single point of control 单点控制工具 DARE dynamic reconfiguration 动态配置(拓扑、资源) TaskGuides 辅助建立共享卷组的图形工具 HaView netview的远程cluster 监控 Clverify The cluster verification utility 软件和配置检测 Clstat The cluster status utility 图形化显示cluster工具Hacmp的软件工具
    • 17. Cluster 定制为了完成可用的目的,所有的cluster都需要做一定程度的定制。 通常需要定制的任务 1、实现高可用性打印队列 2、装上或者卸下嵌套的文件系统 3、复杂的NFS接管 4、刷新客户端和服务器的路由表 5、是否检测应用服务的进程 可能有必要定制AIX系统的参数 1、增加syncd进程的频率 2、调整I/O pacing 3、调整TCP/IP内核参数
    • 18. Hacmp处理的错误Hacmp仅处理三种类型的错误 1、节点失败 2、网络失败 3、网卡失败 其他的错误由AIX处理 1、硬盘失败 2、硬盘控制器失败 3、硬盘总线失败 4、TCP/IP失败 5、Hacmp失败
    • 19. 节点失败接管节点失败时,资源组的接管有三种方式 Cascading方式 资源的移动按照优先级顺序从高到低顺序移动。重集成后资源会返回优先级高的节点。资源默认在优先级最高的节点执行。 Rotating方式 资源的移动按照节点序列的顺序循环进行。如果没有节点失败或者是管理员资源迁移情况下,资源会保持在一个节点 Concurrent方式 所有的节点并发访问数据,应用在所有节点上执行,节点失败不发生资源移动,但性能相对会下降。要求有lock manager
    • 20. Cascading 资源组(before failover)ResourcesssaserialnetethernetNode AShared VGNode B
    • 21. Cascading 资源组(after failover)ssaserialnetethernetNode AShared VGNode BResourcesResources
    • 22. ssaserialnetethernetNode AShared VGNode BResourcesResourcesCascading 资源组(reintegration)
    • 23. Rotating 资源组(before failover)ResourcesssaserialnetethernetNode AShared VGNode B
    • 24. Rotating 资源组(after failover)ssaserialnetethernetNode AShared VGNode BResourcesResources
    • 25. Rotating 资源组(reintegration)ssaserialnetethernetNode AShared VGNode BResources
    • 26. Concurrent 资源组(before failover)ResourcesssaserialnetethernetNode AShared VGNode BResources
    • 27. Concurrent 资源组(after failover)ResourcesssaserialnetethernetNode AShared VGNode BResources
    • 28. Concurrent 资源组(reintegration)ssaserialnetethernetNode AShared VGNode BResourcesResources
    • 29. 资源组概念理解一个cluster可以有20个以上的资源组。 每一个节点可以拥有一个或者多个资源组 你可以同时拥有三种不同种类的资源组 每一个资源组可以被一个或者多个节点共享 一个cluster的资源只能属于一个资源组 配置多个资源组时应注意负载均衡问题
    • 30. 不适合使用Hacmp方案的情况你的系统不能忍受任何时间的停顿 7×24小时不停 性命危机相关的系统 适合容错需求的 你没有一个安全的环境 许多用户都要求以ROOT权利登录 网络安全毫无保障 你的环境会经常发生变化 没有好的管理变更制 缺少一个熟练的系统管理员 你的系统环境极其混乱
    • 31. IBM其它的高可用性产品HACWS high availability for sp control workstation HACMP-ES 对于SP架构可支持32node的cluster HANFS high availability for network filesystem 不能与HACMP兼容使用 HAGEO geographically dispersed clusters 异地镜像的容灾
    • 32. 是与非Hacmp可以处理应用系统失败问题 Hacmp可以处理网卡失败问题 所有的Hacmp集群都需要共享磁盘 如果你的系统要求不能有任何的停顿,你应该选择HACMP 在一个Hacmp集群中可以同时有三种类型的资源组√×××√
    • 33. 第三章 Hacmp需要考虑的问题存储和网络
    • 34. SCSI 相关配置主机SCSI卡在系统中是总线的发起端 磁盘设备控制器是SCSI总线的目标端 在AIX中,主机SCSI卡也可作为目标端(Target Mode SCSI) 发起端 (主机)目标端、主机端 (主机)目标端、主机端 (主机)目标端Target mode scsi
    • 35. SCSI需要Hacmp考虑的问题不要热插拔 SCSI总线不要超长(scsi-de-fw 25米) 主机SCSI卡ID尽量不要使用“7” 保持总线两端要使用终结器 尽量使用Y线缆而不要使用卡上的终结器
    • 36. SSA需要Hacmp考虑的问题确信你的SSA卡是否支持Hacmp 确信你的SSA卡微码版本在5101以上lscfg –v(http://www.hursley.ibm.com/~ssa/) Hacmp支持8node的非raid或者2node raid ssa 确信你同一环路上的ssa卡微码版本一致 同一环路上最多有8块SSA卡 单环最多支持48块硬盘
    • 37. 逻辑卷管理和HacmpQuorum问题(表决器) 尽量不要建少于3块硬盘的外部卷组,尽量采用多总线分开、冗余电源raid阵列等技术 VG Major Number问题 NFS export要求cluster中所有node的major number 相同(lslstmajor importvg –v44 –y) VG定义问题 auto-varyon-----------no quorom -----------no ownership and permissions ---------- 修改
    • 38. Serial网络和HacmpSerial networks 1、在节点间通讯的非TCP/IP网络 2、采用Hacmp自有的协议通讯,当 tcp/ip失败时不会导致Hacmp失败 3、当TCP/IP或主网失败时,可继续在cluster间通讯,能够正确判定发生问题的原因是节点失败还是网络失败 4、帮助防止节点孤立 5、强烈推荐每个cluster都配置
    • 39. 三种类型Serial networks1、RS-232 点对点rs232方式连接两个节点 2、Target Mode SCSI 可支持同一个SCSI总线的4个node 仅支持MCA总线的差分式SCSI卡 3、 Target Mode SSA 最多支持在同一个SSA环的8个node 支持RAID/EL版本的SSA卡
    • 40. RS-232串行网络配置rs-232网络 add a tty #chdev –l tty? –a ttyprog_action=off 测试rs-232网络 A:stty
    • 41. Target Mode SCSI需要附加软件包“devices.scsi.tm” Target mode scsi 虚拟设备 ascsi1 avilable 00-02 tmscsi0 avilable 00-02-01-3,0 scsi I/O controller initiator device tmscsi1 avilable 00-02-01-4,0 scsi I/O controller initiator device 测试Target mode scsi networks A:cat /dev/tmscsi0.im
    • 42. Target Mode SSA需要附加的软件包 devices.ssa.tm.rte cluster.base.server.rte 配置SSA节点号 chdev –1 ssar –a node_number=1 测试target mode ssa networks A:cat/dev/tmssa1.im
    • 43. 是与非SCSI设备的线缆和SSA线缆都支持热插拔 SSA单环最大支持48块硬盘 Hacmp只支持raid 5,不支持raid 0,1,3 Serial network 支持hacmp环境下的tcp/ip传输 一个rs232 的serial network 可以连接2个以上的集群节点到同一个网络 所有的SSA卡都支持Target mode ssa ××√×××
    • 44. 第四章 TCP/IP网络Hacmp和tcp/ip网络
    • 45. Hacmp 网络组成Hacmp对他控制的网络功能使用专用名词 Public网络:支持hacmp和client网络信息传输的tcp/ip网络 Private网络:只传输hacmp信息的专用tcp/ip网络 Serial网络:用于传输hacmp信息drs232/tmscsi/tmssa网络 Adapter:在Hacmp的odm定义中的tcp/ip和serial网络接口 Adapter ip label:在/etc/hosts中映射ip地址的名字解析 Node name:cluster node名字,不要跟hostname混淆 Network type:定义hacmp网络物理介质类型(FDDI,ether) Adapter功能:service,standby,boot Adapter硬件地址:局域网卡的本地管理地址
    • 46. 网卡信息所有的Hacmp网卡都要加入到/etc/hosts中,包括使用DNS,NIS时 主service ip address标识为主机的hostname 在ip address label中不要使用减号 “-”,但可以用“_”/etc/hosts例子 10.10.10.1 server_a_svc 10.10.20.1 server_a_stby 10.10.10.11 server_a_boot 10.10.10.2 server_b_svc 10.10.20.2 server_b_stby 10.10.10.21 server_b_boot
    • 47. Adapter swapping当网卡失败时,hacmp通过网卡交换方式实现对service adapter的恢复 Service address移到standby 网卡,standby address移到失败的网卡 交换时间:以太网10秒,令牌环网30秒 网卡交换功能由hacmp控制,无需另外配置 1.1.1.11.1.2.1en0en11.1.1.11.1.2.1en0en11.1.2.11.1.1.1en0en1
    • 48. 网络失败对于网络失败,hacmp会发现一个network_down事件,并且执行一个脚本 网络失败会记录到hacmp日志文件,通常不做更多的处理 可以通过hacmp客户化工具制定一个客户化的网络失败动作 网络失败信息会被所有的cluster中node收到
    • 49. Ip地址接管(ipat)节点失败的service ip会被活着的节点接管 Ipat需要配置一个可选择的处理行为 IPAT需要配置一个boot adapter用于节点启动
    • 50. IpatServera_clientServerb_clientServera_stbyServerb_stbyServera svcServerb svcServeraServerbServera_clientServerb_clientServera svcServerb svcServeraServerb正常状态节点a失败
    • 51. Ip address重集成Serverb_clientServera_clientServerb_clientServera_stbyServerb_stbyServera svcServerb svcServeraServerb节点a 启动hacmp 加入 clusterServera_clientServera svcServerb svcServeraServerbServera_stbyServera boot节点a启动aix
    • 52. Ipat方法IPAT可以配置ip label为cascading 或者rotating资源组的一个资源来实现 对于rotating资源组配置IPAT是必选的 IPAT的配置修改了hacmp和aix的启动过程 IPAT修改了tcp/ip的启动过程 修改了/etc/inittab和/etc/rc.net文件 IPAT配置过程中的一个步骤是把ODM数据库中的server adapter 的ip address 改为boot address Hacmp启动,会把service adapter的ip address从boot address交换到service address
    • 53. 集群监控Cluster中每个节点的clstrmgr一定间隔发送keep-alive包到所有cluster节点 节点事件和网络事件通过节点间ka包的中断来测定 Ka包正常在service-to-service,standby-to-standby的同种网络间双向传输 任何的ka包传输中断都会激活问题诊断进程,判定ka包发送到各个端口的情况 Hacmp会通过各种不同的接口通信测定心跳丢失问题,认定错误后会执行适当的恢复脚本
    • 54. rs232Target mode scsi desvcstdbysvcstdbyK AK AK AK AKAKAKAKA
    • 55. 节点孤立因为某种错误,心跳信息都停止,导致一个cluster节点错误的认为其他节点发生了节点失败 多个节点都试图进行资源切换 导致cluster和它的资源变得不可靠 使用serial network是必要的方法 局域网失败仍能保持ka包信息 tcp/ip失败不影响hacmp的ka包信息 节点孤立造成的问题是不可预知的 永远不要让你的cluster有节点孤立的风险
    • 56. Ipat的ARP问题在网卡切换或者IPAT时,客户系统的ARP静态路由将发生错误,导致客户端无法访问cluster 升级ARP路由表信息的方法 1、在客户端运行clinfo daemon 2、在服务器端运行clinfo daemon 3、硬件地址交换
    • 57. 硬件地址交换Servera_clientServerb_clientServera 1.1.1.1 08005A471111Serverb 1.1.1.2 08005A471112ServeraServerbServera_clientServerb_clientServeraServerb正常状态节点a失败Servera 1.1.1.1 08005A471111Serverb 1.1.1.2 08005A471112
    • 58. Standby adapter为什么需要standbu adapter adapter swapping 需要 ipat需要 诊断网络传输错误需要 Standby adapter 配置要求 必须和service adapter在同一个物理网 必须和service adapter属于同类型网络 必须和service adapter的ip地址在不同的子网
    • 59. 第五章 cluster组成Hacmp结构
    • 60. Hacmp结构Clstrmgr cluster manager daemon cluster管理核心 Clsmuxpd cluster snmp user extension daemon 网络信息交互 Cllockd cluster lock manager daemon 并发访问的锁管理 Clinfo cluster information daemon C-spoc cluster single point of control Haview extension to tme 10 netwiew for aix
    • 61. cluster必须安装的结构Clstrmgr 所有的cluster node都必须运行 监控cluster工作状态 有错误发生时调入时间脚本 从hacmp odm中读出cluster拓扑 Clsmuxpd 负责维持hacmp的信息传输通路 发送cluster事件反应的网络信息包 负责clstrmgr和cllockd通讯 对Haview/netview管理需求提供支持 C-spoc cluster通用管理任务的核心管理工具 支持8节点以上的管理
    • 62. cluster可选的结构Clinfo 客户端和服务器端的可选安装 为cluster扩展应用提供接口 对cluster事件作出反应,执行一条命令或者脚本 Cllockd 配合分布式锁管理访问共享资源 典型的用于concurrent 资源组配置 Haview 需要安装netview环境 集成到cluster管理到netview
    • 63. ClstrmgrclstrmgrCluster controllerevent managerNetwork interface layerNetwork Interface moduleNetwork Interface moduleNetwork Interface moduleNetwork Interface module内部结构 Cc(cluster controller) Em(event manager) Nil(network interface layer) 外部结构 Nim(network interface modules)
    • 64. Cluster controllerCc负责cluster的调整功能 在cluster启动或者动态调整后,从hacmp odm更新cluster配置信息 为发送ka建立cluster邻居序列 经由nil从nim获取cluster状态变动信息 根据cluster的状态改变激活事件队列 处理节点孤立和分区隔离事件
    • 65. Nil和nimNil提供了nim和cc之间的通讯接口 使用nil能很容易的增加新的网卡支持hacmp 为各种网络类型设定合适的丢失ka包计数 访问定义到hacmp的合适的nim网络类型 通过向nim发送一列ip address或者/dev文件保持ka包 如果nim挂起或者不正常,负责重启动nim
    • 66. Cluster 邻居abcdefabcdefVer3.1 以前Ver3.1以后1.3%A B C D E Fabfdce邻居的序列可能不是非常明显的 在丢失ka信息时,cluster会向所有节点发送message信息
    • 67. 失败探测比率slownormalfastka心跳间隔丢失数量心跳间隔丢失数量心跳间隔丢失数量Atm1.5241.2524124Ethernet1120.5120.59Fddi1120.5120.59Socc1120.5120.59Serial362616Tokenring1240.5240.512ethernet1×12=12秒0.5×12=6秒0.5×9=4.5秒#Smit cm_config_networks.chg.select
    • 68. 失败探测动作网卡失败 (Ka_rate*missed_ka)/2启动诊断进程,心跳保持继续发送到接口 Hacmp在同一个node产生一个路由去ping 网卡 本地节点执行swap_adapter切换网卡地址 所有的节点运行swap_adapter_conplete事件刷新arp路由表 网络失败 Service 和standby adapter都收不到ka时,确定网络失败 其他网络继续接收ka包,clstrmgr判定是网络全部失败或者局部 发送到其他节点的message一定要被确认,否则视为节点失败 Network_down事件运行,并且执行需要客户化的动作 节点失败 在速度最快的网络发生networks_down事件开始探测node_down Message信息会发送到所有节点,没有确认message的node为失败 网络失败被升级为节点失败,所有生存的node运行node_down事件获取失败节点的资源
    • 69. Hacmp事件主事件由event manager直接调用(19个主事件) Node_up node_up_complete node_down node_down_complete Network_up network_up_complete network_down network_down_complete Swap_adapter swap_adapter_complete fail_standby join_standby Event_error config_too_long reconfig_topolpgy_start reconfig_topolpgy_complete reconfig_resource_release reconfig_resource_acquire reconfig_resource_complete 从事件由主事件调用(20个从事件) Node_up_local node_up_remote node_down_local node_down_remote Node_up_local_complete node_up_remote_complete Node_down_local_conplete node_down_remote_complete Acquire_aconn_service acquire_service_addr acquire_takeover_addr Start_server stop_server get_disk_vg_fs get_aconn_rs Release_service_addr release_takeover_addr release_vg_fs Release_aconn_rs swap_aconn_protocols
    • 70. 节点加入serialnetethernetActive nodeJoining node“I wish to join cluster”“acknowledge”Node_up_remote (release resources)“Ok to join”“acknowledge”Node_up_local (acquire resources)“Join successful”“acknowledge”(node_up_remote_complete)(node_up_local_complete)
    • 71. 节点孤立和分区隔离节点孤立-两个节点间的所有网络全部失败 每个节点都假定对方节点失败并且试图取得资源 通讯如果重新建立,字母顺序高的节点将停止 分区隔离-两个或者更多的节点通讯丢失 两个分区中比较大的分区将保持存活,小分区停止 如果分区数目相同,ID顺序最小的存活,其他停止 导致节点孤立和分区隔离的主要原因通常是设计缺陷 正确设计一个或者多个serial网络保证此问题不发生
    • 72. 第六章 cluster配置Hacmp配置
    • 73. 配置cluster步骤Step描述要点step1设计cluster结构使用设计步骤和文档step2配置网络和逻辑卷/etc/hosts,/.rhosts,jfs设计step3安装hacmp软件包选择合适的包step4定义cluster拓扑Node,network,网卡step5同步cluster拓扑确认运行成功step6配置应用脚本应用服务启停测试step7定义cluster资源Fs,ip,export nfs ,mount nfsstep8同步cluster资源确认运行成功step9最后测试cluster包括应用测试
    • 74. Hacmp软件选择Hacmp软件 high availability subsystem(HAS) 0882 Concurrent resource manager(CRM) 0883 enhanced scalability upgrade(Es) 0885 Hacmp 需要/usr目录下30MB cluster base code Cluster.base.server.diag 4.3.0.0 diagnostics Cluster.base.server.events 4.3.0.0 event scripts Cluster.base.server.rte 4.3.0.0 runtime Cluster.base.server.utils 4.3.0.0 hacmp utilities Cluster single point of control Cluster.cspoc.cmds 4.3.0.0 c-spoc commands Cluster.cspoc.dsh 4.3.0.0 distributed shell Cluster.cspoc.rte 4.3.0.0 runtime
    • 75. Cluster message Cluster.msg.en_us.cspoc 4.3.0.0 Cluster.msg.en_us.server 4.3.0.0 Cluster man pages Cluster.man.en_us.cspoc.data 4.3.0.0 Cluster.man.en_us.server.data 4.3.0.0 Misccellaneous Cluster.taskguides.shrvlgrp 4.3.0.0
    • 76. Hacmp –smit 菜单Smit hacmpHacmp for aix Cluster configration Cluster service Cluster system management.. Cluster recovery aids Ras supportCluster configuration Cluster topology Cluster security Cluster resources.. Cluster snapshots Cluster verification Cluster custom modification Restore system default configruation form activeSmit cm_config_menuSmit cm_cfg_top_menuCluster topology Configure cluster Configure node Configure adapter Configure network modules Synchronize cluster topologySmit cm_cfg_res_menuCluster resources Define resource group Define application servers Chenge/show resources for a resource group Synchronize cluster resources
    • 77. Cluster拓扑Add cluster nodes *node name [servera serverb] Cluster nodes (smit cm_config_nodes.add)adapter (smit cm_config_adapters.add)Add an adapter *adapter ip label [servera] *network type [ether] *network name [ethernet_one] *network attribute public *adapter function service adapter identifier [] Adapter hardware address [] Node name [servera]Adapter ip label内容要求所有的node中的/etc/hosts文件中都有相同描述service
    • 78. Cluster 拓扑smit cm_config_adapters.addAdd an adapter *adapter ip label [servera_stby] *network type [ether] *network name [ethernet_one] *network attribute public *adapter function standby adapter identifier [] Adapter hardware address [] Node name [servera]smit cm_config_adapters.addAdd an adapter *adapter ip label [servera_tty] *network type [rs232] *network name [ethernet_one] *network attribute serial *adapter function service adapter identifier [/dev/tty0] Adapter hardware address [] Node name [servera]Network attribute 一定要配置为serial Adapter ip label可以不配置在/etc/hosts中standbyserial
    • 79. Cluster拓扑smit configchk.dialogSynchronize cluster topology Ignore cluster verification errors? [no] *emulate or actual? [actual]显示拓扑smit cm_show_menuShow cluster topology Show cluster topology Show cluster definitions Show topology information by node Show topology information by network name Show topology information by network adapter拓扑同步#cllsif
    • 80. 配置application serverAppalication server简单标识为由hacmp控制应用服务的启动和停止脚本。 建立启动和停止脚本时应注意的要点 1、启动和停止脚本应手工拷贝到每一个node 2、启动和停止脚本如果要求有必要先决条件的进程,要求检查进程是否启动 3、脚本执行要求保持非“0”退出状态 4、脚本要求放在每个node的相同的目录下而且只能放在本地目录,不能放在共享磁盘上 5、所有启动和停止脚本都由root来调用 6、执行应用可能要改变用户id到其他用户
    • 81. 配置application serversmit claddserv.dialogAdd an appliciation server *server name [data_app] *statrt script [/usr/local/startapp] *stop script [/usr/local/stopapp]Cluster会检测是不是所有的节点都有启动和停止脚本 Cluster只检测文件是否存在,不检测内容的一致性
    • 82. 配置资源组1、定义资源组 资源组名字 节点联系(cascading rotating concurrent) 参加到资源组的节点名字 2、配置资源组的资源 磁盘,卷组,文件系统,nfs 文件系统 网络ip地址 应用 3、配置运行时间参数 4、同步cluster资源smit cm_run_time.selectChange/show run time parameters Node name servera Debug level high Host uses nis or name server false
    • 83. Cluster 资源-资源smit cm_cfg_res.selectConfigure resource for a resource group Resource group name test_rg Node relationship cascading Participating servera serverb Server ip label [] Filesystems [/sharefs] Filesystems consistency check fsck Filesystems to export [] Filesystems to nfs mount [] Volume group [] Concurrent volume group [] Application server [] Inactive takeover activated false
    • 84. 实现ipat1、smit chinet把service ip 地址改为root 2、配置boot adapter并且同步拓扑 3、配置ip service label并且同步资源 如果要求硬件地址takeover应配置hw addressSmit clsyncnode.dialogSynchronize cluster resources Ignore cluster verification errors? [no] Un/configure cluster resource? [yes] *emulate or actual? [actual]同步资源
    • 85. Cluster测试选择合适的停工期,做cluster的全部测试 测试以下所有的失败细节 1、节点失败(graceful,graceful with takeover, forced) 2、硬件失败(把电源,操作系统崩溃) 3、网络失败(所有网络失败和本地网络失败) 4、网卡失败(service 卡和standby卡) 测试以上后检验应用
    • 86. 判断和选择Ipat是cascading 资源组可选择的 Ipat是rotating资源组必选的 一个网络的rotating资源组数目最多为节点数减一 一个节点的service ip label是资源组中必选的资源 下列哪项不属于cluster 拓扑? a cluster runtime parameters b cluster id c cluster name 下列哪项不属于cluster资源 a filesystem consistency check b inactive takeover falg c adapter definition√√√×√√
    • 87. 第七章 基本的cluster管理hacmp
    • 88. Hacmp的启动启动cluster的方式 在一个或者多个节点上初始化cluster manger(clstrmgr) Hacmp可以手工启动或者启动操作系统时自动启动 启动hacmp必须要有root权限 同时启动两个或者多个节点可能会出现问题 启动cluster的过程 Smit ,smit clstart,/etc/rc.cluster –l –i –boot启动damons 一个节点启动进程完成后再启动其他节点 可用tail –f /tmp/hacmp.out查看启动进程事件 时间脚本在后台执行,并且使资源启动。 网络ip address(netstat -i),disk,vg,fs可用(lsvg –o,df) 应用启动(ps –ef|grep)
    • 89. Cluster的停止停止cluster方式 一个或多个系统的clstrmgr停止。 Cluster资源可能不再可用 Cluster可以有许多原因而停止(维护、测试、错误) 停止hacmp要有root权限 Smit,smit clstop,#clstop –y –N –g 不要对clstrmgr使用“kill -9” Graceful,graceful with takeover,forced三种方式停止cluster
    • 90. 停止cluster的三种模式Graceful 目标节点的hacmp后台进程停止 如果有资源,资源将被释放 不发生资源接管 Graceful with takeove 目标节点的hacmp后台进程停止 如果有资源,资源将被释放 如果有资源,将发生资源接管 Forced 目标节点的hacmp后台进程停止 资源不释放 资源不发生接管
    • 91. 使用c-spoc启动hacmpSmit cl_clstart.dialogStart cluster services *start now on system restart or both now *start on these nodes [servera serverb] Broadcast message at startup? Ture Start cluster lock services false Start cluster information daemon falseSmit cl_clstop.dialogStop cluster services *stop now,on system restart or both now Stop cluster services on these nodes [servera serverb] Broadcast cluster shutdown ture *shutdown mode graceful (graceful or graceful with takeover ,forced)
    • 92. Hacmp日志文件/tmp/hacmp.out.[1-7] Cluster 事件的详细信息。Cluster事件,调用脚本,命令行,参数,日期,时间。保留7天的滚动日志 /var/adm/cluster.log cluster事件和时间的记录,需要定期清理 /usr/sbin/cluster/history/cluster.mmdd cluster事件长期归档的信息 /tmp/cspoc.log 使用c-spoc命令的记录 /tmp/cm.log clstrmgr进程的输出日志
    • 93. Cluster事件进程Event managerEvent notify scriptPre-event scriptPost-event scriptEvent notify scriptEvent managerRecovery scriptNe 0
    • 94. Cluster事件的定制建立一个定制事件Add a custom cluster event *cluster event name [node_down_pre_cust] *cluster event description [custom script for node] *cluster event script filename [/usr/sbin/cluster/cust] Smit hacmp cluster configuration cluster resources cluster events define custom cluster event add a custom cluster event定制事件配置到cluster 事件Chang/show cluster events Event name node_down Description script run when a node down *event command [/usr/sbin/cluster/even_down] Notify command [/usr/sbin/cluster/cust] Pre-event command [node_down_pre_cust]+ Post-event command []+ Recovery command [] *recovery counter [0]
    • 95. 注意两个事件1、event_error事件 事件脚本完成但是非0返回会产生event error事件。 产生原因:可能是一个事件脚本的命令失败,或者是事件的前、后事件失败,或者是hacmp控制的设备状态变化,造成不能访问。 event_error事件通常和一个不好的脚本有关。 2、config_too_long事件 事件脚本在6分钟内没有完成会产生config_too_long事件 通常和事件没有完成或者挂起有关。 #chssys –s clstrmgr –a “-u 600,000’(千分之一秒)改为10分钟 查看cluster日志。
    • 96. 是与非所有的事件脚本都由事件管理器直接调用 Config_too_long事件默认事件10分钟后产生 任何的事件脚本的非0返回都会产生event_error事件 Hacmp事件允许有多个前事件和后事件 ××√√
    • 97. 第八章 cluster的客户化Hacmp的客户化过程
    • 98. cluster客户化所考虑的问题客户化的工作是根据你的高可用性目标决定的 最小的可能的系统失败的时间 最大可能的系统可用性和最小的系统计划停机时间 自动错误恢复和最大的系统性能 应用启动和停止脚本的相关性和依赖性,属主权限 增加cluster事件的前事件和后事件(/usr/sbin/cluster/event) 设置cluster事件的警告检测方式和恢复脚本 提升某个事件的级别 例如:把网络失败事件提升为节点失败 停止cluster进程并且平稳切换
    • 99. 增加错误通知方法Smit cm_add_notifymeth.dialogAdd a notify method *notification object name [] *persist across system restart no + Process ID for use by notify method [] + Select error class none + Select error type none + Match alertable errors none + Select error label [] + Resource name [all] Resource class [all] Resource type [all] Notify method [] errordeviceaction[ssa_adapter] Yes [] Hardware Perm None [] [Ssa0] [All] [All] [halt -q]Smit hacmp Ras support Error notification
    • 100. 调整AIX的高可用性在cluster的node中调整AIX有最大可用性 某些aix错误可能造成应用丢失,而且不发生节点失败 很少的paging space可能造成系统挂起 Aix需要保护hacmp正确理解某种错误状态 调整 I/o pacing Sync daemon Network resouces