Ansible常用模組使用

2021-09-07 17:52:23 字數 1770 閱讀 6865

ansible官方提供了非常多的模組,還有若干第三方模組,我們也可以自己編寫模組。

ansible對遠端伺服器的操作實際是通過模組完成的,先將模組拷貝到遠端伺服器,完成操作後,然後在遠端伺服器上刪除該模組。

檢視模組幫助資訊:

檢視模組列表:

ansible-doc -l

檢視具體模組幫助資訊,以file為例

ansible-doc file

ping模組

測試現有的ssh引數能否連遠端伺服器。

ansible webservers -m ping

遠端命令模組

commond  不能使用管道,引數chdir可以切換到指定目錄,再執行命令。

raw           可以使用管道,相當於使用ssh直接執行linux命令。

shell          shell模組可以執行遠端伺服器上的指令碼,指令碼檔案要使用絕對路徑

script         可以在遠端伺服器上執行主控節點上的指令碼檔案。

ansible webservers -m script -a 'test.sh'

file模組    

file模組用於對遠端伺服器上的檔案(包塊鏈結和目錄)進行操作,包括修改許可權,修改屬主,建立刪除檔案。

重要選項:

#建立乙個目錄

ansible webservers -m file -a 'path=/tmp/dd state=directory mode=0755'

#修改檔案許可權

ansible webservers -m file -a 'path=/tmp/dd state=touch mode=0411'

#建立乙個軟鏈結

ansible webservers -m file -a 'src=/tmp/dd dest=/tmp/ddl state=link'

#修改所有者

ansible webservers -m file -a 'path=/tmp/dd owner=scott group=scott' -become

#刪除檔案

ansible webservers -m file -a 'path=/tmp/ddl state=absent'

copy模組

類似於scp,將本地檔案拷貝到遠端伺服器,但是它更加強大,它還可以修改檔案的許可權和所屬。

#複製檔案並修改所屬主,如果檔案已經存在,則進行備份。

ansible webservers -m copy -a 'src=/tmp/data.txt dest=/tmp/data.txt owner=root backup=yes' -become

user/group

對使用者和組的操作。

# 建立乙個使用者,並生成金鑰對。

ansible webservers -m user -a 'name=dev1 comment="dev" group=root  uid=1099 generate_ssh_key=yes ssh_key_bits=2048' -become

# 刪除使用者

ansible webservers -m user -a 'name=dev1 state=absent' -become

yum/apt

安裝和刪除軟體

#安裝軟體

ansible webservers -m yum -a 'name=git state=present' -become

#刪除軟體

ansible webservers -m yum -a 'name=git state=absent' -become

Ansible常用模組使用

ansible官方提供了非常多的模組,還有若干第三方模組,我們也可以自己編寫模組。ansible對遠端伺服器的操作實際是通過模組完成的,先將模組拷貝到遠端伺服器,完成操作後,然後在遠端伺服器上刪除該模組。檢視模組幫助資訊 檢視模組列表 ansible doc l 檢視具體模組幫助資訊,以file為例...

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...