1.基本語法,使用yaml格式檔案
2. hosts:指定主機,必須為/etc/ansible/hosts定義的主機
可為單個或多個
3.remote_user:root
指定遠端執行的使用者
4.tasks:乙個劇本中要執行的任務
必須有name:任務名稱
後跟ansible模組名,如shell,service,copy等
在某個模組中需要指定好選項與值,key=value格式,如
shell與command模組直接加命令即可
5.tags:給該任務定義乙個標籤,如tags:task1
在使用ansible-playbook -t task1 x.yaml 時,指定-t 加tags名可以只執行某個任務
6.在定義完x.yaml檔案後,可以使用ansible-playbook --check x.yaml 測試是否存在問題
7.ansible-playbook --list-hosts 2.yaml 檢視當前劇本的主機列表
8.在/etc/ansible/hosts中定義變數並引用:
9.使用absible-playbook引用模板tempalte:如自定義httpd.conf檔案中的監聽埠:
listen } 引用剛才定義在各主機的httpd變數。
建立乙個新的yaml檔案:
使用template模組複製並重啟,可以實現不對主機監聽不同埠
10.ansible all -m setup|grep ansible_processor :可以通過 ansible all -m set|grep *** 查詢想要的變數值,但是不支援萬用字元
11.ansible使用roles快速重用配置:
/etc/ansible/roles/ 建立需要的角色,如nginx,mysql等等
各角色檔案下包含以下幾個目錄:
files:存放copy模組或script模組呼叫時的檔案
templates:template模組查詢所需要的檔案
tasks:存放任務的檔案至少包含乙個main.yml檔案
vars:存在定義變數的檔案至少包含乙個main.yml檔案
tasks目錄下main.yml內容:
12.ansible-playbook呼叫roles
若存在多個roles則繼續呼叫:
- hosts:all
remote_user: root
roles:
- nginx
- mysql
ansible playbook建立使用者
建立失敗,沒有許可權,授權 2.建立使用者及密碼 3.引入使用者列表檔案建立使用者,密碼加密 root server1 ansible cat createuser.yml hosts localhost vars files userlist.yml tasks name create user ...
ansible playbook同步模組
deploy.yml 需要變數傳參 hosts sudo yes tasks synchronize src dest archive no recursive yes rsync opts update,exclude git 執行 傳參 extra vars archive 是否採用歸檔模式同步...
ansible playbook使用簡介
ansible模組有copy file cron group user yum service get url command script shell raw ping 下面來介紹playbook 像很多其他服務配置檔案管理方式一樣,ansible使用一種比較直白的方法來描述自己的任務配置檔案 劇...