[AIX Solaris HP-UX Linux Windows][z/OS]

对版本执行推出

当对某个版本执行推出时,会将活动版本替换为新版本。新版本可能是对应用程序的简单修改,或包含更重要的更改。如果新版本与旧版本兼容,那么可执行推出来替换活动的版本,而不会对现有客户机产生任何影响。要对新版本执行推出,必须先安装包含新版本信息的应用程序版本。

开始之前

必须先安装并启动了一个应用程序版本,并具有配置员管理员特权才能执行推出。
  • 当两个管理控制台上的两个用户标识尝试并行完成该过程时,执行推出会失败。
  • 调整 SOAP 连接器属性可设置 Deployment Manager 的请求超时值,使其大于在系统上执行推出所需的总时间,然后重新启动 Deployment Manager。如果 requestTimeout 值到期,那么不设置该属性可导致推出过程失败。评估要设置的值的公式是 number-of-groups-to-rollout * (drainage-interval + internal-quiesce-timeouts-approximately-5minutes + application-or-server-restart-times-approximately-10minutes)。另外,还可将该值设置为 0 来禁用超时。
    • 如果使用 wsadmin 工具执行推出,那么在 Deployment Manager 概要文件的 soap.client.props 中设置 com.ibm.SOAP.requestTimeout 属性来调整请求超时值。缺省值是 180 秒,且应充分增加该值。
    • 如果您是使用管理控制台执行推出,请通过单击系统管理 > Deployment Manager > 管理服务 > JMX 连接器 > SOAPConnector > 定制属性 > requestTimeout来调整请求超时值。缺省值是 600 秒,且应充分增加该值。

      有关更多信息,请阅读“Java™ 管理扩展连接器属性”。

  • 如果在管理控制台中执行推出,请将管理控制台的会话到期值设置为大于结束整个推出过程所需时间的值。将请求超时值乘以推出期间处理的组数。有关管理控制台会话到期的更多信息,请阅读“更改控制台会话到期”。
  • 必须为安装的每个新版本定义多集群路由策略,然后才能执行推出。使用管理任务可为新版本添加多集群路由策略。有关多个集群路由策略的更多信息,请阅读“ODR 路由策略管理任务的规则”。

关于此任务

如果要对批处理应用程序执行推出,那么还可以使用应用程序版本管理器。这是符合其中一个 批处理 编程模型的 Java Enterprise Edition 5 (Java EE 5) 应用程序。

过程

  1. 安装新版本。 使用安装应用程序版本中描述的相同步骤,但指定您的新版本信息。例如,在应用程序版本字段中输入 2.0,并在应用程序描述字段中输入 Second edition。选择当前版本所使用的部署目标。
  2. 保存并同步节点。
  3. 指定推出设置。 单击应用程序 > 版本控制中心 > application_name。选择新版本,例如 2.0,然后单击推出

    指定企业应用程序或其他中间件应用程序的下列设置:

    1. 选择原子推出类型。

      使用组推出将目标集群上的成员分为多个组,一个成员一组,然后替换这些成员上的版本。组推出是最典型的选项,当集群包含四个或更多成员时很有用。另外,还可以通过脚本编制以指定的组大小来执行组推出。有关组推出的更多信息,请阅读“应用程序版本管理管理任务”。当新版本在组推出期间变为可用时,所有请求都将定向至该新版本。

      在集群的一半上,使用原子推出将一个版本一次性地替换为另一个版本。此推出类型将使用一致的应用程序版本来处理所有用户请求。由于使用一致的版本来处理所有用户请求,因此集群将以一半的容量运行。如果您的集群有四个或更多成员,请考虑通过执行组推出将集群划分成更小的组。另外,原子方式还可以与单个服务器部署目标配合使用。在单个服务器部署目标中,对集群的另一半执行的操作将被忽略。如果在启动原子推出前停止部署目标,那么在新版本替换活动版本时会启动部署目标,与您所选的复位策略无关。在推出期间,此过程会对维护的请求提供更好的可用性。

      避免故障 避免故障: 在您执行原子推出前,确定目标服务器集群的装入功能。执行原子推出可首先激活半个集群上的新版本,然后激活另一半集群上的版本。当第一半集群脱机并更新时,会将应用程序请求路由到另一半集群。验证一半集群在推出期间是否可以处理整个负载。gotcha
    2. 选择复位策略。 复位策略向应用程序版本管理器说明每个部署目标如何将新版本装入至服务器运行时。

      在后续版本替换集群上每个服务器中的旧版本时,使用复位策略通过停止或重新启动这些服务器中的应用程序来对其进行复位。软复位是最典型的选项,在执行应用程序复位时效果最佳,因为通过重新启动正在运行的应用程序服务器中的应用程序可装入新版本。在执行此过程期间,服务器保持运行。使用软复位时,不会从内存中卸载本机库。通常,软复位对于不使用任何本机库的应用程序而言很安全。在生产环境中使用软复位时,请监视应用程序服务器进程以确保存在足够的虚拟内存。

      在后续版本替换服务器上的先前版本时,复位策略将重新启动整个集群上的应用程序服务器,从而对应用程序所使用的进程内存和任何本机库进行刷新。此策略将防止虚拟存储器耗尽并允许装入新的本机库版本。如果要对某个版本(该版本依赖于新版本本机库)或其他只能通过重新启动整个应用程序服务器来刷新的依赖项执行推出,或者如果使用需要消耗大量内存以进行即时编译 (JIT) 的大型应用程序,那么选择硬复位作为复位策略。

    3. 设置消耗时间间隔(以秒计)。 消耗时间间隔指定复位应用程序或服务器前完成 HTTP 会话的时间。消耗时间间隔指定在启动复位策略前应用程序版本管理器要等待的时间长度。

      由于服务器会在这些工作单元完成后才停止,因此亲缘关系(包括事务、活动和补偿作用域以及对 Intelligent Management 未知的活动等)延长了有效的消耗时间间隔。包含对于 Intelligent Management 未知的活动的应用程序可以使用由 AppEditionManager MBean 停顿所启动的通知作为触发器来开始关闭处理过程,并使用消耗时间间隔作为时间段以便在此期限内完成关闭过程。此过程对于在数据库中备份或通过 VMware Distributed Resource Scheduler (DRS) 复制的持久会话而言不是必需的,但对于瞬态会话(内存中的会话)而言非常重要。

      消耗时间间隔的目标是允许完成具有亲缘关系的请求和传送中的请求。要防止瞬态会话中断,请将消耗时间间隔的值设置为大于应用程序会话超时时间间隔的值。启动推出过程后,在更新每个服务器时,会随之将该服务器标记为不适合于开始任何新的会话。将此值设置为 0 将等待会话针对所有进行中的请求完成。要在消耗时间间隔或会话针对所有进行中的请求完成之前保持等待,请将消耗时间间隔设置为大于 0 的值。

      应用程序版本停顿管理器可能不会等待整个长度的消耗时间间隔。性能监视基础结构 (PMI) 统计信息可用于停顿管理器以确定服务器上的所有活动请求是否已停顿。如果在消耗时间间隔之前已停顿了所有请求,那么应用程序版本停顿管理器不需要等待完整的消耗时间间隔。要强制软复位以等待整个消耗时间间隔,您可以在 Deployment Manager 上将 appedition.rollout.softreset.fulldrainageinterval 系统属性设置为 true。

      消耗时间间隔允许完成现有会话。但是,消耗时间间隔结束时,传送中的请求仍可在存在的周期内到达。在这种情况下,随需应变路由器 (ODR) 提供 60 秒的超时值,在此期间可完成停顿操作。如果请求在 60 秒内或 60 秒到期,那么如果是硬复位策略,应用程序或服务器会停止运行。另外,如果传送中的请求尚未结束,那么在停止应用程序或服务器实例前,WebSphere® Application Server Network Deployment 会提供 60 秒的停顿时间。对于硬复位策略,在停止服务器实例前,WebSphere Application Server Network Deployment 会提供 180 秒的停顿时间。可使用 com.ibm.ws.webcontainer.ServletDestroyWaitTime 定制属性定义 Web 容器等待请求完成的时间。有关更多信息,请阅读“Web 容器定制属性”。

      初始化关闭前,可使用 com.ibm.ejs.sm.server.quiesceTimeout 定制属性定义服务器实例等待请求完成的时间。有关 timeout 属性的更多信息,请阅读“Java 虚拟机定制属性”。必须在其上部署应用程序版本的每个服务器实例上设置 com.ibm.ws.webcontainer.ServletDestroyWaitTime 定制属性和 com.ibm.ejs.sm.server.quiesceTimeout 定制属性。

    对会话发起协议(SIP)应用程序指定以下设置:
    1. 选择停顿策略。 停顿策略指定主管当前版本的服务器或集群成员在存在多长时间后将被移除。此设置不影响正在推出的新版本。
      在完成所有活动会话或对话后停顿服务器或集群成员:
      在完成服务器或集群成员的所有活动会话和对话后,移除该服务器或集群成员。
      在指定的时间间隔后停顿服务器或集群成员:
      在指定的时间段后移除服务器或集群成员。指定时间长度(以秒、分钟或小时为单位)。
      注意: 从静态集群转换来的动态集群上部署的 SIP 应用程序不支持执行推出操作。
  4. 启动推出。 单击确定。此操作将使用新版本来启动对先前版本的不间断替换。

结果

对于未处于验证方式下的版本,新版本将在推出完成后替换当前版本。将在原始部署目标上推出处于验证状态的版本,并删除克隆的环境。更新路由规则以开始路由到新版本。

在应用程序推出期间,在第一组目标中所发生错误的处理方式与后面组中所发生错误的处理方式不同。在原子推出中,第一个组是激活了新修订版的前一半目标。在组推出中,第一个组指的是激活了新修订版的第一组目标。如果在第一组目标上进行推出期间发生错误(例如,应用程序或服务器未能启动),那么推出进程将失败。当前应用程序修订版将保存活动状态。如果在第一组目标上进行推出之后发生错误,那么推出进程将成功完成。新的应用程序修订版现在处于活动状态。旧应用程序修订版将进入不活动状态。

下一步做什么

要验证结果,请单击应用程序 > 版本控制中心 > application_name。新版本是部署目标上的活动版本。因为新版本会替换正在运行的版本,所以它将自动启动。

当在版本上以验证方式执行推出时,会将绑定名称更改回到原始值。例如,将 /clusters/cluster1-validation/jdbc/CustomerData更改回到 /clusters/cluster1/jdbc/CustomerData


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



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