将 Liberty JVM 服务器配置为集合体控制器

集合体控制器为集合体提供集中管理控制点。 控制器从集合体的成员接收信息。

开始之前

创建并配置 Liberty JVM 服务器。 有关更多信息,请参阅 配置 Liberty JVM 服务器。 对于此任务, JVM 服务器名称为 CONTROL1 , Liberty 服务器名称为 defaultServer

在 Liberty JVM 服务器 CONTROL1的工作目录中找到 wlpenv 脚本文件。 此脚本用于发出 Liberty 集合体命令。 有关更多信息,请参阅 使用 wlpenv 脚本和 WebSphere Application Server Liberty 命令行实用程序管理 CICS Liberty
注: 此任务中的所有命令都从包含 Liberty JVM 服务器 CONTROL1wlpenv 脚本的目录中运行。

关于此任务

此任务将 Liberty JVM 服务器配置为集合体的控制器。 每个集合体必须至少有一个控制器; 可以将更多控制器作为副本集的一部分添加到集合体。 有关集合体体系结构的更多信息,请参阅 集合体体系结构

过程

  1. 停止 Liberty JVM 服务器 CONTROL1

    集合体命令可以在已启动的服务器上运行,但可能会导致服务器在不一致状态下运行。

  2. 可选: 创建SSH认证和 HTTPS 传输安全证书
    缺省情况下, Liberty 会在文件系统上生成自签名证书密钥库。 在 z/OS® 上,可以使用 SAF 钥匙环来代替。 必须先生成 SAF 密钥环及其关联的证书,然后才能创建集合体控制器配置。 有关更多信息,请参阅 在 z/OS 操作系统上为 TLS 配置 SAF 证书和密钥环
  3. 创建集合体控制器配置。

    集合体控制器配置包含用于保护控制器与成员之间通信的安全性配置。 缺省情况下,集合体命令会生成自签名证书密钥库。

    ./wlpenv collective create defaultServer \
        --keystorePassword=password

    此命令创建必须添加到 CONTROL1server.xml 文件中的 XML 语句。

    --createConfigFile 参数可用于创建具有此配置的 XML 包含文件。

    可以使用 SAF 密钥环来保护集合体。 有关更多信息,请参阅 在 z/OS 操作系统上为 TLS 配置 SAF 证书和密钥环

  4. 将必需的配置添加到 server.xml 文件。
    • 如果 collective create 命令将配置写入标准输出,请将配置复制到 server.xml 文件中。
    • 如果 collective create 命令配置为创建 XML 包含文件,请将创建的文件添加为 server.xml中的 include
      <include location="/path/to/created/file.xml" />
    注:

    使用 collective create 命令生成的 keyStoressl 元素与使用 CICS® 自动配置创建的元素冲突。 添加集合体配置以避免冲突时,请除去 server.xml 中由 CICS 自动配置添加的 keyStoressl 元素。

    配置集合体控制器后, CICS 自动配置将保留当前 keyStoressl 元素。

  5. 配置要用于查找管理员用户的服务器的用户注册表。

    有关如何在 Liberty JVM 服务器中配置用户注册表的更多信息,请参阅 在 CICS Liberty 中配置认证

  6. 启动 Liberty JVM 服务器 CONTROL1

带有 SAF 密钥环的 Liberty JVM 服务器集合体控制器 server.xml

以下 server.xml 显示了如何将 Liberty JVM 服务器配置为集合体控制器。 SAF 证书和密钥环配置有以下标签。
CONTROLLER.SSH
用于 SSH 认证的 SAF 证书。
CONTROLLER.SSHRING
包含证书 CONTROLLER.SSH的 SAF 密钥环。
CONTROLLER.CERT
控制器服务器身份的 SAF 证书,由控制器根 CA 证书签署。
CONTROLLER.RING
包含根 CA 证书和 CONTROLLER 证书的 SAF 密钥环。
CONTROLLER.TRUST
包含用于签署成员证书的成员根 CA 证书的 SAF 密钥环。
OU = 集合体
入局集合体证书期望的相对专有名称 (RDN)。
<?xml version="1.0" encoding="UTF-8"?><server description="Example CICS Liberty JVM server collective controller">
	<featureManager>
        <feature>cicsts:core-1.0</feature>
        <feature>collectiveController-1.0</feature>
        <feature>cicsts:security-1.0</feature>
        <feature>transportSecurity-1.0</feature>
    </featureManager>

    <!-- Standard server.xml configuration -->
    <httpEndpoint host="zos.example.ibm.com" httpPort="9080" httpsPort="9443" id="defaultHttpEndpoint" />
    <config monitorInterval="5s" updateTrigger="polled" />
    <applicationMonitor dropins="dropins" dropinsEnabled="false" pollingRate="5s" updateTrigger="disabled" />

    <!-- SAF security registry settings -->
    <safRegistry id="safRegistry" realm="Collectives" />
    
    <!-- Collective controller settings -->
    <variable name="defaultHostName" value="zos.example.ibm.com" />

    <ssl id="defaultSSLConfig" clientAuthenticationSupported="true" 
         keyStoreRef="defaultKeyStore" trustStoreRef="defaultTrustStore" />

    <collectiveCertificate rdn="OU=Collective"/>

    <keyStore id="defaultKeyStore" location="safkeyring:///CONTROLLER.KEY" 
              fileBased="false" readOnly="true" type="JCERACFKS" />

    <keyStore id="defaultTrustStore" location="safkeyring:///CONTROLLER.TRUST" 
              fileBased="false" readOnly="true" type="JCERACFKS" />

    <keyStore id="serverIdentity" location="safkeyring:///CONTROLLER.KEY" 
              fileBased="false" readOnly="true" type="JCERACFKS" />

    <keyStore id="collectiveTrust" location="safkeyring:///CONTROLLER.TRUST" 
              fileBased="false" readOnly="true" type="JCERACFKS" />

    <keyStore id="collectiveRootKeys" location="${server.config.dir}/resources/collective/rootKeys.p12"/>
</server>

下一步操作

验证集合体控制器服务器是否正确启动及其是否准备好接收成员。 当集合体控制器服务器就绪时, messages.log 文件中将显示以下消息。CWWKX9003I: CollectiveRegistration MBean is available.

将成员服务器添加到集合体。 有关将 Liberty JVM 服务器添加到集合体的更多信息,请参阅 将 Liberty JVM 服务器配置为集合体成员