8.3.4. 为 AMQ Broker 管理控制台创建路由
默认情况下,集群模板不会公开 AMQ Broker 管理控制台。这是因为 OpenShift 代理在集群中的每个代理执行负载均衡,因此无法控制在给定时间连接哪些代理控制台。
以下示例演示了如何配置集群中的每个代理,以连接到自己的管理控制台实例。为此,您可以为集群中的每个代理 Pod 创建专用的 Service-and-Route 组合。
先决条件
- 您已部署了一组集群代理,每个代理在自己的 Pod 中运行。请参阅 部署一组集群代理。
步骤
使用 StatefulSet 选择器在 Pod 间选择,为集群中的每个 Pod 创建常规 Service。要做到这一点,以
.yaml
格式部署一个 Service 模板,如下所示:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在前面的模板中,将
XXXX
替换为您要与该服务关联的代理 Pod 的 ordinal 值。例如,要将 Service 与集群中的第一个 Pod 关联,请将XXXX
设为 0。要将服务与第二个 Pod 关联,请将
XXXX
设置为1
,以此类推。为集群中的每个代理 Pod 保存和部署模板实例。
注意在上面显示的示例模板中,选择器使用 Kubernetes 定义的 Pod 名称。
为每个代理 Pod 创建一个路由,以便 AMQ Broker 管理控制台可以连接到 Pod。
单击
。 这会打开 Edit Route 页面。
-
在 Services 下拉菜单中,选择之前创建的代理服务,将其与 Route 关联,例如
amq2-amq-console-0
。 -
将 Target Port 设为
8161
,为 AMQ Broker 管理控制台启用访问权限。 要显示 TLS 参数,请选择 Secure route 复选框。
在 TLS 终止 下拉菜单中选择 Passthrough。
此选择将所有通信转发到 AMQ Broker,无需 OpenShift 路由器解密并重新发送它。
点 Create。
当您创建与其中一个代理 Pod 关联的路由时,生成的
.yaml
文件包括类似如下的行:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
在 Services 下拉菜单中,选择之前创建的代理服务,将其与 Route 关联,例如
- 要访问特定代理实例的管理控制台,请将上方显示 的主机 URL 复制到 Web 浏览器。
其他资源
- 有关代理集群的更多信息,请参阅配置消息重新分发。