8.4.3. 部署应用程序
在创建应用后进行部署。部署应用程序会创建一个 Pod 并启动代理。
步骤
- 在 OpenShift Container Platform web 控制台中点 StatefulSets。
- 点 broker-amq 部署。
单击 Deploy 以部署应用。
注意集群模板的默认副本数为
0,因此您不会看到任何 Pod。将 Pod 扩展至三个,以创建代理集群。
$ oc scale statefulset broker-amq --replicas=3 statefulset "broker-amq" scaled检查是否有三个 Pod 正在运行。
$ oc get pods NAME READY STATUS RESTARTS AGE broker-amq-0 1/1 Running 0 33m broker-amq-1 1/1 Running 0 33m broker-amq-2 1/1 Running 0 29m-
如果 Pod 状态显示
ErrImagePull或ImagePullBackOff,您的部署无法直接从 Red Hat Container Registry 中拉取指定的代理镜像。在这种情况下,编辑 StatefulSet 来引用与 Red Hat Container Registry 中用于身份验证的帐户关联的正确代理镜像名称和镜像 pull secret 名称。然后,您可以导入代理镜像并启动代理。为此,请完成与 Deploy 中相似的步骤,并启动代理应用程序。 通过检查日志,验证新 Pod 已集群代理。
$ oc logs broker-amq-2这显示新代理的所有日志以及在代理器中创建的集群桥接条目,例如:
2018-08-29 07:43:55,779 INFO [org.apache.activemq.artemis.core.server] AMQ221027: Bridge ClusterConnectionBridge@1b0e9e9d [name=$.artemis.internal.sf.my-cluster.4333c830-ab5f-11e8-afb8-0a580a82006e, queue=QueueImpl[name=$.artemis.internal.sf.my-cluster.4333c830-ab5f-11e8-afb8-0a580a82006e, postOffice=PostOfficeImpl [server=ActiveMQServerImpl::serverUUID=9cedb69d-ab5e-11e8-87a4-0a580a82006c], temp=false]@5e0c0398 targetConnector=ServerLocatorImpl (identity=(Cluster-connection-bridge::ClusterConnectionBridge@1b0e9e9d [name=$.artemis.internal.sf.my-cluster.4333c830-ab5f-11e8-afb8-0a580a82006e, queue=QueueImpl[name=$.artemis.internal.sf.my-cluster.4333c830-ab5f-11e8-afb8-0a580a82006e, postOffice=PostOfficeImpl [server=ActiveMQServerImpl::serverUUID=9cedb69d-ab5e-11e8-87a4-0a580a82006c], temp=false]@5e0c0398 targetConnector=ServerLocatorImpl [initialConnectors=[TransportConfiguration(name=artemis, factory=org-apache-activemq-artemis-core-remoting-impl-netty-NettyConnectorFactory) ?port=61616&host=10-130-0-110], discoveryGroupConfiguration=null]]::ClusterConnectionImpl@806813022[nodeUUID=9cedb69d-ab5e-11e8-87a4-0a580a82006c, connector=TransportConfiguration(name=artemis, factory=org-apache-activemq-artemis-core-remoting-impl-netty-NettyConnectorFactory) ?port=61616&host=10-130-0-108, address=, server=ActiveMQServerImpl::serverUUID=9cedb69d-ab5e-11e8-87a4-0a580a82006c])) [initialConnectors=[TransportConfiguration(name=artemis, factory=org-apache-activemq-artemis-core-remoting-impl-netty-NettyConnectorFactory) ?port=61616&host=10-130-0-110], discoveryGroupConfiguration=null]] is connected
其他资源
- 要了解如何在集群中配置每个代理以连接到自己的管理控制台实例,请参阅为 AMQ Broker 管理控制台创建路由。
- 有关代理集群中消息传递的更多信息,请参阅启用消息重新分发。