搜索

4.10. 覆盖代理的默认内存限值

download PDF

您可以覆盖为代理设置的默认内存限值。默认情况下,代理被分配为代理 Java 虚拟机可用的最大内存的一半。以下流程演示了如何为代理部署配置自定义资源(CR)实例,以覆盖默认内存限值。

先决条件

流程

  1. 开始配置自定义资源(CR)实例以创建基本代理部署。

    1. 使用 OpenShift 命令行界面:

      1. 以具有特权的用户身份登录 OpenShift,以便在代理部署的项目中部署 CR。

        oc login -u <user> -p <password> --server=<host:port>
      2. 打开一个名为 broker_activemqartemis_cr.yaml 的示例 CR 文件,该文件包含在您下载和提取的 Operator 安装的 deploy/crs 目录中。
    2. 使用 OpenShift Container Platform Web 控制台:

      1. 以具有特权的用户身份登录控制台,以便在代理部署的项目中部署 CR。
      2. 根据主代理 CRD 启动新的 CR 实例。在左侧窗格中,单击 Administration Custom Resource Definitions
      3. 单击 ActiveMQArtemis CRD。
      4. 实例 选项卡。
      5. 单击 Create ActiveMQArtemis

        在控制台中,会打开 YAML 编辑器,供您配置 CR 实例。

        例如,基本代理部署的 CR 可能类似以下:

        apiVersion: broker.amq.io/v1beta1
        kind: ActiveMQArtemis
        metadata:
          name: ex-aao
        spec:
          deploymentPlan:
            size: 1
            image: placeholder
            requireLogin: false
            persistenceEnabled: true
            journalType: nio
            messageMigration: true
  2. 在 CR 的 spec 部分,添加一个 brokerProperties 部分。在 brokerProperties 部分中,添加一个 globalMaxSize 属性并指定内存限制。例如:

    spec:
        ...
        brokerProperties:
        - globalMaxSize=500m
        ...

    globalMaxSize 属性的默认单位是字节。要更改默认单元,请将后缀 m (用于 MB)或 g (用于 GB)添加到值。

  3. 将更改应用到 CR。

    1. 使用 OpenShift 命令行界面:

      1. 保存 CR 文件。
      2. 切换到代理部署的项目。

        $ oc project <project_name>
      3. 应用 CR。

        $ oc apply -f <path/to/broker_custom_resource_instance>.yaml
    2. 使用 OpenShift Web 控制台:

      1. 编辑完 CR 后,点 Save
  4. (可选)验证您为 globalMaxSize 属性设置的新值会覆盖分配给代理的默认内存限值。

    1. 连接到 AMQ 管理控制台。更多信息请参阅 第 5 章 连接到基于 Operator 的代理部署的 AMQ 管理控制台
    2. 从菜单中,选择 JMX
    3. 选择 org.apache.activemq.artemis
    4. 搜索 全局
    5. 在显示的表中,确认 Global max 列中的值与您为 globalMaxSize 属性配置的值相同。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.