ansible playbook劇本使用配置

2021-09-19 18:49:43 字數 2246 閱讀 4428

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使用一種比較直白的方法來描述自己的任務配置檔案 劇...