IT袋

当前位置:主页 > 经验教程 > 系统教程 >

Ansible-playbook详细介绍和使用方法

Ansible-playbook详细介绍和使用方法!(2)

时间:2023-09-17 20:30:17 来源:IT袋 作者:苏晓敏
导读:Ansible-playbook详细介绍和使用方法,YAML可以基于流来处理 YAML表达能力强,扩展性好 五、ansible-playbook的核心组成部分 Hosts:执行的远程主机列表; Tasks:任务集; Variables:内置变量或自定义

Ansible-playbook详细介绍和使用方法

  • YAML可以基于流来处理
  • YAML表达能力强,扩展性好
  • 五、ansible-playbook的核心组成部分

    • Hosts:执行的远程主机列表;
    • Tasks:任务集;
    • Variables:内置变量或自定义变量在playbook中调用;
    • Templates:模板,可替换模板中的变量并实现一些简单的逻辑的文件;
    • Handlers 和 notify:两者结合使用,由特定条件触发的操作,满足条件方才执行,否则不执行;
    • Tags:标签,用于制定某条任务执行,用户选择运行playbook中的部分代码,ansible具有幂等性,因此会自动跳过没有辩护的部分,即便如此,有的代码为测试其确实没有发生变化的时间依然会非常的长,此时确信其没有变化,就可以通过tags跳过这些代码片段。

    5.1 ansible-playbook 的项目 目录结构

    [root@bunian ansible-project]# ll
    total 28
    -rw-r--r--. 1 root root 122 Jul  8 10:14 00_setup.yml
    -rw-r--r--. 1 root root  84 Jul  7 14:42 01_publish_ssh_key.yml
    -rw-r--r--. 1 root root  78 Jul  8 14:11 02_common.yml
    -rw-r--r--. 1 root root  85 Jul  8 10:34 03_install_docker.yml
    drwxr-xr-x. 3 root root 124 Jul 11 09:15 files
    drwxr-xr-x. 2 root root  80 Jul  8 15:26 inventory
    -rw-r--r--. 1 root root 778 Jul  7 15:16 README.md
    drwxr-xr-x. 5 root root  57 Jul  7 18:30 roles
    [root@bunian ansible-project]# tree roles/ -L 3
    roles/
    ├── docker
    │   ├── defaults
    │   │   └── main.yml
    │   ├── handlers
    │   │   └── main.yml
    │   ├── meta
    │   │   └── main.yml
    │   ├── tasks
    │   │   └── main.yml
    │   ├── templates
    │   │   ├── daemon.json.j2
    │   │   └── docker-ce.repo.j2
    │   └── vars
    │       └── main.yml

    以上是项目是docker批量安装。这个目录格式是我这边安装项目的目录规范。但并不是说每个目录下的main.yml文件都存在内容,其实很多时候我们可能用不到default/main.ymlmeta/main.yml

    5.2 Hosts 远程主机列表

    playbook中的每一个play的目的都是为了让特定主机以某个指定的用户身份执行任务。hosts用于指定要执行指定任务的主机,须事先定义在主机清单中。比如我们之前说的默认在/etc/ansible/hosts文件中:

    [root@bunian ansible-example]# cat /etc/ansible/hosts
    [websrvs]
    10.10.108.[30:33]
    [dbsrvs]
    10.10.108.30
    [appsrvs]
    10.10.108.[30:33]

    5.3 remote_user 远程用户

    可用于Host和Task中,也可以通过指定其通过sudo的方式在远程主机上执行任务,其可用于play全局或某任务。此外,还可以在sudo时使用sudo_user指定sudo时切换的用户。

    [root@bunian ansible-example]# cat demo-playbook.yml
    - hosts: dbsrvs
      remote_user: root   
      tasks:
        - name: pingtest       
          ping:
          remote_user: ayunw
          sudo: yes        # 默认sudo为root
          sudo_user: root  # sudo 为root

    相关阅读

    • win10锁屏密码怎么设置 win10系统怎么设置锁屏密码

      win10锁屏密码怎么设置 win10系统怎么设置锁屏密码

      IT袋网小编为你介绍win10锁屏密码怎么设置的电脑小知识,win10设置锁屏密码一共有三步,需要在账户中进行设置,以下是具体的操作步骤:

    • 微软windows10下载 微软win10专业版下载地址

      微软windows10下载 微软win10专业版下载地址

      这些知识你了解吗?微软win10专业版下载地址的IT小经验,关于微软windows10下载 微软win10专业版下载地址,下面来一起了解一下吧。 微软win10专业版系统以其稳定性和良好的兼容性一直深受大家

    • win7如何查看隐藏文件 win7如何查看隐藏文件?

      win7如何查看隐藏文件 win7如何查看隐藏文件?

      为大家介绍win7如何查看隐藏文件方面的内容,关于win7如何查看隐藏文件 win7如何查看隐藏文件?,接下来小编为网友介绍。 win7系统是不可错过的优秀系统。最近很多的win7系统用户们都在问为什

    • win11键盘设置教程 win11轻松使用键盘默认设置

      win11键盘设置教程 win11轻松使用键盘默认设置

      今天分享:win11键盘设置教程的相关知识,关于win11键盘设置教程 ,下面为详细的介绍。 键盘是我们在使用电脑时非常重要的外部设备,但是在最新的win11系统中,用户难免会遇到一些键盘相关