urbancode_通过UrbanCode支持IBM MQ的连续配置部署

关联的IBM解决方案

IBM®MQ是消息传递中间件,可简化并加速跨多个平台的各种应用程序和业务数据的集成。 IBM MQ通过通过消息传递队列发送和接收消息数据来简化应用程序,系统,服务和文件之间的有保证,安全和可靠的信息交换,从而简化业务应用程序的创建和维护。 它提供了通用消息传递,并提供了广泛的产品组合,可满足企业范围的消息传递需求,以及物联网和移动设备的连接性。

IBM®UrbanCode™Deploy协调并自动将应用程序,中间件配置和数据库更改部署到开发,测试和生产环境中。 该软件使您的团队能够根据需要或按计划并通过自助服务进行部署。 UrbanCode Deploy可以帮助您的团队缩短产品上市时间,降低成本并降低风险。

UrbanCode Deploy包含一个IBM MQ插件,该插件支持30多个步骤来创建,定义,删除,设置,设置,停止,启动,导入,管理和接收IBM MQ的配置操作。 这些操作旨在以符合使用模式的操作模式进行工作,例如“在MQ服务器上创建队列管理器”或“通过在一个或多个IBM上创建一组队列和通道来在两个应用程序之间创建连接” MQ服务器。” 侧栏列表显示了IBM MQ插件侧栏列表提供的操作。

IBM MQ部署目标

IBM MQ开发人员经常使用手动驱动的流程将更改应用于配置。 其中一些过程包括创建队列管理器,创建或更改队列和通道等等(有关完整列表,请参见边栏)。 这些过程可能涉及直接访问IBM MQ服务器或在服务器上运行本地管理的脚本。 应用配置后,将更新脚本的超集,以提供一种在新服务器上复制配置集的方法。 除了与手动部署和配置操作相关的额外时间和潜在错误外,很难准确或有效地监视所有环境中所有服务器的配置。

IBM MQ使用模式

本教程可能无法捕获所有潜在的使用模式。 下面列出的内容旨在提供足够的上下文,并说明支持IBM MQ部署配置的UrbanCode Deploy配置模型的方法。 为了为IBM MQ部署建模UrbanCode Deploy,我们将部署用例分为两类:

  • IBM MQ服务器管理 -与将特定配置设置应用于IBM MQ服务器相关的用例,包括创建队列管理器,通道等。
  • IBM MQ环境管理 -与从当前应用于另一台服务器的配置集中重新创建新的IBM MQ服务器相关的用例,包括管理不同环境中服务器类型之间的更改,影响分析等。

示例IBM MQ服务器管理用例

IBM MQ部署旨在应用一组配置。 从部署的角度来看,这些应该以模式使用,而不是从服务器管理的角度来看。 服务器管理的观点将考虑每个步骤(添加通道)。 这里的方法是使用部署的观点。

表1包括一组用例示例,这些用例代表IBM MQ开发人员执行的重复例行活动。 其中包括在特定服务器上添加,删除或更改配置。 您的用例可能会有所不同,并且可能需要您可以从UrbanCode Deploy库中利用的其他步骤。

每次运行用例时,您都会在自动化部署过程中使用一组唯一的值(例如,队列管理器名称,描述,命令目录)。 您可以预先为所有IBM MQ服务器或特定类型的IBM MQ服务器配置其中一些属性。 您可能需要为每个部署设置其他属性。 在执行一个或多个环境用例时,最好将每个配置设置都设置为记录以便重用。

表1. IBM MQ管理用例的示例集
用例 描述
创建队列管理器 运行在服务器上创建队列管理器的过程
连接应用程序队列管理器 配置特定的一组队列管理器进行连接的运行过程
集群队列管理器 运行过程,该过程根据IBM MQ定义配置要集群的一组特定的队列管理器
创建应用程序连接 运行过程,在服务器上创建一组队列,通道或其他配置以连接应用程序
设置发布/子层次结构的队列管理器 为单个队列管理器运行过程以定义发布/子层次结构
设置发布/子集群的队列管理器 为单个队列管理器运行过程以定义发布/子集群
设置队列共享组 运行流程以定义用于队列共享的组
删除队列管理器和内容 删除队列管理器的运行过程(或者首先删除与队列管理器关联的所有配置)
删除配置 删除先前应用于队列管理器的一个或多个配置

UrbanCode部署IBM MQ体系结构

图1显示了带有IBM MQ的UrbanCode Deploy基本服务器/代理体系结构。 UrbanCode Deploy服务器是IBM MQ开发人员用来配置流程和执行自动化部署配置的地方。 UrbanCode Deploy代理本地安装在IBM MQ服务器上。 在执行时,代理程序下载插件进程和属性值,然后将配置应用于本地IBM MQ服务器。

图1. UrbanCode Deploy和IBM MQ体系结构
该图显示了UrbanCode Deploy和IBM MQ体系结构
图2.基本的UrbanCode Deploy服务器和代理架构
该图显示了基本的UrbanCode Deploy服务器和代理架构

UrbanCode Deploy应用程序模型

UrbanCode Deploy配置模型支持使用逻辑服务器类型的IBM MQ开发人员的定义和部署控件。 UrbanCode Deploy逻辑配置模型如图3所示,并在下面进行描述:

  • IBM MQ服务器类型基于其在体系结构和配置模式中的逻辑角色。 我们计划按其角色和配置对IBM MQ服务器进行分类。 每种服务器类型都将使用UrbanCode Deploy应用程序和组件定义的模板化配置模型。 该应用程序包括已部署该IBM MQ类型的环境。
  • 使用应用程序和组件模板可以轻松管理配置。 知识中心中提供了有关如何配置模板的说明。 (UrbanCode Deploy应用程序的组件使用流程和关联的属性文件来实现IBM MQ部署用例。该模型使您可以按服务器类型来模式化部署用例,并管理如何实现每个用例,以及审计随时间的变化。整个模型旨在为IBM MQ开发人员或管理员提供使用UrbanCode Deploy的能力:
    • 比较相同或不同环境中的实例服务器类型
    • 访问应用于服务器实例的特定配置
    • 使用版本化的属性文件来定义属性并将新配置应用于服务器
    • 促进对下一个环境的更改
    • 自动在另一个服务器实例上复制生产服务器的配置
图3.逻辑UrbanCode Deploy配置模型

UrbanCode Deploy应用程序

每种IBM MQ服务器类型都需要UrbanCode Deploy应用程序。 您将使用该应用程序为该服务器类型以及部署该服务器的每个环境部署和推广所有配置更改。 对于应用程序支持的每个IBM MQ管理用例,应用程序模型都包括一个从组件模板派生的组件。 应用程序模型过程包括每个环境中该IBM MQ服务器类型的每个实例的资源。

UrbanCode Deploy组件模板

每个IBM MQ管理用例都应建模为具有关联组件流程的组件(模板) 。 组件过程包括一个初始步骤,以读取属性文件并创建将在该过程的其余步骤中使用的输出属性。 您可以选择使用组件模板来对IBM MQ管理员使用的每个组件和流程定义进行集中管理。 这提供了一种标准化在每个开发环境中应用和提升到IBM MQ服务器的模式的方法。

UrbanCode Deploy组件

每种服务器类型的IBM MQ管理应用程序都有一个组件,该组件派生自用于执行特定用例的适当组件模板版本。 UrbanCode Deploy IBM MQ组件过程包括读取属性文件的初始步骤(IBM UrbanCode插件中的现成步骤)。 通过读取文件,此步骤将生成一组输出属性,后续过程步骤将使用这些输出属性来执行配置。 该属性文件是放置在IBM MQ组件版本中的唯一工件。

UrbanCode Deploy环境和资源

每个UrbanCode Deploy应用程序代表一种IBM MQ服务器类型,并为每个已部署IBM MQ服务器类型的环境定义了一个UrbanCode Deploy环境。 UrbanCode Deploy资源代表部署到环境中的每个IBM MQ服务器类型实例。 UrbanCode Deploy资源包含执行部署过程所需的服务器信息。 如果单个环境中有多个服务器,请使用limit标签来控制每个部署的范围。

组成过程

IBM MQ管理器插件的重要信息在UrbanCode Deploy开发人员中心中:

每个组件过程模型都包括一个初始步骤,以读取组件版本中包含的属性文件。 该属性文件由IBM MQ管理员开发,以提供为每个部署实例定义的那些组件流程属性。 读取属性文件步骤将读取的属性作为输出属性输出到其余步骤使用的内存中。 图4显示了该过程的示例。

图4.示例UrbanCode Deploy组件流程
该图显示了UrbanCode Deploy组件流程的流程

流程和步骤说明

本节描述了对不同用例建模的两个示例组件过程:创建队列管理器和创建应用程序连接。 组件过程的名称表示其实现的用例的名称:

  • 创建队列管理器 -您只能使用创建队列管理器进程来创建新的队列管理器。 这是定义为提供使用应用程序模型框架的基本用例。 图4所示的一些步骤是:
    • 读取属性文件是UrbanCode Deploy文件实用程序插件中标记为“ 读取属性文件”的步骤 。 该步骤解析一个名为值对的属性文件,以搜索由元素名称定义的属性。 从该文件读取的属性是组件过程其余部分的输出属性(在内存中)。 然后,在创建,更改或删除IBM MQ资源时,组件过程中的后续步骤可以使用它们。 为每个用例/组件使用标准属性文件模板。 UrbanCode Deploy默认插件提供了另一个步骤( 从XML文件读取属性 ),以使用XML文件执行相同的功能。
    • “创建队列管理器”在位于所选环境中并且与组件相关的IBM MQ服务器上创建一个新的队列管理器。 示例步骤所需的属性包括命令目录(必需),队列管理器描述(可选),队列管理器名称(必需)。
  • 创建应用程序连接 -您可以通过两个过程对该用例进行建模:远程服务器或用于需要通信的应用程序本地服务器。 使用两个过程对组件模板进行建模。 确保应用程序流程包括每个流程的流程步骤(首先是本地服务器)。

属性文件属性

您可以通过三种方式管理属性:

  • 环境
  • 资源资源
  • 在属性文件中(组件版本)

在定义组件过程时,请考虑应在何处维护属性(环境,资源,组件,应用程序,属性文件等)。 在大多数情况下,您可以限制属性文件维护的属性数量,并减少每个管理员/开发人员更新这些值的工作量。

表2显示了一些典型IBM MQ流程步骤的属性样本集。 每个UrbanCode Deploy流程步骤都包含要运行的必需或可选值。 该表列出了所有属性,然后将每个属性归类为复用或预先配置:

  • 重用 -组件过程中一个或多个步骤使用的属性,并输入到属性文件中
  • 预先配置 -属性是特定于环境,资源或用例的,并且不会针对每个部署进行更改。 将这些属性保留为UrbanCode Deploy属性。

表2显示了可以将由IBM MQ管理员维护的属性文件中的属性数量从29个唯一属性总数减少到9个。 其余属性在UrbanCode Deploy中作为应用程序,组件,环境,资源或全局属性进行维护。

表2. UrbanCode Deploy属性对齐示例
名称 类型 描述 需要 重用 预配置
创建队列管理器 命令目录 IBM MQ命令目录 X X
队列管理器描述 正在创建的队列管理器的描述性文本,最多64个字符 没有
队列管理器名称 要创建的队列管理器的名称
创建本地队列 命令目录 IBM MQ命令目录 X X
执行后删除脚本文件
布尔型 执行后删除脚本文件 X
是批量 布尔型 在一个脚本文件中批处理多个命令,然后使用run MSQC script命令run MSQC script X
队列管理器名称 队列管理器使队列继续 X
队列名称 队列定义
脚本文件 脚本要写入的文件名 X
创建远程队列 命令目录 IBM MQ命令目录 X X
执行后删除脚本文件 布尔型 执行后删除脚本文件 X
是批量 布尔型 在一个脚本文件中批处理多个命令,然后使用run MSQC script命令run MSQC script X
队列管理器名称 用于创建队列的队列管理器的名称 > X
队列名称 要定义的队列名称
脚本文件 脚本要写入的文件名 X X
创建接收频道 频道名称 要定义的接收通道的名称
命令目录 IBM MQ命令目录 X
执行后删除脚本文件 布尔型 执行后删除脚本文件 X
是批量 布尔型 在一个脚本文件中批处理多个命令,然后使用run MSQC script命令run MSQC script X
队列管理器名称 用于创建队列的队列管理器的名称 X
脚本文件 脚本要写入的文件名 X
定义发送者通道 频道名称 要定义的发送者通道的名称
命令目录 IBM MQ命令目录 X X
连接名称 该频道的连接名称
执行后删除脚本文件 布尔型 执行后删除脚本文件 X
是批量 布尔型 在一个脚本文件中批处理多个命令,然后使用run MSQC Script命令run MSQC Script X
队列管理器名称 用于创建队列的队列管理器的名称 X
队列名称 要使用的通道的队列名称 X
脚本文件 要写入脚本的文件名 X

IBM MQ服务器管理部署过程

对于此示例,要执行IBM MQ服务器管理部署,请执行以下操作:

  1. 在SCM中定义变更需求 —此步骤捕获跨应用程序变更的需求,并将工作分配给IBM MQ管理员。
  2. 获取模板属性文件 -使IBM MQ开发人员能够找到与要执行的用例关联的属性模板文件的正确版本。 一个部署过程的执行可以执行多个用例。
  3. 更改属性文件并交付/查看 -IBM MQ开发人员添加了适当的属性值或重用。
  4. 创建新的UrbanCode Deploy组件版本 -在此步骤中,IBM MQ开发人员以新创建或更改的属性文件作为工件,手动或自动创建新的组件版本。
    注意 :使用命名约定可以帮助您了解应用于每个服务器的内容。
  5. 标记环境资源 -IBM MQ Developer为组件流程分配一个唯一的标记,以用于限制部署流程所应用于的资源。
  6. 请求部署 -遵循标准流程。
  7. 治理部署 -遵循UrbanCode Deploy中治理部署的标准。
  8. 查看结果 -用户可以查看所有UrbanCode Deploy视图,审核应用于每种资源的内容,并在服务器和环境之间进行比较。
  9. 管理环境 -根据需要执行管理用例。
图5.服务器管理部署步骤
该图显示了服务器管理部署步骤

增量部署

UrbanCode Deploy部署需要是增量的。 这样,它就可以在升级,创建快照以及比较环境/服务器时考虑一组更改(因为它们是独立的)。 当您将任何更改部署到新服务器时,UrbanCode Deploy会比较更改集(基于每个组件的版本),仅应用缺少的更改。

环境管理用例

表3中显示的环境管理用例代表了配置IBM MQ服务器类型的新实例,管理跨环境的更改以及监视活动所需的活动。

表3.环境管理用例
用例 描述
复制IBM MQ服务器 根据生产环境中现有IBM MQ服务器的配置创建新实例。
监控器配置 监视应用于标准(生产环境)服务器的配置。
管理变更 为了保持一致性,将更改应用于一个环境中的IBM MQ服务器时,会将相同的更改应用于其他环境中的适当服务器。
比较环境配置 比较跨环境的服务器配置,以了解服务器之间的差异。

复制IBM MQ服务器

IBM MQ开发人员使用UrbanCode Deploy快照在另一个环境中复制服务器或服务器类型。 快照使您可以选择应用于服务器的所有增量版本,以捕获并应用于另一环境中的资源。
注意 :通过快照部署时,仅运行未应用到新服务器的版本。

监控配置并管理变更

使用UrbanCode Deploy审核和合规性功能监视配置并管理每个服务器和相同类型的所有服务器的更改。 例如,您可以比较IBM MQ服务器类型或服务器的快照,还可以查看应用于选定服务器的更改列表。

比较环境配置

对组件的每个版本使用命名约定来说明对属性文件值所做的更改。 使用UrbanCode Deploy报告和视图来审核和审查版本和工件以及所有IBM MQ服务器更改的状态。 比较环境或快照也可以提供详细的差异报告。

结论

在本教程中,我们提供了一个用于为IBM MQ服务器和环境管理自动化IBM MQ配置部署的模型。 UrbanCode Deploy提供了一种相对简单的方法来建模,部署和审计IBM MQ部署。 使用UrbanCode Deploy的标准自动化和治理功能可以减少管理IBM MQ服务器,更新配置或从现有服务器重新创建新环境的工作。 使用此处介绍的模型将帮助您实现针对IBM MQ配置部署的UrbanCode Deploy的这些好处。


翻译自: https://www.ibm.com/developerworks/library/d-continuous-configuration-deployments-urbancode-mq-trs/index.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值