3.4. 扩展自动化控制器 API 服务的注意事项


自动化控制器 API 服务处理应用程序的 HTTP 请求,包括自动化控制器中用户角色的信息、项目创建、清单创建或更新、作业启动和作业结果检查。

3.4.1. 主要性能指标

自动化控制器 API 服务的主要性能指标包括:

  • /api/controller下请求的高 API 延迟
  • API pod 或节点上的高 CPU 使用率
  • 平台网关返回 503 错误,因为该服务太忙于响应健康检查

自动化控制器 API 服务位于基于 Operator 的安装上的 web pod 中,并在基于虚拟机的安装或基于容器的安装中控制或混合节点。

3.4.2. 根据部署类型扩展策略

请考虑以下策略来扩展自动化控制器 API 服务:

  • OpenShift Container Platform:调整 AutomationController CR 上的 web_replicas 属性。扩展 replicas 属性可扩展任务和 Web 副本。
  • 基于虚拟机的安装和基于容器的安装:扩展控制或混合节点,增加控制其他自动化作业的能力。

3.4.3. 数据库连接和架构注意事项

在 OpenShift Container Platform 中,每个 web 副本都会消耗 WSGI Web 服务 worker 的数据库连接,以及有助于任务通信和 WebSocket 的各种后台服务。基于虚拟机的安装和基于容器的安装上使用的 WSGI Web 服务器使用的数据库连接数可使用计算机的 CPU 计数进行扩展。另外,控制和混合节点管理 Dispatcher (任务系统)和 Callback Receiver (作业事件处理 worker 池)。这些 worker 池通过 CPU 可用性进行扩展,并需要数据库连接。

与在 OpenShift Container Platform 上扩展 Web 部署相比,置备额外的控制节点需要更多的数据库连接。这是因为容器化和 RPM 控制节点扩展也会扩展任务系统,这作为 OpenShift Container Platform 上的不同部署运行。这种在 OpenShift Container Platform 部署中分离的服务是重要的区别,管理员可以更精细地微调部署并节省有限资源,如数据库连接。

特别重要的是,在 OpenShift Container Platform 中可以水平扩展该服务,因为如果超过 100 个请求,则这些请求会被 uWSGI 丢弃。这会导致客户端收到丢弃请求的超时时间。以下日志文本为这个事件提供对应的错误:

*** uWSGI listen queue of socket ":8000" (fd: 3) full !!! (101/100) ***

发生此错误的原因是 uWSGI 将其积压到内核参数 somaxconn 的限制。可以在 OpenShift Container Platform 中提高这个内核参数,但这样做需要允许"unsafe sysctls"。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat
返回顶部