ansible常用模組知識彙總(一)

2021-10-03 20:33:26 字數 2635 閱讀 4190

所有的模組都可以使用下面的命令檢視引數

ansible-doc -s 模組名  //查詢某個模組的引數

ansible-doc -l //檢視所有模組

模組一:ping

ping模組用來檢測主機群是否存活,連通。要用的引數比較少,常用的使用:

ansible test -m ping -uroot

//也可以不用-u指定使用者

模組二:fetch

作用:從遠端主機群拉去乙個檔案

使用該模組必須要指定引數srcdest

//拉去遠端的fstab檔案到本地/tmp下

ansible test -m fetch -a "src=/etc/fstab dest=/tmp/"

來看下結果:

192.168.247.180 | success =

>

service to start"'

//mark是個變數,就是標記中的begin和end

檢視文字內容

#end service to start

absent刪除追加的內容

ansible testa -m blockinfile -a 'path=/tmp/aaab.txt marker="# service to start" state=absent'

將追加內容放在開頭

ansible testa -m blockinfile -a 'path=/tmp/aaab.txt block="2222" marker="# service to start" insertbefore=bof'

檢視文字內容

#begin service to start

2222

#end service to start

1111

模組六:lineinfile

作用:確保某一行在指定文字中,或者確保從文字中刪除,還可以正規表示式替換文字內容

path:必要引數,指定要操作的檔案

line:指定操作的文字內容

regexp:使用正規表示式,當替換文字時如果有多行被匹配,預設替換最後乙個匹配到的行,刪除文字時,預設匹配到的全部刪除。

state:預設present,還有乙個absent刪除。

backrefs:當使用正則的時候,如果沒有匹配到預設在文字最後面追加該內容,使用該引數為yes後,則不追加。該引數還有乙個分組的作用,yes時,line中就可以對regexp中的分組進行引用。

insertafter:指定插入的位置,eof表示插入到末尾,如果設定成正則,就插入到該正則之後。

insertbefore:bof為最前面,設定了正則的話,正則之前。該引數和上面的insertafter在backrefs為yes時無效。

backup:是否修改前備份

create:不存在時是否建立

示例:在遠端機器上建立乙個實驗用的文字

cat aaab.txt

1111

2222

aaa1

bbb1

確保某一行在文字中,如果存在不做任何操作,不存在則追加在最後面

ansible testa -m lineinfile -a 'path=/tmp/aaab.txt line="1111"'

//1111在文字中,所以文字不會有變化

ansible testa -m lineinfile -a 'path=/tmp/aaab.txt line="3333"'

//文字中沒有3333,所以新增在文字的最後一行

替換。將文字中11開頭的行替換成change,如果內有則新增到最後

ansible testa -m lineinfile -a 'path=/tmp/aaab.txt regexp="^11" line="change"'

使用backrefs。沒有匹配到也不會追加。

ansible testa -m lineinfile -a 'path=/tmp/aaab.txt regexp="^4444" line="test" backrefs=yes'

刪除所有change的行

ansible testa -m lineinfile -a 'path=/tmp/aaab.txt line="change" state=absent'

ansible常用模組知識彙總(二)

文章相關知識 ansible常用模組知識彙總 一 模組一 find模組 作用 查詢檔案 目錄 常用引數 paths 必要引數,指定在哪個目錄查詢。可以指定多個路徑,用逗號隔開。也可以使用path patterns 指定要查詢的檔名,預設是檔案型別,目錄需要用引數指定。支援萬用字元,如果需要用pyth...

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