当前位置: 首页 > news >正文

实施Ansible Playbook

目录

1.定义清单

2.使用静态清单指定受管主机

3.动态主机清单

4.配置Ansible

5.ansible.cfg文件的内容组成

6.配置连接

7.ansible playbook的作用与格式

8.模块的命名

9.运行playbook

10.play中的特权升级

1.定义清单

(1)主机清单(inventory)定义Ansible所管理的主机

(2)主机可以从属于组,后者通常用于标识主机的角色

(3)一个主机可以属于多个组

(4)可以通过两种方式定义主机清单:通过文本文件定义静态主机清单,或从(5)外部provider生成动态主机清单

2.使用静态清单指定受管主机

(1)Ansible静态主机清单在INI和YAML格式文本文件中定义

(2)格式:

每一部分的开头为方括号[]括起来的主机组名称

其后是主机条目,他们列出组中的每一台受管主机,各自占据一行

主机条目由受管主机的主机名称或IP地址组成

主机条目也可以定义Ansible与受管主机的通信方式,其中包含传输和用户账号信息

(3)可使用ansible-navigator inventory命令验证计算机是否存在于清单中

(4)覆盖Inventory的默认位置:

一般将inventory定义到工作目录中,也可以在配置文件中指定其他位置来获取清单文件

(5)运行playbook时使用的ansible-navigator命令可通过--inventory

3.动态主机清单

覆盖主机清单的默认位置:

(1)Ansible的主机清单可以动态生成,其中的信息包括Cobbler系统信息和LDAP数据库和配置管理数据库(CMDB)

(2)Ansible含有处理来自最常见提供商的动态主机、组和变量信息的脚本

(3)对云提供商,必须在脚本能够访问的文件中定义身份验证和访问权限信息

4.配置Ansible

可以使用ansible.cfg和ansible-navigator.yml文件来配置ansible

5.ansible.cfg文件的内容组成

该文件由几个部分组成,每个部分以键值对的形式定义。

基本配置包括两部分:

(1)[defaults]:设置Ansible的默认值

(2)[privilege_escalation]:配置Ansible如何在受管主机上执行特权升级

使用ansible-navigator config 命令可以显示当前Ansible配置(交互模式)

如果项目目录中不含ansible.cfg文件,Ansible会查询用户主目录中的~/.ansible.cfg文件,如果该文件不存在,则会尝试使用/etc/ansible/ansible.cfg文件。如果使用ansible-navigator,则该命令会在自动执行环境中查找以上这些文件。

6.配置连接

Ansible需要知道如何与受控节点通信,可在配置文件中设置:

  1. inventory的地址
  2. 与受控节点的连接方式,默认为SSH
  3. 受控节点上的远程用户名,可能是root,也可能是普通用户
  4. 如果是普通用户,需要知道如何提权成为root
  5. 提权时是否需要提示输入sudo密码

7.ansible playbook的作用与格式

(1)Ansible使用playbook可重复地对一组目标主机运行多项复杂任务

(2)任务指应用模块来执行特定工作单元

(3)一个playbook包含多个play,一个play包含多个task,都是按顺序执行

playbook的格式:采用YAML格式的文本文件,里面的内容是以键值对形式表示

YAML对缩进的基本规则:

  1. 层级结构中相同级别的数据元素必须具有相同的缩进
  2. 子项必须比其父项缩进得更多

playbook以三个破折号作为文档的开始标记,以三个点作为文档的结尾标记

8.模块的命名

模块将使用完全限定集合名称(FQCN)来命名。两个Ansible内容集合中的不同模块也可以用相同名称,不会导致冲突。

9.运行playbook

在控制节点上使用ansible-navigator run命令执行playbook

10.play中的特权升级

become布尔值参数可用于启用或禁止特权升级

如果启用了特权升级,可使用become_method属性来定义play要使用的特权升级方法。

become_user属性可以用于特权升级的用户账户


文章转载自:

http://uGJgmyZv.zmpqh.cn
http://fy08gb6E.zmpqh.cn
http://la9VYwQD.zmpqh.cn
http://n2ZaY80T.zmpqh.cn
http://lqr7fqCt.zmpqh.cn
http://bmbZqGUm.zmpqh.cn
http://ZJvH6BD7.zmpqh.cn
http://yDuB2EMe.zmpqh.cn
http://WINPxJ8Z.zmpqh.cn
http://vmevUZ2V.zmpqh.cn
http://wYP6Apwo.zmpqh.cn
http://iAE1OJI6.zmpqh.cn
http://AdNzdkWF.zmpqh.cn
http://AJSoJm1m.zmpqh.cn
http://jHYA9bJ8.zmpqh.cn
http://9jgOzGLX.zmpqh.cn
http://irazF1ui.zmpqh.cn
http://S2JwtDIc.zmpqh.cn
http://PZzwrKsI.zmpqh.cn
http://cc1BD61f.zmpqh.cn
http://Qk5LnWZI.zmpqh.cn
http://OO5aHBWT.zmpqh.cn
http://SNPfFkgF.zmpqh.cn
http://l80PaP3O.zmpqh.cn
http://UeclY10n.zmpqh.cn
http://mSIRxaCC.zmpqh.cn
http://1UseoFgt.zmpqh.cn
http://QMq1hkt4.zmpqh.cn
http://39fzl0wh.zmpqh.cn
http://6XMuhFzR.zmpqh.cn
http://www.dtcms.com/a/380865.html

相关文章:

  • 【每日算法】移除元素 LeetCode
  • 接口测试概念
  • 解析4口POE工控机的场景价值与核心优势
  • 【C++】STL 简介
  • 2025年渲染技术三大趋势:实时化、AI化与跨界融合
  • 固定资产系统如何降低企业管理成本?
  • Codeforces Round 1048 (Div. 2)与Codeforces Round 1049 (Div. 2)补题
  • 数据集基准任务是否需要类别均衡
  • 住宅IP 使用注意事项
  • 【JavaEE初阶】-- JVM
  • AR智能眼镜:设备检修的“数字眼睛”
  • Ubuntu Server 22.04.5系统安装教程
  • Python 循环导入问题
  • Redis延时双删详解
  • 关于商品数据采集的方式和注意事项
  • linux C 语言开发 (七) 文件 IO 和标准 IO
  • Java Servlet 完全解析:构建高效 Web 应用的关键技术
  • 【GIS】Cesium:快速加载地图
  • 【硬件-笔试面试题-92】硬件/电子工程师,笔试面试题(知识点:米勒效应,米勒平台)
  • 定点巡检、实时巡检详解和两者的区别对比
  • AI 编程工具选型速览(2025-09 版)
  • 2025年渗透测试面试题总结-66(题目+回答)
  • DOTA-Cys-Tyr-Leu-Ala-Ser-Arg-Val-His-Cys(一对二硫键)
  • ARPO: End-to-End Policy Optimization for GUI Agents with Experience Replay
  • 数模电2,9.12
  • 51c大模型~合集181
  • 【硬件-笔试面试题-89】硬件/电子工程师,笔试面试题(知识点:线性稳压电源LDO的效率计算)
  • Docker基础篇03:Docker常用命令
  • 【数据结构与算法Trip第3站】双指针
  • html实现右上角有个图标,鼠标移动到该位置出现手型,点击会弹出登录窗口。