Ansible SDK

Ansible SDK 是一个轻量级的 Python 库,允许您从项目中调度和监控 Ansible 任务、角色和 playbook。

作为 Ansible 的编程接口,SDK 允许您

  • 访问和控制 Ansible 操作。

  • 将操作的参数编组为不同的格式。

  • 在 Ansible 之间传递原生 Python 结构中的数据。

SDK 架构

Ansible SDK 在您的 Python 应用程序中运行,并接收以下输入

项目

Ansible playbook、凭据和清单的逻辑集合。

凭据

与主机系统的身份验证。

清单

运行自动化作业的主机系统列表。

使用这些输入,Ansible SDK 会发出异步调用以对您的项目有效负载执行自动化运行。您可以使用 SDK 以任何本地或远程子进程的组合执行 Ansible 内容。您还可以使用执行环境,这些环境是打包了所有依赖项的容器镜像。

本地执行

Ansible SDK 调用 Ansible Runner 来执行自动化运行。Ansible Runner 是应用程序主机上的运行时,它会提取执行环境、运行您的自动化作业并将状态返回给 Ansible SDK。

This diagram illustrates how Ansible SDK takes inputs and calls the local Ansible executor to perform an automation run.

远程执行

Ansible SDK 调用自动化网格控制器节点来执行自动化运行。控制器节点在远程执行环境上运行您的自动化作业并将状态返回给 Ansible SDK。

This diagram illustrates how Ansible SDK takes inputs and calls the controller node to perform an automation run across the mesh.