ansible webserver -m ping
yum模組用來在centos系統上使用yum命令安裝軟體包
選項:name: 指定安裝包的名字
state:latest 安裝最新版 present 預設安裝 installed 安裝 absent 解除安裝
removed 解除安裝
例子:
ansible webservers -m yum -a 'name=httpd state=latest'
command模組用來執行系統命令,但是不支援shell下的特殊符號 如:| &&等
例子:
ansible webservers -m command -a 'echo 李想'
shell模組和command模組使用方法基本一致,但是他可以支援shell的特殊符號,如: | && 等
例子:
ansible webservers -m shell -a 'cd /opt/ && touch lixiang'
service模組用來管理centos上的服務的啟動、關閉、重啟和過載
選項:name: 服務名字
state: started(啟動) stopped(停止) restarted(重啟) reloaded(過載)
enabled: 預設是no,將服務設定為開機自啟
例子:
ansible webservers -m service -a 'name=httpd state=started'
file模組用來建立檔案、目錄、鏈結檔案
選項:group:定義檔案/目錄的屬組
mode:定義檔案/目錄的許可權
owner:定義檔案/目錄的屬主
path:必選項,定義檔案/目錄的路徑
recurse:遞迴的設定檔案的屬性,只對目錄有效
src:要被鏈結的原始檔的路徑,只應用於state=link的情況
dest:被鏈結到的路徑,只應用於state=link的情況
state:
directory:如果目錄不存在,建立目錄
file:即使檔案不存在,也不會被建立
link:建立軟鏈結
hard:建立硬鏈結
touch:如果檔案不存在,則會建立乙個新的檔案,如果檔案或目錄已存在,則更新其最後修改時間
absent:刪除目錄、檔案或者取消鏈結檔案
例子:
ansible webservers -m file -a 'path=/root/aa state=touch'
user模組用來建立使用者
選項:home: 指定建立的家目錄
groups:指定使用者組
uid:指定uid
password:設定密碼,密碼必須是密文
name:建立的使用者名字
createhome:是否建立家目錄(yes/no)
state: 是建立還是刪除。(present,absent),預設是建立
shell: 指定使用者登入的shell環境
remove:刪除使用者家目錄,預設為no
例子:
ansible webservers -m user -a 'name=tom password=4xt9gdyveup6i'
group用來建立使用者組
選項gid:指定用的gid。
name:指定使用者名稱。
state:是建立還是刪除。(present,absent)
例子:
ansible webservers -m group -a 'name=he state=present'
copy模組用來複製檔案至目標主機
選項:src:檔案在管理主機的據對路徑或者相對路徑
dest:將檔案複製到目標主機的路徑
backup:是否將目標主機的同名檔案備份,預設為no
mode: 授權
directory_mode:遞迴授權
例子:
ansible webservers -m copy -a 'src=/root/nginx.sh dest=/opt/'
unarchive模組用來解壓檔案
選項:copy:在解壓檔案之前,是否先將檔案複製到遠端主機,預設為yes。若為no,則要求目標主機上壓縮包必須存在
creates:指定乙個檔名,當該檔案存在時,則解壓指令不執行
dest:遠端主機上的乙個路徑,即檔案解壓的絕對路徑。
group:解壓後的目錄或檔案的屬組
mode:解壓後檔案的許可權
src:如果copy為yes,則需要指定壓縮檔案的源路徑
owner:解壓後檔案或目錄的屬主
例子:
ansible webservers -m unarchive -a 'src=/root/nginx.tar.gz dest=/opt/ group=www ower=www mode=777'
ansible webservers -m get_url -a 'url= dest=/root/'
使用rsync同步檔案,將主控方目錄推送到指定節點的目錄下,使用此模組需要先安裝rsync
delete: 刪除不存在的檔案,delete=yes 使兩邊的內容一樣(即以推送方為主),預設no
src: 要同步到目的地的源主機上的路徑; 路徑可以是絕對的或相對的。如果路徑使用」/」來結尾,則只複製目錄裡的內容,如果沒有使用」/」來結尾,則包含目錄在內的整個內容全部複製
dest:目的地主機上將與源同步的路徑; 路徑可以是絕對的或相對的。
dest_port:預設目錄主機上的埠 ,預設是22,走的ssh協議。
mode: push或pull,預設push,一般用於從本機向遠端主機上傳檔案,pull 模式用於從遠端主機上取檔案。
rsync_opts:通過傳遞陣列來指定其他rsync選項。
fetch
fetch模組它用於從遠端機器獲取檔案,並將其本地儲存在由主機名組織的檔案樹中。
選項:src:遠端系統上要獲取的檔案。 這必須是乙個檔案,而不是乙個目錄。 後續版本可能會支援遞迴提取。
dest:儲存檔案的目錄
ansible webservers -m setup -a 'filter=ansible_all_ipv4_addresses'
Ansible常用模組
1.ping模組2.ansible command模組是ansible預設模組,主要用於執行linux基礎命令,可以執行遠端伺服器命令執行 任務執行等操作。但command模組不支援變數 重定向 管道符等,這些操作需要用shell模組執行 command模組使用詳解 chdir 執行命令前,切換到目...
ansible常用模組
1.setup 該模組主要用於收集資訊,是通過呼叫facts元件來實現的 ansible doc s setup ansible mysql m setup 檢視mysql伺服器上所有資訊檢視遠端主機基本資訊 ansible all m setup2.ping測試遠端主機執行狀態 ansible a...
Ansible 常用模組
ansible是基於python開發,集合了眾多運維工具 puppet cfengine chef func fabric 的優點 具有批量系統配置 批量程式部署 批量執行命令等功能。是基於模組工作的,本身沒有批量部署的能力。真正具有批量部署的是ansible所執行的模組,ansible只是提供一種...