第 8 章 Event-Driven Ansible 控制器的性能调整


事件驱动 Ansible 是一个高度可扩展的、灵活的自动化功能。Event-Driven Ansible 控制器提供 Event-Driven Ansible 自动化执行的接口。通过调优您的事件驱动 Ansible 控制器,以优化性能和可伸缩性:

  • 特征您的工作负载
  • 系统级别监控
  • 性能故障排除

8.1. 特征您的工作负载

在 Event-Driven Ansible 控制器中,您的工作负载包括正在接收的规则手册激活和事件的数量。请考虑以下因素来特征您的 Event-Driven Ansible 控制器工作负载:

  1. 同步规则手册激活数量
  2. Event-Driven Ansible 控制器收到的事件数

8.1.1. 修改同时规则手册激活的数量

默认情况下,Event-Driven Ansible 控制器允许同时运行 12 个规则手册激活。如果创建超过 12 个规则手册激活,则预期的行为是后续规则手册激活等待等待,直到有可用的规则手册激活 worker。在这种情况下,规则手册激活状态将显示为"pending",即使您的 Event-Driven Ansible 控制器实例上有足够的可用内存和 CPU。要更改此行为,您必须更改运行规则手册激活的默认最大数量。

注意: EDA_MAX_RUNNING_ACTIVATIONS 的值不会随着实例大小的变化而改变,因此需要手动调整。

默认情况下,Event-Driven Ansible 控制器允许同时运行 12 个激活。您可以按照以下流程在安装过程中修改此默认值:

流程

为虚拟机安装程序提供变量:

  1. 导航到设置清单文件。
  2. 在 [all:vars] 部分添加 automationedacontroller_max_running_activations。例如: automationedacontroller_max_running_activations=16。
  3. 运行设置。

默认情况下,Event-Driven Ansible 控制器允许同时运行 12 个激活。您可以按照以下流程在安装后修改此默认值:

流程

  1. 导航到 /etc/ansible-automation-platform/eda 中的环境文件。
  2. 选择您需要的最大运行激活数。例如,EDA_MAX_RUNNING_ACTIVATIONS = 16
  3. 使用以下命令重启 EDA 服务: systemctl restart automation-eda-controller.target

Resources

有关规则手册激活的更多信息,请参阅 规则手册激活。

8.1.2. 修改每个规则手册激活的默认内存限值

内存用量基于 Event-Driven Ansible 控制器必须处理的事件数。每个规则手册激活容器都有 200MB 内存限制。例如,如果有 4 个 CPU 和 16GB RAM,一个分配了 200MB 内存限值的 rulebook 激活容器每分钟无法处理超过 150,000 个事件。如果并行运行规则手册激活的数量较高,则每个规则手册激活的最大事件数可以减少。如果速度非常高,则容器可能会耗尽处理事件的内存。这将终止容器,您的规则手册激活将失败,状态码为 137。

要解决这个问题,您可以增加分配给规则手册激活的内存量,以便使用以下方法之一处理大量事件:

  • 在安装过程中修改每个规则手册激活的默认内存限值
  • 安装后修改每个规则手册激活的默认内存限值

默认情况下,每个规则手册激活容器都有 200MB 内存限制。您可以按照以下流程在安装过程中修改此默认值:

流程

  1. 导航到设置清单文件。
  2. 在 [all:vars] 部分添加 automationedacontroller_podman_mem_limit。例如,Automationedacontroller_podman_mem_limit='400m'。
  3. 运行设置。

默认情况下,每个规则手册激活容器都有 200MB 内存限制。您可以按照以下流程在安装后修改此默认值:

流程

  1. 导航到 /etc/ansible-automation-platform/eda 中的环境文件。
  2. 修改默认容器内存限值。例如,EDA_PODMAN_MEM_LIMIT = '300m'。
  3. 使用 systemctl restart automation-eda-controller.target 重启 Event-Driven Ansible 控制器服务。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

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

让开源更具包容性

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

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部