ansible playbook 模式及语法
什么是playbook及组成
playbook 的优势
playbook的配置语法
场景批量部署服务(Nginx)
什么是playbook及其组成
playbook翻译过来是 剧本
playbook 的组成
play 定义是足迹的角色
tesk 定义的是具体的执行的任务
playbook 由一个或多个play组成, 一个play可以包含多个task
palybook 的优势
1 功能比adhoc更加全面
2 控制好依赖关系
3 展现更直观
4 持久使用
playbook的配置语法
基本的使用
yaml 语法和变量
基本语法
异常处理和相关操作
基本使用
playbook 基本使用
使用场景
主机匹配
playbook 基本使用
ansible-playbook playbook.yaml [options] #自定义配语法格式 条件 命令 语句 剧本
options 执行选项 https://www.imooc.com/article/2279 #执行选项参数 介绍
使用场景
playbook的配置
执行
执行结果返回
ansible-playbook的基本语法时,列出下ansible-playbook执行常用命令参数:
执行方式:ansible-playbook playbook.yml [options] -u REMOTE_USER, --user=REMOTE_USER # ssh 连接的用户名 -k, --ask-pass #ssh登录认证密码 -s, --sudo #sudo 到root用户,相当于Linux系统下的sudo命令 -U SUDO_USER, --sudo-user=SUDO_USER #sudo 到对应的用户 -K, --ask-sudo-pass #用户的密码(—sudo时使用) -T TIMEOUT, --timeout=TIMEOUT # ssh 连接超时,默认 10 秒 -C, --check # 指定该参数后,执行 playbook 文件不会真正去执行,而是模拟执行一遍,然后输出本次执行会对远程主机造成的修改 -e EXTRA_VARS, --extra-vars=EXTRA_VARS # 设置额外的变量如:key=value 形式 或者 YAML or JSON,以空格分隔变量,或用多个-e -f FORKS, --forks=FORKS # 进程并发处理,默认 5 -i INVENTORY, --inventory-file=INVENTORY # 指定 hosts 文件路径,默认 default=/etc/ansible/hosts -l SUBSET, --limit=SUBSET # 指定一个 pattern,对- hosts:匹配到的主机再过滤一次 --list-hosts # 只打印有哪些主机会执行这个 playbook 文件,不是实际执行该 playbook --list-tasks # 列出该 playbook 中会被执行的 task --private-key=PRIVATE_KEY_FILE # 私钥路径 --step # 同一时间只执行一个 task,每个 task 执行前都会提示确认一遍 --syntax-check # 只检测 playbook 文件语法是否有问题,不会执行该 playbook -t TAGS, --tags=TAGS #当 play 和 task 的 tag 为该参数指定的值时才执行,多个 tag 以逗号分隔 --skip-tags=SKIP_TAGS # 当 play 和 task 的 tag 不匹配该参数指定的值时,才执行 -v, --verbose #输出更详细的执行过程信息,-vvv可得到所有执行过程信息。