8.2.2. 部署应用程序


创建应用程序后,需要部署它。部署应用程序会创建一个 Pod 并启动代理。

步骤

  1. 在 OpenShift Container Platform web 控制台中点 StatefulSets
  2. broker-amq 部署。
  3. 单击 Deploy 以部署应用。
  4. 点代理 Pod,然后点 Logs 选项卡验证代理的状态。您应该会看到通过模板创建的队列。

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

  5. Terminal 选项卡访问可以使用 CLI 发送一些消息的 shell。

    sh-4.2$ ./broker/bin/artemis producer --destination queue://demoQueue
    Producer ActiveMQQueue[demoQueue], thread=0 Started to calculate elapsed time ...
    
    Producer ActiveMQQueue[demoQueue], thread=0 Produced: 1000 messages
    Producer ActiveMQQueue[demoQueue], thread=0 Elapsed time in second : 4 s
    Producer ActiveMQQueue[demoQueue], thread=0 Elapsed time in milli second : 4584 milli seconds
    
    sh-4.2$ ./broker/bin/artemis consumer  --destination queue://demoQueue
    Consumer:: filter = null
    Consumer ActiveMQQueue[demoQueue], thread=0 wait until 1000 messages are consumed
    Received 1000
    Consumer ActiveMQQueue[demoQueue], thread=0 Consumed: 1000 messages
    Consumer ActiveMQQueue[demoQueue], thread=0 Consumer thread finished
    Copy to Clipboard Toggle word wrap

    另外,也可使用 OpenShift 客户端使用 Pod 名称访问 shell,如下例中所示。

    // Get the Pod names and internal IP Addresses
    oc get pods -o wide
    
    // Access a broker Pod by name
    oc rsh <broker-pod-name>
    Copy to Clipboard Toggle word wrap
  6. 现在使用 oc 命令缩减代理。

    $ oc scale statefulset broker-amq --replicas=0
    statefulset "broker-amq" scaled
    Copy to Clipboard Toggle word wrap

    您可以使用控制台检查 Pod 计数是否为 0

  7. 现在,将代理备份为 1

    $ oc scale statefulset broker-amq --replicas=1
    statefulset "broker-amq" scaled
    Copy to Clipboard Toggle word wrap
  8. 使用终端再次消耗消息。例如:

    sh-4.2$ broker/bin/artemis consumer --destination queue://demoQueue
    Consumer:: filter = null
    Consumer ActiveMQQueue[demoQueue], thread=0 wait until 1000 messages are consumed
    Received 1000
    Consumer ActiveMQQueue[demoQueue], thread=0 Consumed: 1000 messages
    Consumer ActiveMQQueue[demoQueue], thread=0 Consumer thread finished
    Copy to Clipboard Toggle word wrap

其他资源

  • 有关管理有状态应用程序的更多信息,请参阅 StatefulSets (外部)。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat