使用脚本编制来更新 DataPower 设备的固件版本

使用 wsadmin 工具来更新受管集合中设备的固件。由制造商提供的固件版本文件特定于设备类型、型号类型以及特征库。

开始之前

在开始前,请通过添加并配置设备和受管集合来设置 DataPower® 设备管理器。

关于此任务

本主题提供的示例会更新 DataPower 设备管理器在受管集合中管理的多个设备的固件。相关设备都是 testSet 受管集合的成员。在对多个设备进行管理的受管集合上更新固件时,系统会将固件版本部署到主设备,然后按顺序将固件版本部署到受管集合中的每个设备。

要查看本主题中命令的其他信息和示例,请参阅“AdminTask 对象的 dpManagerCommands 命令组”的文档。

过程

  1. 启动 wsadmin 脚本编制工具。
  2. 确定受管集合的标识。
    使用 dpGetAllManagedSetIDs 命令来显示 DataPower 设备管理器配置中每个受管集合的标识,如以下命令所示:
    AdminTask.dpGetAllManagedSetIds()
    可选择性地使用 dpGetManagedSet 命令来显示给定的特定受管集合标识的属性,如以下示例所示:
    AdminTask.dpGetManagedSet('-managedSetId testSet')
  3. 确定要部署到每个受管集合的固件版本。

    您可以使用 DataPower 设备管理器,在配置中部署新的固件版本,或将其还原至存在于配置中的先前固件版本。

    • 要在配置中部署新的固件版本,请从 DataPower Web 站点下载需要的固件版本。如果要还原为存在于配置中的先前固件版本,那么不需要下载新的固件版本。在下载新的固件版本后,请使用 dpAddFirmwareVersion 命令,将本地固件版本添加到 DataPower 设备管理器。固件版本与特定固件相关联,此固件充当每个具有相同设备类型、型号类型以及兼容特征的固件版本的容器。以下命令示例会将固件版本添加到 DataPower 设备管理器:
      addFirmwareTask=AdminTask.dpAddFirmwareVersion('[-file "C:\temp\dptestFW\dev-xs-143863-3_6_0_16.scrypt2"
       -userComment "my new firmware for test"]')
      此命令会将任务提交到 DataPower 设备管理器,并将任务标识设置为相应的变量。使用以下示例命令来监视任务的状态:
      param = '-taskId '+addFirmwareTask 
      print AdminTask.dpGetTask(param) 
      此命令会返回任务信息,并将固件版本标识作为 result 属性的值返回,如以下样本输出中所示:
      [ [currentStep 0] [totalSteps 0] [taskDescription
       [Add new firmware version to the DataPower appliance manager]] 
       [currentStepTimestamp [Jan 18, 2008 2:32:25 PM]] [creationDate [Jan 18, 2008 2:32:23 PM]] 
       [taskStatus 2] [taskId 1] [hasError false] [createdByUser defaultWIMFileBasedRealm/admin]
       [isComplete true] [result [XS40:9002::DataGlue;JAXP-API;PKCS7-SMIME;HSM;:3.6.0.15]] ] 
      您可以使用 dpGetAllFirmwareIds 命令来显示每个可用固件的标识。然后,使用 dpGetAllFirmwareVersionIDs 命令来获取相关固件的每个可用固件版本的标识。在查找要使用的固件版本的标识时,请将 result 属性的值设置为要在命令(将固件版本部署到受管集合)中使用的变量,如以下示例所示:
      testFirmwareVersionID = 'XS40:9002::DataGlue;JAXP-API;PKCS7-SMIME;HSM;:3.6.0.15'
    • 要将现有固件版本部署到受管集合,请使用以下命令来确定相关固件版本:
      • 使用 dpGetAllFirmwareVersionIds 命令来显示特定固件的每个固件版本的标识,如以下示例所示:
        AdminTask.dpGetAllFirmwareVersionIds('-firmwareId "XS40:9002::DataGlue;JAXP-API;PKCS7-SMIME;HSM;"')
      • 对于本示例,存在以下两个固件版本:
        XS40:9002::DataGlue;JAXP-API;PKCS7-SMIME;HSM;:3.6.0.15
        XS40:9002::DataGlue;JAXP-API;PKCS7-SMIME;HSM;:3.6.0.16
      • 可选择性地使用 dpGetFirmware 命令来显示固件的设备类型、型号类型、严格特征以及非严格特征,如以下示例所示:
        AdminTask.dpGetFirmware('-firmwareId "XS40:9002::DataGlue;JAXP-API;PKCS7-SMIME;HSM;"')
      • 如果不确定要使用的固件,那么可以使用 dpGetBestFirmware 命令来查询与设备类型、型号类型以及设备特征相匹配的固件。此命令并不建议使用特定固件。此命令会确定与配置相匹配的固件。在以下示例中,此命令会查询包含固件版本为 3.6.0.4 的固件:
        AdminTask.dpGetBestFirmware('-applianceType "XS40" -modelType "9002" -applianceFeatures "JAXP-API" -level "3.6.0.4"')
  4. 验证系统是否已将新的固件版本添加到 DataPower 设备管理器。
    使用 getTask 命令来确定该任务是否已完成,如以下示例所示:
    AdminTask.dpGetTask('-taskId '+addFirmwareTask)

    此命令会返回关于相关异步任务的信息。如果该任务已完成,那么 isComplete 属性会显示值 true。如果该任务未完成,请注意 taskStatus 属性的值。如果返回的值为 0,那么该任务是在队列中,且系统尚未启动该任务。如果返回的值为 1,那么该任务正在执行中。如果返回的值为 2,那么该任务已成功完成。如果返回的值为 3,那么该任务遇到了异常。

  5. 部署固件版本
    在系统将固件版本添加到 DataPower 设备管理器后,请使用 dpSetManagedSet 命令将该固件版本指定给受管集合。以下示例会将新下载的固件版本指定给测试环境受管集合:
    FVTask=AdminTask.dpSetManagedSet('-managedSetId testSet -desiredFirmwareVersionId '+testFirmwareVersionID)

    此命令会将任务提交到 DataPower 设备管理器,并将任务标识指定给相应的变量。部署固件可能需要几分钟,并且会导致设备重新启动以运行新的固件版本。

  6. 验证系统是否已成功将新的固件版本指定给受管集合。
    使用 getTask 命令来确定该任务是否已完成,如以下示例所示:
    AdminTask.dpGetTask('-taskId '+FVTask)

    此命令会返回关于相关异步任务的信息。如果该任务已完成,那么 isComplete 属性会显示值 true。如果该任务未完成,请注意 taskStatus 属性的值。如果返回的值为 0,那么该任务是在队列中,且系统尚未启动该任务。如果返回的值为 1,那么该任务正在执行中。如果返回的值为 2,那么该任务已成功完成。如果返回的值为 3,那么该任务遇到了异常。

  7. 可选: 从 DataPower 设备管理器中除去系统所替换的固件版本。

    如果不希望在 DataPower 设备管理器上保留先前固件版本的副本,请从配置中除去该固件版本。您可能需要保留先前的两个固件版本,以防需要还原为先前版本。

    使用 dpRemoveFirmwareVersion 命令来除去受管集合不再使用的固件版本。不能除去对受管集合指定的固件版本。以下示例会从 DataPower 设备管理器中除去固件版本:
    AdminTask.dpRemoveFirmwareVersion('-firmwareVersionId "XS40:9002::DataGlue;JAXP-API;PKCS7-SMIME;HSM;:3.6.0.13"')

结果

受管集合会使用新的固件版本。

下一步做什么

您可以使用 wsadmin 工具来管理设备、固件、域、受管集合以及特定于设备的设置。另外,系统会创建域、固件以及特定于设备的设置的版本。您可以使用 wsadmin 工具来修改当前版本,或将域、固件以及特定于设备的设置还原至先前版本。


指示主题类型的图标 任务主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=txml_7dpfirmware
文件名:txml_7dpfirmware.html