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可得到所有執行過程信息。