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

介绍Ansible和实施Ansible PlayBook

第一章 介绍Ansible

1. ansible的特点是什么?

a. ansible使用yaml语法,语言格式简洁明了。

b. ansible不需要代理,仅仅通过SSH远程连接就可以控制受管主机,是一种非常便捷、安全的方法。

c. Ansible的功能强大,可以利用ansible部署应用进行配置管理、工作流自动化和网络化,ansible可以编排应用的整个生命周期。

d. Ansible具有幂等性,同一模块的多次执行结果相同,避免了重复操作带来的意外问题。

2. 说出你对于ansible的认识

ansible是一个基于Linux的自动化管理平台,通过使用playbook描述IT应用基础架构,实施配置管理,应用部署,任务编排和IT基础设施的自动化,大大降低了手动编写代码的出错率,提升了运维人员的工作效率。

第二章 实施Ansible PlayBook

1. 描述ansible清单概念并管理静态清单文件

Ansible清单是被控制节点管理的受控主机的一个集合,可以是单独的主机,也可以是根据主机的不同特征而分类的主机组,一个主机可以存在于多个主机组。

定义静态清单文件是将被管理的主机名称或者ip地址编辑到一个清单文件中,可以是单独的主机,也可以是主机组,主机组中还可以嵌套主机组,allungrouped是始终存在的两个主机组。

2. 描述ansible配置文件的位置、ansible如何选择这些文件

在每个ansible项目目录中创建和编辑两个文件用于配置ansible的行为和ansible-navigator命令。

(1).创建ansible.cfg文件以适应于多个ansible工具的设置,其中,有[defaults][privilege_escalation]两个基本操作。Defaults用于设置ansible基本操作的默认值,privilege_escalation用于配置ansible如何在受管主机上面进行特权升级

l(2).创建一个yaml格式的文件为ansible-navigator配置文件,具体的文件内容如下图所示:

3. 如何编写playbook的基本格式

a. hosts:指定目标主机或主机组(来自 inventory 文件)

b. remote_user:在远程主机上执行任务的用户

c. vars:定义变量(可在任务中通过 {{ 变量名 }} 引用)

d. tasks:任务列表,每个任务包含:

e. name:任务描述(可选但推荐,有利于可读性)

f. 模块名称

g. 模块参数

h. notify:任务执行成功后通知的处理程序

i. handlers:处理程序列表,通常用于响应状态变化(如配置文件更新后重启服务)

Playbook 遵循 YAML 语法规范,使用缩进表示层级关系(通常为 2 个空格),# 用于注释。 Playbook 通常以---表示开头,以...(可省略)表示结尾,一个Playbook可以包含多个 play(以 - 开头的区块)以实现对不同主机组执行不同任务。

4. 如何实施多个play?

在 YAML 文件中按顺序定义多个 play 区块(每个 play 以 - 开头)即可。多个 play 可以针对不同的主机组执行不同的任务,实现复杂的自动化流程。

5. 实施多个play有什么特点?

  • 独立执行:每个 play 独立运行,按顺序执行(前一个 play 完成后才会执行下一个)
  • 目标隔离:通过 hosts 字段指定不同的目标主机组,实现分组管理
  • 变量隔离:每个 play 中定义的 vars 仅在当前 play 中有效,不会相互干扰
  • 共享资源:可以通过 roles、import_
http://www.xdnf.cn/news/19530.html

相关文章:

  • pinia状态管理工具
  • Redis核心原理与Java应用实践
  • 洞悉边界:软件测试中边界值分析的艺术与科学
  • OpenJDK 17 解释器分发表与安全点表机制解析
  • 零基础入门AutoSar中的ARXML文件
  • 【Flask】测试平台开发,产品管理功能UI重构-第九篇
  • Kubernetes 服务发现与健康检查详解
  • 搭建卷积神经网络
  • 软考 系统架构设计师系列知识点之杂项集萃(139)
  • C++11语言(三)
  • Nginx实现P2P视频通话
  • codecombat(Ubuntu环境详细docker部署教程)
  • 项目-云备份
  • 面试 八股文 经典题目 - HTTPS部分(一)
  • Flink NettyBufferPool
  • 大模型时代:用Redis构建百亿级向量数据库方
  • EtherCAT主站IGH-- 41 -- IGH之sdo_request.h/c文件解析
  • Library cache lock常见案例分析(一)
  • Encoder编码器
  • 图像描述编辑器 (Image Caption Editor)
  • 极客时间AI 全栈开发实战营毕业总结(2025年8月31日)
  • 【Linux基础】深入理解计算机存储:GPT分区表详解
  • 前端组件拆分与管理实战:如何避免 props 地狱,写出高可维护的项目
  • 《Unity Shader入门精要》学习笔记四(高级纹理)
  • ing Data JPA 派生方法 数据操作速查表
  • 【WEB】[BUUCTF] <GXYCTF2019禁止套娃>《php函数的运用》
  • ADC platfrom day65
  • MVC架构模式
  • Blender建模:对于模型布线的一些思考
  • 介绍GSPO:一种革命性的语言模型强化学习算法