0
回答
WebSphere Application Server V8 快速恢复受损节点及跨平台迁移
利用AWS快速构建适用于生产的无服务器应用程序,免费试用12个月>>>   

IBM WebSphere Application Server V8(以后简称为 WAS V8)在先前版本原有的对节点管理的基础上,增强了对受损节点修复以及节点迁移的功能,大大提高了集群环境中对节点修复和迁移的效率。本文将从本机受损节点恢复、跨硬件节点迁移以及跨平台节点迁移三个实际应用场景出发,详细介绍如何利用WAS V8新功能快速实现节点修复迁移。

引言

随着企业业务规模和应用的不断扩大,集群环境被越来越多的使用来满足用户对高可用性和大访问量的需求。而在集群环境中,真正担负起关键作用的,正是那些互相联系的节点。因此在日常维护中对节点的修复和迁移工作便显得非常重要。快速的修复和迁移节点将给用户带来高可用性的保证,也能很好的解决硬件损坏或者升级所带来复杂问题。

WebSphere Application Server V8(以后简称为 WAS V8)在先前版本原有的对节点管理的基础上,增强了对受损节点修复以及节点迁移的功能,大大提高了集群环境中对节点修复和迁移的效率。本文将从本机受损节点恢复、跨硬件节点迁移以及跨平台节点迁移三个实际应用场景出发,详细介绍如何利用 WAS V8 新功能快速实现节点修复迁移。

WebSphere Application Server V8 新功能 addNode – asExistingNode 介绍与对比

节点是 WAS 系统中能够独立提供服务的基本单位,也是集群环境中的根本组成本部分,一个集群正是由添加到 Cell 中的一个又一个节点组成的。这些节点之间进行有机通信和协作实现了高可用性的集群服务。而 addNode 命令是一组强大的节点添加操作命令套件,它实现了像 Cell 中以各种配置来添加节点。在 WAS V8 中,此命令套件更是得到加强,增加了 asExistingNode 选项。这个功能专为修复和迁移节点而设计,可以实现坏损节点修复和跨平台节点迁移。

在 WAS V8 之前版本中,如果节点受损需要回复时,我们需要依靠先前备份节点进行回复,如果没有备份或者备份文件损坏,则无法直接修复,只能重新安装和配置节点。当硬件更新或者系统升级等原因导致节点需要迁移时,我们无法通过节点级别的操作简单完成,需要通过一系列备份恢复步骤,工作量较大。WAS V8 中的 addNode – asExistingNode 功能实现了在节点级别上完成修复和迁移的目的。它利用先前节点保存在 Deployment manager 中的配置信息,将这些信息直接与要添加的新节点绑定,就像添加了一个已经存在的节点一样,从而实现快速修复和迁移节点。

修复坏损节点

场景介绍: 坏损节点是指由于节点某些原因出现问题,或由于局部硬件坏损导致节点无法正常工作。常见的情况有节点所需系统文件被意外删除、配置文件被意外修改并无法复原、硬盘等存储介质损坏导致节点所需文件丢失等。

假设条件: 集群环境启用安全设置,Deploy manager 域名为 dmgr_host,端口为 dmgr_port,用户名为 user_name,密码为 password。其中节点 myNode1,profile 名称为 AppSrv01,无法正常工作。

节点恢复过程:

  1. 确保已经损坏的节点和其中的服务都已经停止,如果没有停止,请手动将其停止。
  2. 直接删除原有名为 AppSrv01 的 profile,(直接删除,并非使用 removeNode 命令)。
  3. 创建一个新的 profile,使用与原有节点相同的节点名称、profile 名称、路径。
  4. 打开命令行界面,进入目录 profile_root/AppSrv01/bin。
  5. 运行命令:addNode dmgr_host dmgr_port -asExistingNode -username user_name -password password。
  6. 进入管理控制台,同步节点信息。如下图。

    图 1. 同步节点
    图 1. 同步节点

  7. 完成

跨硬件节点迁移

场景介绍: 此种场景是指节点需要在不同硬件机器之间进行迁移,但是硬件上的操作系统没有本质改变。常见的情况有硬件机器坏损导致更换机器、服务器进行大规模硬件升级来满足业务需求、服务器环境进行冗余备份等。

假设条件: 集群环境启用安全设置,Deploy manager 域名为 dmgr_host,端口为 dmgr_port,用户名为 user_name,密码为 password。其中节点 myNode1,profile 名称为 AppSrv01,由于硬件机器报废,需要迁移到另外一台相同系统的机器上 , 新机器的域名为 new_host_name。

节点迁移步骤

  1. 在新机器上安装 WebSphere Application Server,确保如下内容与原有节点一致。

    WebSphere Application Server installation directory

    Profile name

    Profile directory

    Node name

  2. 确保原有节点和其中的服务都已经停止,如果没有停止,请手动将其停止。
  3. 修改 deployment manager 配置中的主机名称
    1. 打开命令行界面,进入目录 profile_root/Dmgr01/bin
    2. 启动 wsadmin – wsadmin -lang jython -userName user_name -password password
    3. 修改主机名– AdminTask.changeHostName('[-hostName new_host_name -nodeName node_name]')
    4. 保存配置 – AdminConfig.save()
    5. 退出
  4. 登录新机器,打开命令行界面,进入目录 profile_root/AppSrv01/bin。
  5. 运行命令:addNode dmgr_host dmgr_port -asExistingNode -username user_name -password password。
  6. 使用 startNode 命令启动节点。
  7. 进入管理控制台,更新虚拟主机名称为新节点主机名。如下图。

    图 2. 更新主机名称
    图 2. 更新主机名称

  8. 进入管理控制台,同步节点信息。
  9. 完成。

跨平台节点迁移

场景介绍: 此种场景是指节点需要在不同硬件机器和不同操作系统之间进行迁移,这不仅涉及到硬件改变,还要考虑到不同操作系统平台之间的差异。常见情况有服务器进行大规模硬件及操作系统升级、新业务及新技术的需要导致更换应用服务器的硬件及软件载体、服务器环境进行冗余备份等。

假设条件: 集群环境启用安全设置,Deploy manager 域名为 dmgr_host,端口为 dmgr_port,Deployment manager 目录名称为 Dmgr01,用户名为 user_name,密码为 password。其中节点 myNode1,profile 名称为 AppSrv01,由于硬件机器报废或系统更新,需要迁移到另外一台不同系统的机器上,新机器的域名为 new_host_name。

节点迁移步骤:

  1. 确保原有节点和其中的服务都已经停止,如果没有停止,请手动将其停止。
  2. 在新机器上安装 WebSphere Application Server,确保如下内容与原有节点一致。

    Profile name

    Node name

  3. 修改 deployment manager 配置中的主机名称
    1. 打开命令行界面,进入目录 profile_root/Dmgr01/bin
    2. 启动 wsadmin – wsadmin -lang jython -userName user_name -password password
    3. 修改主机名– AdminTask.changeHostName('[-hostName new_host_name -nodeName node_name]')
    4. 保存配置 – AdminConfig.save()
    5. 退出
  4. 登录新机器,打开命令行界面,进入目录 profile_root/AppSrv01/bin。
  5. 运行命令:addNode dmgr_host dmgr_port -asExistingNode -username user_name -password password。
  6. 进入管理控制台,单击 Environment->WebSphere variables。如下图。

    图 3. WebSphere 变量
    图 3. WebSphere 变量

  7. 查看 WAS_INSTALL_ROOT 变量。如下图。

    图 4. WAS INSTALL ROOT 变量
    图 4. WAS INSTALL ROOT 变量

  8. 查看 USER_INSTALL_ROOT 变量。如下图。

    图 5. USER INSTALL ROOT 变量
    图 5. USER INSTALL ROOT 变量

  9. 登录新机器,进入节点 config 目录,例如 profile_root\AppSrv01\config\cells\ Cell01\nodes\Node01, 编辑文件 variables.xml,修改上面提到的两个变量 WAS_INSTALL_ROOT 和 USER_INSTALL_ROOT, 使其与新环境路径相符。
  10. 登录 Deployment manager 所在机器,进入 dmgr 的 config 目录,找到对应新添加节点的变量配置文件,例如 profile_root\Dmgr01\config\cells\Cell01\nodes\ Node01, 编辑文件 variables.xml,修改上面提到的两个变量 WAS_INSTALL_ROOT 和 USER_INSTALL_ROOT, 使其与新节点同步。
  11. 重新按照步骤 6、7、8 查看变量是否已经更新。
  12. 使用 startNode 命令启动节点。
  13. 进入管理控制台,更新虚拟主机名称为新节点主机名。
  14. 进入管理控制台,同步节点信息。
  15. 完成。

使用限制和注意事项

在使用此功能的同时,需要遵守一些使用限制和注意事项。

使用限制:

  • 应用程序如果使用了 Scheduler, 在恢复或迁移前后需要保持主机名一致,未使用 Scheduler 的用户不受此限制。
  • 此功能暂不支持 Z/OS 与非 Z/OS 之间互相迁移节点。

注意事项 :

addNode 功能中的部分选项与 -asExistingNode 选项不兼容,不能同时使用,包括:

  • -includeapps
  • -includebuses
  • -startingport
  • -portprops
  • -nodeagentshortname
  • -nodegroupname
  • -registerservice
  • -serviceusername
  • -servicepassword
  • -coregroupname
  • -excludesecuritydomains

结束语

IBM WebSphere Application Server V8 通过增强原有 addNode 命令,推出 asExistingNode 新功能进一步完善了 WAS 节点在修复和迁移方面的特性,将先前复杂的流程简单化的同时,也确保了在修复和迁移过程中的安全性和高效性。

原文转自 IBM developerWorks

举报
IBMdW
发帖于6年前 0回/391阅
顶部