第 8 章 基于模板的代理部署示例


先决条件

  • 这些过程假设了与 OpenShift Container Platform 入门 中创建的类似 OpenShift Container Platform 实例。
  • 在 AMQ Broker 应用程序模板中,AMQ_USER、AMQ_PASSWORD、AMQ_CLUSTER_USER、AMQ_CLUSTER_PASSWORD、AMQ_TRUSTSTORE_PASSWORD 和 AMQ_KEYSTORE_PASSWORD 环境变量存储在 secret 中。要在以下任何教程中部署模板时,了解更多有关使用和修改这些环境变量的信息,请参阅关于敏感凭证

以下流程描述了如何使用应用程序模板创建各种代理部署。

8.1. 使用 SSL 部署基本代理

部署具有临时并支持 SSL 的基本代理。

8.1.1. 部署镜像和模板

先决条件

步骤

  1. 导航到 OpenShift Web 控制台并登录。
  2. 选择 amq-demo 项目空间。
  3. Add to Project > Browse Catalog 来列出所有默认镜像流和模板。
  4. 使用 Filter 搜索栏,将列表限制为与 amq 匹配的列表。您可能需要点击 See all 来显示所需的应用程序模板。
  5. 选择标记为 Red Hat AMQ Broker 7.8(使用 SSL)amq-broker-78-ssl 模板。
  6. 在配置中设置以下值,并点 Create

    表 8.1. 模板示例
    环境变量显示名称订阅价值描述

    AMQ_PROTOCOL

    AMQ 协议

    openwire,amqp,stomp,mqtt,hornetq

    代理接受的协议

    AMQ_QUEUES

    队列

    demoQueue

    创建名为 demoQueue 的任何广播队列

    AMQ_ADDRESSES

    地址

    demoTopic

    创建名为 demoTopic 的地址(或主题)。默认情况下,此地址没有分配路由类型。

    AMQ_USER

    AMQ Username

    amq-demo-user

    客户端使用的用户名

    AMQ_PASSWORD

    AMQ 密码

    password

    客户端使用的密码及用户名

    AMQ_TRUSTSTORE

    trust Store Filename

    broker.ts

    SSL 信任存储文件名

    AMQ_TRUSTSTORE_PASSWORD

    信任存储密码

    password

    创建 Truststore 时使用的密码

    AMQ_KEYSTORE

    AMQ Keystore Filename

    broker.ks

    SSL 密钥存储文件名

    AMQ_KEYSTORE_PASSWORD

    AMQ Keystore 密码

    password

    创建密钥存储时使用的密码

8.1.2. 部署应用程序

创建应用程序后,将其部署到 Pod 并启动代理。

步骤

  1. 在 OpenShift Container Platform Web 控制台中,单击 Deployments
  2. broker-amq 部署。
  3. 单击 Deploy 以部署应用。
  4. 点代理 Pod,然后点 Logs 选项卡验证代理的状态。

    如果代理日志没有加载,Pod 状态显示 ErrImagePullImagePullBackOff,您的部署配置无法直接从红帽容器注册表中提取指定的代理镜像。在这种情况下,编辑部署配置以引用与 Red Hat Container Registry 中用于身份验证的帐户关联的正确代理镜像名称和镜像 pull secret 名称。然后,您可以导入代理镜像并启动代理。为此,请完成与部署和启动 代理应用程序 类似的步骤。

8.1.3. 创建路由

为代理创建一个路由,以便 OpenShift Container Platform 之外的客户端可以使用 SSL 进行连接。默认情况下,安全代理协议可通过 61617/TCP 端口获得。另外,代理 Pod 中公开了 SSL 和非 SSL 端口,供代理支持的每个消息传递协议。但是,外部客户端无法直接连接到代理中的这些端口。取而代之,外部客户端通过 Openshift 路由器连接到 OpenShift,它会决定如何将流量转发到代理 Pod 上的相应端口。

注意

如果将部署扩展到集群中的多个代理,您必须手动创建一个服务和每个代理的 Route,然后使用各个 Service-and-Route 组合将给定客户端定向到给定的代理或代理列表。有关配置多个服务和路由以将集群代理连接到他们自己的 AMQ Broker 管理控制台的实例,请参阅为 AMQ Broker 管理控制台创建路由

先决条件

  • 在创建 SSL 路由前,您应了解外部客户端如何使用此路由连接到代理。如需更多信息,请参阅创建 SSL 路由

步骤

  1. 单击 Services broker-amq-tcp-ssl
  2. 点击 Actions Create a route
  3. 要显示 TLS 参数,请选择 Secure route 复选框。
  4. TLS 终止 下拉菜单中选择 Passthrough。此选择将所有通信转发到 AMQ Broker,无需 OpenShift 路由器解密并重新发送它。
  5. 要查看路由,请点击 Routes。例如:

    https://broker-amq-tcp-amq-demo.router.default.svc.cluster.local

外部客户端将使用此主机名通过 SNI 使用 SSL 连接代理。

其他资源

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.