Ansible Automation Platform - 导入外部主机清单
创始人
2024-04-13 00:50:39
0

《OpenShift / RHEL / DevSecOps / Ansible 汇总目录》

文章目录

  • 从外部向“清单”批量导入主机
    • 从 VMware vCenter 导入主机清单
    • 从外部文件导入主机清单
  • 使用“智能清单”

Ansible 的 Playbook 执行目标是 “清单” 中的主机和分组。在 AAP 控制台中可以手工创建 “主机” 并通过 “清单” 关联主机和分组,也可从外部环境中批量导入“主机” 和 “清单” 信息。
标准 “清单” 中包含哪些主机是静态的,因此必须手动向 “清单” 中添加或删除 “主机”,执行 Playbook 的目标 “清单” 才会有变化。而 AAP 的 “智能清单” 相当于 “主机视图”,可以通过更改 “智能清单” 的过滤条件来动态变更它包含的 “主机”。

从外部向“清单”批量导入主机

AAP 支持从 VMware vCenter、OpenStack、红帽虚拟化、AWS、AZure、Google Cloud、红帽卫星、外部文件等源头批量导入主机清单。

从 VMware vCenter 导入主机清单

  1. 先创建一个 VMware vCenter 类型的 “凭证”。
    在这里插入图片描述
  2. 创建一个新的 “清单”。
    在这里插入图片描述
  3. 在新建的 “清单” 中创建一个新的 “源”。
    在这里插入图片描述
  4. 在 “源” 的编辑页面中按照下图选出 “源” 和 “凭证”,另外将使用在发现主机中包含的 processor_vcpus 变量作为主机选择条件,选出 processor_vcpus = 2 的主机。
    在这里插入图片描述
  5. 保存 “源” 后在详情页面中点击 “同步”,此时 AAP 会按照 “源” 的目标和过滤条件将符合条件的主机导入到 “清单” 中。
    在这里插入图片描述
  6. 再次查看刚刚创建 “清单” 中的 “主机” 页面,可以看到被导入的主机清单列表。
    在这里插入图片描述

从外部文件导入主机清单

  1. 在一个 Git 的 Repository 中创建内容如下的 inventory_list 文件,它定义了主机和分组、以及变量。
{"dyngroup":{"hosts":["cloud1.cloud.example.com","cloud2.cloud.example.com","cloud3.cloud.example.com","cloud4.cloud.example.com"],"vars":{"var1": true}},"_meta":{"hostvars":{"cloud1.cloud.example.com":{"type":"lb"},"cloud2.cloud.example.com":{"type":"web"},"cloud3.cloud.example.com":{"type":"web"},"cloud4.cloud.example.com":{"type":"database"}}}
}
  1. 在 Git 的 Repository 中相同位置创建内容如下的 inventory-script 文件,注意需要替换curl 命令使用的 inventory_list 文件访问地址。
#!/bin/bashif [ "$1" == "--list" ] ; thencurl -sS https://gitee.com/dawnskyliu/playbooks_adv_summit2021/raw/master/inventory/inventory_list
elif [ "$1" == "--host" ]; thenecho '{"_meta": {"hostvars": {}}}'
elseecho "{ }"
fi
  1. 在 AAP 控制台上创建一个对应前面 Git Repository 的 “项目”。
    在这里插入图片描述
  2. 创建一个新的 “清单”,然后在其中创建一个新 “源”。然后按照下图将 “源”设为“源于项目”,将 “项目” 和 “清单文件” 设为前面创建的资源。
    在这里插入图片描述
  3. 在新建的 “源” 详情页面中点击 “同步”,AAP 将启动任务运行 Git Repository 中的 inventory-script 文件将 inventory_list 文件中的主机导入到 AAP。
    在这里插入图片描述
  4. 完成后可在 “清单” 中查看从外部文件导入的 “主机”。
    在这里插入图片描述

使用“智能清单”

可以将 “智能清单” 看成是 “主机” 的视图,因此创建新的 “智能清单” 前需要 AAP 中至少先有一个 “主机”。

  1. 在 AAP 的清单中创建一个 “智能清单”。
    在这里插入图片描述

  2. 进入 “智能主机过滤器” 的 “放大镜” 图标,此时在对话框中应该显示当前 AAP 的所有主机。
    在这里插入图片描述

  3. 在弹出对话框中将 “名称” 改为 “高级”,然后按照下图查找 name,查找类型为 regex ,查找内容为 cloud[2-4].cloud.example.com,最后点击 “放大镜” 图标。
    在这里插入图片描述

  4. 此时对话框可之显示过滤后的主机,最后点击 “选择” 按钮。在这里插入图片描述

  5. 查看新创建的 “智能清单” 对应的 “主机”,即为上一步过滤出的主机。
    在这里插入图片描述

相关内容

热门资讯

银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWS管理控制台菜单和权限 要在AWS管理控制台中创建菜单和权限,您可以使用AWS Identity and Access Ma...