Bootstrap

ansible-playbook 的使用

前言

我在前一篇博客描述 ansible的安装和使用,可以远程对我们主机进行很多操作。ansible-playbook 其实属于ansible 一部分。用ansible-playbook 命令与 用ansible命令有不同之处,且非常适合于复杂应用的部署。在 playbooks 中可以编排有序的执行过程,甚至于做到在多组机器间,来回有序的执行特别指定的步骤.
如果需要参考部署ansible的安装和使用 安装好ansible ,playbooks 也可以使用了。

实践

一、ansible-playbook 参数介绍

ansible-playbook 参数 和 ansible 一致,

ansible可用的选项如下:
-v:输出详细的执行过程信息,可以得到执行过程所有的信息。
-i PATH:指定inventory信息,默认为/etc/ansible/hosts。
-f:并发线程数,默认为5个线程。
–private-key=PRIVATE_KEY_FILE:指定密钥文件。
-m:指定执行使用的模块。
-M:指定模块的存放路径,默认为/usr/share/ansible,也可以通过ANSIBLE_LIBRARY来设定默认路径。
-a:指定模块参数。
-u:指定远程主机以哪个用户运行命令。
-l:限制运行主机,等同于“–limit”。
–list-hosts:列出符合条件的主机列表,不执行任何命令。

二、ansible-playbook 变量

1.通过vars/set_fact定义变量

备注:
hosts:在ansible 章节介绍的 /etc/ansible/hosts 里面定义主机名
remote_user: 登陆的用户
vars: 配置变量
tasks: 需要执行命令
set_fact: 定义变量并赋值
debug: 打印需要内容
cat >test_set_fact.yml<<EOF
---
- hosts: tx_151
  remote_user: root
  vars: 
    testvar1: test1
  tasks:
  - set_fact:
     testvar2: "test2"
  - debug:
      msg: "{
   {testvar1}} {
   {testvar2}} "
EOF
ansible-playbook test_set_fact.yml -v

在这里插入图片描述

2.ansible 内置系统变量
备注:
ansible_version: ansible的版本号
inventory_hostname &

;