Ansible Automation Platform - 用 API 访问 Ansible Automation Platform

《OpenShift / RHEL / DevSecOps 汇总目录》
说明:本文已经在支持 Ansible Automation Platform 2.3 的环境中验证

文章目录

  • AAP 的 API 索引
  • Host 主机列表 API
  • 通过 API 操作 Ansible Automation Platform

说明:以下命令中 mycontroller-aap.apps-crc.testing 是 Ansible Automation Platform 控制台的地址。

AAP 的 API 索引

打开 https://mycontroller-aap.apps-crc.testing/api/v2/ 页面,其中列出了 Ansible Automation Platform 包含所有的 API。
Ansible Automation Platform - 用 API 访问 Ansible Automation Platform_第1张图片

Host 主机列表 API

打开 https://mycontroller-aap.apps-crc.testing/api/v2/hosts/ 页面,可以在 GET 区域查看 Ansible Automation Platform 管理的所有主机列表,另外还可在 POST 创建新的 Host 主机。
Ansible Automation Platform - 用 API 访问 Ansible Automation Platform_第2张图片

通过 API 操作 Ansible Automation Platform

以下命令是通过 API 向 Ansible 清单(清单的 ID 为 2)添加一个 Host 主机。

  1. 设置 AAP 和被管主机的基本信息。
$ AAP_ADDRESS=mycontroller-aap.apps-crc.testing
$ AAP_USER=admin
$ AAP_PASSWORD=Ks9hNkgXlRqtyxeVVb2FtBwMDybCnt59
$ HOST_NAME=fedora-vm-1
$ HOST_IP=10.217.1.178
$ IVNENTORY_ID=2
  1. 通过访问 API 向 AAP 添加主机。
$ curl -k -L -X POST https://${AAP_ADDRESS}/api/v2/hosts/ \
   -u ${AAP_USER}:${AAP_PASSWORD} \
   -H 'Content-Type: application/json' \
   -d '{"name": "'${HOST_NAME}'", "description": "", "inventory": '${IVNENTORY_ID}', "enabled": true, "instance_id": "", "variables": "{\"ansible_host\":\"'${HOST_IP}'\"}"}'

你可能感兴趣的:(ansible,服务器,运维,自动化,devops)