交互式安装指南

选择适用于您环境的选项,以便为 () 应用程序生成定制安装指南。

有关在 上安装 应用程序的信息,请参阅安装时的特殊注意事项

要为 应用程序设置集群环境吗?

选择应用程序服务器的操作系统:

选择安装方法:

选择要安装的一个或多个应用程序:

注意: 如果在现有的 7.0.2 iFix007 或更早版本上应用 7.0.2 iFix008 或更高版本,请为安装的每个应用程序运行 -rebuildIndices repotools 命令。 请参阅 安装和升级说明 以获取更多信息。

  • 可选应用程序(单独许可证)

  • 体系结构管理

  • 重要事项: 应用程序作为 应用程序的扩展来交付。 选择此选项可安装 扩展。 可以采用两种部署方式来安装该扩展:模型管理服务器以及模型和代码管理服务器。 要了解这两种方式之间的差别以及定义所需许可证的列表,请参阅客户访问许可证管理。 选择任何部署方式时,都必须将该扩展与 应用程序一起安装;只有在模型和代码管理服务器方式下,才在先前安装的此应用程序实例基础上进行安装。 请确保 应用程序与 扩展的版本相同。

    支持应用程序

  • 注:现在,可以在其专用服务器上安装 应用程序。 有关详细信息,请参阅此部署 Wiki 文档

  • 其他服务器

  • 要点: 选择使用 IBM Jazz Authorization Server 进行单点登录是在安装 Engineering Lifecycle Management时需要作出的一次性决策。 一旦开始将 IBM Jazz Authorization Server 用于应用程序,就无法还原到其他认证机制。 在升级应用程序时也适用。

选择数据库服务器:

选择您的用户注册表类型:

您要配置数据仓库吗?

要安装 应用程序,请完成以下步骤:

规划核对表

在安装 应用程序之前,请确保复查以下规划核对表中的信息。

  规划任务 更多信息
验证硬件和软件是否满足最低系统需求。

在此 发行版中,所需的 Java 版本为 8。

系统需求
获取产品安装介质。 对于本地存储库下载,您大约需要五千兆字节 (5 GB) 的硬盘驱动器空间来下载和解压缩产品安装介质。 您可以从 jazz.net 下载服务器安装文件
复查安装拓扑。 无论您是在试用 ,还是在生产环境中安装此解决方案,请单击右边的链接以查看并研究不同的安装拓扑示例。 这些示例包括:评估拓扑、部门拓扑和分布式企业拓扑。 安装过程和拓扑示例
使所有机器上的时钟同步。 在分布式环境中,请确保所有机器上的时钟都已使用网络时间协议 (NTP) 进行同步。 有关 NTP 的更多信息,请访问网络时间协议 Web 站点
了解许可证发放。 许可证发放方案基于角色。 当您购买基于角色的许可证时,您将具有对应用程序的部分或全部功能的读、写和评论访问权。 客户访问许可证管理
了解查询和搜索索引管理。 这些 Deployment wiki 文章讨论了不同的 应用程序索引查询信息以及在 部署中实现它的方式。 此外,第二部分讨论了与索引管理和索引存储详细信息相关的不同管理任务。

第 1 部分: 中的查询、搜索和建立索引技术

第 2 部分:索引存储和管理(备份、恢复和重新创建)

安装过程和拓扑

在安装过程中,规划环境很关键,您计划将此安装用于部门或企业开发时尤其如此。 请参阅示例:安装过程和拓扑以了解各种安装过程和拓扑。

示例拓扑:单服务器评估

部署的常见拓扑是带有 Liberty 和 Derby 的单服务器 () 评估拓扑。 此拓扑对小型部署(例如评估、演示或培训部署)很有用,因为 Derby 数据库被限制为仅供 10 个用户使用。

示例拓扑:标准单服务器部门

常见安装拓扑是具有 和企业数据库管理系统(例如,IBM Db2、Db2 for z/OS 和 Db2 for i)的 () 企业拓扑的标准单服务器部署。

示例拓扑:分布式企业

常见安装拓扑是具有 和企业数据库管理系统(例如,IBM Db2、Db2 for z/OS 或 Db2 for i)的 () 部门拓扑的分布式部署。

集群环境的需求

要为应用程序设置集群环境,需要下列服务器:

要设置具有 HAProxy 高可用性的系统,需要下列服务器:

环境中的所有服务器都必须已配置它们的标准主机名称。 更新 /etc/hosts 文件时,请使用 IP fully-qualified-host-name alias [,alias] 格式。 请注意,标准主机名必须显示在任何别名前面。 否则,可能不会对多个节点启用集群。

有关 系统需求的列表,请参阅系统需求

设置集群环境

 

设置集群环境

 

设置 HAProxy 负载均衡器

注:不支持在 Windows 平台上安装 HAProxy 负载均衡器。

您必须安装和配置 HAProxy 之后才能激活集群。 有关 HAProxy 的更多信息,请参阅 www.haproxy.org

注:还可以配置和使用 IHS 而不是 HAProxy,但在集群中仅必须使用这两种方法中的一种方法来进行负载均衡。

I. 安装非 Dockerized 版本的 HAProxy

HAProxy 是正式的 Red Hat Linux 存储库的一部分,可以使用 yum 命令来安装 HAProxy。 您必须具有 root 用户许可权,否则,请使用 sudo 命令来执行安装。

  1. 要安装 HAProxy,请打开命令 shell 并输入以下命令:

    yum -y install haproxy

  2. 缺省情况下,HAProxy 安装在 /usr/local/haproxy/etc/haproxy 目录中。 请转至 HAProxy 安装目录,并备份 haproxy.cfg 文件。 例如,创建 haproxy.cfg.backup 文件。
  3. 打开 haproxy.cfg 文件进行编辑,并根据需要对其进行配置。 使用以下示例作为参考。 有关配置语言和可用选项的更多详细信息,请参阅 HAProxy 配置手册

    注:如果 的前端具有 HAProxy,请参阅此 Depolyment Wiki 文档的 haproxy.cfg 样本文件。

    用于 集群的 haproxy.cfg 样本文件

    # ---------------------------------------------------------------------
    # 可能的 Web 应用程序的示例配置。 请参阅
    # 联机完整配置选项。
    #
    # http://haproxy.1wt.eu/download/1.6/doc/configuration.txt
    #
    # ---------------------------------------------------------------------

    # ---------------------------------------------------------------------
    # 全局设置
    # ---------------------------------------------------------------------
    全局
    # 如果不使用 dockerized 版本,那么
    # 要使这些消息在 /var/log/haproxy.log 中结束,您将
    # 需要:
    #
    # 1) 配置 syslog 以接受网络日志事件。 具体做法是
    # 在'-r' 选项到
    # /etc/sysconfig/rsyslog
    #
    # 2) 配置 local2 事件到 /var/log/haproxy.log
    # 文件。 A line like the following can be added to
    # /etc/sysconfig/rsyslog
    #
    # local2.* /var/log/haproxy.log
    #
    # 3) uncomment the line below and comment the other log line
    #log 127.0.0.1 local2
    log /dev/log local2

    chroot /var/lib/haproxy
    pidfile /var/run/haproxy.pid
    maxconn 6000
    user haproxy
    group haproxy
    daemon

    # turn on stats unix socket
    stats socket /var/lib/haproxy/stats

    tune.ssl.default-dh-param 2048

    #---------------------------------------------------------------------
    # common defaults that all the 'listen' and 'backend' sections will
    # use if not designated in their block
    #---------------------------------------------------------------------
    defaults
    mode http
    option dontlognull
    option http-keep-alive
    option redispatch
    retries 3
    timeout http-request 10s
    timeout queue 1m
    timeout connect 10s
    timeout client 2h
    timeout server 2h
    timeout http-keep-alive 10s
    timeout check 10s
    maxconn 6000

    #---------------------------------------------------------------------
    # main frontend which proxys to the backends
    #---------------------------------------------------------------------
    frontend lanneluc-proxy
    bind *:80
    bind *:9443 ssl crt /etc/haproxy/ssl/proxy.pem no-sslv3
    log global
    option httplog
    mode http
    capture cookie SERVERID len 32
    redirect scheme https if !{ ssl_fc }
    maxconn 2000 # The expected number of the users of the system.
    # 将套接字限制为此数目的并发连接。 无关的
    # 连接将保留在系统的待办事项中,直到连接
    # 释放为止。 如果未指定,那么限制将与前端的
    # maxconn 相同。
    default_backend ccm


    backend ccm

    option forwardfor
    http-request set-header X-Forwarded-Port %[dst_port]
    http-request add-header X-Forwarded-Proto https if { ssl_fc }
    fullconn 1000 # 如果未指定、HAProxy


    balance leastconn
    Cookie SERVERID insert indirect nocache secure attr "SameSite=None"

    # minconn = 100、服务器将始终接受至少 100 个,
    # 但不超过 "maxconn "的连接。 应与 Liberty
    # server.xml
    中的设置相同。
    # 将对超额进行排队。 The total for all nodes should be equal to maxxcon
    # on 'frontend'
    server ccm1 node1.host.com:9443 minconn 100 maxconn 500 ssl check cookie ccm1 verify none
    server ccm2 node2.host.com:9443 minconn 100 maxconn 500 ssl check cookie ccm2 verify none
    server ccm3 node3.host.com:9443 minconn 100 maxconn 500 ssl check cookie ccm3 verify none
    server ccm4 node5.host.com:9443 minconn 100 maxconn 500 ssl check cookie ccm4 verify none

    # Uncomment the following section if your MessageBroker is fronted by HAProxy (for example if in High Availability mode)
    #
    # # connect MessageBroker cluster in tcp mode (N servers if HA mode, or a single server if IoT MessageBroker just must be fronted by proxy)
    # listen MessageBroker
    # bind *:1883
    # mode tcp
    # balance leastconn
    # option tcplog
    # server MessageBroker1 [MessageBroker server 1 URI]:1883 check
    # server MessageBroker2 [MessageBroker server 2 URI]:1883 check
    # # connect MessageBroker cluster in HTTP mode to allow gathering of MQTT statistics (6.0.6 and newer only) (N servers if HA mode, or a single server if IoT MessageBroker just must be fronted by proxy)
    # listen MessageBroker_REST
    # bind *:9089 ssl crt /etc/haproxy/ssl/msigh.pem no-sslv3 # Port (9089) must match that configured in MessageBroker, and the same port needs to be specified in MQTTStatsService advanced property
    # mode http
    # option tcp-check # Must tell HAProxy to use TCP port to do health checks
    # balance leastconn
    # # Same number of entries and same servers as in the section above:
    # server MessageBroker_REST1 [MessageBroker server 1 URI]:9089 check port 1883 # Same ports (1883 and 9089) as used elsewhere in this file.
    # server MessageBroker_REST2 [MessageBroker server 2 URI]:9089 check port 1883 # 与本文件其他地方使用的端口(1883 和 9089)相同。

    listen statistics
    bind *:1936
    stats uri /
    stats admin if TRUE
    stats enable
    stats hide-version
    stats auth root:clu8ter8
    统计刷新 5s

    用于 QM 集群的 haproxy.cfg 样本文件

    # ---------------------------------------------------------------------
    # 可能的 Web 应用程序的示例配置。 请参阅
    # 联机完整配置选项。
    #
    # http://haproxy.1wt.eu/download/1.6/doc/configuration.txt
    #
    # ---------------------------------------------------------------------

    # ---------------------------------------------------------------------
    # 全局设置
    # ---------------------------------------------------------------------
    全局
    # 如果不使用 dockerized 版本,那么
    # 要使这些消息在 /var/log/haproxy.log 中结束,您将
    # 需要:
    #
    # 1) 配置 syslog 以接受网络日志事件。 具体做法是
    # 在'-r' 选项到
    # /etc/sysconfig/rsyslog
    #
    # 2) 配置 local2 事件到 /var/log/haproxy.log
    # 文件。 A line like the following can be added to
    # /etc/sysconfig/rsyslog
    #
    # local2.* /var/log/haproxy.log
    #
    # 3) uncomment the line below and comment the other log line
    #log 127.0.0.1 local2
    log /dev/log local2

    chroot /var/lib/haproxy
    pidfile /var/run/haproxy.pid
    maxconn 6000
    user haproxy
    group haproxy
    daemon

    # turn on stats unix socket
    stats socket /var/lib/haproxy/stats

    tune.ssl.default-dh-param 2048

    #---------------------------------------------------------------------
    # common defaults that all the 'listen' and 'backend' sections will
    # use if not designated in their block
    #---------------------------------------------------------------------
    defaults
    mode http
    option dontlognull
    option http-keep-alive
    option redispatch
    retries 3
    timeout http-request 10s
    timeout queue 1m
    timeout connect 10s
    timeout client 2h
    timeout server 2h
    timeout http-keep-alive 10s
    timeout check 10s
    maxconn 6000

    #---------------------------------------------------------------------
    # main frontend which proxys to the backends
    #---------------------------------------------------------------------
    frontend lanneluc-proxy
    bind *:80
    bind *:9443 ssl crt /etc/haproxy/ssl/proxy.pem no-sslv3
    log global
    option httplog
    mode http
    capture cookie SERVERID len 32
    redirect scheme https if !{ ssl_fc }
    maxconn 2000 # The expected number of the users of the system.
    # 将套接字限制为此数目的并发连接。 无关的
    # 连接将保留在系统的待办事项中,直到连接
    # 释放为止。 如果未指定,那么限制将与前端的
    # maxconn 相同。
    default_backend qm


    backend qm

    option forwardfor
    http-request set-header X-Forwarded-Port %[dst_port]
    http-request add-header X-Forwarded-Proto https if { ssl_fc }
    fullconn 1000 # 如果未指定、HAProxy


    balance leastconn
    cookie SERVERID insert indirect nocache secure attr "SameSite=None"

    # minconn = 100、服务器将始终接受至少 100 个,
    # 但不超过 "maxconn "的连接。 应与 QM Liberty 相同
    # server.xml
    # maxconn = 500,即发送到服务器的最大连接数。
    # 将对超额进行排队。 The total for all nodes should be equal to maxxcon
    # on 'frontend'
    server qm1 node1.host.com:9443 minconn 100 maxconn 500 ssl check cookie ccm1 verify none
    server qm2 node2.host.com:9443 minconn 100 maxconn 500 ssl check cookie qm2 verify none
    server qm3 node3.host.com:9443 minconn 100 maxconn 500 ssl check cookie qm3 verify none
    server qm4 node5.host.com:9443 minconn 100 maxconn 500 ssl check cookie qm4 verify none

    # Uncomment the following section if your MessageBroker is fronted by HAProxy (for example if in High Availability mode)
    #
    # # connect MessageBroker cluster in tcp mode (N servers if HA mode, or a single server if IoT MessageBroker just must be fronted by proxy)
    # listen MessageBroker
    # bind *:1883
    # mode tcp
    # balance leastconn
    # option tcplog
    # server MessageBroker1 [MessageBroker server 1 URI]:1883 check
    # server MessageBroker2 [MessageBroker server 2 URI]:1883 check
    # # connect MessageBroker cluster in HTTP mode to allow gathering of MQTT statistics (6.0.6 and newer only) (N servers if HA mode, or a single server if IoT MessageBroker just must be fronted by proxy)
    # listen MessageBroker_REST
    # bind *:9089 ssl crt /etc/haproxy/ssl/msigh.pem no-sslv3 # Port (9089) must match that configured in MessageBroker, and the same port needs to be specified in MQTTStatsService advanced property
    # mode http
    # option tcp-check # Must tell HAProxy to use TCP port to do health checks
    # balance leastconn
    # # Same number of entries and same servers as in the section above:
    # server MessageBroker_REST1 [MessageBroker server 1 URI]:9089 check port 1883 # Same ports (1883 and 9089) as used elsewhere in this file.
    # server MessageBroker_REST2 [MessageBroker server 2 URI]:9089 check port 1883 # 与本文件其他地方使用的端口(1883 和 9089)相同。

    listen statistics
    bind *:1936
    stats uri /
    stats admin if TRUE
    stats enable
    stats hide-version
    stats auth root:clu8ter8
    统计刷新 5s

    必须确保已正确输入该配置文件中的若干重要条目:

    • /etc/haproxy/ssl/proxy.pem:此条目所引用的证书必须可用于 HAProxy,以便代理服务器可以检查通过 SSL 加密的流量。 会话亲缘关系需要此功能,会话亲缘关系是 中重要的集群组成部分。
    • balance leastconn:这是均衡策略。 cookie SERVERID insert indirect nocache secure attr "SameSite=None" 设置可确保用户登录信息在不同会话之间传递。 如果没有此设置,那么用户在浏览到任何需要用户验证的 URL 之后,将需要再次登录。
    • 后端服务器:将 ccmxqmx 替换为应用程序名称,并将 nodex.host.com:9443 替换为服务器 URL。
    • minconn、maxconn 和 fullconn:最小连接数、最大连接数和完全连接数参数。
    • 管理界面

      侦听统计信息
      bind *: 1936
      stats uri/
      stats admin if TRUE
      stats enable
      stats hide-version
      stats auth root:clu8ter8
      stats 刷新 5s

      后续章节中详细说明了这些条目。

  4. 打开命令 Shell,并输入以下命令来启用该服务:

    systemctl enable haproxy

  5. 输入以下命令来启动该服务:

    service haproxy start

二. 安装证书

HAProxy 需要证书来解析已加密的流量。 您可以使用自签名证书。 下列命令将为您的测试环境创建自签名证书,但在必要时,您必须获取实际证书。

OpenSSL 将提示您输入证书的详细信息,例如主机名等。 双引号是可选的。 主机名 (CN) 是安装了 HAProxy 的服务器的主机名:

cd /usr/local/haproxy/etc
openssl genrsa -des3 -out ssl/proxy.key 2048
openssl req -new -key "ssl/proxy.key" -out "ssl/proxy.csr"
openssl x509 -req -days 365 in "ssl/proxy.csr" -signkey "ssl/proxy.key" -out "ssl/proxy.crt"
cat ssl/proxy.crt ssl/proxy.csr > ssl/proxy.pem

三. 使用负载均衡规则

HAProxy 提供了若干负载均衡算法。 在配置示例中,使用了 balance leastconn 选项。 balance leastconn 选项指示 HAProxy 将流量定向至连接数最少的后端服务器。

四. 配置后端服务器

后端服务器是配置文件中以 "server" 开头的行。 这些条目指示 HAProxy 将流量重定向至节点。 在配置示例中,有 4 个节点。 请将 nodex.host.com 部分替换为 服务器(副本)所安装在的服务器(节点)的实际主机名。

可以对 HAProxy 进行预配置,以使其后端服务器(节点)数与您计划具有的 节点数一样多。 对于初始设置阶段,通过注释掉除第一行之外的所有其他服务器行,从一个节点上的一个 实例开始进行设置:

示例:

服务器 ccm1 node1.host.com: 9443 minconn 100 maxconn 500 ssl check cookie ccm1 verify none
#server ccm2 node2.host.com: 9443 minconn 100 maxconn 500 ssl check cookie ccm2 verify none
#server ccm3 node3.host.com: 9443 minconn 100 maxconn 500 ssl check cookie ccm3 verify none
#server ccm4 node5.host.com: 9443 minconn 100 maxconn 500 ssl check cookie ccm4 verify none

QM 示例:

服务器 qm1 node1.host.com: 9443 minconn 100 maxconn 500 ssl check cookie qm1 verify none
#server qm2 node2.host.com: 9443 minconn 100 maxconn 500 ssl check cookie qm2 verify none
#server qm3 node3.host.com: 9443 minconn 100 maxconn 500 ssl check cookie qm3 verify none
#server qm4 node5.host.com: 9443 minconn 100 maxconn 500 ssl check cookie qm4 verify none

配置 HAProxy 之后,如果它正在作为服务运行,那么可以通过输入以下命令来启动、停止和重新启动它:

sudo service haproxy start|stop|restart|reload

V. 优化连接数

minconnmaxconnfullconn 参数用来对服务器进行微调以及控制服务器可以处理的同时存在的连接数。 如果建立了更多连接,那么将对超额的连接进行缓存。 可能很难确定这些参数的最佳连接数,因为最佳连接数取决于期望用户数和服务器响应能力,而这可能会受到可用资源量和网络带宽等的影响。 可以根据预期要使用集群应用程序的用户数,对连接数进行微调。

这些数目还与 的配置方式相关。 默认情况下,运行 实例配置为 coreThreads="100" ,这是处理传入请求的最低线程数。 最大值受到可用系统资源量的限制。 因此,minconn 参数应设置为 coreThreads 设置的值。 后端部分(即,每个后端服务器都有一个后端部分)中的 maxconn 值应设置为服务器能够处理并且对性能或响应时间不会有任何不良影响的最大用户数。 在先前提供的配置示例中,maxconn 值在每个后端都设置为 500。 所有后端 maxconn 值的总计应该等于配置文件的前端部分中设置的 maxconn 值。 例如,如果有四个节点,每个节点设置为 maxconn=500,那么前端中的 maxconn 值应设置为 2000。

六. 访问监视控制台和日志

配置文件中的最后部分指定如何访问 HAProxy 监视控制台。 该控制台显示节点数和节点状态以及传入流量和传出流量。 对于运行良好的集群,如果已使所有节点在几乎相同的时间联机,那么会话数(Total 和 lbTotal)应该大致相同,并且不同节点上所传输的字节数应该相差不大。 应当没有错误或警告。

HAProxy 会在以下目录中保留一个日志文件:/var/log/haproxy.log。 此日志文件包含有关哪些请求已重定向至哪些后端服务器的信息以及其他 HAProxy 信息,例如,会话亲缘关系 Cookie 和响应代码。

可选:设置 HAProxy 高可用性

 

可选:设置定制负载均衡

HAProxy 提供了用于适用和调整其行为的不同参数,其中包括名为 weight 的属性,您可以使用此属性来标识用于负载均衡的服务器。 此属性仅用于第一个会话请求,因为此会话的所有其他请求都将通过会话亲缘关系路由至同一服务器。 权重必须是 1 到 256 之间的值。 如果未设置 weight 属性,那么会使用缺省值 1。

可以将 weight 属性添加至后端中的任何服务器声明,如以下行中所示:

后端 ccm
...
server ccm1 node1.host.com:9443 minconn 100 maxconn 500 ssl check weight 50 cookie ccm1 verify none

后端 qm
...
server qm1 node1.host.com:9443 minconn 100 maxconn 500 ssl check weight 50 cookie qm1 验证无

weight 参数使您可以为服务器定义特定权重。 但是,每当您要变更权重时,都必须编辑 haproxy.cfg 文件。 为了避免打开 haproxy.cfg 文件来变更权重,可以使用套接字接口,以在 HAProxy 服务器处于运行状态时变更权重。 使用以下过程来安装 Socat 程序,该程序允许您将消息发送至 HAProxy TCP 统计信息套接字:

过程

  1. 要安装 Socat,请在 Shell 中输入以下命令:

    yum -y install socat

  2. 打开 haproxy.cfg 文件并进行编辑,以声明套接字并设置其许可权和级别。 请将下列行添加至 haproxy.cfggeneral 部分。 在以下示例中,使用了 /var/lib/haproxy/stats.sock 目录中的套接字。 仅允许在 haproxy.cfg 文件中声明为 HAProxy 用户的用户连接至套接字方式 600。 访问级别设置为 administrator,以允许使用套接字来更新 weight 参数:

    stats 套接字 /var/lib/haproxy/stats.sock mode 600 level admin
    stats timeout 2m

  3. 重新启动 HAProxy 服务器。
  4. 根据服务器活动来确定节点的正确权重。 可以从所有节点收集系统数据,然后根据所收集的数据来计算权重。 根据系统数据计算正确的权重之后,可以创建脚本,并将该权重用于所有节点。 在以下示例中,ccm 是后端的名称,ccm1 是服务器节点的名称,新权重设置为 50

    echo "set weight ccm/<serverName> <newWeight>" | socat unix-connect:/var/lib/haproxy/stats.sock stdio
    ex: echo "set weight ccm/ccm1 50" | socat unix- connect:/var/lib/haproxy/stats.sock stdio

  5. 根据服务器活动来确定节点的正确权重。 可以从所有节点收集系统数据,然后根据所收集的数据来计算权重。 根据系统数据计算正确的权重之后,可以创建脚本,并将该权重用于所有节点。 在以下示例中,qm 是后端的名称,qm1 是服务器节点的名称,新权重设置为 50

    echo "set weight qm/<serverName> <newWeight>" | socat unix-connect:/var/lib/haproxy/stats.sock stdio
    ex: echo "set weight qm/qm1 50" | socat unix- connect:/var/lib/haproxy/stats.sock stdio

设置

注:不支持在 Windows 平台上安装

为物联网 (IoT) 和移动环境提供快速安全的双向消息传递。 是高性能 MQTT 代理。

I. 安装非 Dockerized 版本的

过程

要安装非 Dockerized 版本的 ,请完成下列步骤:

  1. ibm.com下载最新 5.0 所需的软件包。

    注:需要具有 IBM 标识才能访问这些文件。 如果您不具有 IBM 标识,那么系统将提示您创建 IBM 标识,然后才能下载

  2. 请遵循 文档中的指示信息来安装非 Dockerized (RPM) 版本。

II.登录 Web UI

有关完整的指示信息,请参阅 文档

三. 配置

使用称为集线器的组织配置对象来定义配置策略。

过程

  1. 通过遵循前一任务中的过程登录到 Web UI 之后,创建新的集线器,然后创建并分配连接策略、消息传递策略和端点。
  2. 创建新的连接策略。 请提供名称和描述。 输入客户机标识,然后选择 MQTT 作为协议。 在指定允许 MQTT 客户机使用的资源下,选中允许使用具有持久预订的客户机允许使用持久消息复选框。
  3. 转至消息传递策略选项卡,并创建新的主题策略。 提供新的主题策略的名称和描述。 输入客户机标识,然后选择 MQTT 作为协议。 在主题字段中输入一个星号 (*),并在权限下,选中发布预订复选框。 在订户设置下,确保输入 10000 作为最大消息数值,并选择废弃旧消息作为最大消息数行为值。
  4. 最后,创建新端点。 请提供名称和描述。 在端口字段中,指定客户机( 节点)用来进行连接以发布和预订消息的端口。 稍后,将此端口添加至 server.startup 文件。 选择 MQTT 作为协议。 将最大消息大小设置为 4096。 在连接策略消息传递策略下,添加您在先前步骤中创建的连接策略和消息传递策略(主题策略)。

四. 监视预订

可以使用 Web UI 来查看预订监视统计信息。 要访问监视预订,请转至 "预订" 页面,方法是选择 监视 > 预订

在“监视”视图中,您可以看到所有 MQTT 客户机(节点)、所预订和发布的主题、活动使用者、消息数以及缓冲区大小。 可以使用各种选项对数据进行过滤。

V. 可选: 高可用性

要实现 高可用性(主节点和备用节点),请参阅 文档中的下列主题:

安装服务器

开始之前

开始安装之前,请完成下列任务:

  • 如果您已安装 产品以进行试用或演示,那么在开始新安装之前,必须卸载并移除所有与 相关的应用程序目录。 有关更多信息,请参阅卸载 应用程序
  • 要安装 () 的服务器和应用程序,必须获取安装文件。 您可以从 Jazz.net 下载部分下载适用于您平台的 Web 安装程序或 Installation Manager 存储库程序包。
  • Jazz.net 下载区域获取安装文件。
  • 在 IBM AIX® 平台上,可以使用 jar 命令解压缩软件包,但必须运行以下 chmod 命令,以确保 Launchpad 程序具有正确的执行权限:chmod -R +x launchpad.sh
  • 您的平台必须具有受支持的 IBM® Installation Manager 版本。 Web 安装程序下载项包含 Installation Manager。 继续进行的最简单方法是获取适用于您平台的 Web 安装程序下载项。
  • 您必须有针对所要安装的产品定制的 Installation Manager 响应文件。 Web 安装程序下载包含样本响应文件,用于安装每个可用的产品。
  • 您必须有所要安装的每个产品的 Installation Manager 存储库。 在产品下载页面的“All Downloads”部分中提供了这些存储库。
  • 将已下载的 .zip 文件解压缩到临时目录。 为了避免发生问题,请勿使用名称含有空格的长路径和目录。 将您下载的任何其他 Installation Manager 存储库文件解压缩到 Web 安装程序所在的目录。
  • 这些响应文件包含使用了 -acceptLicense 参数的命令行调用示例。 在尝试进行命令行安装之前,请查看产品下载包的顶级目录 /license 中的许可协议。 请在命令行中使用 -acceptLicense 参数指示接受此许可协议。
  • 每个响应文件都包含一行,用于引用要在安装期间使用的 Installation Manager 存储库。 编辑存储库位置属性,以指向您将 Installation Manager 存储库文件解压缩到的目录中的 repository.config 文件。
  • 必须先增加打开文件的限制,然后才能在 IBM AIX® 系统上安装和运行 应用程序:
    1. 启动 smit。
    2. 转至 安全性和用户 > 用户 > 更改/显示用户的特征
    3. 输入 运行时采用的用户标识。
    4. 软 NOFILE 描述符硬 NOFILE 描述符字段中输入值 65536。
    5. 每个用户的软 NPROC每个用户的硬 NPROC 字段中输入值 10000。
    6. 从系统注销然后重新登录。
    7. 启动应用程序服务器之前,运行 ulimit -nulimit -u 以查看配置是否生效。 ulimit -n 的输出必须是 65536,ulimit -u 的输出必须是 10000。
  • 除非您计划执行静默安装,否则需要受支持的浏览器才能使用图形用户界面和 IBM Installation Manager 来安装产品。
  • 浏览器必须包含在 $PATH 环境变量中。 如果 IBM Installation Manager 的 launchpad.sh 程序找不到浏览器,那么将显示错误消息。
  • 您可以在 Linux 系统上安装和运行 应用程序之前,必须先提高打开文件数和用户进程数限制:
    1. 以 root 用户身份在 /etc/security/limits.conf 文件中添加以下各行:

      * hard nofile 65536
      * soft nofile 65536
      * hard nproc 10000
      * soft nproc 10000

    2. 如果您使用的是 REHL7,请确保 /etc/security/limits.d/20-nproc.conf 中的 nproc 值设置为 10000。
    3. 修改配置文件之后,请重新启动 Linux 系统。
    4. 要在正在运行的 shell 中增大这些限制,请使用下列命令:

      ulimit -n 65536
      ulimit -u 10000

      注:如果使用这些命令,请从同一 shell 中启动 启动板程序或 IBM Installation Manager,以继承修改后的限制。 在应用这些设置之后,请通过运行 Jazz_Install_Dir/server/repotools-jts -reindex repotools 命令对服务器重建索引,以修正所有已损坏的服务器索引。

  • 如果已启用 Security-Enhanced Linux (SELinux),那么必须将其禁用或者变更 Java 运行时环境 (JRE) 的安全上下文,以允许进行文本重定位。 有关更多信息,请参阅使用 Security-Enhanced Linux 进行安装
  • 应用程序的安装路径名称不得包含空格。 启动脚本 (Jazz_Install_Dir/server/server.startup) 和存储库工具脚本 (Jazz_Install_Dir/server/repotools-app.sh) 将检测并报告此问题。
  • 您的 Linux 系统中必须有 GTK x32 库,才能从启动板程序打开 Installation Manager 链接。 有关更多信息,请参阅 jazz.net 上的文章
  • 运行 应用程序时,可以修改日志和其他文件以及将它们写入至安装目录。 要使所有用户都能够写入安装目录,您必须手动授予对 Jazz_Install_Dir 的写许可权。

重要信息: 如果使用系统启动脚本 (例如 /etc/init.d/was/etc/rc.*/SXXWebSphere ) 在系统引导时启动 WebSphere® Application Server , init.d 调用最大文件描述符数设置为 1024 的启动脚本,而不是 /etc/security/limits.conf (65536) 中设置的系统缺省值。 为了避免发生此问题,请在启动脚本开头添加 ulimit -n 65536 命令。 这将确保在采用正确文件描述符限制的情况下启动

关于本任务

共有两种下载和安装 应用程序的方法。 第一种安装方法是基于 Web 的安装,此安装方法的下载量较小,并且将在安装期间连接到因特网以获取存储库文件。 如果您必须在无法访问因特网的环境中安装服务器,请使用第二种安装方法:将存储库文件下载到本地计算机并将其解压缩,以便安装服务器。

如果未在服务器上安装“用户界面”库或只是偏好使用命令行安装方法,那么可使用 响应文件来安装 。 此方法也称为 静默安装

提供了两个样本响应文件,用于安装 应用程序:

  • silent-install-server.xml:使用此脚本可在 C:\tmp\silent-install\JazzTeamServer/tmp/silent-install/JazzTeamServer 目录中生成 应用程序的一个安装程序,您可以将该安装程序压缩并重定位到文件系统上,也可以将其重定位到其他具有相同操作系统和体系结构的计算机。 要使用此脚本,必须已将 Installation Manager 安装在服务器上。
  • silent-install-server2.xml:使用此脚本可在缺省安装位置安装 应用程序。 如果未安装 Installation Manager,那么此脚本将先在服务器上安装 Installation Manager,再继续执行 安装。

要安装 ,可以使用 silent-install-db-server.xml 样本响应文件。

提供了两个样本响应文件,用于安装

  • silent-install-jas.xml:使用此脚本可在 C:\tmp\silent-install\JazzAuthServer/tmp/silent-install/JazzAuthServer 目录中生成 安装,该安装可压缩并在文件系统上重定位,或者重定位至其他具有相同操作系统和体系结构的计算机。 要使用此脚本,必须已将 Installation Manager 安装在服务器上。
  • silent-install-jas2.xml:使用此脚本可在缺省安装位置安装 。 如果未安装 Installation Manager,那么此脚本将先在服务器上安装 Installation Manager,再继续执行 安装。

除了服务器样本响应文件外,还包含以下其他组件样本响应文件:
  • silent-install-buildsystem.xml:安装 Build System Toolkit
  • silent-install-cc-connector.xml:安装 Rational ClearCase 同步器
  • silent-install-client.xml:安装 - Client for Eclipse IDE
  • silent-install-cq-connector.xml:安装 Rational ClearQuest Synchronizer
  • silent-install-jazz-msscci.xml:安装 MS-SCCI 提供程序
  • silent-install-vs-client.xml:安装 - Client for Microsoft Visual Studio
  • silent-install-windows-shell-client.xml:安装 Windows 资源管理器 Shell

过程

注:请确保 应用程序已安装在服务器上,或者您正在使用“体系结构管理扩展”进行安装。 如果服务器上不存在相同版本的 应用程序,那么安装将失败。

  1. 将已下载的 .zip 文件解压缩到临时目录。 为了避免发生问题,请勿使用名称含有空格的长路径和目录。
  2. 使用 Web 安装程序或 Installation Manager 存储库程序包进行安装。
    • 要使用 Web 安装程序进行安装,请完成下列步骤:
      1. 打开命令提示符,并切换到 .zip 文件所解压缩到的目录,然后输入 launchpad。 启动板将打开。

        注:如果要以非 root 用户非管理员用户身份安装产品,请从选择 Installation Manager 的用户方式列表中选择非管理员。 如果选择非管理员,那么这些软件包将安装在用户的目录中,程序包组将名为 My 而且,在启用了用户访问控制 (UAC) 的 Windows 操作系统上,要安装这些应用程序的用户必须能够写至安装目录。

      2. 访问启动板中的链接以继续安装。 访问启动板中的链接时,Installation Manager 将打开以安装软件包。
    • 要使用 Installation Manager 存储库程序包进行安装,请完成下列步骤:
      1. 启动 Installation Manager。

        如果没有受支持版本的 Installation Manager,那么可从 Jazz.net 获取,也可下载包含 Installation Manager 的 Web 安装程序。

      2. 单击 文件 > 首选项,然后选择 添加存储库
      3. 要指定存储库位置,请浏览至下载的 .zip 文件的存储目录并打开 repository.config 文件。
      4. 单击确定,然后单击安装以启动安装过程。
      5. 按照 Installation Manager 中的指示信息执行操作来安装软件包。
  3. 安装期间,选中带 WAS Liberty 概要文件安装复选框。
  4. 要安装报告组件,请选中 复选框,然后在 "选择要安装的功能部件" 页面上,展开 并选择要安装的以下报告组件:
    • Apache Cassandra
    • Elasticsearch
  5. 在安装 和应用程序以进行集群时,请确保选择启用 Jazz 安全体系结构 SSO
  6. 安装期间,取消选中带 WAS Liberty 概要文件安装复选框,然后选中安装应用程序 WAR 文件复选框。 这将确保在缺省 webapps 目录中复制应用程序 WAR 文件以便稍后部署。 还可选择您的选中目录来复制 WAR 文件。
  7. 要安装 ,请从“安装其他服务器”下的启动板菜单中选择安装 。 遵循 Installation Manager 向导中的步骤来安装 。 有关启动 的信息,请参阅部署和启动
  8. 要安装 ,请从“安装其他服务器”下的启动板菜单中选择安装 。 遵循 Installation Manager 向导中的步骤来安装 。 有关 的信息,请参阅 报告

注:如果您打算使用跨域身份管理系统 (SCIM) 标准,那么必须安装和配置 。 “启动板”程序中提供了用于安装 的链接。

注:可以将 安装在同一台计算机上,也可以安装在它自己的专用服务器上。 将 安装在您已标识为 的计算机上,并将集群应用程序安装在您已在 HAProxy 配置中启用的节点相对应的计算机上。

  1. 打开命令提示符并切换到 ExtractedDir\im\win32.win32.x86 目录。
  2. 打开命令 Shell 并切换到 ExtractedDir/im/linux.gtx.x86 目录。
  3. 打开命令 Shell 并切换到 ExtractedDir/im/linux.gtx.ppc 目录。
  4. 打开命令 Shell 并切换到 ExtractedDir/im/linux.gtx.s390 目录。
  5. 打开命令 Shell 并切换到 ExtractedDir/im/aix.motif.ppc 目录。
  6. 要以管理员身份将 应用程序安装到共享区域,请在以下命令中使用 installc 变体:

    .\installc -acceptLicense -showVerboseProgress -input silent-install-server2.xml --launcher.ini silent-install.ini

    ./installc -acceptLicense -showVerboseProgress -input silent-install-server2.xml --launcher.ini silent-install.ini

  7. 要将 应用程序安装到特定于用户的位置,请在以下命令中使用 userinstc 变量:

    .\userinstc -acceptLicense -showVerboseProgress -input silent-install-server2.xml --launcher.ini user-silent-install.ini

    ./userinstc -acceptLicense -showVerboseProgress -input silent-install-server2.xml --launcher.ini user-silent-install.ini

  8. 要以管理员身份将 安装到共享区域,请在以下命令中使用 installc 变体:

    .\installc -acceptLicense -showVerboseProgress -input silent-install-jas2.xml --launcher.ini silent-install.ini

    ./installc -acceptLicense -showVerboseProgress -input silent-install-jas2.xml --launcher.ini silent-install.ini

  9. 要将 安装到特定于用户的位置,请在以下命令中使用 userinstc 变量:

    .\userinstc -acceptLicense -showVerboseProgress -input silent-install-jas2.xml --launcher.ini user-silent-install.ini

    ./userinstc -acceptLicense -showVerboseProgress -input silent-install-jas2.xml --launcher.ini user-silent-install.ini

  10. 要以管理员身份安装 ,请在以下命令中使用 installc 变体:

    .\installc -acceptLicense -showVerboseProgress -input silent-install-db-server.xml --launcher.ini silent-install.ini

    ./installc -acceptLicense -showVerboseProgress -input silent-install-db-server.xml --launcher.ini silent-install.ini

  11. 要以非管理员身份安装 ,请在以下命令中使用 userinstc 变体:

    .\userinstc -acceptLicense -showVerboseProgress -input silent-install-db-server.xml --launcher.ini silent-install.ini

    ./userinstc -acceptLicense -showVerboseProgress -input silent-install-db-server.xml --launcher.ini silent-install.ini

  12. 缺省情况下,为 Liberty 服务器部署配置了响应文件。 要修改 部署的响应文件,请完成以下步骤:
    1. 打开 silent-install-server.xml,搜索 user.com.ibm.team.install.jfs.appserver.noappserver.disable 并将其值变更为 false
    2. 搜索 user.com.ibm.team.install.jfs.appserver.liberty.disable 并将其值变更为 true
    3. 从以下部分移除注释,并指定用于安装 Web 应用程序 WAR 文件的位置:

      <data key='user.JazzFoundationServer.NoAppServer.WebApps.InstallLocation'
      value='C:\tmp\silent-install\JazzTeamServer\server\webapps'/>

      <data key='user.JazzFoundationServer.NoAppServer.WebApps.InstallLocation'
      value='/tmp/silent-install/JazzTeamServer/server/webapps'/>

  13. 要取消安装某个应用程序,请搜索应用程序名称,然后注释掉或删除该行。 例如,如果不希望安装 应用程序,请搜索 rtc,然后删除或注释掉产品行:

    <!--
    <offering id='com.ibm.team.install.jfs.app.rtc'/>
    -->

  14. 缺省情况下,jrs 产品会安装所有报告功能部件。 如果要安装部分功能部件,请添加 features 参数,并列示要安装的功能部件(以逗号分隔),例如:

    <offering id='com.ibm.team.install.jfs.app.jrs' features='lqe,dcc'/>

注: 安装后,找到 <installdir>/server/server.startup 文件并编辑定义 JAVA_OPTS 的行,以将缺省 4GB 更改为 8GB。
例如, JAVA_OPTS = "$JAVA_OPTS -Xmx8G"

在 IBM i 上安装服务器

有关全新安装 的逐步指示信息,请参阅在 IBM i 上安装 应用程序

有关如何安装 Build System Toolkit 和上下文相关搜索引擎的详细指示信息,请参阅以下资源:

设置数据库

在为集群环境创建数据库之前,请确保已对磁盘配置启用读取和写入高速缓存。

打开 /etc/security/limits.conf 文件,设置下列 ulimit 参数:

<dbuser> hard nofile 65536
<dbuser> soft nofile 65536
<dbuser> hard nproc 65536
<dbuser> soft nproc 65536

如果使用的是所包含的 Derby 数据库,那么不必进行任何其他设置。 继续执行下一步。

注:虽然 Derby 数据库包括在缺省配置中且无需进行安装,但是此数据库限制为供 10 个用户使用。 要支持更多用户,请安装受支持的企业数据库(例如 Db2、Oracle 或 SQL Server)。

要创建数据库表,请参阅以远程方式创建 Db2 for z/OS 数据库表

缺省情况下,在 IBM i 系统上设置和配置了 IBM Db2i 数据库。 不需要其他设置。 继续执行下一步。

产品支持 IBM Db2 Enterprise Server Edition。 对于不支持 Enterprise Server Edition 的平台,可以使用 IBM Db2 Workgroup Server Edition。 您可以从 ibm.com 下载其中一个 Db2 版本的试用版或者免费的 Db2 Express Server 版本(适用于不超过 50 位开发者的部署)。

开始之前

此过程要求满足以下先决条件:

  • 您有正确的用户密码。 在 UNIX 系统上,请获取 Db2 实例所有者(通常为 db2inst1 用户)的密码。
  • 您已查看 Db2 文档以确认系统满足要求并且已正确地进行配置。
  • 在要用作数据库服务器的计算机上,Db2 已安装并且正在运行。 此计算机可以不是运行 的计算机。
  • teamserver.properties 文件中的用户对数据库具有系统管理员权限。 有关以仅具有 DBADM 权限的用户身份准备 Db2 数据库的信息,请参阅此 Wiki 页面

过程

数据库

  1. 打开 Db2 命令窗口。
  2. 输入以下命令为 创建名为 JTS 并采用 16K 页和 UTF-8 代码集的数据库:

    db2 create database JTS using codeset UTF-8 territory en PAGESIZE 16384

数据库

  1. 打开 Db2 命令窗口。
  2. 输入以下命令为 创建名为 PUB 并采用 16K 页和 UTF-8 代码集的数据库:

    db2 create database PUB using codeset UTF-8 territory en PAGESIZE 16384

数据库

  1. 创建名为 createOauthTablesDB2.sql 的文件。 请参阅以下 SQL 示例,以便为 创建数据库和表。 可以使用不同于 oauth2db 的数据库名称,但是必须使用 OAuthDBSchema 模式。

    另请注意,这些值是示例,您应根据自己的使用情况和环境加以变更。 例如,如果 TOKENSTRING 值 2048 太小,您可使用数据类型 TOKENSTRING NVARCHAR(MAX) NOT NULL, 予以增大。

    CREATE DATABASE oauth2db USING CODESET UTF8 TERRITORY US;
    CONNECT TO oauth2db;

    CREATE BUFFERPOOL BUFF16K IMMEDIATE SIZE 2500 AUTOMATIC PAGESIZE 16K;
    create tablespace TAB16K pagesize 16K bufferpool BUFF16K dropped table recovery on;
    CREATE SYSTEM TEMPORARY TABLESPACE TEMPSYS16K PAGESIZE 16K BUFFERPOOL BUFF16K;

    ---- CREATE TABLES ----
    CREATE TABLE OAuthDBSchema.OAUTH20CACHE
    (
    LOOKUPKEY VARCHAR(256) NOT NULL,
    UNIQUEID VARCHAR(128) NOT NULL,
    COMPONENTID VARCHAR(256) NOT NULL,
    TYPE VARCHAR(64) NOT NULL,
    SUBTYPE VARCHAR(64),
    CREATEDAT BIGINT,
    LIFETIME INT,
    EXPIRES BIGINT,
    TOKENSTRING VARCHAR(2048) NOT NULL,
    CLIENTID VARCHAR(64) NOT NULL,
    USERNAME VARCHAR(64) NOT NULL,
    SCOPE VARCHAR(512) NOT NULL,
    REDIRECTURI VARCHAR(2048),
    STATEID VARCHAR(64) NOT NULL,
    EXTENDEDFIELDS CLOB NOT NULL DEFAULT '{}'
    );

    CREATE TABLE OAuthDBSchema.OAUTH20CLIENTCONFIG
    (
    COMPONENTID VARCHAR(256) NOT NULL,
    CLIENTID VARCHAR(256) NOT NULL,
    CLIENTSECRET VARCHAR(256),
    DISPLAYNAME VARCHAR(256) NOT NULL,
    REDIRECTURI VARCHAR(2048),
    ENABLED INT,
    CLIENTMETADATA CLOB NOT NULL DEFAULT '{}'
    );

    CREATE TABLE OAuthDBSchema.OAUTH20CONSENTCACHE (
    CLIENTID VARCHAR(256) NOT NULL,
    USERID VARCHAR(256),
    PROVIDERID VARCHAR(256) NOT NULL,
    SCOPE VARCHAR(1024) NOT NULL,
    EXPIRES BIGINT,
    EXTENDEDFIELDS CLOB NOT NULL DEFAULT '{}'
    );

    ---- ADD CONSTRAINTS ----
    ALTER TABLE OAuthDBSchema.OAUTH20CACHE
    ADD CONSTRAINT PK_LOOKUPKEY PRIMARY KEY (LOOKUPKEY);

    ALTER TABLE OAuthDBSchema.OAUTH20CLIENTCONFIG
    ADD CONSTRAINT PK_COMPIDCLIENTID PRIMARY KEY (COMPONENTID,CLIENTID);

    ---- CREATE INDEXES ----
    CREATE INDEX OAUTH20CACHE_EXPIRES ON OAUTHDBSCHEMA.OAUTH20CACHE (EXPIRES ASC);

    ---- GRANT PRIVILEGES ----
    ---- UNCOMMENT THE FOLLOWING IF YOU USE AN ACCOUNT OTHER THAN ADMINISTRATOR FOR DB ACCESS ----

    -- Change dbuser to the account you want to use to access your database
    -- GRANT ALL ON OAuthDBSchema.OAUTH20CACHE TO USER dbuser;
    -- GRANT ALL ON OAuthDBSchema.OAUTH20CLIENTCONFIG TO USER dbuser;

    ---- END OF GRANT PRIVILIGES ----

    DISCONNECT CURRENT;

  2. 打开 Db2 命令窗口并运行以下脚本,以创建数据库、表和索引,以及授予特权:

    db2 -stvf createOauthTablesDB2.sql

  3. 创建数据库表之后,必须将 配置为使用这些表。 转至 C:\IBM\JazzAuthServer\wlp\usr\servers\jazzop/opt/IBM/JazzAuthServer/wlp/usr/servers/jazzop 并打开 appConfig.xml 进行编辑。
  4. 注释掉以下 Apache Derby 数据库节:

    <dataSource id="OAuthFvtDataSource" jndiName="jdbc/OAuth2DB">
    <jdbcDriver libraryRef="DerbyLib" />
    <properties.derby.embedded
    databaseName="asDB"
    createDatabase="create" />
    </dataSource>

    <library id="DerbyLib">
    <fileset dir="${shared.config.dir}/lib/global" includes="derby.jar"。/>
    </library>

  5. 添加下一节,以配置 Db2 数据库。 您必须对此节进行定制,以使用您特定的 Db2 服务器:

    <jdbcDriver id="db2Universal" libraryRef="DB2JCC4LIB"/>
    <library id="DB2JCC4LIB" filesetRef="db2jcc4" apiTypeVisibility="spec,ibm-api,third-party"/>
    <fileset dir="${shared.config.dir}/lib/global" id="db2jcc4" includes="db2jcc4.jar db2jcc_license_cu.jar"/>
    <dataSource id="OAUTH2DBDS" jndiName="jdbc/oauthProvider" jdbcDriverRef="db2Universal">
    <properties.db2.jcc password="*****"databaseName="OAUTH2DB" user="db2inst1"portNumber="50000" serverName="yourDB2.com"driverType="4"/>
    </dataSource>

    对于下列属性,确保使用正确的值:

    • 对于 user,请提供用来连接到数据库的 Db2 用户的名称。
    • 对于 password,请使用 Db2 用户密码。
    • 对于 databaseName,请使用上一步中创建的数据库名称。 如果您已使用样本脚本文件,那么数据库名称为 OAUTH2DB
    • 对于 portNumber,请使用运行 Db2 实例的端口号。 缺省端口号为 50000。
    • 对于 serverName,请输入 Db2 服务器的主机名。

  6. appConfig.xml 文件的 oauthProvider 一节中,更新 databaseStore 属性,以使其指定 Db2 数据源,而非缺省的 Apache Derby 数据源。 databaseStore 属性应指定 Db2 数据源的名称,在本例中,该名称为 OAUTH2DBDS

    <oauthProvider id="JazzOP"
    httpsRequired="true"
    autoAuthorize="true"
    customLoginURL="/jazzop/form/login"
    accessTokenLifetime="7201"
    authorizationGrantLifetime="604801">
    <autoAuthorizeClient>client01</autoAuthorizeClient>
    <databaseStore dataSourceRef="OAUTH2DBDS" />
    </oauthProvider>

  7. 保存并关闭 appConfig.xml 文件。
  8. 将 Db2 db2jcc4.jardb2jcc_license_cu.jar JDBC 驱动程序从 Db2 服务器复制到以下目录:C:\IBM\JazzAuthServer\wlp\usr\shared\config\lib\globalopt/IBM/JazzAuthServer/wlp/usr/shared/config/lib/global

数据库

  1. 打开 Db2 命令窗口。
  2. 输入以下命令为 应用程序创建名为 并采用 16K 页和 UTF-8 代码集的数据库:

    db2 create database using codeset UTF-8 territory en PAGESIZE 16384

数据库

  1. 打开 Db2 命令窗口。
  2. 输入以下命令为 应用程序创建名为 QM 并采用 16K 页和 UTF-8 代码集的数据库:

    db2 create database QM using codeset UTF-8 territory en PAGESIZE 16384

数据库

  1. 打开 Db2 命令窗口。
  2. 输入以下命令为 应用程序创建名为 RM 并采用 16K 页和 UTF-8 代码集的数据库:

    db2 create database RM using codeset UTF-8 territory en PAGESIZE 16384

数据库

  1. 打开 Db2 命令窗口。
  2. 输入以下命令为 应用程序创建名为 DCC 并采用 16K 页和 UTF-8 代码集的数据库:

    db2 create database DCC using codeset UTF-8 territory en PAGESIZE 16384

数据库

  1. 打开 Db2 命令窗口。
  2. 输入以下命令为 应用程序创建名为 LQE 并采用 32K 页和 UTF-8 代码集的数据库:

    注: 数据库需要 32K 页。

    db2 create database LQE using codeset UTF-8 territory en PAGESIZE 32768

    如果 MAXAPPLS 未设置为 AUTOMATIC,那么 LQE 数据库必须增大 MAXAPPLS,以支持在 中使用并发连接来处理数据。 请将该值增大到 300:

    db2 update db cfg for LQE using maxappls 300

    这表示还必须增大锁定列表(如果未设为 AUTOMATIC):

    db2 update db cfg FOR LQE using locklist 20000

    事务日志大小也将随着数据的并行处理而增大。 请将 LOGFILSIZ 增大到 20000:

    db2 update db cfg for LQE using LOGFILSIZ 20000

    增大主事务日志文件数和辅助事务日志文件数:

    db2 update db cfg for LQE using logprimary 25
    db2 update db cfg for LQE using logsecond 100

数据库

  1. 打开 Db2 命令窗口。
  2. 输入以下命令为 应用程序创建名为 LDX 并采用 32K 页和 UTF-8 代码集的数据库:

    注: 数据库需要 32K 页。

    db2 create database LDX using codeset UTF-8 territory en PAGESIZE 32768

数据库

  1. 打开 Db2 命令窗口。
  2. 输入以下命令为全局配置应用程序创建名为 GC 并采用 16K 页和 UTF-8 代码集的数据库:

    db2 create database GC using codeset UTF-8 territory en PAGESIZE 16384

数据库

  1. 打开 Db2 命令窗口。
  2. 输入以下命令为 应用程序创建名为 并采用 16K 页和 UTF-8 代码集的数据库:

    db2 create database using codeset UTF-8 territory en PAGESIZE 16384

数据仓库数据库

  1. 打开 Db2 命令窗口。
  2. 输入以下命令为数据仓库创建一个名为 DW 并采用 32K 页和 UTF-8 代码集的数据库:

    db2 create database DW using codeset UTF-8 territory en PAGESIZE 32768

    如果 MAXAPPLS 未设置为 AUTOMATIC,那么数据仓库数据库必须增大 MAXAPPLS,以支持在 中使用并发连接来处理数据。 请将该值增大到 300:

    db2 update db cfg for DW using maxappls 300

    这表示还必须增大锁定列表(如果未设为 AUTOMATIC):

    db2 update db cfg FOR DW using locklist 20000

    事务日志大小也将随着数据的并行处理而增大。 请将 LOGFILSIZ 增大到 20000:

    db2 update db cfg for DW using LOGFILSIZ 20000

    增大主事务日志文件数和辅助事务日志文件数:

    db2 update db cfg for DW using logprimary 25
    db2 update db cfg for DW using logsecond 200

DBADM 权限

如果您创建数据库时使用的不是 teamserver.properties 文件中指定的用户,那么必须向该用户授予 DBADM 权限:

db2 连接到 database_name
db2 将数据库上的 dbadm 授予用户 用户名
db2 断开连接 database_name

验证

如果您在同一个数据库服务器上创建了所有 数据库,请验证同时活动的数据库的最大数目是否设置为大于所创建的数据库数目。 如果此值小于活动数据库的数目,那么将发生 SQL 代码 1041 错误。

要验证此值并在必要时增大数目,请完成下列步骤:

  1. 打开 Db2 命令窗口并输入以下命令以显示数据库管理器配置:

    db2 get dbm cfg

  2. 查找同时活动的数据库的最大数目行。 如果此数目小于已安装的数据库数目,请输入以下命令来增大此数目:

    db2 update dbm cfg using numdb 32

  3. 通过输入以下命令来停止并启动数据库管理器,以使这些变更生效:

    db2stop
    db2start

为了创建并设置 Oracle 数据库,假设准备此数据库的用户对此数据库具有数据库管理权限,并假设此数据库、表空间存储器和相应存储配置由具有系统管理权限的用户创建。

开始之前

  • 必需的 Java 数据库连接 (JDBC) 驱动程序为 ojdbc8.jar。 有关受支持的数据库版本和驱动程序版本的列表,请参阅本文档的 规划核对表 部分中的系统需求链接。
  • 限制:因为 Oracle JDBC 驱动程序 12.1.0.2.0 中的缺陷,所以不能使用该驱动程序的此版本。 有关详细信息,请参阅 IBM 支持门户网站页面上的 repotools -createTables command fails with ORA-01000 on Oracle 12

  • 此步骤中使用的配置参数和表空间选项是示例,可能并不完全适用于您的环境。 例如,如果您无法使用 AUTOEXTEND 设置,那么文件必须足够大以允许内容增加。 或者,如果无法对 数据库用户使用 UNLIMITED 大小配额,请确保有足够的空间以备数据库快速增大。
  • 如果您将 () 应用程序安装在同一计算机上或者安装在分布式平台上,那么您可以为每个应用程序创建不同的数据库,也可以对所有应用程序使用同一个数据库。 但是,必须为每个应用程序创建一个不同的表空间以及一个与该表空间相关联的数据库用户。

    此步骤中的示例适用于带有不同表空间和数据库用户(他们对应每个应用程序)的一个 Oracle 数据库。

  • 您为 以及所有 应用程序创建的数据库的格式必须设置为使用 UTF-8 作为字符集。 缺省情况下,Oracle 不创建使用 UTF-8 字符集的数据库。 您创建新数据库时,请确保在 Oracle 数据库设置中选择 AL32UTF8
  • 变更打开的光标数限制:
    • 如果使用 spfile 启动数据库,请打开 SQL *Plus 窗口并输入以下命令:

      alter system set open_cursors = 10000 scope=both;

    • 如果使用 pfile 启动数据库,请打开 SQL *Plus 窗口并输入以下命令:

      alter system set open_cursors = 10000;

  • 要使 Oracle 数据仓库数据库高效地与 配合工作,必须将 PROCESSES 配置增大到 3000。

过程

创建 Oracle 数据库

以系统管理员身份创建一个使用 UTF-8 编码的数据库,以用于 和所有应用程序。

  1. 在欢迎页面上启动“数据库配置辅助”向导,然后单击下一步
  2. 在“操作”页面中,选择创建数据库,然后单击下一步
  3. 在“模板”页面中,选择定制数据库,然后单击下一步
  4. 全局数据库名称SID 两个字段中,输入内容存储数据库的名称,例如 DB。 单击下一步
  5. 要配置数据库控制,请为警报通知输入必需的信息并可以选择启用每日磁盘备份调度。 要继续但不配置数据库控制,请清除配置企业管理器旁边的复选框,然后单击下一步
  6. 在“数据库凭证”页面上,选择用户帐户的选项,然后单击下一步

    注:Oracle 密码复杂性策略要求密码长度应该至少为 12 个字符。 此外,密码必须至少包含一个大写字符、一个小写字符和一个数字。 如果您的密码包含特殊字符、多字节字符,或者以数字或特殊字符开头,那么必须将其括在双引号中。 有关详细信息,请参阅 Oracle 文档

  7. 在下一页上,选择数据库文件的存储类型和位置。 单击下一步
  8. 在下一页上,选择数据库的恢复选项,然后单击下一步
  9. 在下一页上,指定是否将“样本模式”添加到数据库中。 单击下一步
  10. 在下一页上,单击“字符集”选项卡并选择使用 Unicode (AL32UTF8)。 单击下一步

    注:将字符集设置为 Unicode (AL32UTF8) 可允许您存储多个语言组。

  11. 在“数据库存储”页面上,验证或变更数据库对象,然后单击下一步
  12. 在下一页上,单击完成以创建数据库。
  13. 在打开的“确认”窗口上,可以选择将页面另存为 HTML 文件,然后单击确定。 这时,将显示一个进度条,用来显示数据库创建进度。

创建用于 的表空间

  1. 启动 SQL Plus,并以 SYSTEMSYSDBA 身份登录。
  2. 要为 创建表空间,请输入以下命令。 请将 JTS 替换为表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在上一步创建的数据库名称,并将 JTS.DBF 替换为您要创建的数据文件名称。
  3. CREATE BIGFILE TABLESPACE JTS
    DATAFILE 'ORACLE_BASE/oradata/DB/JTS.DBF'
    SIZE 1G AUTOEXTEND ON EXTENT MANAGEMENT LOCAL AUTOALLOCATE;

  4. 要为 创建临时表空间,请输入以下命令。 将 JTS_TEMP 替换为临时表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在先前步骤中创建的数据库名称,并将 JTS_TEMP.DBF 替换为您要创建的临时文件名称。
  5. CREATE TEMPORARY TABLESPACE JTS_TEMP
    TEMPFILE 'ORACLE_BASE/oradata/DB/JTS_TEMP.DBF'
    SIZE 20M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL 统一大小 1M;

创建用于 的表空间

  1. 启动 SQL Plus,并以 SYSTEMSYSDBA 身份登录。
  2. 要为 创建表空间,请输入以下命令。 请将 PUB 替换为表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在上一步创建的数据库名称,并将 PUB.DBF 替换为您要创建的数据文件名称。
  3. CREATE BIGFILE TABLESPACE PUB
    DATAFILE 'ORACLE_BASE/oradata/DB/PUB.DBF'
    SIZE 1G AUTOEXTEND ON EXTENT MANAGEMENT LOCAL AUTOALLOCATE;

  4. 要为 创建临时表空间,请输入以下命令。 将 PUB_TEMP 替换为临时表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在先前步骤中创建的数据库名称,并将 PUB_TEMP.DBF 替换为您要创建的临时文件名称。
  5. 创建临时表空间 PUB_TEMP
    TEMPFILE 'ORACLE_BASE/oradata/DB/PUB_TEMP.DBF'
    SIZE 20M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL 统一大小 1M;

创建用于 的表空间

  1. 创建名为 createOauthOracle.sql 的文件。 请参阅以下 SQL 示例,以便创建 所需的表空间。

    请注意,脚本文件中的值是示例,您应根据自己的使用情况和环境加以变更。 例如,如果 TOKENSTRING 值 2048 太小,您可使用数据类型 TOKENSTRING NVARCHAR(MAX) NOT NULL, 予以增大。

    createOauthOracle.sql 会创建两个表空间:OAUTHOAUTH_TMP,并且会在 OAUTH 表空间中创建表。 如果您要使用现有的表空间,您可将 CREATE TABLE 语句变更为使用现有表空间。 如果要创建新的表空间,您应编辑 DATAFILETEMPFILE 子句,使其指向要用于该表空间的目录。

    预期找到名为 OAUTHDBSCHEMA 的用户,并预期在名为 OAUTHDBSCHEMA 的模式中找到表。 您必须在 Oracle 中创建 OAUTHDBSCHEMA 用户。 请定制 CREATE USER 语句,以指定 OAUTHDBSCHEMA 用户的密码。 创建 OAUTHDBSCHEMA 用户时,还必须使该用户与您计划用于 OAUTH 表的表空间相关联。

    CREATE TABLESPACE OAUTH DATAFILE '/home/oracle/tablespaces/OAUTH.dbf' SIZE 1G AUTOEXTEND ON EXTENT MANAGEMENT LOCAL AUTOALLOCATE;
    CREATE TEMPORARY TABLESPACE OAUTH_TMP TEMPFILE '/home/oracle/tablespaces/OAUTH_TMP.dbf' SIZE 20M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M;
    CREATE USER OAUTHDBSCHEMA IDENTIFIED BY <your password> DEFAULT TABLESPACE OAUTH QUOTA UNLIMITED ON OAUTH TEMPORARY TABLESPACE OAUTH_TMP;
    GRANT CREATE PROCEDURE, CREATE SESSION, CREATE TABLE, CREATE VIEW TO OAUTHDBSCHEMA;

    ---- CREATE TABLES ----
    CREATE TABLE OAuthDBSchema.OAUTH20CACHE
    (
    LOOKUPKEY VARCHAR(256) NOT NULL,
    UNIQUEID VARCHAR(128) NOT NULL,
    COMPONENTID VARCHAR(256) NOT NULL,
    TYPE VARCHAR(64) NOT NULL,
    SUBTYPE VARCHAR(64),
    CREATEDAT NUMBER(19,0),
    LIFETIME INT,
    EXPIRES NUMBER(19,0),
    TOKENSTRING VARCHAR(2048) NOT NULL,
    CLIENTID VARCHAR(64) NOT NULL,
    USERNAME VARCHAR(64) NOT NULL,
    SCOPE VARCHAR(512) NOT NULL,
    REDIRECTURI VARCHAR(2048),
    STATEID VARCHAR(64) NOT NULL,
    EXTENDEDFIELDS CLOB DEFAULT '{}' NOT NULL
    )
    TABLESPACE OAUTH STORAGE(INITIAL 50K);

    CREATE TABLE OAuthDBSchema.OAUTH20CLIENTCONFIG
    (
    COMPONENTID VARCHAR(256) NOT NULL,
    CLIENTID VARCHAR(256) NOT NULL,
    CLIENTSECRET VARCHAR(256),
    DISPLAYNAME VARCHAR(256),
    REDIRECTURI VARCHAR(2048),
    ENABLED INT,
    CLIENTMETADATA CLOB DEFAULT '{}' NOT NULL
    ) TABLESPACE OAUTH STORAGE(INITIAL 50K);

    CREATE TABLE OAuthDBSchema.OAUTH20CONSENTCACHE (
    CLIENTID VARCHAR(256) NOT NULL,
    USERID VARCHAR(256),
    PROVIDERID VARCHAR(256) NOT NULL,
    SCOPE VARCHAR(1024) NOT NULL,
    EXPIRES NUMBER(19,0),
    EXTENDEDFIELDS CLOB DEFAULT '{}' NOT NULL
    ) TABLESPACE OAUTH STORAGE(INITIAL 50K);

    ---- ADD CONSTRAINTS ----
    ALTER TABLE OAuthDBSchema.OAUTH20CACHE
    ADD CONSTRAINT PK_LOOKUPKEY PRIMARY KEY (LOOKUPKEY);

    ALTER TABLE OAuthDBSchema.OAUTH20CLIENTCONFIG
    ADD CONSTRAINT PK_COMPIDCLIENTID PRIMARY KEY (COMPONENTID,CLIENTID);

    ---- CREATE INDEXES ----
    CREATE INDEX OAUTH20CACHE_EXPIRES ON OAuthDBSchema.OAUTH20CACHE (EXPIRES ASC);

    ---- GRANT PRIVILEGES ----
    ---- UNCOMMENT THE FOLLOWING IF YOU USE AN ACCOUNT OTHER THAN ADMINISTRATOR FOR DB ACCESS ----

    -- Change dbuser to the account you want to use to access your database
    GRANT ALL ON OAuthDBSchema.OAUTH20CACHE TO OAUTHDBSCHEMA;
    GRANT ALL ON OAuthDBSchema.OAUTH20CLIENTCONFIG TO OAUTHDBSCHEMA;
    GRANT ALL ON OAuthDBSchema.OAUTH20CONSENTCACHE TO OAUTHDBSCHEMA;

    ---- END OF GRANT PRIVILIGES ----

  2. 完成定制 createOauthOracle.sql 脚本后,请打开 SQL Plus 并以 SYSDBA 身份登录,然后运行该 SQL 脚本:

    @createOauthOracle.sql

  3. 创建数据库表之后,必须将 配置为使用这些表。 转至 C:\IBM\JazzAuthServer\wlp\usr\servers\jazzop/opt/IBM/JazzAuthServer/wlp/usr/servers/jazzop 并打开 appConfig.xml 进行编辑。
  4. 注释掉以下 Apache Derby 数据库节:

    <dataSource id="OAuthFvtDataSource" jndiName="jdbc/OAuth2DB">
    <jdbcDriver libraryRef="DerbyLib" />
    <properties.derby.embedded
    databaseName="asDB"
    createDatabase="create" />
    </dataSource>
    <library id="DerbyLib">
    <fileset dir="${shared.config.dir}/lib/global" includes="derby.jar"。/>
    </library>

  5. 添加下一节,以配置 Oracle。 您必须对此节进行定制,以使用您特定的 Oracle 服务器:

    <jdbcDriver id="oracle" libraryRef="ORAJCC4LIB"/>
    <library id="ORAJCC4LIB" filesetRef="orajcc4" apiTypeVisibility="spec,ibm-api,third-party"/>
    <fileset dir="${shared.config.dir}/lib/global" id="orajcc4" includes="ojdbc8.jar"/>
    <dataSource id="OAUTH2ORA" jndiName="jdbc/oauthProvider" jdbcDriverRef="oracle">
    <properties.oracle password="*****"databaseName="ORCL" user="OAUTHDBSCHEMA" portNumber="1521" serverName="yourOracle.com"/>
    </dataSource>

    对于下列属性,确保使用正确的值:

    • 对于 password,请使用您在 Oracle 中创建 OAUTHDBSCHEMA 用户时指定的密码。
    • 对于 databaseName,请使用数据库的 Oracle SID。 样本使用 Oracle 指定的缺省值 ORCL。 您的值可能有所不同。
    • 对于 portNumber,请使用运行 Oracle 实例的端口号。 缺省端口号为 1521。
    • 对于 serverName,请输入 Oracle 服务器的主机名。

  6. appConfig.xml 文件的 oauthProvider 一节中,更新 databaseStore 属性,以使其指定 Oracle 数据源,而非缺省的 Apache Derby 数据源。 databaseStore 属性应指定 Oracle 数据源的名称,在本例中,该名称为 OAUTH2ORA

    <oauthProvider id="JazzOP"
    httpsRequired="true"
    autoAuthorize="true"
    customLoginURL="/jazzop/form/login"
    accessTokenLifetime="7201"
    authorizationGrantLifetime="604801">
    <autoAuthorizeClient>client01</autoAuthorizeClient>
    <databaseStore dataSourceRef="OAUTH2ORA" />
    </oauthProvider>

  7. 保存并关闭 appConfig.xml 文件。
  8. 将 Oracle ojdbc8.jar JDBC 驱动程序从 Oracle 服务器复制到以下目录:C:\IBM\JazzAuthServer\wlp\usr\shared\config\lib\globalopt/IBM/JazzAuthServer/wlp/usr/shared/config/lib/global

创建用于 的表空间

  1. 启动 SQL Plus,并以 SYSTEMSYSDBA 身份登录。
  2. 要为“”应用程序创建表空间,请输入以下命令。 请将 替换为表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在上一步创建的数据库名称,并将 .DBF 替换为您要创建的数据文件名称。
  3. CREATE BIGFILE TABLESPACE
    DATAFILE 'ORACLE_BASE/oradata/DB/。DBF'
    SIZE 1G AUTOEXTEND ON EXTENT MANAGEMENT LOCAL AUTOALLOCATE;

  4. 要为“”应用程序创建临时表空间,请输入以下命令。 将 _TEMP 替换为临时表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在先前步骤中创建的数据库名称,并将 _TEMP.DBF 替换为您要创建的临时文件名称。
  5. CREATE TEMPORARY TABLESPACE _TEMP
    TEMPFILE 'ORACLE_BASE/oradata/DB/_TEMP.DBF'
    SIZE 20M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL 统一大小 1M;

创建用于 的表空间

  1. 启动 SQL Plus,并以 SYSTEMSYSDBA 身份登录。
  2. 要为“”应用程序创建表空间,请输入以下命令。 请将 替换为表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在上一步创建的数据库名称,并将 .DBF 替换为您要创建的数据文件名称。
  3. CREATE BIGFILE TABLESPACE
    DATAFILE 'ORACLE_BASE/oradata/DB/。DBF'
    SIZE 1G AUTOEXTEND ON EXTENT MANAGEMENT LOCAL AUTOALLOCATE;

  4. 要为“”应用程序创建临时表空间,请输入以下命令。 将 _TEMP 替换为临时表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在步骤 a 中创建的数据库名称,并将 _TEMP.DBF 替换为您要创建的临时文件名称。
  5. CREATE TEMPORARY TABLESPACE _TEMP
    TEMPFILE 'ORACLE_BASE/oradata/DB/_TEMP.DBF'
    SIZE 20M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL 统一大小 1M;

创建用于 的表空间

  1. 启动 SQL Plus,并以 SYSTEMSYSDBA 身份登录。
  2. 要为“”应用程序创建表空间,请输入以下命令。 将 QM 替换为表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在步骤 a 中创建的数据库名称,并将 QM.DBF 替换为您要创建的数据文件名称。
  3. CREATE BIGFILE TABLESPACE QM
    DATAFILE 'ORACLE_BASE/oradata/DB/QM.DBF'
    SIZE 1G AUTOEXTEND ON EXTENT MANAGEMENT LOCAL AUTOALLOCATE;

  4. 要为“”应用程序创建临时表空间,请输入以下命令。 将 QM_TEMP 替换为临时表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在步骤 a 中创建的数据库名称,并将 QM_TEMP.DBF 替换为您要创建的临时文件名称。
  5. 创建临时表空间 QM_TEMP
    TEMPFILE 'ORACLE_BASE/oradata/DB/QM_TEMP.DBF'
    SIZE 20M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL 统一大小 1M;

创建用于 的表空间

  1. 启动 SQL Plus,并以 SYSTEMSYSDBA 身份登录。
  2. 要为“”应用程序创建表空间,请输入以下命令。 将 RM 替换为表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在步骤 a 中创建的数据库名称,并将 RM.DBF 替换为您要创建的数据文件名称。
  3. CREATE BIGFILE TABLESPACE RM
    DATAFILE 'ORACLE_BASE/oradata/DB/RM.DBF'
    SIZE 1G AUTOEXTEND ON EXTENT MANAGEMENT LOCAL AUTOALLOCATE;

  4. 要为“”应用程序创建临时表空间,请输入以下命令。 将 RM_TEMP 替换为临时表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在步骤 a 中创建的数据库名称,并将 RM_TEMP.DBF 替换为您要创建的临时文件名称。
  5. CREATE TEMPORARY TABLESPACE RM_TEMP
    TEMPFILE 'ORACLE_BASE/oradata/DB/RM_TEMP.DBF'
    SIZE 20M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL 统一大小 1M;

创建用于 的表空间

  1. 启动 SQL Plus,并以 SYSTEMSYSDBA 身份登录。
  2. 要为“”应用程序创建表空间,请输入以下命令。 将 DCC 替换为表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在步骤 a 中创建的数据库名称,并将 DCC.DBF 替换为您要创建的数据文件名称。
  3. CREATE BIGFILE TABLESPACE DCC
    DATAFILE 'ORACLE_BASE/oradata/DB/DCC.DBF'
    SIZE 1G AUTOEXTEND ON EXTENT MANAGEMENT LOCAL AUTOALLOCATE;

  4. 要为“”应用程序创建临时表空间,请输入以下命令。 将 DCC_TEMP 替换为临时表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在步骤 a 中创建的数据库名称,并将 DCC_TEMP.DBF 替换为您要创建的临时文件名称。
  5. 创建临时表空间 DCC_TEMP
    TEMPFILE 'ORACLE_BASE/oradata/DB/DCC_TEMP.DBF'
    SIZE 20M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL 统一大小 1M;

创建用于 的表空间

  1. 启动 SQL Plus,并以 SYSTEMSYSDBA 身份登录。
  2. 要为“”应用程序创建表空间,请输入以下命令。 将 LQE 替换为表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在步骤 a 中创建的数据库名称,并将 LQE.DBF 替换为您要创建的数据文件名称。
  3. CREATE BIGFILE TABLESPACE LQE
    DATAFILE 'ORACLE_BASE/oradata/DB/LQE.DBF'
    SIZE 1G AUTOEXTEND ON EXTENT MANAGEMENT LOCAL AUTOALLOCATE;

  4. 要为“”应用程序创建临时表空间,请输入以下命令。 将 LQE_TEMP 替换为临时表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在步骤 a 中创建的数据库名称,并将 LQE_TEMP.DBF 替换为您要创建的临时文件名称。
  5. 创建临时表空间 LQE_TEMP
    TEMPFILE 'ORACLE_BASE/oradata/DB/LQE_TEMP.DBF'
    SIZE 20M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL 统一大小 1M;

创建用于 的表空间

  1. 启动 SQL Plus,并以 SYSTEMSYSDBA 身份登录。
  2. 要为“”应用程序创建表空间,请输入以下命令。 将 LDX 替换为表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在步骤 a 中创建的数据库名称,并将 LDX.DBF 替换为您要创建的数据文件名称。
  3. CREATE BIGFILE TABLESPACE LDX
    DATAFILE 'ORACLE_BASE/oradata/DB/LDX.DBF'
    SIZE 1G AUTOEXTEND ON EXTENT MANAGEMENT LOCAL AUTOALLOCATE;

  4. 要为“”应用程序创建临时表空间,请输入以下命令。 将 LDX_TEMP 替换为临时表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在步骤 a 中创建的数据库名称,并将 LDX_TEMP.DBF 替换为您要创建的临时文件名称。
  5. 创建临时表空间 LDX_TEMP
    TEMPFILE 'ORACLE_BASE/oradata/DB/LDX_TEMP.DBF'
    SIZE 20M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL 统一大小 1M;

创建用于 的表空间

  1. 启动 SQL Plus,并以 SYSTEMSYSDBA 身份登录。
  2. 要为全局配置应用程序创建表空间,请输入以下命令。 将 GC 替换为表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在步骤 a 中创建的数据库名称,并将 GC.DBF 替换为您要创建的数据文件名称。
  3. CREATE BIGFILE TABLESPACE GC
    DATAFILE 'ORACLE_BASE/oradata/DB/GC.DBF'
    SIZE 1G AUTOEXTEND ON EXTENT MANAGEMENT LOCAL AUTOALLOCATE;

  4. 要为全局配置应用程序创建临时表空间,请输入以下命令。 将 GC_TEMP 替换为临时表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在步骤 a 中创建的数据库名称,并将 GC_TEMP.DBF 替换为您要创建的临时文件名称。
  5. 创建临时表空间 GC_TEMP
    TEMPFILE 'ORACLE_BASE/oradata/DB/GC_TEMP.DBF'
    SIZE 20M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL 统一大小 1M;

创建用于数据仓库的表空间

  1. 启动 SQL Plus,并以 SYSTEMSYSDBA 身份登录。
  2. 要为公共数据仓库创建表空间,请输入以下命令。 将 DW 替换为表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在步骤 a 中创建的数据库名称,并将 DW.DBF 替换为您要创建的数据文件名称。
  3. CREATE BIGFILE TABLESPACE DW
    DATAFILE 'ORACLE_BASE/oradata/DB/DW.DBF'
    SIZE 1G AUTOEXTEND ON EXTENT MANAGEMENT LOCAL AUTOALLOCATE;

  4. 要为公共数据仓库创建临时表空间,请输入以下命令。 将 DW_TEMP 替换为临时表空间名称,将 ORACLE_BASE 替换为 Oracle 安装位置的绝对路径,将 DB 替换为您在步骤 a 中创建的数据库名称,并将 DW_TEMP.DBF 替换为您要创建的临时文件名称。
  5. 创建临时表空间 DW_TEMP
    TEMPFILE 'ORACLE_BASE/oradata/DB/DW_TEMP.DBF'
    SIZE 20M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL 统一大小 1M;

验证

在 Oracle Enterprise Manager Database Control 中,单击服务器 > 表空间并验证您创建的表空间是否显示以及是否可访问。 另请确保名为 USERS 的缺省 Oracle 表空间已经存在。 如果 Oracle 数据库中不存在此表空间,请创建该表空间。

为每个新的表空间创建一个 Oracle 数据库用户

创建表空间之后,必须为每一个应用程序创建一个特殊 Oracle 用户以使用 Oracle 数据库。 对于运行在一个 Oracle 数据库上的多个 Jazz 服务器,必须为每一个应用程序创建一个 Oracle 数据库用户。 这个 Oracle 数据库用户必须能够在其表空间(不受限或者具有空间配额)中使用创建会话、表、过程和视图的特权创建数据库对象。

要为 表空间创建用户并授予必需的许可权,请输入以下命令:

CREATE USER JTS_DB_USER IDENTIFIED BY Passw0rd DEFAULT TABLESPACE JTS QUOTA UNLIMITED ON JTS TEMPORARY TABLESPACE JTS_TEMP;

GRANT CREATE PROCEDURE, CREATE SESSION, CREATE TABLE, CREATE VIEW TO JTS_DB_USER;

要为 表空间创建用户并授予必需的许可权,请输入以下命令:

CREATE USER PUB_DB_USER IDENTIFIED BY Passw0rd DEFAULT TABLESPACE PUB QUOTA UNLIMITED ON PUB TEMPORARY TABLESPACE PUB_TEMP;

GRANT CREATE PROCEDURE, CREATE SESSION, CREATE TABLE, CREATE VIEW TO PUB_DB_USER;

要为 应用程序表空间创建用户并授予必需的许可权,请输入以下命令:

CREATE USER _DB_USER IDENTIFIED BY Passw0rd DEFAULT TABLESPACE QUOTA UNLIMITED ON TEMPORARY TABLESPACE _TEMP;

GRANT CREATE PROCEDURE, CREATE SESSION, CREATE TABLE, CREATE VIEW TO _DB_USER;

要为 应用程序表空间创建用户并授予必需的许可权,请输入以下命令:

CREATE USER _DB_USER IDENTIFIED BY Passw0rd DEFAULT TABLESPACE QUOTA UNLIMITED ON TEMPORARY TABLESPACE _TEMP;

GRANT CREATE PROCEDURE, CREATE SESSION, CREATE TABLE, CREATE VIEW TO _DB_USER;

要为 应用程序表空间创建用户并授予必需的许可权,请输入以下命令:

CREATE USER QM_DB_USER IDENTIFIED BY Passw0rd DEFAULT TABLESPACE QM QUOTA UNLIMITED ON QM TEMPORARY TABLESPACE QM_TEMP;

GRANT CREATE PROCEDURE, CREATE SESSION, CREATE TABLE, CREATE VIEW TO QM_DB_USER;

要为 应用程序表空间创建用户并授予必需的许可权,请输入以下命令:

CREATE USER RM_DB_USER IDENTIFIED BY Passw0rd DEFAULT TABLESPACE RM QUOTA UNLIMITED ON RM TEMPORARY TABLESPACE RM_TEMP;

GRANT CREATE PROCEDURE, CREATE SESSION, CREATE TABLE, CREATE VIEW TO RM_DB_USER;

要为 应用程序表空间创建用户并授予必需的许可权,请输入以下命令:

CREATE USER DCC_DB_USER IDENTIFIED BY Passw0rd DEFAULT TABLESPACE DCC QUOTA UNLIMITED ON DCC TEMPORARY TABLESPACE DCC_TEMP;

GRANT CREATE PROCEDURE, CREATE SESSION, CREATE TABLE, CREATE VIEW TO DCC_DB_USER;

要为 应用程序表空间创建用户并授予必需的许可权,请输入以下命令:

CREATE USER LQE_DB_USER IDENTIFIED BY Passw0rd DEFAULT TABLESPACE LQE QUOTA UNLIMITED ON LQE TEMPORARY TABLESPACE LQE_TEMP;

GRANT CREATE PROCEDURE, CREATE SESSION, CREATE TABLE, CREATE VIEW TO LQE_DB_USER;

要为 应用程序表空间创建用户并授予必需的许可权,请输入以下命令:

CREATE USER LDX_DB_USER IDENTIFIED BY Passw0rd DEFAULT TABLESPACE LDX QUOTA UNLIMITED ON LDX TEMPORARY TABLESPACE LDX_TEMP;

GRANT CREATE PROCEDURE, CREATE SESSION, CREATE TABLE, CREATE VIEW TO LDX_DB_USER;

要为 应用程序表空间创建用户并授予必需的许可权,请输入以下命令:

CREATE USER GC_DB_USER IDENTIFIED BY Passw0rd DEFAULT TABLESPACE GC QUOTA UNLIMITED ON GC TEMPORARY TABLESPACE GC_TEMP;

GRANT CREATE PROCEDURE, CREATE SESSION, CREATE TABLE, CREATE VIEW TO GC_DB_USER;

要为公共数据仓库表空间创建用户并授予必需的许可权,请输入以下命令:

CREATE USER DW_USER IDENTIFIED BY Passw0rd DEFAULT TABLESPACE DW QUOTA UNLIMITED ON DW TEMPORARY TABLESPACE DW_TEMP;

GRANT DBA TO DW_USER;

注:与其他数据库相比,在 Oracle 上创建数据仓库时需要具备更多权限。 您在数据仓库的连接规范中指定数据库用户时,请确保该数据库用户具有 DBA 许可权。 您可以在创建数据仓库之后变更此权限。 有关更多信息,请参阅完成安装

要创建没有 DBA 许可权的数据仓库,请参阅 此部署 Wiki 文章

创建环境变量

创建一个名为 ORACLE_JDBC_DRIVER_FILE 的环境变量,并使其指向 ojdbc8.jar JDBC 驱动程序。 该位置可能因 Oracle 产品和操作系统的不同而有所变化。 您可以从 Oracle Web 站点下载受支持的 Oracle JDBC 驱动程序。

  1. 单击 启动 > 控制面板 > 系统
  2. 单击高级选项卡,然后单击环境变量
  3. 系统变量列表中,单击新建
  4. 变量名称中输入 ORACLE_JDBC_DRIVER_FILE,在变量值中输入 C:\Path_to_JDBC_driver\ojdbc8.jar
  1. 打开 shell 窗口并输入以下环境变量声明。
  2. export ORACLE_JDBC_DRIVER_FILE =/Path_to_JDBC_driver/ojdbc8.jar

开始之前

此过程要求满足以下先决条件:

  • 已启动服务。
  • 已安装 Java 数据库连接 (JDBC) 驱动程序。 请参阅硬件和软件需求,以了解受支持的驱动程序版本。
  • 已对 SQL Server 启用 TCP 协议。
  • 创建数据库表的用户必须是 sysadmin 固定服务器角色中的成员或者数据库的所有者 (dbo)。
  • 您用于 JDBC 连接的密码不得包含左花括号 ({) 和分号 (;) 字符。
  • 请确保您的服务器安全性处于混合方式。 您可以通过检查服务器安全性来验证方式。 它应设置为 SQL Server 和 Windows 认证方式
  • 在数据库服务器上创建一个空目录以用作数据仓库基本文件夹。 在运行设置向导期间,将会要求您输入此目录。

过程

使用 SQL Server 安装随附的 sqlcmd 命令行工具来设置 SQL Server 数据库。 也可以使用可视工具(例如 SQL Server Studio Management)。

重要说明:如果将 应用程序安装在相同计算机或分布式平台上,那么必须创建单独的数据库以及与该数据库相关联的数据库用户。

数据库

  1. 请输入以下命令来为 创建一个数据库:

    CREATE DATABASE jts
    GO

  2. 通过输入以下命令来创建用户和密码并变更数据库的所有权:

    创建登录 jtsDBuser
    WITH PASSWORD = 'jtsDBpswd';
    USE jts;
    exec sp_changedbowner 'jtsDBuser'
    GO

  3. 变更数据库的整理顺序:

    ALTER DATABASE jts COLLATE SQL_Latin1_General_CP437_CS_AS
    GO

  4. 变更数据库的行版本系统:

    注:在运行此命令之前,请确保与数据库的连接处于打开状态。

    ALTER DATABASE Jts SET READ_COMMITTED_SNAPSHOT ON
    GO

数据库

  1. 请输入以下命令来为 创建一个数据库:

    CREATE DATABASE pub
    GO

  2. 通过输入以下命令来创建用户和密码并变更数据库的所有权:

    创建登录 pubDBuser
    WITH PASSWORD = 'pubDBpswd';
    USE pub;
    exec sp_changedbowner 'pubDBuser'
    GO

  3. 变更数据库的整理顺序:

    ALTER DATABASE pub COLLATE SQL_Latin1_General_CP437_CS_AS
    GO

  4. 变更数据库的行版本系统:

    注:在运行此命令之前,请确保与数据库的连接处于打开状态。

    ALTER DATABASE pub SET READ_COMMITTED_SNAPSHOT ON

数据库

  1. 创建名为 createOauthMSSQL.sql 的文件。 请参阅以下 SQL 示例,以便为 创建数据库和表。 可以使用不同于 oauth2db 的数据库名称,但是必须使用 OAuthDBSchema 模式。

    请注意,脚本文件中的值是示例,您应根据自己的使用情况和环境加以变更。 例如,如果 TOKENSTRING 值 2048 太小,您可使用数据类型 TOKENSTRING NVARCHAR(MAX) NOT NULL, 予以增大。

    -- Manually create DATABASE using object explorer and provide name as OAUTH2DB2;

    USE OAUTH2DB2;
    GO

    CREATE SCHEMA OAUTHDBSCHEMA;
    GO

    ---- CREATE TABLES ----
    CREATE TABLE OAUTHDBSCHEMA.OAUTH20CACHE
    (
    LOOKUPKEY VARCHAR(256) NOT NULL,
    UNIQUEID VARCHAR(128) NOT NULL,
    COMPONENTID VARCHAR(256) NOT NULL,
    TYPE VARCHAR(64) NOT NULL,
    SUBTYPE VARCHAR(64),
    CREATEDAT BIGINT,
    LIFETIME INT,
    EXPIRES BIGINT,
    TOKENSTRING VARCHAR(2048) NOT NULL,
    CLIENTID VARCHAR(64) NOT NULL,
    USERNAME VARCHAR(64) NOT NULL,
    SCOPE VARCHAR(512) NOT NULL,
    REDIRECTURI VARCHAR(2048),
    STATEID VARCHAR(64) NOT NULL,
    EXTENDEDFIELDS NVARCHAR(2048) NOT NULL DEFAULT '{}'
    );
    GO

    CREATE TABLE OAUTHDBSCHEMA.OAUTH20CLIENTCONFIG
    (
    COMPONENTID VARCHAR(256) NOT NULL,
    CLIENTID VARCHAR(256) NOT NULL,
    CLIENTSECRET VARCHAR(256),
    DISPLAYNAME VARCHAR(256) NOT NULL,
    REDIRECTURI VARCHAR(2048),
    ENABLED INT,
    CLIENTMETADATA NVARCHAR(2048) NOT NULL DEFAULT '{}'
    );
    GO

    CREATE TABLE OAUTHDBSCHEMA.OAUTH20CONSENTCACHE (
    CLIENTID VARCHAR(256) NOT NULL,
    USERID VARCHAR(256),
    PROVIDERID VARCHAR(256) NOT NULL,
    SCOPE VARCHAR(1024) NOT NULL,
    EXPIRES BIGINT,
    EXTENDEDFIELDS NVARCHAR(2048) NOT NULL DEFAULT '{}'
    );
    GO

    ---- ADD CONSTRAINTS ----
    ALTER TABLE OAUTHDBSCHEMA.OAUTH20CACHE
    ADD CONSTRAINT PK_LOOKUPKEY PRIMARY KEY (LOOKUPKEY);
    GO

    ALTER TABLE OAUTHDBSCHEMA.OAUTH20CLIENTCONFIG
    ADD CONSTRAINT PK_COMPIDCLIENTID PRIMARY KEY (COMPONENTID,CLIENTID);
    GO

    ---- CREATE INDEXES ----
    CREATE INDEX OAUTH20CACHE_EXPIRES ON OAUTHDBSCHEMA.OAUTH20CACHE (EXPIRES ASC);
    GO

    ---- GRANT PRIVILEGES ----
    ---- UNCOMMENT THE FOLLOWING IF YOU USE AN ACCOUNT
    OTHER THAN ADMINISTRATOR FOR DB ACCESS ----

    -- Change dbuser to the account you want to use to access your database
    --GRANT ALL ON OAUTHDBSCHEMA.OAUTH20CACHE TO dbuser;
    --GRANT ALL ON OAUTHDBSCHEMA.OAUTH20CLIENTCONFIG TO dbuser;
    --GRANT ALL ON OAUTHDBSCHEMA.OAUTH20CONSENTCACHE TO dbuser;

    ---- END OF GRANT PRIVILIGES ----

  2. 打开 sqlcmd 命令行工具并运行以下脚本,以创建数据库、表和索引,以及授予特权:

    createOauthMSSQL.sql
    GO

    此脚本将创建名为 oauth2db 的数据库,然后在 OAuthDBSchema 模式中创建表。 这些表需要页大小至少为 8K 的缓冲池。 这个 SQL 脚本会创建必要的缓冲池和表空间,但如果您的缓冲池已使用 8K 或更大的页大小,您可跳过此操作。

  3. 创建数据库表之后,必须将 配置为使用这些表。 转至 C:\IBM\JazzAuthServer\wlp\usr\servers\jazzop/opt/IBM/JazzAuthServer/wlp/usr/servers/jazzop 并打开 appConfig.xml 进行编辑。
  4. 注释掉以下 Apache Derby 数据库节:

    <dataSource id=OAuthFvtDataSource jndiName=jdbc/OAuth2DB
    <jdbcDriver libraryRef=DerbyLib />
    <properties.derby.embedded
    databaseName=asDB
    createDatabase=create />
    </dataSource>

    <library id=DerbyLib
    <fileset dir=${shared.config.dir}/lib/global includes=derby.jar/>
    </library>

  5. 添加下一节,以配置 SQL 数据库。 您必须对此节进行定制,以使用您特定的 SQL Server:

    <dataSource id=OAUTH2DBDS jndiName=jdbc/OAUTH2DB
    <jdbcDriver libraryRef=MSJDBCLib/>
    <properties.microsoft.sqlserver user=username password=Password databaseName=OAUTH2DB serverName=SQLDBServer portNumber=1433/>
    </dataSource>
    <library id=MSJDBCLib
    <fileset dir=${shared.config.dir}/lib/global id=sqljdbc42 includes=sqljdbc42.jar/>
    </library>

    对于下列属性,确保使用正确的值:

    • 对于 user,请提供用来连接到数据库的 MS SQL Server 用户的名称。
    • 对于 password,请使用 MS SQL Server 用户密码。
    • 对于 databaseName,请使用上一步中创建的数据库名称。 如果您已使用样本脚本文件,那么数据库名称为 OAUTH2DB
    • 对于 portNumber,请使用运行 MS SQL Server 实例的端口号。 缺省端口号为 1433。
    • 对于 serverName,请输入 MS SQL Server 的主机名。

  6. appConfig.xml 文件的 oauthProvider 一节中,更新 databaseStore 属性,以使其指定 MS SQL Server 数据源,而非缺省的 Apache Derby 数据源。 databaseStore 属性应指定 MS SQL Server 数据源的名称,在本例中,该名称为 OAUTH2DBDS

    <oauthProvider id=JazzOP
    httpsRequired=
    autoAuthorize=
    customLoginURL=/jazzop/form/login
    accessTokenLifetime=7201
    authorizationGrantLifetime=604801>
    <autoAuthorizeClient>client01</autoAuthorizeClient>
    <databaseStore dataSourceRef=OAUTH2DBDS />
    </oauthProvider>

  7. 保存并关闭 appConfig.xml 文件。
  8. 将 MS SQL Server sqljdbc42.jar JDBC 驱动程序从 MS SQL Server 服务器复制到以下目录:C:\IBM\JazzAuthServer\wlp\usr\shared\config\lib\globalopt/IBM/JazzAuthServer/wlp/usr/shared/config/lib/global

数据库

  1. 请输入以下命令,以创建用于 应用程序的数据库:

    CREATE DATABASE ccm
    GO

  2. 通过输入以下命令来创建用户和密码并变更数据库的所有权:

    创建登录 ccmDBuser
    WITH PASSWORD = 'ccmDBpswd';
    USE ccm;
    exec sp_changedbowner 'ccmDBuser'
    GO

  3. 变更数据库的整理顺序:

    ALTER DATABASE ccm COLLATE SQL_Latin1_General_CP437_CS_AS
    GO

  4. 变更数据库的行版本系统:

    注:在运行此命令之前,请确保与数据库的连接处于打开状态。

    ALTER DATABASE Ccm SET READ_COMMITTED_SNAPSHOT ON

创建环境变量

创建一个名为 SQLSERVER_JDBC_DRIVER_FILE 的环境变量,并使其指向 JDBC 驱动程序。 此驱动程序所在的位置视安装而定。

  1. 单击 启动 > 控制面板 > 系统
  2. 单击高级选项卡,然后单击环境变量
  3. 系统变量列表中,单击新建
  4. 变量名称中输入 SQLSERVER_JDBC_DRIVER_FILE,在变量值中输入 C:\Path_to_JDBC_driver\sqljdbc42.jar
  1. 打开 Shell 窗口。
  2. 输入以下环境变量声明:

    SQLSERVER_JDBC_DRIVER_FILE =.:Path_to_JDBC_driver/sqljdbc42.jar

数据库

  1. 请输入以下命令,以创建用于 应用程序的数据库:

    CREATE DATABASE eni
    GO

  2. 通过输入以下命令来创建用户和密码并变更数据库的所有权:

    创建登录 eniDBuser
    WITH PASSWORD = 'eniDBpswd';
    USE eni;
    exec sp_changedbowner 'eniDBuser'
    GO

  3. 变更数据库的整理顺序:

    ALTER DATABASE eni COLLATE SQL_Latin1_General_CP437_CS_AS
    GO

  4. 变更数据库的行版本系统:

    注:在运行此命令之前,请确保与数据库的连接处于打开状态。

    ALTER DATABASE eni SET READ_COMMITTED_SNAPSHOT ON

创建环境变量

创建一个名为 SQLSERVER_JDBC_DRIVER_FILE 的环境变量,并使其指向 JDBC 驱动程序。 此驱动程序所在的位置视安装而定。

  1. 单击 启动 > 控制面板 > 系统
  2. 单击高级选项卡,然后单击环境变量
  3. 系统变量列表中,单击新建
  4. 变量名称中输入 SQLSERVER_JDBC_DRIVER_FILE,在变量值中输入 C:\Path_to_JDBC_driver\sqljdbc42.jar
  1. 打开 Shell 窗口。
  2. 输入以下环境变量声明:

    SQLSERVER_JDBC_DRIVER_FILE =.:Path_to_JDBC_driver/sqljdbc42.jar

数据库

  1. 请输入以下命令,以创建用于 应用程序的数据库:

    CREATE DATABASE qm
    GO

  2. 通过输入以下命令来创建用户和密码并变更数据库的所有权:

    创建登录 qmDBuser
    WITH PASSWORD = 'qmDBpswd';
    USE qm;
    exec sp_changedbowner 'qmDBuser'
    GO

  3. 变更数据库的整理顺序:

    ALTER DATABASE qm COLLATE SQL_Latin1_General_CP437_CS_AS
    GO

  4. 变更数据库的行版本系统:

    注:在运行此命令之前,请确保与数据库的连接处于打开状态。

    ALTER DATABASE Qm SET READ_COMMITTED_SNAPSHOT ON

创建环境变量

创建一个名为 SQLSERVER_JDBC_DRIVER_FILE 的环境变量,并使其指向 JDBC 驱动程序。 此驱动程序所在的位置视安装而定。

  1. 单击 启动 > 控制面板 > 系统
  2. 单击高级选项卡,然后单击环境变量
  3. 系统变量列表中,单击新建
  4. 变量名称中输入 SQLSERVER_JDBC_DRIVER_FILE,在变量值中输入 C:\Path_to_JDBC_driver\sqljdbc42.jar
  1. 打开 Shell 窗口。
  2. 输入以下环境变量声明:

    SQLSERVER_JDBC_DRIVER_FILE =.:Path_to_JDBC_driver/sqljdbc42.jar

数据库

  1. 请输入以下命令,以创建用于 应用程序的数据库:

    CREATE DATABASE rm
    GO

  2. 通过输入以下命令来创建用户和密码并变更数据库的所有权:

    创建登录 rmDBuser
    WITH PASSWORD = 'rmDBpswd';
    USE rm;
    exec sp_changedbowner 'rmDBuser'
    GO

  3. 变更数据库的整理顺序:

    ALTER DATABASE rm COLLATE SQL_Latin1_General_CP437_CS_AS
    GO

  4. 变更数据库的行版本系统:

    注:在运行此命令之前,请确保与数据库的连接处于打开状态。

    ALTER DATABASE RM SET READ_COMMITTED_SNAPSHOT ON
    GO

创建环境变量

创建一个名为 SQLSERVER_JDBC_DRIVER_FILE 的环境变量,并使其指向 JDBC 驱动程序。 此驱动程序所在的位置视安装而定。

  1. 单击 启动 > 控制面板 > 系统
  2. 单击高级选项卡,然后单击环境变量
  3. 系统变量列表中,单击新建
  4. 变量名称中输入 SQLSERVER_JDBC_DRIVER_FILE,在变量值中输入 C:\Path_to_JDBC_driver\sqljdbc42.jar
  1. 打开 Shell 窗口。
  2. 输入以下环境变量声明:

    SQLSERVER_JDBC_DRIVER_FILE =.:Path_to_JDBC_driver/sqljdbc42.jar

数据库

  1. 请输入以下命令,以创建用于 应用程序的数据库:

    CREATE DATABASE dcc
    GO

  2. 通过输入以下命令来创建用户和密码并变更数据库的所有权:

    创建登录 dccDBuser
    WITH PASSWORD = 'dccDBpswd';
    USE dcc;
    exec sp_changedbowner 'dccDBuser'
    GO

  3. 变更数据库的整理顺序:

    ALTER DATABASE dcc COLLATE SQL_Latin1_General_CP437_CS_AS
    GO

  4. 变更数据库的行版本系统:

    注:在运行此命令之前,请确保与数据库的连接处于打开状态。

    ALTER DATABASE Dcc SET READ_COMMITTED_SNAPSHOT ON
    GO

创建环境变量

创建一个名为 SQLSERVER_JDBC_DRIVER_FILE 的环境变量,并使其指向 JDBC 驱动程序。 此驱动程序所在的位置视安装而定。

  1. 单击 启动 > 控制面板 > 系统
  2. 单击高级选项卡,然后单击环境变量
  3. 系统变量列表中,单击新建
  4. 变量名称中输入 SQLSERVER_JDBC_DRIVER_FILE,在变量值中输入 C:\Path_to_JDBC_driver\sqljdbc42.jar
  1. 打开 Shell 窗口。
  2. 输入以下环境变量声明:

    SQLSERVER_JDBC_DRIVER_FILE =.:Path_to_JDBC_driver/sqljdbc42.jar

数据库

  1. 请输入以下命令,以创建用于 应用程序的数据库:

    CREATE DATABASE lqe
    GO

  2. 通过输入以下命令来创建用户和密码并变更数据库的所有权:

    CREATE LOGIN lqeDBuser
    WITH PASSWORD = 'lqeDBpswd';
    USE lqe;
    exec sp_changedbowner 'lqeDBuser'
    GO

  3. 变更数据库的整理顺序:

    ALTER DATABASE lqe COLLATE SQL_Latin1_General_CP437_CS_AS
    GO

  4. 变更数据库的行版本系统:

    注:在运行此命令之前,请确保与数据库的连接处于打开状态。

    ALTER DATABASE LQe SET READ_COMMITTED_SNAPSHOT ON

创建环境变量

创建一个名为 SQLSERVER_JDBC_DRIVER_FILE 的环境变量,并使其指向 JDBC 驱动程序。 此驱动程序所在的位置视安装而定。

  1. 单击 启动 > 控制面板 > 系统
  2. 单击高级选项卡,然后单击环境变量
  3. 系统变量列表中,单击新建
  4. 变量名称中输入 SQLSERVER_JDBC_DRIVER_FILE,在变量值中输入 C:\Path_to_JDBC_driver\sqljdbc42.jar
  1. 打开 Shell 窗口。
  2. 输入以下环境变量声明:

    SQLSERVER_JDBC_DRIVER_FILE =.:Path_to_JDBC_driver/sqljdbc42.jar

数据库

  1. 请输入以下命令,以创建用于 应用程序的数据库:

    CREATE DATABASE ldx
    GO

  2. 通过输入以下命令来创建用户和密码并变更数据库的所有权:

    CREATE LOGIN ldxDBuser
    WITH PASSWORD = 'ldxDBpswd';
    USE ldx;
    exec sp_changedbowner 'ldxDBuser'
    GO

  3. 变更数据库的整理顺序:

    ALTER DATABASE ldx COLLATE SQL_Latin1_General_CP437_CS_AS
    GO

  4. 变更数据库的行版本系统:

    注:在运行此命令之前,请确保与数据库的连接处于打开状态。

    ALTER DATABASE ldx SET READ_COMMITTED_SNAPSHOT ON
    执行

创建环境变量

创建一个名为 SQLSERVER_JDBC_DRIVER_FILE 的环境变量,并使其指向 JDBC 驱动程序。 此驱动程序所在的位置视安装而定。

  1. 单击 启动 > 控制面板 > 系统
  2. 单击高级选项卡,然后单击环境变量
  3. 系统变量列表中,单击新建
  4. 变量名称中输入 SQLSERVER_JDBC_DRIVER_FILE,在变量值中输入 C:\Path_to_JDBC_driver\sqljdbc42.jar
  1. 打开 Shell 窗口。
  2. 输入以下环境变量声明:

    SQLSERVER_JDBC_DRIVER_FILE =.:Path_to_JDBC_driver/sqljdbc42.jar

数据库

  1. 请输入以下命令,以创建用于 应用程序的数据库:

    CREATE DATABASE gc
    GO

  2. 通过输入以下命令来创建用户和密码并变更数据库的所有权:

    创建登录 gcDBuser
    WITH PASSWORD = 'gcDBpswd';
    USE gc;
    exec sp_changedbowner 'gcDBuser'
    GO

  3. 变更数据库的整理顺序:

    ALTER DATABASE gc COLLATE SQL_Latin1_General_CP437_CS_AS
    GO

  4. 变更数据库的行版本系统:

    注:在运行此命令之前,请确保与数据库的连接处于打开状态。

    ALTER DATABASE GC SET READ_COMMITTED_SNAPSHOT ON

创建环境变量

创建一个名为 SQLSERVER_JDBC_DRIVER_FILE 的环境变量,并使其指向 JDBC 驱动程序。 此驱动程序所在的位置视安装而定。

  1. 单击 启动 > 控制面板 > 系统
  2. 单击高级选项卡,然后单击环境变量
  3. 系统变量列表中,单击新建
  4. 变量名称中输入 SQLSERVER_JDBC_DRIVER_FILE,在变量值中输入 C:\Path_to_JDBC_driver\sqljdbc42.jar
  1. 打开 Shell 窗口。
  2. 输入以下环境变量声明:

    SQLSERVER_JDBC_DRIVER_FILE =.:Path_to_JDBC_driver/sqljdbc42.jar

数据仓库数据库

  1. 请输入以下命令,以创建用于数据仓库应用程序的数据库:

    CREATE DATABASE dw
    GO

  2. 通过输入以下命令来创建用户和密码并变更数据库的所有权:

    创建登录 dwDBuser
    WITH PASSWORD = 'dwDBpswd';
    USE dw;
    exec sp_changedbowner 'dwDBuser'
    GO

  3. 变更数据库的整理顺序:

    ALTER DATABASE dw COLLATE SQL_Latin1_General_CP1_CS_AS
    GO

  4. 变更数据库的行版本系统:

    注:在运行此命令之前,请确保与数据库的连接处于打开状态。

    ALTER DATABASE DW SET READ_COMMITTED_SNAPSHOT ON

创建环境变量

创建一个名为 SQLSERVER_JDBC_DRIVER_FILE 的环境变量,并使其指向 JDBC 驱动程序。 此驱动程序所在的位置视安装而定。

  1. 单击 启动 > 控制面板 > 系统
  2. 单击高级选项卡,然后单击环境变量
  3. 系统变量列表中,单击新建
  4. 变量名称中输入 SQLSERVER_JDBC_DRIVER_FILE,在变量值中输入 C:\Path_to_JDBC_driver\sqljdbc42.jar
  1. 打开 Shell 窗口。
  2. 输入以下环境变量声明:

    SQLSERVER_JDBC_DRIVER_FILE =.:Path_to_JDBC_driver/sqljdbc42.jar

创建环境变量

创建一个名为 SQLSERVER_JDBC_DRIVER_FILE 的环境变量,并使其指向 JDBC 驱动程序。 此驱动程序所在的位置视安装而定。

  1. 单击 启动 > 控制面板 > 系统
  2. 单击高级选项卡,然后单击环境变量
  3. 系统变量列表中,单击新建
  4. 变量名称中输入 SQLSERVER_JDBC_DRIVER_FILE,在变量值中输入 C:\Path_to_JDBC_driver\sqljdbc42.jar
  1. 打开 Shell 窗口。
  2. 输入以下环境变量声明:

    SQLSERVER_JDBC_DRIVER_FILE =.:Path_to_JDBC_driver/sqljdbc42.jar

向现有 服务器添加

注:如果要将 应用程序一起安装,那么不需要执行此步骤。

如果要向现有 服务器添加 ,那么必须使用 -addTables 存储库工具命令将必需的数据库表添加到 数据库:

  1. 确保 服务器已关闭。
  2. 打开命令窗口并输入以下命令:

    cd _Install_Dir\server
    repotools-ccm.bat -addTables

  3. 打开命令 shell,并输入以下命令:

    cd _Install_Dir/server
    ./repotools-ccm.sh -addTables

启用数据库表分区

您可以使用分区 repotools 命令对未分区的 REPOSITORY.VERSIONREPOSITORY_VERSION<SchemaPrefix>_REPOSITORY.VERSIONRPSTR_VRSN 表。 它会根据项类型范围进行分区。 从 V6.0.6.1 开始,已引入数据库表分区,以处理存储库中大量数据(数百万个工件)的性能、可用性和可伸缩性。 您必须安装 Enterprise 版的 Db2(或者,如果使用的是 Db2 11.5,那么必须安装 Advanced 版)Db2zDb2iOracleSQL Server 数据库才能利用这些功能。 这些数据库的 Standard 版、Workgroup 版、Personal 版或 Express 版以及缺省的 Apache Derby 数据库不支持分区。 底层数据库不支持分区时,此命令将失败。

要启用数据库表分区,请打开命令窗口并输入以下命令:

cd /opt/IBM/QM_Server/server/
。/repotools-qm.sh -分区 teamserver.properties=conf/qm/teamserver.properties enable

cd C:\Program Files\IBM\QM_Server\server\
repotools-qm.bat -分区 teamserver.properties=conf\qm\teamserver.properties enable

有关分区 repotools 命令的详细信息,请参阅用于对数据库表进行分区的存储库工具命令

管理基于文件的联合用户注册表

开始之前

  • 确保 已安装且正在运行。

关于本任务

将 J2EE 容器管理的认证用于登录和系统许可权。 为了使应用程序服务器工作,必须使用该应用程序服务器配置一个领域。 基于文件的用户注册表对测试或评估非常有用,这是因为 不支持导入用户或映射用户角色。 对于完整的应用程序功能(包括查看系统用户角色和导入用户), 支持 LDAP 领域。

配置联合存储库

  1. 在 WebSphere Integrated Solutions Console 中,单击 安全性 > 全局安全性
  2. 确保选中了启用管理安全性启用应用程序安全性复选框。
  3. 从“可用的领域定义”中,选择联合存储库,然后单击配置
  4. 主管理用户名字段中,输入 管理标识。
  5. 在“服务器用户身份”下,确保选中了自动生成服务器身份。 单击确定,然后保存。
  6. 通过单击设置为当前联合存储库设置为当前领域定义。
  7. 停止并重新启动

设置组和用户

要能够运行 ,您需要在 存储库中定义组和用户,并将它们映射至 Jazz 组。 在安装任何 应用程序之前,必须先创建用户组。

  1. 在 WebSphere Integrated Solutions Console 中,单击 用户和组 > 管理组
  2. 单击创建,然后创建以下组名:
    • JazzAdmins
    • JazzProjectAdmins
    • JazzUsers
    • JazzGuests
  3. 用户和组部分中,单击管理用户
  4. 单击创建,然后在用户标识字段中输入一个名称以在 JazzAdmins 组中创建一个用户。
  5. 单击组成员资格,然后单击搜索
  6. 从“可用”窗口中选择 JazzAdmins,然后单击添加以将 JazzAdmins 添加到映射到窗口。
  7. 单击关闭,然后在“创建用户”页面中填写其余的必需字段。 单击创建
  8. 单击创建类似项并创建其他用户,然后给它们指定相应的 Jazz 组成员资格。

启动 服务器

现在,可以启动 服务器。

  1. 要启动 服务器,请打开命令窗口 shell,然后输入下列命令:
  2. cd Jazz_Install_Dir\server
    server.startup.bat

    您可以将 ELM 应用程序配置为作为 Windows 服务来运行。 有关更多信息,请参阅将 ELM 应用程序作为 Windows 服务来运行

    cd Jazz_Install_Dir/server
    。/server.startup

使用 Jython 脚本设置

clm_was_config.py 脚本配置 并设置安全选项以便您可在 WebSphere 环境中运行 应用程序。

开始之前

确保您已完成以下任务:

过程

  1. 如果 安装在 Windows 平台上,但您正在使用 Db2 for z/OS 数据库服务器,请打开 Jazz_Install_Dir/server/was/clm_was_config.py 进行编辑。
  2. 搜索 #createJVMCustomProperty(jvm, "DB2Z_JDBC", db2DriverPath, "") 并删除行开头的 # 符号以移除注释。
  3. 添加指向 Db2z JDBC 驱动程序的位置的文件路径。 请注意正斜杠。 例如:

    createJVMCustomProperty(jvm, "DB2Z_JDBC", "/etc/jazz/server/db2z", "")

  4. 要配置 Oracle JDBC 驱动程序位置,请打开 Jazz_Install_Dir/server/was/clm_was_config.py 进行编辑。
  5. 搜索 #createJVMCustomProperty(jvm, "ORACLE_JDBC_DRIVER_FILE", oracleDriverPath, "") 并删除行开头的 # 符号以移除注释。
  6. 添加指向 Oracle JDBC 驱动程序的位置的绝对路径。 例如:

    createJVMCustomProperty(jvm, "ORACLE_JDBC_DRIVER_FILE", "C:\app\user\product\12.2.0\dbhome_1\jdbc\lib\ojdbc8.jar", "")

    createJVMCustomProperty(jvm, "ORACLE_JDBC_DRIVER_FILE", "/opt/app/user/product/12.2.0/dbhome_1/jdbc/lib/ojdbc8.jar", "")

  7. 要配置 SQL Server JDBC 驱动程序位置,请打开 Jazz_Install_Dir/server/was/clm_was_config.py 进行编辑。
  8. 搜索 #createJVMCustomProperty(jvm, "SQLSERVER_JDBC_DRIVER_FILE", sqlDriverPath, "") 并删除行开头的 # 符号以移除注释。
  9. 添加指向 SQL Server JDBC 驱动程序的位置的绝对路径。 例如:

    createJVMCustomProperty(jvm, "SQLSERVER_JDBC_DRIVER_FILE", "C:\MSSQL\jdbc\sqljdbc42.jar", "")

    createJVMCustomProperty(jvm, "SQLSERVER_JDBC_DRIVER_FILE", "/opt/mssql/jdbc/sqljdbc42.jar", "")

  10. 保存并关闭 clm_was_config.py 文件。
  11. 以管理员身份打开命令窗口并输入以下命令。 将 WAS_Profile_Dir 替换为 概要文件的安装目录。 例如,C:\Program Files (x86)\IBM\WebSphere\AppServer\profiles\AppSrv01/opt/IBM/WebSphere/AppServer/profiles/AppSrv01
  12. 注:在 Windows 平台上,必须在对应 Jython 脚本位置的路径和 conf 目录中使用正斜杠。

    cd WAS_Profile_Dir\bin
    wsadmin.bat -lang jython -user WAS_USER -password WAS_PASSWORD -f C:/Jazz_Install_Dir/server/was/clm_was_config.py C:/Jazz_Install_Dir/server/conf

    cd WAS_Profile_Dir/bin
    ./wsadmin.sh -lang jython -user WAS_USER -password WAS_PASSWORD -f /opt/Jazz_Install_Dir/server/was/clm_was_config.py /opt/Jazz_Install_Dir/server/conf

  13. 要使变更生效,请重新启动应用程序服务器。 将 server1 替换为应用程序服务器的名称:
  14. cd WAS_Profile_Dirbin
    stopServer.bat server1-user WAS_USER -password WAS_PASSWORD
    startServer.bat server1

    cd WAS_Profile_Dir/bin
    ./stopServer.sh server1-userWAS_USER -password WAS_PASSWORD
    ./startServer.sh server1

设置

要为文档构建器设置 ,请参阅在 WebSphere Application Server 上部署文档构建器

开始之前

确保您已完成以下任务:

  • 已安装且正在运行。
  • 您具有 WebSphere 管理用户名和密码。
  • 验证或更新 级别。 有关受支持的版本和修订包的列表,请参阅详细系统需求页面。
  • 在 UNIX 系统上,请确保正确设置了“打开文件数”限制值。 有关更多信息,请参阅计划在 UNIX 和 Linux 系统上进行安装
  • 已创建数据库。 如果您使用缺省 Derby 数据库以进行评估,请确保 teamserver.properties 文件中此数据库的位置是绝对路径。

过程

  1. 打开浏览器并登录 WebSphere Integrated Solutions Console (https://hostname.example.com:9043/ibm/console/logon.jsp)。
  2. 必须关闭“Java 2 安全性”选项。 如果在 中开启了此选项,那么 Web 应用程序将不会启动。
    1. 单击安全性 > 全局安全性
    2. 在“Java 2 安全性”下,取消选中使用 Java 2 安全性来限制应用程序对本地资源的访问复选框。
    3. 确保选中启用管理安全性启用应用程序安全性复选框。
  3. 要确保 LTPA cookie 安全,请启用“需要 SSL”设置:
    1. 单击 安全性 > 全局安全性 > Web 和 SIP 安全性 > 单点登录 (SSO)
    2. 单击需要 SSL 复选框。
    3. 还要确保选择了将安全 Cookie 设置为 HTTPOnly,以帮助防止受到跨站点脚本攻击
    4. 单击确定并单击直接保存到主配置
  4. 设置限制 HTTPS 会话的 Cookie 以确保会话 Cookie 包括安全字段。 启用此功能将限制交换 HTTPS 会话的 Cookie:
    1. 在 WebSphere 集成解决方案控制台中,单击 服务器> 服务器类型> WebSphere 应用程序服务器> server_name > 会话管理> 启用 cookie
    2. 选中限制 HTTPS 会话的 Cookie 复选框。
  5. 另请确保选中了在访问未受保护的 URI 时使用可用认证数据应用程序服务器安全设置。
    1. 单击安全性 > 全局安全性 > Web 和 SIP 安全性 > 常规设置
    2. 单击在访问未受保护的 URI 时使用可用认证数据复选框。
    3. 单击确定并单击直接保存到主配置
  6. 添加以下会话管理定制属性,以避免用户在不终止会话的情况下注销时出现 SESN0008E 错误消息:
    1. 单击服务器 > 服务器类型 > WebSphere 应用程序服务器
    2. 单击 server1,然后在容器设置部分中单击会话管理
    3. 其他属性部分中,单击定制属性
    4. 单击新建,然后输入以下信息:
      • 名称InvalidateOnUnauthorizedSessionRequestException
      • true
    5. 单击应用,然后直接保存到主配置。
  7. 要提高操作过程的性能,请变更 WebContainer 线程池大小设置:
    1. 单击服务器 > 服务器类型 > WebSphere 应用程序服务器
    2. 单击 server1,然后在其他属性部分中单击线程池
    3. 线程池页面中,单击 WebContainer
    4. 最小大小最大大小字段中,输入 200
    5. 单击确定,然后直接保存到主配置。
  8. V9.0 中,缺省情况下已启用上下文和依赖关系注入 (CDI) 1.2。 如果已启用 CDI,而应用程序未使用 CDI,那么可能会造成不必要的性能消耗。 如果 应用程序未使用 CDI,为了提高性能,您可以通过设置一些 Java 定制属性和清单属性来禁用 CDI。 有关详细指示信息,请参阅此 IBM Support 故障诊断文档
  9. 要求对它在其中运行的 Java 虚拟机进行多项特定的设置。 要设置这些属性,请单击服务器 > 服务器类型 > WebSphere 应用程序服务器 > server1
  10. 在“服务器基础结构”下面,单击 Java 和进程管理 > 进程定义
  11. 在“其他属性”下,单击 Java 虚拟机
  12. 通用 JVM 参数字段中输入以下几行:

    -Xmx4g -Xms4g -Xmn1g
    -Xgcpolicy:gencon -Xnocompressedrefs

    -Xmx4g -Xms4g -Xmn1g
    -XX: MaxPermSize= 768M -XX:ReservedCodeCacheSize=512M -XX:CodeCacheMinimumFreeSpace=2M

    -Xmx4g -Xms4g -Xmn1g
    -Xgcpolicy:gencon -Xcompressedrefs
    -Xgc:preferredHeapBase=0x100000000

    提示:如果您需要更大的堆大小,那么您可以使用以下设置,将 {N} 替换为要使用的内存量,将 {N/4} 替换为总内存的 1/4。 例如,如果 -Xmx 设置为 8g,那么 -Xmn 应该设置为 2g。

    -Xmx{N} -Xms{N} -Xmn{N/4}

    仅适用于 : -Xmn 值应该是 -Xms 值的 33%。 例如,如果 -Xmx 大小为 4gb,那么 -Xmn 应该为 1365m。 以下 Deployment Wiki 文档包含有关 缩放大小和调整的有用信息:Sizing and tuning guide for 仅限于 :如果由于内存问题导致 应用程序页面变得无响应,请参阅有关故障诊断的此技术说明

  13. 单击应用,然后单击直接保存到主配置
  14. 您必须添加的一项定制属性是 JAZZ_HOME,它是用于指定在何处查找某些配置文件的系统属性。 此属性使用 URL 而不使用简单路径,所以请将值指定为文件样式的 URL:file:///file_path。 在 Java 虚拟机 > 其他属性下面,单击定制属性。 必须在 file: 后面使用三个正斜杠 (///)。

    在对每个 Web 应用程序都使用不同的应用程序服务器的分布式环境中,必须对每个 实例添加这些定制属性。

  15. 单击新建,然后在名称字段中输入 JAZZ_HOME,并在字段中输入 file:///Jazz_Install_Dir/server/conf。 将 Jazz_Install_Dir 替换为 安装目录的位置。 例如,file:///C:/PROGRA~1/IBM/JazzTeamServer/server/conf如果将服务器安装在 /opt/IBM 中,请输入 file:////opt/IBM/JazzTeamServer/server/conf

    为避免出现问题,请勿在文件路径中使用空格。 您可以使用双引号将路径引起来。

  16. 单击确定
  17. 重复执行上述步骤来添加下列定制属性:
    • 名称lqe.config.locationfile:///Jazz_Install_Dir/server/conf/lqe
    • 名称ldx.config.locationfile:///Jazz_Install_Dir/server/conf/ldx
    • 名称java.awt.headlesstrue
    • 名称org.eclipse.emf.ecore.plugin.EcorePlugin.doNotLoadResourcesPlugintrue
    • 名称ORACLE_JDBC_DRIVER_FILEAbsolute_path_to_the_JDBC_driver/ojdbc8.jar

      注:JDBC 驱动程序的路径必须是绝对路径。 请勿使用 URL 路径 (file:///)。 有关 Oracle Java 数据库连接 (JDBC) 连接的更多信息,请参阅 设置数据库 步骤。

    • 名称SQLSERVER_JDBC_DRIVER_FILEAbsolute_path_to_the_JDBC_driver/sqljdbc42.jar

      注:JDBC 驱动程序的路径必须是绝对路径。 请勿使用 URL 路径 (file:///)。 有关 SQL Server JDBC 连接的更多信息,请参阅 设置数据库 步骤。

    • 名称log4j.configurationfile:///Jazz_Install_Dir/server/conf/startup_log4j.properties

      在启动流程的早期阶段,将使用 startup_log4j.properties 文件所包含的设置,以将消息传递至 SystemOut.log 文件。 在早期阶段之后,每个 Jazz 应用程序都将切换至使用 Jazz_Install_Dir/server/conf/app_context/log4j.properties 文件中特定于应用程序的设置。

  18. 单击直接保存到主配置
  19. 在 WebSphere Integrated Solutions Console 的导航窗格中,展开“环境”并单击共享库
  20. 在“作用域”列表中,选择 Node=MachineNameNode01, Server=server1 并单击新建
  21. 输入共享库名称 JRS 共享库,添加描述,并将类路径设置为 JRS_install_dir/server/conf/rs/\server\conf\rs\WAS_SharedLibrary。 例如:C:\Progra~1\IBM\JazzTeamServer\server\conf\rs\WAS_SharedLibrary/opt/IBM/JazzTeamServer/server/conf/rs/WAS_SharedLibrary
  22. 在“类装入”下,选中对此共享库使用隔离式类装入器复选框,单击应用,然后单击保存
  23. 要使变更生效,请重新启动应用程序服务器。

配置 for SCIM

要使用跨域身份管理系统 (SCIM) 标准,您必须安装 Jazz Authorization Server 并配置 LDAP 用户注册表。 有关更多信息,请参阅为 SCIM 功能部件配置

使用 Jython 脚本部署 Web 应用程序(WAR 文件)

可在分布式环境中使用 clm_deploy.pyclm_deploy_distributed.py 来部署应用程序 WAR 文件。

开始之前

运行该脚本之前,确保已安装 应用程序。

完成以下步骤以将安全角色映射至 LDAP 组。 请注意,完成此映射之前,必须在 LDAP 服务器上设置这些组。

  1. 在文本编辑器中打开 config.py 脚本进行编辑。
  2. RoleMapping 下修改值以将安全角色映射至 LDAP 组。
  3. 以下示例说明应用程序的角色映射。 将值替换为 LDAP 服务器中的值。 可能需要联系 LDAP 管理员以获取此信息:

    注:请确保 JazzAdmins、JazzUsers、JazzGuests 和 JazzProjectAdmins 安全组的名称中不含任何空格。

    RoleMapping = {
    'jts' : {
    'JazzAdmins' : {
    'mappedUser':None,
    'mappedGroup':"cn=JazzAdmins,cn=members,o=ldap.server.com",
    'AllowAccessToEveryone':'No',
    'AllowAccessToAllAuthenticatedUsers':'No'
    },
    'JazzUsers' : {
    'mappedUser':None,
    'mappedGroup':"cn=JazzUsers,cn=members,o=ldap.server.com",
    'AllowAccessToEveryone':'No',
    'AllowAccessToAllAuthenticatedUsers':'No'
    },
    'JazzGuests' : {
    'mappedUser':None,
    'mappedGroup':"cn=JazzGuests,cn=members,o=ldap.server.com",
    'AllowAccessToEveryone':'No',
    'AllowAccessToAllAuthenticatedUsers':'No'
    },
    'JazzProjectAdmins' : {
    'mappedUser':None,
    'mappedGroup':"cn=JazzProjectAdmins,cn=members,o=ldap.server.com",
    'AllowAccessToEveryone':'No',
    'AllowAccessToAllAuthenticatedUsers':'No'
    },

    RoleMapping = {
    'ccm' : {
    'JazzAdmins' : {
    'mappedUser':None,
    'mappedGroup':"cn=JazzAdmins,cn=members,o=ldap.server.com",
    'AllowAccessToEveryone':'No',
    'AllowAccessToAllAuthenticatedUsers':'No'
    },
    'JazzUsers' : {
    'mappedUser':None,
    'mappedGroup':"cn=JazzUsers,cn=members,o=ldap.server.com",
    'AllowAccessToEveryone':'No',
    'AllowAccessToAllAuthenticatedUsers':'No'
    },
    'JazzGuests' : {
    'mappedUser':None,
    'mappedGroup':"cn=JazzGuests,cn=members,o=ldap.server.com",
    'AllowAccessToEveryone':'No',
    'AllowAccessToAllAuthenticatedUsers':'No'
    },
    'JazzProjectAdmins' : {
    'mappedUser':None,
    'mappedGroup':"cn=JazzProjectAdmins,cn=members,o=ldap.server.com",
    'AllowAccessToEveryone':'No',
    'AllowAccessToAllAuthenticatedUsers':'No'
    },

    RoleMapping = {
    'qm' : {
    'JazzAdmins' : {
    'mappedUser':None,
    'mappedGroup':"cn=JazzAdmins,cn=members,o=ldap.server.com",
    'AllowAccessToEveryone':'No',
    'AllowAccessToAllAuthenticatedUsers':'No'
    },
    'JazzUsers' : {
    'mappedUser':None,
    'mappedGroup':"cn=JazzUsers,cn=members,o=ldap.server.com",
    'AllowAccessToEveryone':'No',
    'AllowAccessToAllAuthenticatedUsers':'No'
    },
    'JazzGuests' : {
    'mappedUser':None,
    'mappedGroup':"cn=JazzGuests,cn=members,o=ldap.server.com",
    'AllowAccessToEveryone':'No',
    'AllowAccessToAllAuthenticatedUsers':'No'
    },
    'JazzProjectAdmins' : {
    'mappedUser':None,
    'mappedGroup':"cn=JazzProjectAdmins,cn=members,o=ldap.server.com",
    'AllowAccessToEveryone':'No',
    'AllowAccessToAllAuthenticatedUsers':'No'
    },

  4. 保存并关闭该文件。

关于本任务

clm_deploy.py 脚本将 webapps 目录中的所有可用应用程序 WAR 文件安装至单个 节点。

clm_deploy_distributed.py 脚本可用于安装 webapps 目录中的任何可用应用程序 WAR 文件,只要您在命令自变量中以逗号分隔列表形式指定这些文件。

注:Web 归档应用程序必须具有 .war 扩展名。

过程

要在单个 上部署应用程序,请完成以下步骤:

  1. 以管理员身份打开命令窗口并输入以下命令。 将 nodeNameserver1 替换为 节点名和服务器名称:
  2. 注:在 Windows 平台上,必须在对应 Jython 脚本位置的路径和 webapps 目录中使用正斜杠。

    cd WAS_Profile_Dir\bin
    wsadmin.bat -lang jython -user WAS_USER -password WAS_PASSWORD -f C:/Jazz_Install_Dir/server/was/clm_deploy.py nodeName server1 C:/Jazz_Install_Dir/server/webapps -config C:/Jazz_Install_Dir/server/was

    cd WAS_Profile_Dir/bin
    ./wsadmin.sh -lang jython -user WAS_USER -password WAS_PASSWORD -f /opt/Jazz_Install_Dir/server/was/clm_deploy.py nodeName server1 /opt/Jazz_Install_Dir/server/webapps -config /opt/Jazz_Install_Dir/server/was

要在分布式 环境中部署应用程序,请完成以下步骤:

  1. 以管理员身份打开命令窗口并输入以下命令。 将 nodeNameserver1 替换为 节点名和服务器名称。 输入要部署的应用程序名称并以逗号分隔。 例如:
  2. 注:在 Windows 平台上,必须在对应 Jython 脚本位置的路径和 webapps 目录中使用正斜杠。

    cd WAS_Profile_Dir\bin
    wsadmin.bat -lang jython -user WAS_USER -password WAS_PASSWORD -f C:/Jazz_Install_Dir/server/was/clm_deploy_distributed.py nodeName server1 C:/Jazz_Install_Dir/server/webapps jts,ccm,clmhelp -config C:/Jazz_Install_Dir/server/was

    cd WAS_Profile_Dir/bin
    ./wsadmin.sh -lang jython -user WAS_USER -password WAS_PASSWORD -f /opt/Jazz_Install_Dir/server/was/clm_deploy_distributed.py nodeName server1 /opt/Jazz_Install_Dir/server/webapps jts,ccm,clmhelp -config /opt/Jazz_Install_Dir/server/was

要启动已部署应用程序,请重新启动应用程序服务器。 将 server1 替换为应用程序服务器的名称:

cd WAS_Profile_Dirbin
stopServer.bat server1-user WAS_USER -password WAS_PASSWORD
startServer.bat server1

cd WAS_Profile_Dir/bin
./stopServer.sh server1-userWAS_USER -password WAS_PASSWORD
./startServer.sh server1

部署 Web 应用程序(WAR 文件)

开始之前

  • 请确保已安装并启动
  • 您有权访问 .WAR 文件。
  • 如果将 安装在非根环境中,那么部署 应用程序的用户必须具有对安装目录和所有子目录的读写访问权。
  • 如果 缺省应用程序(DefaultApplicationivtAppquery)与概要文件一起安装,请将这些应用程序卸载。 应用程序不会使用这些应用程序,并且出于安全性和性能原因,会将其移除。

过程

  1. 打开浏览器并登录 WebSphere Integrated Solutions Console (https://hostname.example.com:9043/ibm/console/logon.jsp)。
  2. 单击应用程序 > 新建应用程序 > 新建企业应用程序
  3. 新应用程序的路径页面上,选择远程文件系统并浏览以查找 application.war 文件。 单击下一步

    根据您安装的 应用程序,以下 Web 应用程序可能适用于部署:

    • jts.war
    • clmhelp.war
    • ccm.war
    • relm.war
    • iotp.war
    • qm.war
    • rm.war
    • converter.war
    • dcc.war
    • lqe.war
    • ldx.war
    • rs.war
    • gc.war
    • rpeng.war
    • dgaas.war

  4. 选择快速路径,然后单击下一步
  5. 对于 模块,展开选择生成缺省绑定和映射,然后选中生成缺省绑定复选框。
  6. 在“将模块映射到服务器”页面上,选中 ldx 旁边的复选框以对 ldx 模块指定服务器上的目标作用域。
  7. 在“将模块映射到服务器”页面上,选中 lqe 旁边的复选框以对 lqe 模块指定服务器上的目标作用域。
  8. 单击下一步以接受所有缺省选项,直到到达“映射 Web 模块的上下文根”页面为止。
  9. 在“映射 Web 模块的上下文根”上,为应用程序设置以下上下文根
    • 对于 ,设置为 /jts
    • 对于 IBM Knowledge Center,设置为 /clmhelp
    • 对于 ,设置为 /ccm
    • 对于 ,设置为 /relm
    • 对于 IBM Continuous Engineering Connector for IoT,设置为 /iotp
    • 对于 ,设置为 /qm
    • 对于 ,设置为 /rm
    • 对于转换器应用程序,设置为 /converter
    • 对于 ,设置为 /dcc
    • 对于 ,设置为 /rs
    • 对于 ,设置为 /lqe
    • 对于 ,设置为 /ldx
    • 对于全局配置,设置为 /gc
    • 对于 ,设置为 /rpeng
  10. 单击完成
  11. 验证是否已正确地安装应用程序,然后单击直接保存到主配置

更新 JAX-RS 设置(仅限于 9.x)

如果您正在使用 V9.x,那么必须更新 JAX-RS 设置之后才能使用 CE Connector for IoT 应用程序:

  1. 登录 管理控制台。
  2. 从导航面板中选择服务器,然后单击服务器类型
  3. 服务器类型下,选择 WebSphere 应用程序服务器
  4. 单击要配置的服务器的链接。 缺省服务器名称为 server1
  5. 配置选项卡上,展开容器设置部分下的容器服务内容列表,然后单击缺省 JAX-RS 设置链接。
  6. 在此页面上,您可以查看受支持的 JAX-RS 提供程序。 从 JAX-RS 提供程序列表中选择 JAX-RS 提供程序 V1.1
  7. 保存设置,然后重新启动应用程序服务器。

配置 CE Connector for IoT

要配置 CE Connector for IoT,请参阅配置连接器

将安全角色映射到用户或存储库组

以下应用程序必须对其用户采用相同的认证方法,并且必须使用相同的安全组映射。

  • jts_war
  • ccm_war
  • qm_war

过程

  1. 在 WebSphere Integrated Solutions Console 中,单击应用程序 > 应用程序类型 > WebSphere 企业应用程序
  2. 对于 ,请单击 jts_war 应用程序以将其打开进行编辑。
  3. 对于 ,请单击 ccm_war 应用程序以将其打开进行编辑。
  4. 对于 ,请单击 qm_war 应用程序以将其打开进行编辑。
  5. 在“详细属性”部分中,单击安全角色到用户/组映射
  6. 选择特定存储库组(例如,JazzAdmins 或 JazzUsers),然后单击映射组

    这些存储库组与每一个 Jazz 实现相关联,并且必须映射到包含授权用户的特定组。 如果您正在使用 LDAP,那么在完成此映射之前,必须先在 LDAP 服务器上对这些组进行设置。 如果您正在将这些存储库组映射到各个用户,请选择存储库组,然后单击映射用户

  7. 输入搜索字符串以返回用户或组名。 单击搜索以运行查询。
  8. 从返回的可用用户或组的列表中,选择特定的用户或组并将其移至选定列。
  9. 单击确定以将用户或组映射到 Jazz 存储库组。
  10. 保存变更。

注:如果将来会对 LDAP 配置级别进行变更,那么您必须将安全角色重新映射到 JTS 和其他已安装的应用程序的用户或存储库组。

配置 应用程序

  1. 在 WebSphere Integrated Solutions Console 中,单击应用程序 > 应用程序类型 > WebSphere 企业应用程序
  2. 单击 lqe_war 将其打开,然后单击管理模块
  3. 单击 lqe,找到“类装入器顺序”字段并选中使用本地类装入器装入的类优先(最后装入父代)
  4. 单击确定并保存您的变更。
  5. 返回到 lqe_war 应用程序并单击类装入和更新检测
  6. 在“类装入器”页面上,选中使用本地类装入器装入的类优先(最后装入父代)
  7. 单击应用,然后单击直接保存到主配置

配置 应用程序

  1. 在 WebSphere Integrated Solutions Console 中,单击应用程序 > 应用程序类型 > WebSphere 企业应用程序
  2. 单击 ldx_war 将其打开,然后单击管理模块
  3. 单击 ldx,找到“类装入器顺序”字段并选中使用本地类装入器装入的类优先(最后装入父代)
  4. 单击确定并保存您的变更。
  5. 返回到 ldx_war 应用程序并单击类装入和更新检测
  6. 在“类装入器”页面上,选中使用本地类装入器装入的类优先(最后装入父代)
  7. 单击应用,然后单击直接保存到主配置

配置 应用程序

  1. 在 WebSphere Integrated Solutions Console 中,单击应用程序 > 应用程序类型 > WebSphere 企业应用程序
  2. 在“企业应用程序”页面上的资源列表中,单击 rs_war
  3. 在“配置”页面上的“引用”部分中,单击共享库引用
  4. 选中 rs_war 复选框,然后单击引用共享库
  5. 在“可用项”列表中,选择 JRS 共享库,然后单击向右箭头。
  6. 单击确定。 再次单击确定,然后单击保存
  7. 在资源列表中,单击 rs_war
  8. 在“配置”页面上的“详细信息属性”下,单击类装入和更新检测
  9. 在“类装入器顺序”组中,确保已选中使用本地类装入器装入的类优先(最后装入父代)。 单击应用,然后单击保存

启动应用程序

  1. 在 WebSphere Integrated Solutions Console 中,单击应用程序 > 应用程序类型 > WebSphere 企业应用程序
  2. 选中以下应用程序旁边的复选框,然后单击启动
    • jts_war
    • clmhelp_war
    • ccm_war
    • relm_war
    • iotp_war
    • qm_war
    • rm_war
    • converter_war
    • dcc_war
    • lqe_war
    • ldx_war
    • rs_war
    • gc_war
    • rpeng_war
    • dgaas_war

    这时,应该会出现一个绿色箭头,用于指示已成功启动应用程序。

    注:转换器应用程序仅在 Windows 和 Linux 上受支持。 有关其他不受支持平台上的安装指示信息,请参阅 Converter Application Configuration and Troubleshooting GuideDelegated Configuration 部分。

在 IBM i 上配置服务器

有关配置服务器的信息,请参阅在 IBM i 上配置服务器

通过配置 LDAP 来管理用户

配置 以使用 LDAP 注册表对用户进行认证。

开始之前

如果您使用 LDAP 来进行用户管理,并且您启用不使用区分大小写的用户管理的选项,请确保 也配置为允许不区分大小写的用户管理。 要在启动服务器后配置 登录属性,请在管理 Web 界面的“高级属性”页上修改使用不区分大小写的用户标识匹配属性。

过程

  1. 打开 Web 浏览器并登录 WebSphere Integrated Solutions Console。
  2. 在左侧菜单中,展开安全性,然后单击全局安全性
  3. 确保选中启用管理安全性启用应用程序安全性复选框。
  4. 在“用户帐户存储库”下,从“可用域定义”列表选择独立 LDAP 注册表,然后单击配置
  5. 主管理用户名中,输入 管理用户标识。
  6. 在“服务器用户身份”下,确保选中了自动生成的服务器身份
  7. 在 LDAP 服务器下,选择在组织中使用的 LDAP 服务器的类型。 提供了以下 LDAP 类型:
    • IBM Tivoli Directory Server
    • Microsoft Active Directory
  8. 主机字段中,提供 LDAP 服务器的 URL。
  9. 端口字段中,输入 LDAP 服务器的端口号。 缺省端口号为 389。
  10. 输入目录服务的基本专有名称 (DN)。
  11. 搜索超时字段中,输入 120 秒。
  12. 单击测试连接以确保您可以成功地连接至 LDAP 服务器,然后单击应用并保存变更。
  13. 在“其他属性”下,单击高级轻量级目录访问协议 (LDAP) 用户注册表设置
  14. 输入 LDAP 管理员为配置 所提供的常规属性的值。
  15. 单击应用并保存变更,然后单击确定以返回到“全局安全性”页面。
  16. 通过单击设置为当前独立 LDAP 注册表设置为当前领域定义。
  17. 停止 然后将其重新启动。
  18. 重新启动之后,通过登录 Integrated Solutions Console 来验证变更。

运行设置向导

在安装应用程序和数据库并启动 和其他应用程序之后,您可以登录 (jts/setup) 页面并运行设置向导来配置服务器。

"Express 安装" 是向导的简化版本,允许您设置缺省 Derby 数据库和 Liberty 基本用户注册表。 该向导将检测和设置您刚刚安装的应用程序。

过程

  1. 使用 Web 浏览器访问以下地址:https://hostname.example.com:9443/jts/setup
  2. 用户标识密码字段中都输入 ADMIN (区分大小写)。 单击登录
  3. 欢迎使用页面上,选择快速设置。 单击下一步
  4. 配置公用 URI 页面上,提供格式为 https://[fully qualified hostname]:9443/jts 的“公用 URI”,然后选中复选框以确认您已经阅读并了解此页面上提供的建议。 单击测试连接。 测试成功之后,单击下一步

    重要说明:[fully qualified hostname] 是主机名,它带有安装了 的机器的 DNS 域引用。 良好的 [标准主机名] 的一个示例是 hostname.example.com。 localhost 或 IP 地址是不正确的 [fully qualified hostname] 的示例。

  5. 创建管理用户页面上,通过提供用户标识、全名、密码和电子邮件地址来创建一个管理用户。 这个新的管理用户标识将替换缺省 ADMIN 用户。 单击下一步
  6. 设置进度页面将打开并显示每个步骤的进度。 绿色的选取标记表示已成功完成此步骤。 完成设置此应用程序之后,单击下一步
  7. 分配许可证页面上,必要时,对于必需的许可证单击激活试用许可证。 这将打开所选许可证的“许可协议”页面。 阅读并接受许可协议,然后单击完成
  8. 激活必需的许可证之后,单击完成。 这将打开“服务器管理”页面,您可以在此页面中执行其他管理任务和项目管理任务(例如,管理服务器、用户和许可证)。 有关更多信息,请参阅管理 服务器

" 定制设置 " 向导将指导您设置数据库,配置电子邮件设置,配置用户注册表以及注册应用程序。

开始之前

  • 确保 已安装且正在运行。
  • 对于新安装,如果您不想使用缺省端口号,那么必须在使用设置向导之前进行变更。 有关更多信息,请参阅变更应用程序服务器的端口号
  • 在运行设置向导之前,必须先创建数据库。 确保已执行 设置数据库
  • 在单服务器拓扑中,该向导将检测刚刚安装的应用程序并允许您对它们进行设置。 在分布式环境中,首先在每个服务器上安装并启动 以及所有应用程序,并记下应用程序发现 URL。 然后,在安装了 的服务器上运行设置向导,并在“注册应用程序”页面上提供已安装在其他服务器上的应用程序的发现 URL。

过程

  1. 在 Web 浏览器中,转至以下地址:https://hostname.example.com:9443/jts/setup
  2. 用户标识密码字段中,输入 ADMIN(区分大小写)。 单击登录
  3. 以属于 JazzAdmins 用户组的 WebSphere 管理标识身份登录。
  4. 以具有 JazzAdmins 特权的 LDAP 注册用户的身份登录。 请注意,LDAP 用户或组必须映射至存储库组。
  5. 在欢迎页面上,确保选择了定制设置,然后单击下一步
  6. 阅读“简介”页面上的信息,然后单击下一步
  7. 在“配置公用 URI”页面上,提供格式为 https://fully qualified hostname:9443/jts 的公用 URI,然后选中相应的复选框以确认您已经阅读并了解此页面上提供的建议。 此 URI 是 的公用 URI。
    • 当您在 应用程序自己的服务器上设置该应用程序时,必须提供 HAProxy 服务器(而不是 服务器)的公用 URI。
    • 当您在 应用程序自己的服务器上设置该应用程序时,必须提供 HAProxy 服务器(而不是 服务器)的公用 URI。
  8. 单击测试连接。 测试成功之后,单击下一步
  9. 在“配置数据库”页面上,提供用于设置 数据库连接的信息。
    • 数据库供应商:请选择 Db2OracleSQL ServerDb2 for z/OS
    • 连接类型:如果在 中通过 J2EE 容器来管理数据库连接,请选择 J2EE。 您必须提供 J2EE 数据源名称。 JDBC 连接类型不涉及到容器,并且 将直接连接到数据库并管理连接池。
    • 对于 JDBC 连接类型,请提供 JDBC 位置和 JDBC 密码。 对于 Db2 for z/OS,请在相应字段中提供模式前缀和 Db2z 数据库名称。
    • 单击测试连接。 连接成功之后,单击下一步。 完成此步骤可能需要几分钟时间。 成功创建数据库表之后,单击下一步以继续。
  10. 在“启用电子邮件通知”页面上,启用或禁用电子邮件通知。 如果您选择启用通知,那么必须提供有关电子邮件服务器的信息,并测试与电子邮件服务器的连接。 做出选择并测试连接之后,单击下一步
  11. 在“注册应用程序”页面上,向导将检测与 安装在同一服务器上的应用程序。 发现每个应用程序并将其添加到要注册的应用程序列表可能需要一些时间。 向导不会检测安装在另一服务器上的应用程序。 您可以向 注册其他应用程序,但只会对 应用程序启用集群。

    注:如果您在安装期间选择了 选项,并且在设置向导的步骤 1 中安装了 ,那么必须配置 Authorization Server。 提供授权服务器 URL ,管理用户标识和管理密码,然后单击 测试连接

    确保浏览器未阻止弹出窗口。 使用弹出窗口进行登录。

    限制:当 Jazz 安全体系结构 SSO 处于启用状态时,不支持 浏览器附加组件。

    1. 可选:如果您不想注册应用程序,请单击应用程序名称最右端的 X 图标。 通常,您应该注册所有应用程序;但是,在下列情况下,您可能不想注册一个或多个应用程序:
      • 您已下载并部署所有应用程序,但是不打算使用其中一部分应用程序。
      • 您将不具有应用程序的许可证。
      • 您正在将这个 应用程序配置为独立浮动或令牌许可证服务器。
    2. 验证已安装的应用程序的应用程序类型和发现 URL。 该向导会为每个应用程序创建缺省的预授权功能用户标识。
    3. 可选:要添加安装在另一个服务器上的应用程序,请单击添加应用程序并提供应用程序名称和发现 URL。 在提供应用程序名称和发现 URL 后,将自动生成并输入功能用户标识。 功能用户标识将用于在后台运行任务。 功能用户标识不必存在于外部用户注册表中,也不必作为用户存在于存储库中;如果该用户未存在于存储库中,将会自动创建该用户。
    4. 单击注册应用程序。 该向导会创建好友关系,注册应用程序,并为每个应用程序生成使用者密钥和私钥。
    5. 注册成功之后,单击下一步以配置已注册的应用程序。 注意,现在左边的菜单会列示已注册的应用程序以及子步骤。
  12. 在“设置用户注册表”页面上,提供以下信息:
    1. 选择您将使用的用户注册表类型。
      1. Liberty 基本注册表:如果应用程序服务器是缺省 Liberty 概要文件并且您没有 LDAP 服务器,请选择此选项。 这是最简单的配置选项,它允许 使用 Liberty 概要文件用户数据库来管理用户和组。
      2. 如果您选择 LDAP 用户注册表,那么必须提供信息以配置 与 LDAP 服务器之间的连接。 您可能需要向 LDAP 管理员请求获取此信息。
      3. 如果贵组织集中管理用户和组,但是无法从 直接访问用户注册表,请选择 SCIM 选项。 如果您已将 Authorization Server 配置为 SCIM 提供程序,请选择此选项, 将使用 JAS SCIM 提供程序来访问用户和组信息。
      4. 如果应用程序服务器是 Tomcat 并且您没有 LDAP 服务器,请选择此选项。 这是最简单的配置选项,它允许 通过 Tomcat 用户数据库来管理用户和组。
      5. 如果选择非 LDAP 外部注册表,请输入登录设置向导时使用的用户标识。 这是 管理用户标识。
      6. 对于 z/OS 上采用 RACF 安全性的 或者 IBM i 上采用本地操作系统认证的 ,请选择非 LDAP 外部注册表
      7. 在向导的步骤 2 中,您可能需要向 SCIM 管理员请求以下信息来配置 ,以将 用作用户注册表提供程序。
        • SCIM 提供程序的 URL
        • 用于访问 SCIM 提供程序的用户名和密码
        • 基本用户专有名称
        • 基本组专有名称
        • Jazz 组到注册表组的映射
      8. 在向导的步骤 2 中,您可能需要向 LDAP 管理员请求以下信息来配置 ,以将 LDAP 服务器用作用户注册表提供程序。
        • LDAP 注册表位置
        • 用于访问 LDAP 注册表的用户名和密码
        • 基本用户专有名称
        • 用户属性名称映射
        • 基本组专有名称
        • Jazz 到 LDAP 组的映射
        • 组名属性
        • 组成员属性
      9. 单击测试连接
      10. 提示:通过此操作会保存 Tomcat 配置文件。 要查看所生成 XML 文件的名称和位置,请在消息窗口中单击显示详细信息

      11. 完成设置向导之后,继续执行下一步以配置 LDAP 设置。
    2. 提供将具有对 的管理访问权的用户的用户标识、名称、密码和电子邮件地址。
    3. (可选)通过选中相应的复选框来禁止缺省 ADMIN 访问。
    4. 根据安装的应用程序,在 , , , , 下选择希望管理用户拥有的客户端访问许可证 (CAL)。 您只能向管理员分配一种类型的基于角色的 CAL。 例如,只能向管理员分配“ - 开发者”CAL 或“ - 项目干系人”CAL,但不能同时分配这两者。 相同规则适用于其他应用程序。 如果已安装了试用许可证,那么必须先接受许可证的条款,才能将其指定给管理用户。 如果要激活许可证,请单击激活试用版;然后,在“客户访问许可协议”窗口中,单击我接受许可协议中的条款并单击完成
    5. 提示:有关许可证如何提供对应用程序功能的不同级别访问权的信息,请参阅客户访问许可证管理概述

  13. 作出选择后,单击下一步
  14. 在“配置数据仓库”页面上,提供用于设置数据仓库连接的信息。 数据仓库是用于报告和分析的数据库。 缺省情况下,此应用程序已预先配置为使用其所随附的 Derby 数据库,因此不需要进行配置。 单击下一步以继续。 如果您已在企业数据库服务器上准备数据库(例如 Db2OracleSQL Server),那么必须将 配置为使用该数据库。 请从列表中选择数据库供应商和连接类型,然后输入连接属性。
    1. 在“配置数据仓库的数据库供应商连接类型”部分中,选择数据库供应商及其连接类型。 缺省值是使用随附的 Apache Derby 数据库,已对其预先配置了 JDBC 连接。 您可以保留此缺省值,也可以选择不同的数据库供应商和连接类型。

      注:如果对连接类型选择 J2EE,那么还必须在 中将 resultSetHoldability 属性设置为 1。 缺省情况下,此属性设置为 2。 如果未将此属性设置为 1 ,那么某些数据仓库收集作业可能会失败。 有关 resultSetHoldability 的更多信息,请参阅 文档。

    2. 配置数据仓库数据库连接属性部分中,输入用于连接至数据库的连接属性。 必需值将根据数据库供应商和连接类型的不同而变化。
    3. 数据库表空间文件夹字段中,输入数据库服务器上的现有目录(将在该目录中创建表空间)的路径,并指定数据库的所有其他高级服务器属性:
      • 临时表空间
      • ODS 表空间
      • ODS 索引表空间
      • 星式表空间
      • 星式索引表空间
      • 定制报告数据库用户
    4. 如果您使用了 Common Reporting,并且想要将现有数据仓库数据库用作 产品的数据仓库,请提供用于连接至该现有数据库的信息。 系统提示您将表添加至 Common Reporting 数据库。
    5. 要验证服务器是否可以使用您提供的连接信息与数据库成功通信,请单击测试连接
    6. 如果您先前未使用存储库工具 (repotools) 命令创建数据库表,那么可能会看到一条警告,指示数据库已存在,但未包含任何表。 要创建表,请单击创建表。 完成此命令可能需要几分钟时间,请耐心等候。
    7. 单击下一步
  15. 如果现在不想配置数据仓库,请选中我现在不想配置数据仓库复选框。

    如果您未配置此数据仓库,那么虽然您的应用程序可以使用,但您却无法存储任何报告数据,同时多数报告也将无法使用。

  16. 对于每个应用程序,请遵循相同的步骤来配置数据库和数据仓库
  17. 在“完成应用程序”页面上,单击完成应用程序设置
  18. (/lqe) 和 (/ldx)“配置数据库”页面上,单击保存 JDBC 连接以保存数据库连接属性。 在这些应用程序的“配置备份”页面上,您可以启用在每周星期天早上 2:00 点钟运行的每周备份。 完成设置之后,可以通过 Web UI 来变更安排时间。 您还必须提供服务器上的现有备份目录的路径。 完成之后,单击保存配置
  19. 在“设置 ”页面上,单击连接到数据源 会检测数据源并建立连接。 如果要导入由数据源提供的报告,请单击导入即用型报告
  20. 在“摘要”页面上,单击完成以访问“ 管理”页面,您可以在此页面中执行管理任务,例如,管理服务器、用户和许可证。 有关更多信息,请参阅管理 服务器

通过配置 LDAP 来管理用户

配置 服务器以使用 LDAP 注册表对用户进行认证。

开始之前

如果您使用 LDAP 来进行用户管理,并且您启用不使用区分大小写的用户管理的选项,请确保 也配置为允许不区分大小写的用户管理。 要配置 登录属性,请在管理 Web 界面的“高级属性”页面上修改使用不区分大小写的用户标识匹配属性。

过程

  1. 转至 Jazz_Install_Dir/server/liberty/servers/clm\server\liberty\servers\clm,打开 server.xml 文件进行编辑。
  2. 要使用 LDAP 用户注册表,请注释 <include location="conf/basicUserRegistry.xml"> 并取消注释 <!--include location="conf/ldapUserRegistry.xml"-->
  3. 保存并关闭 server.xml 文件。
  4. 打开 Jazz_Install_Dir/server/liberty/servers/clm/conf/\server\liberty\servers\clm\conf\ldapUserRegistry.xml 以进行编辑,并检查 ldapRegistry 值以确保它们与贵组织的 LDAP 配置相匹配。 缺省情况下,ldapUserRegistry.xml 文件使用 IBM Tivoli Directory Server 作为 ldapTypeidsFilters

    <ldapRegistry
    id="sample_ldap" realm="SampleLdapIDSRealm" ignoreCase="true"
    host="localhost" port="389"
    baseDN="ou=people,dc=jazz,dc=net"
    ldapType="IBM Tivoli Directory Server">
    <idsFilters
    userFilter="(&amp;(uid=%v)(objectclass=inetOrgPerson))"
    groupFilter="(&amp;(cn=%v)(|(objectclass=groupOfNames)(objectclass=posixGroup))"
    userIdMap="*:uid"
    groupIdMap="*:cn"
    groupMemberIdMap="ibm-allGroups:member;ibm-allGroups:uniqueMember">
    </idsFilters>
    </ldapRegistry>

    以下示例适用于 Microsoft Active Directory 类型:

    ldapType="Microsoft Active Directory"
    <activedFilters
    userFilter="(&amp;(sAMAccountName=%v)(objectcategory=user))"
    groupFilter="(&amp;(cn=%v)(objectcategory=group))"
    userIdMap="user:sAMAccountName"
    groupIdMap="*:cn"
    groupMemberIdMap="memberof:member">
    </activedFilters>

  5. 保存并关闭 ldapUserRegistry.xml
  6. 打开 Jazz_Install_Dir/server/liberty/servers/clm/conf/\server\liberty\servers\clm\conf\application.xml,检查每个 .war 文件组名,确保它与贵组织的组名相匹配。 下列应用程序依赖于容器认证:。 其他应用程序委托 进行认证。
  7. 重新启动 服务器。
  8. 在 Web 浏览器中,转至 https://host.example.com:9443/jts/setup,其中 host.example.com 是服务器的标准主机名称。
  9. 通过使用 LDAP 外部注册表中的用户标识登录服务器来测试连接。

后续操作:

在分布式环境中,执行这些步骤以在所有服务器上配置 Liberty 文件。

配置 Tomcat 服务器以使用 LDAP 注册表对用户进行认证。

关于本任务

执行设置向导期间,如果单击了保存 LDAP 配置文件按钮,那么会在 Tomcat_Home 目录中保存 Tomcat 配置文件。 使用以下过程来设置 Tomcat 配置文件以使用 LDAP。

开始之前

如果您使用 LDAP 来进行用户管理,并且您启用不使用区分大小写的用户管理的选项,请确保 也配置为允许不区分大小写的用户管理。 要配置 登录属性,请在管理 Web 界面的“高级属性”页面上修改使用不区分大小写的用户标识匹配属性。

过程

  1. 转至 Jazz_Install_Dir/server/tomcat/conf\server\tomcat\conf,并将 server.xml 文件重命名为 server.xml.old
  2. server-LDAPxxxx.xml 文件重命名为 server.xml
  3. 转至 Jazz_Install_Dir/server/tomcat/webapps/jts/WEB-INF\server\tomcat\webapps\jts\WEB-INF,并将 web.xml 文件重命名为 web.xml.old
  4. web-LDAPxxxx.xml 文件重命名为 web.xml
  5. 转至 Jazz_Install_Dir/server/tomcat/webapps/ccm/WEB-INF\server\tomcat\webapps\ccm\WEB-INF,并将 web.xml 文件重命名为 web.xml.old
  6. web-LDAPxxxx.xml 文件重命名为 web.xml
  7. 转至 Jazz_Install_Dir/server/tomcat/webapps/qm/WEB-INF\server\tomcat\webapps\qm\WEB-INF,并将 web.xml 文件重命名为 web.xml.old
  8. web-LDAPxxxx.xml 文件重命名为 web.xml
  9. 重新启动 Tomcat 服务器。
  10. 打开 Web 浏览器窗口并转至 https://host.example.com:9443/jts/setup,其中 host.example.com 是服务器的标准主机名。
  11. 通过使用 LDAP 外部注册表中的用户标识登录服务器来测试连接。

后续操作:

在分布式环境中,执行这些步骤以在所有服务器上配置 Tomcat 文件。

使用 setup repotools 命令配置服务器

可从命令行运行 setup 命令以设置数据库、配置电子邮件设置、配置用户注册表以及注册所有您刚才已安装的应用程序。

setup 命令是一个存储库工具命令,允许您在不使用设置向导的情况下设置 和相关联的应用程序。 可以采用交互方式来运行此命令,以帮助捕获促使将来自动进行安装所需要的响应文件。 请参阅用于配置服务器的存储库工具命令以了解可与该命令配合使用的每个参数的说明。

开始之前

在运行 setup 命令之前,您必须已经安装了 和任何 应用程序,创建了数据库,并且在应用程序服务器上已部署并启动了这些应用程序。

注:如果您正在使用 Derby 数据库,请在运行 setup 命令之前确保 Jazz_Install_Dir/server/conf/jts/teamserver.propertiesJazz_Install_Dir\server\conf\jts\teamserver.properties 文件中的数据库和数据仓库的位置为绝对路径。 例如:com.ibm.team.repository.db.jdbc.location=Jazz_Install_Dir/conf/jts/derby/repositoryDB com.ibm.team.datawarehouse.db.jdbc.location=Jazz_Install_Dir/conf/jts/derby/warehouseDB

过程

  1. 打开命令窗口并输入以下命令:

    cd Jazz_Install_Dir\server
    repotools-jts.bat -setup repositoryURL=https://qualified.hostname.com:9443/jts adminUserID=ADMINWAS_ADMIN_ID。adminPassword=ADMINWAS_ADMIN_PASSWORD

    cd Jazz_Install_Dir/server
    ./repotools-jts.sh -setup repositoryURL=https://qualified.hostname.com:9443/jts adminUserID=ADMINWAS_ADMIN_ID。adminPassword=ADMINWAS_ADMIN_PASSWORD

  2. 配置公用 URI,然后按 Enter 键。
  3. 阅读警告并确认公用 URI:

    我明白一旦设置了公用 URI,便无法再予以修改,除非通过其他管理命令来进行,但这些管理命令可能会导致来自于不支持变更 URL 的其他应用程序的断开链接。

    选择“确认公用 URI”:

    [1] 我了解
    [2] 取消并退出设置-缺省值

  4. 在“配置数据库”步骤中,输入数字以选择数据库连接类型:
  5. [1] JDBC -缺省值
    [2] J2EE

  6. 输入一个数字以选择数据库供应商:
  7. [1] Derby-缺省值
    [2] Db2
    [3] SQL Server
    [4] Db2 for z/OS
    [5] Db2i
    [6] Derby Net
    [7] Oracle

  8. 输入 JDBC 数据库的位置。 如果此位置包含密码,请使用值 {password} 而不是实际密码。
  9. 例如:

    conf/jts/derby/repositoryDB

    //localhost:50000/JTS:user=db2admin;password={password};

    thin:jtsDBuser/{password}@localhost:1521/DB

    //localhost:1433;databaseName=jts;user=jtsDBuser;password={password};

    //ipAddress:ipPort/location:user=jtsDBuser;password={password};

  10. 输入 Y 以启用电子邮件通知。 输入 N 则跳过。
  11. 在“配置用户注册表”步骤中,输入对应下列其中一个条目的数字:
  12. [1] LIBERTY
    [2] LDAP
    [3] 非 LDAP 外部注册表

  13. 输入以下信息以创建管理用户。
    • 用户标识
    • 密码(密码不会显示在屏幕上。)
    • 重新输入密码
    • 您的全名
    • 电子邮件地址

    如果您选择了 LDAP,那么会导入登录用户信息。 如果您选择了“非 LDAP”,那么不需要输入密码。

  14. 创建管理用户之后,您可以禁用缺省 ADMIN 用户。 选择下列选项中的一个选项:
  15. [1] 禁用-缺省值
    [2] 不禁用

  16. 接下来,根据已安装的应用程序,将要求您注册本地应用程序。 输入 Y 以进行确认并输入每个应用程序的实例名称(上下文根)和发现 URL。
  17. 注:本地应用程序是安装在 所在应用程序服务器下的应用程序,可发现其详细信息。 非本地应用程序安装在分布式环境中,或与 不安装在同一应用程序服务器中,并且必须由用户提供其详细信息。

    下表显示可向 注册的应用程序及其上下文根和发现 URL:

    带有缺省上下文根和发现 URL 的 应用程序
    应用程序名称 上下文根 发现 URL

    /ccm

    /rqm

    /rm

    /relm

    /gc

    /ldx

    /rs

    /dcc

    /lqe

    https://server.example.org:9443/ccm/scr

    https://server.example.org:9443/rqm/scr

    https://server.example.org:9443/rm/scr

    https://server.example.org:9443/relm/scr

    https://server.example.org:9443/gc/scr

    https://server.example.org:9443/ldx/scr

    https://server.example.org:9443/rs/scr

    https://server.example.org:9443/dcc/scr

    https://server.example.org:9443/lqe/scr

  18. 在“分配许可证”步骤中,对每个已安装应用程序选择要分配给用户的相应客户访问许可证。 根据需要,可在管理 UI 中分配额外许可证密钥。
  19. 在“配置数据仓库数据库”步骤中,选择数据库连接类型和数据库供应商。 对于数据库网络服务器端口,请在托管服务器内分配唯一端口号。 缺省端口号为 1527。
  20. “设置 ”步骤创建已知数据源并导入现成报告,以便 即刻使用。

    如果未设置数据仓库或正在使用 Derby 数据库,那么不需要密码。 否则,对数据仓库输入密码。 完成此步骤可能需要几分钟时间。

  21. 在设置结束时,您应在屏幕上见到指示设置已成功完成的消息。

使用 setup repotools 命令以快速方式配置服务器

setup 命令是一个存储库工具命令,允许您在不使用设置向导的情况下设置 和相关联的应用程序。 可以从命令行以快速方式运行 setup 命令来设置所有缺省值。

当您以快速方式运行 setup 命令时,系统只会提示您输入所需要的信息来创建管理用户,并为该用户分配许可证。 所有其他任务都将使用缺省值来自动完成。 如果您需要变更缺省值(例如,公用 URI 条目),那么可以在命令行中添加 repositoryURL 参数。 您还可以使用响应文件,它具有以快速方式运行 setup 命令时所需要的所有已记录的信息。 请参阅用于配置服务器的存储库工具命令以了解可与该命令配合使用的每个参数的说明。

过程

  1. 打开命令窗口并输入以下命令:

    cd Jazz_Install_Dir\server
    repotools-jts.bat -setup repositoryURL=https://qualified.hostname.com:9443/jts express=yes

    cd Jazz_Install_Dir/server
    。/repotools-jts.sh -setup repositoryURL=https://qualified.hostname.com:9443/jts express=yes

  2. 当系统提示您时,请输入以下信息来创建管理用户。
    • 用户标识
    • 密码(密码不会显示在屏幕上。)
    • 重新输入密码
    • 您的全名
    • 电子邮件地址
  3. 在“分配许可证”步骤中,对每个已安装应用程序选择要分配给用户的相应客户访问许可证。 根据需要,可在管理 UI 中分配额外许可证密钥。

集群应用程序的 ()

对于可以支持集群的 () 应用程序(例如 ),分布式数据由一个称为 的独立 Web 应用程序管理。

() 是一个小型 Java 应用程序,包含主要 JAR 文件 distributedCache.jar、针对配置属性的 distributedCache.cfg 文件和 jarlib 目录中的必需依赖关系。 微服务为集群 () 应用程序的分布式数据提供集中管理和存储位置。 集群操作需要 ;如果 无法访问,那么所有集群应用程序将处于“等待”状态,直到 恢复联机。 本身并不是 应用程序,它可能与 应用程序具有不同的配置需求。

安装注意事项

必须已安装,且在集群应用程序的所有节点都可以访问的机器上运行。 缺省情况下,微服务安装在 () 机器上的 server/clustering/cache 目录下,且在执行 启动顺序时启动,或者在集群应用程序要求它时按需启动。 如果尚未设置 URL 高级属性设置,那么集群应用程序将调用 ,以发现微服务的状态。 然后, 尝试查找正在运行的 进程,并启动未在运行的 。 在生产环境中, 通常是位于代理(例如 )后端的后端服务器,或者为提高性能而将它安装在专用服务器上。 在这些情况下,必须手动启动 ,并且必须设置集群应用程序 URL 服务属性。

注:为了获得最佳性能,应将 移至一个独立于 的专用服务器。

要移动 或者重新配置 URL,请完成下列步骤:

  1. 确定要访问 的 URL。 请注意有关 URL 的下列重要因素:
    • URL 可以 http 或者 https 开头,这取决于在 distributedCache.cfg 文件中是否启用了 SSL。
    • 如果服务器的前端是代理,请使用代理 URL。
    • 如果端口被屏蔽,那么应从 URL 中省略该端口。 否则,10001 是缺省端口,也可以在 distributedCache.cfg 文件中配置缺省端口。
    • 不需要 URL 末尾的上下文路径。
  2. URL 示例:

    https://myproxy.company.com/
    https://myserver.company.com:10001/

    注:如果您在启用集群之前执行下列步骤,那么在您复制应用程序节点时会将变更传播到其他节点。

  3. 登录到 应用程序管理 UI ,然后转至 应用程序 > 高级属性
  4. 搜索 URL,在“当前值”字段中输入 服务器的 URL。
  5. 滚动到页面顶部并单击保存
  6. 转至安装了 应用程序的服务器,并将 server/clustering/cache 目录及其所有子目录复制到新 主机上的某个位置。 请注意, 主机必须安装了 JVM 1.8 或更高版本。
  7. 打开 server/clustering/cache/distributedCache.cfg 文件进行编辑。
  8. [AuthServer] 部分,在 as_trusted_url 中添加 URL,以便可以将它向 正确注册。 例如:
  9. as_trusted_url = $S{AuthServer.as_trusted_url, https://myserver.company.com:10001}

    注意:server/clustering/cache/distributedCache.cfg文件中,请勿将带有斜线尾部的 URL 用于 as_trusted_url 属性的值。

配置属性核对表

根据安装拓扑,可以在 distributedCache.cfg 文件中设置下列配置属性。

以安全方式运行

缺省情况下,以 SSL 方式运行 。 这由 [REST] 部分中的 useSsl 属性来控制。 在 [REST-SslContextFactory] 部分指定了其他 SSL 相关配置。 请确保在 keyStorePath 中指定正确的文件名和路径。

配置样本

下面是一些样本配置,供您参考。 请注意,这些样本仅指出了一些重要参数,而未指出整个配置。

样本 1, 满足下列条件:

#===========================================
# REST settings
#===========================================
[REST]

port = $E{CACHE_PORT, 10001}

stylesheet = styles/devops.css

saveConfigAction = RESTART_SERVER

useSsl = true

authType = OIDC

#===========================================
# AuthServer settings
#===========================================
[AuthServer]

auth_url = $S{AuthServer.auth_url, https://JAS_HOST:9643/oidc/endpoint/jazzop}

client_id = dcm

client_name =

as_admin_id = $S{AuthServer.as_admin_id, ADMIN}

as_admin_pass = $S{AuthServer.as_admin_pass, ADMIN}

as_trusted_url = $S{AuthServer.as_trusted_url, https://JTS_HOST:10001}

#============================================
# LDAP UserRegistry settings.
#============================================
[UserRegistry]

base_group_DN = dc=jazz,dc=domain

group_name_property = cn

group_roles_mapping = {"LDAPJazzAdmins":"JazzProjectAdmins,JazzAdmins,JazzDWAdmins","LDAPJazzUsers":"JazzUsers,JazzDWAdmins"}

样本 2, 满足下列条件:

#============================================
# REST settings
#============================================
[REST]

port = $E{CACHE_PORT, 10001}

stylesheet = styles/devops.css

saveConfigAction = RESTART_SERVER

useSsl = true

authType = OIDC

#============================================
# AuthServer settings
#============================================
[AuthServer]

auth_url = $S{AuthServer.auth_url, https://JAS_HOST:9643/oidc/endpoint/jazzop}

client_id = dcm

client_name =

as_admin_id = $S{AuthServer.as_admin_id, ADMIN}

as_admin_pass = $S{AuthServer.as_admin_pass, ADMIN}

as_trusted_url = $S{AuthServer.as_trusted_url, https://IHS_HOST}

IHS 环境

如果 的前端有代理服务器,那么必须将它配置为将 请求转发至正在运行 的相应主机和端口。 缺省情况下, 集群期望在端口 10001 上安全配置的 在同一主机上运行。

要修改 IHS 配置,请对下列文件进行变更:

a) httpd.conf - 添加以下条目来侦听缺省 端口 (10001)。 可以在 distributedCache.cfg 中变更缺省 端口。 请注意,仅当您打算将端口作为 URL 的一部分时,才需要进行以下变更。 如果您打算从 URL 屏蔽 端口,那么不需要在 httpd.conf 文件中进行任何变更。

监听 10001
<VirtualHost *:10001>
SSLEnable
SSLServerCert <IHS服务器证书别名>
</VirtualHost>

b) plugin-cfg.xml - 添加以下条目以将端口 10001 上的请求转发至相应的 服务器。 请注意, 只需要转发 /jsa/dcm 上下文根。

<ServerCluster CloneSeparatorChange="false" GetDWLMTable="false" IgnoreAffinityRequests="true" LoadBalance="Round Robin" Name="microservice_Cluster" PostBufferSize="64" PostSizeLimit="-1" RemoveSpecialHeaders="true" RetryInterval="60">
<服务器 ConnectTimeout="0" ExtendedHandshake="false" MaxConnections="-1" 名称="微服务" ServerIOTimeout="9000" WaitForContinue="false">
<Transport Hostname="<JTS_HOSTNAME>"端口="10001" 协议="https">
<Property Name="keyring" Value="<File Path of keystore file (kdb)>"/>
<Property Name="stashfile" Value="<File Path of stash file file (sth)>"/>
</Transport>
</Server>
</ServerCluster>

<UriGroup Name="microservice_Cluster_URIs">
<UriAffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/jsa/*"/>
<Uri;Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/dcm/*"/>
</UriGroup>

<路由 ServerCluster="microservice_Cluster" UriGroup="microservice_Cluster_URIs" VirtualHostGroup="default_host"/>

c) 更新密钥库数据库文件,以根据 plugin-cfg.xml 文件的密钥库更新对 证书添加一个条目。

运行

启动和停止微服务所需要的所有文件和脚本都在 server/clustering/cache 目录中。 要运行微服务,您必须安装了 JVM V1.8 或更高版本。 可以使用所包括的脚本来启动微服务,也可以使用以下命令来启动微服务:

java –Xms2G –Xmx3G -jar distributedCache.jar

可以通过该命令根据需要来变更 JVM XmsXmx 参数的值。

注:

启动微服务:

要确定微服务,请打开命令窗口Shell,并输入下列命令:

cd Path_To__Folder
start distributedCache。start.bat JRE_Bin_Path

cd PATH_To__Folder
./distributedCache.start.sh JRE_Bin_Path > /dev/null &

其中:

Path_To__Folder 的安装位置,JRE_Bin_PathJRE/Bin 文件夹所在的位置。 JRE_Bin_Path 为可选。 如果未指定此路径,那么系统会认为 正在从其缺省位置运行,并使用 应用程序所提供的 JRE。

停止微服务:

要停止微服务,请打开命令窗口Shell,并输入下列命令:

cd Path_To__Folder
distributedCache。stop.bat JRE_Bin_Path

cd Path_To__Folder
./distributedCache.stop.sh JRE_Bin_Path

其中:

注销

() 用于认证 。 要注册微服务,在 distributedCache.cfg 文件中的 AuthServerUserRegistry 部分配置了若干参数,如前一节中所述。 将在首次启动后自动向 注册。 在 注册之后,在 distributedCache.cfg 文件中会更新下列属性:client_secretregistration_completed = true。 缺省情况下, 将在 上注册,并且 client_iddcm。 如果您需要更新 注册,那么可以删除现有 注册,然后再次向 注册

  1. 停止
  2. 编辑 distributedCache.cfg 文件。
    1. client_secret 重置为缺省值。

      client_secret = $S{AuthServer.client_secret}

    2. 移除或者注释掉 registration_completed = true 属性。
    3. 复查配置文件中的 [AuthServer][UserRegistry] 部分所提到的其他属性,需要时相应地更新它们。
  3. 使用 JAS 所提供的 rmclient 实用程序从 注销
  4. cd JAS_Install_Dir\cli
    rmclient.bat -a AUTH_SERVER_URL -u ADMIN:ADMIN dcm

    cd JAS_Install_Dir/cli
    ./rmclient -a AUTH_SERVER_URL -u ADMIN:ADMIN dcm

    其中 AUTH_SERVER_URL 是配置文件中所指定的 auth_urlADMIN:ADMIN 参数是由用户标识和密码组成的管理用户凭证,用户标识与密码之间用冒号分隔。 dcm 是用于微服务注册的 Authorization Server 客户机标识。

  5. 当您启动 时,它将使用已更新的属性向 重新注册它本身。

复制 节点

在完成单个 节点的设置和配置之后,可以通过复制节点将它变换为集群。

I. 将消息代理 URL 添加至高级属性

  1. 登录到第一个节点上的服务器。
  2. 单击应用程序,然后在“配置”下单击高级属性
  3. 搜索 com.ibm.team.repository.service.mqtt.internal.MqttService,然后单击标题栏中的编辑
  4. MQTT 代理地址当前值字段中,输入 MQTT 代理 () 的 IP 地址或主机名,后面接着输入跟在 中配置端点时指定的端口号。
  5. 要保存变更,请单击预览

二. 将集群信息添加到 server.startup 脚本

  1. 登录到您设置为用作第一个节点的服务器,并停止 应用程序。
  2. 转至 _Install_Dir/server 目录,并打开 server.startup 以进行编辑,然后添加下列行:

    JAVA_OPTS="$JAVA_OPTS -Dcom.ibm.team.repository.cluster.nodeId="ccm1""
    JAVA_OPTS="$JAVA_OPTS -Dcom.ibm.team.repository.service.internal.db.allowConcurrentAccess=true"
    JAVA_OPTS="$JAVA_OPTS -Dretry.count=0"
    JAVA_OPTS="$JAVA_OPTS -Dretry.wait=10"

    ccm1 替换为节点的名称或标识。 此名称必须在所有节点中唯一。 稍后将这些设置复制到其他节点时,必须在所有节点(例如 ccm2ccm3)上变更此值。

  3. 保存 server.startup 文件,然后将其关闭。

三. 向 客户机注册添加节点

您注册 应用程序时,使用了 HAProxy URL,所以 不具有特定节点的主机名。 将新节点添加至集群之后,您还必须将它添加至 客户机注册。

注:当您添加第二个节点时,还必须将第一个节点的主机名添加至注册。

  1. 转至 应用程序的安装目录,并将 clustering 目录下的所有文件复制到安装了 的计算机。 确保保留目录结构。

    clustering 目录中包含下列文件:

    • addNodeReg.sh
    • JASConfig.params
    • addNodeReg.bat
    • addNodeReg.ps1
    • JASConfig.params
  2. 在 Linux 系统上,对脚本文件运行 chmod 755,以使其成为可执行文件。
  3. 编辑 JASConfig.params 文件,以添加 管理员凭证以及 安装目录的路径。
  4. 使用客户机标识和本地节点 URL 作为参数来运行 addNodeReg.shaddNodeReg.bat
  5. 客户机标识:在 上注册的集群 应用程序的客户机标识。 要获取客户机标识,请打开 teamserver.properties 文件并查找 com.ibm.team.repository.servlet.sso_clientId 属性。

    本地节点 URL:这是安装了 应用程序的计算机的标准主机名称和端口号。 请注意,这不是应用程序注册期间所使用的 应用程序的公用 URL。 HAProxy 配置文件的后端部分中也使用此主机名。

    ./addNodeReg.shaddNodeReg.bat client ID https://_Hostname:Port/appContext

    注:请确保在您用于初始设置的第一个节点上运行 addNodeReg 脚本。

四. 将 复制到所有节点

可以采用两种方式在所有节点上复制 应用程序。 可以在所有其他节点上安装 应用程序,然后仅将 teamserver.propertiesserver.startup 文件从第一个节点复制到其他节点。 或者,可以将整个安装目录从第一个节点复制到其他节点。 请勿忘记在所有节点上变更 server.startup 文件中的节点标识,以便它们都具有唯一标识。

V. 更新 HAProxy 配置

打开 HAProxy 配置文件,并验证它是否列示了实际 节点的主机名,以及行数是否与节点数匹配。 根据需要编辑配置文件,然后重新启动 HAProxy 服务。

六. 启动节点

在每个节点上启动 服务器。 检查 HAProxy 控制台以确保所有后端服务器都已联机。

复制 节点

在完成单个 节点的设置和配置之后,可以通过复制节点将它变换为集群。

I. 将消息代理 URL 添加至高级属性

  1. 登录到第一个节点上的服务器。
  2. 单击应用程序,然后在“配置”下单击高级属性
  3. 搜索 com.ibm.team.repository.service.mqtt.internal.MqttService,然后单击标题栏中的编辑
  4. MQTT 代理地址当前值字段中,输入 MQTT 代理 () 的 IP 地址或主机名,后面接着输入跟在 中配置端点时指定的端口号。
  5. 要保存变更,请单击预览

二. 将集群信息添加到 server.startup 脚本

  1. 登录到您设置为用作第一个节点的服务器,并停止 应用程序。
  2. 转至 QM_Install_Dir/server 目录,并打开 server.startup 以进行编辑,然后添加下列行:

    JAVA_OPTS="$JAVA_OPTS -Dcom.ibm.team.repository.cluster.nodeId="qm1""
    JAVA_OPTS="$JAVA_OPTS -Dcom.ibm.team.repository.service.internal.db.allowConcurrentAccess=true"
    JAVA_OPTS="$JAVA_OPTS -Dretry.count=0"
    JAVA_OPTS="$JAVA_OPTS -Dretry.wait=10"

    qm1 替换为节点的名称或标识。 此名称必须在所有节点中唯一。 稍后将这些设置复制到其他节点时,必须在所有节点(例如 qm2qm3)上变更此值。

  3. 保存 server.startup 文件,然后将其关闭。

三. 向 客户机注册添加节点

您注册 应用程序时,使用了 HAProxy URL,所以 不具有特定节点的主机名。 将新节点添加至集群之后,您还必须将它添加至 客户机注册。

注:当您添加第二个节点时,还必须将第一个节点的主机名添加至注册。

  1. 转至 应用程序的安装目录,并将 clustering 目录下的所有文件复制到安装了 的计算机。 确保保留目录结构。

    clustering 目录中包含下列文件:

    • addNodeReg.sh
    • JASConfig.params
    • addNodeReg.bat
    • addNodeReg.ps1
    • JASConfig.params
  2. 在 Linux 系统上,对脚本文件运行 chmod 755,以使其成为可执行文件。
  3. 编辑 JASConfig.params 文件,以添加 管理员凭证以及 安装目录的路径。
  4. 使用客户机标识和本地节点 URL 作为参数来运行 addNodeReg.shaddNodeReg.bat
  5. 客户机标识:在 上注册的集群 应用程序的客户机标识。 要获取客户机标识,请打开 teamserver.properties 文件并查找 com.ibm.team.repository.servlet.sso_clientId 属性。

    本地节点 URL:这是安装了 应用程序的计算机的标准主机名称和端口号。 请注意,这不是应用程序注册期间所使用的 应用程序的公用 URL。 HAProxy 配置文件的后端部分中也使用此主机名。

    ./addNodeReg.shaddNodeReg.bat client ID https://_Hostname:Port/appContext

    注:请确保在您用于初始设置的第一个节点上运行 addNodeReg 脚本。

四. 将 复制到所有节点

可以采用两种方式在所有节点上复制 应用程序。 可以在所有其他节点上安装 应用程序,然后仅将 teamserver.propertiesserver.startup 文件从第一个节点复制到其他节点。 或者,可以将整个安装目录从第一个节点复制到其他节点。 请勿忘记在所有节点上变更 server.startup 文件中的节点标识,以便它们都具有唯一标识。

V. 更新 HAProxy 配置

打开 HAProxy 配置文件,并验证它是否列示了实际 节点的主机名,以及行数是否与节点数匹配。 根据需要编辑配置文件,然后重新启动 HAProxy 服务。

六. 启动节点

在每个节点上启动 服务器。 检查 HAProxy 控制台以确保所有后端服务器都已联机。

稍后添加副本

完成下列步骤以在设置集群环境之后添加更多 副本。

  1. 停止其中一个 节点。
  2. teamserver.propertiesserver.startup 文件复制到新节点上新的 安装目录中。
  3. 编辑 server.startup 文件,输入唯一节点标识。
  4. 将新节点的条目添加到 HAProxy 配置文件中的后端服务器列表,然后重新启动 HAProxy 服务器。
  5. 如果新节点未向 注册,请运行 addNodeReg 脚本来注册该新节点。
  6. 启动该新节点上的服务器。

稍后添加副本

完成下列步骤以在设置集群环境之后添加更多 副本。

  1. 停止其中一个 节点。
  2. teamserver.propertiesserver.startup 文件复制到新节点上新的 安装目录中。
  3. 编辑 server.startup 文件,输入唯一节点标识。
  4. 将新节点的条目添加到 HAProxy 配置文件中的后端服务器列表,然后重新启动 HAProxy 服务器。
  5. 如果新节点未向 注册,请运行 addNodeReg 脚本来注册该新节点。
  6. 启动该新节点上的服务器。

对集群进行故障诊断

使所有应用程序与 同步

在完成 定制设置之后,您可能会看到一个或多个应用程序的以下诊断故障消息:

应用程序:https://JTS_HOST:9443/ccm/rootservices 中"/ccm "的发现资源的 OAuth 域与条目不同。

来自发现资源的 OAuth 域:[https://JTS_HOST:9443/ccm] 应用程序 OAuth 域:[]

此错误的原因可能是存储库工具 (repotools) 命令中的应用程序未完全同步。 要解决此问题,请完成下列步骤以手动使这些应用程序同步:

  1. 首先,获取需要与 同步的应用程序标识。 打开命令 shell窗口,并输入以下命令:

    cd Jazz_Install_Dir/\server
    ./repotools-jtsrepotools-jts -listFriends repositoryURL=https://JTS_HOST:9443/jts adminUserId=adminUserId adminPassword=管理员密码

  2. 从前一步骤获得应用程序标识,然后输入以下命令:

    ./repotools-jtsrepotools-jts -synchFriend repositoryURL=https://JTS_HOST:9443/jts adminUserId=adminUserId adminPassword=adminPassword friendId=FriendID_From_PreviousStep

  3. 在成功完成 repotools 命令之后,返回到 诊断页面,并运行诊断以确保不再发生错误。

通过代理接受请求的所有 "内容"

如果您已在集群环境的前端安装了 或其他类似的代理服务器,那么必须确保已启用此功能,以接受所有 HTTP 请求(例如 GET、PUT 和 POST 等)中的内容(有效内容)。 如果未启用此功能,那么您可能会在代理服务器中接收到 HTTP 400 错误请求 错误,因为某些 HTTP GET 请求是随有效内容一起发送并被代理拒绝的。

为避免此类错误,请在代理服务器的 plugin-cfg.xml 文件中设置 AcceptAllContent="true"

在日志文件中废弃 HAProxy 消息

集群成员与 之间的请求数可能快速增多并填满磁盘空间。 可以修改 rsyslog 配置文件,以便在记录消息时废弃某些 HAProxy 消息。 为此,在要废弃的行的末尾添加波浪号 (~)。 示例:

:msg, regex, "/map/" ~
local2.* /var/log/haproxy.log
& stop

激活并启用配置管理

有关激活配置管理和启用项目区域(包括用于获取激活密钥的链接)的详细指示信息,请参阅应用程序管理员入门

安装 以将其用作 的 MQTT 代理

注:不支持在 Windows 平台上安装

为物联网 (IoT) 和移动环境提供快速安全的双向消息传递。 是高性能 MQTT 代理。

I. 安装非 Dockerized 版本的

过程

要安装非 Dockerized 版本的 ,请完成下列步骤:

  1. ibm.com下载最新 5.0 所需的软件包。 例如,来自 V5.0 表的修订的 5.0.0.2-IBM-IMA-IFIT29445 。

    注:需要具有 IBM 标识才能访问这些文件。 如果您不具有 IBM 标识,那么系统将提示您创建 IBM 标识,然后才能下载

  2. 请遵循 文档中的指示信息来安装非 Dockerized (RPM) 版本。

II.登录 Web UI

有关完整的指示信息,请参阅 文档

三. 配置

使用称为集线器的组织配置对象来定义配置策略。

过程

通过遵循前一任务中的过程登录到 Web UI 之后,创建新的集线器,然后创建并分配连接策略、消息传递策略和端点。

  1. 创建新的中心:
    1. 转至 消息传递 > 消息中心 ,然后单击 添加
    2. 输入新消息中心的名称,然后单击保存
    3. 选择消息中心,然后单击编辑
  2. 创建新的连接策略:
    1. 转至连接策略,然后单击添加
    2. 输入新连接策略的名称。
    3. 选择 MQTT 作为协议。
    4. 在 "指定允许 MQTT 客户机使用的资源" 下,选中 允许具有持久预订的客户机允许持久消息 复选框。
    5. 保存您的设置。
  3. 创建主题策略:
    1. 转至 消息传递策略 > 主题策略 ,然后单击 添加
    2. 输入新主题策略的名称。
    3. 选择 MQTT 作为协议。
    4. 在“主题”字段中,输入星号 (*),在“权限”下,选中发布预订复选框。
    5. 在“订户设置”下,确保输入 10000 作为最大消息数值,并选择废弃旧消息作为最大消息数行为值。
    6. 保存您的设置。
  4. 最后,创建新端点:
    1. 转至端点,然后单击添加
    2. 输入新端点的名称。
    3. 在“端口”字段中,指定 MQTT 代理程序 URI 端口,例如 1883。 在下一节的 应用程序“高级属性”中定义了 MQTT 代理 URI。
    4. 选择 MQTT 作为协议。
    5. 将“最大消息大小”值设置为 4096。
    6. 在“连接策略”和“消息传递策略”下,添加您在先前步骤中创建的连接策略和消息传递策略(主题策略)。
    7. 保存您的设置。

四. 配置 MQTT 代理 URI

在已安装和配置 之后,您必须在管理 Web UI 的“高级属性”部分添加 MQTT 代理 URI:

过程

  1. 打开浏览器,并登录到已安装 应用程序的管理 Web UI。 例如,https://hostname.example.com:9443/gc/admin
  2. 单击 应用程序 > 高级属性
  3. 搜索全局配置
  4. com.ibm.team.gc.service.internal.GcApiPropertiesService 部分中,单击编辑,并在 MQTT 代理 URI 字段中添加 MQTT 主机名和端点端口。 例如,tcp://MQTT_hostname:1883
  5. 对于将 MQTT 用于添加项高速缓存属性,将其设置为 true
  6. 向上滚动页面并单击保存
  7. 重新启动服务器以使变更生效。
  8. 您必须对所有 GCM 实例执行这些步骤。 请确保使用同一 MQTT 代理 URI。

要了解多个 GCM 实例的其他配置设置,请参阅配置多个 GCM 实例

使用 收集数据

安装并启动服务器后,可使用 从已注册应用程序收集数据并将它们装入到数据仓库中。 有关详细指示信息,请参阅使用 收集数据

配置文档构建器

安装并启动文档构建器之后,您可进行配置以添加用户和标志,或者对服务器启用 HTTPS。 有关详细信息,请参阅配置文档构建器

要在 WebSphere Application Server Liberty Profile 上进一步配置文档构建器,请参阅在 WebSphere Application Server Liberty Profile 上部署文档构建器

安装用于 Eclipse IDE 的 客户机

安装并设置服务器之后,您可以安装 Eclipse 客户机以连接至该服务器。 要使用 IBM Installation Manager 来安装 Eclipse IDE 的客户机,请参阅使用 Installation Manager 来安装 Eclipse 客户机

配置 Kerberos 单点登录认证

要配置 Kerberos 服务器和客户机单点登录认证,请参阅配置 Kerberos 单点登录认证