Ansible的脚本----playbook剧本

发布时间:2023年12月20日

Playbook组成部分

  1. tasks ?任务:包含要在目标主机上执行的操作,使用模块定义这些操作。每个任务都是一个模块的调用。
  2. Variables 变量:存储和传递数据。变量可以自定义,可以在playbook当中定义全局变量,可以外部传参。
  3. Templates 模版:用于生成配置文件。模版是包含占位符的文件。占位符由ansible在执行时专换为变量值。
  4. Handlers 处理器 ?当需要有变更的时候,可以执行触发器。
  5. Roles 角色: 是一种组织和分装playbook的。允许吧相关的任务,变量,模板和处理器组成一个可复用的单元。

实例模版:

检查yum语法是否正确:

运行命令

检查有几个tasks

检查有几台运行

设置从哪一步开始表演 指定剧本演出

切换用户:没有root权限

切换用户命令

打开密钥对

指定用户

脚本二

字典方式:

获取 目标主机的IP地址,然后复制目标文件

Playbook的条件判断:

When 是一个比较常见的应用场景,实现满足条件即执行,不满足条件即跳过的任务。

When 是满足条件

循环:Ansible有多种循环格式,with_items

声明变量item,playbook的内置变量,with_items会把item的值,遍历列表当中的 a ?b ?c ?d 虽然我们声明的列表是两个,但是with_items还是把两个列表当成整体进行遍历。

With_list

组合输出

列表组循环,列表当中的值一一对应,打印出来。

列表里面的元素,定义了循环的次数,第二层列表,相当于内循环。

With_items 最常用的

With_list ??列表分组循环

With_together ?列表对应的列,数据结合的方式循环

With_nested ?相当于双重循环,第一层定义了循环次数。第二次表示第一层的每个元素会循环几次。

基于循环,创建文件,目录, 和用户组

文章来源:https://blog.csdn.net/weixin_62445943/article/details/135110546
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。