1.ping模組ping模組,主要用於判斷遠端客戶端是否**,用於ping本身伺服器,返回值是changed、ping使用ansible ping伺服器狀態,**為ansible -k all -m ping
2.ansible command模組是ansible預設模組,主要用於執行linux基礎命令,可以執行遠端伺服器命令執行、任務執行等操作。但command模組不支援變數、重定向、管道符等,這些操作需要用shell模組執行command模組使用詳解:
chdir:執行命令前,切換到目錄
creates:當該檔案存在時,不執行該步驟
executable:切換shell來執行命令,需要使用命令的絕對路徑
free_from:需要執行的指令碼,一般使用ansible的-a引數代替。
removes:當該檔案不存在時,不執行該步驟
warn:如果在ansible.cfg中存在告警,如果設定了false,不會告警該行
3.ansible copy模組主要用於檔案或者目錄複製,支援檔案、目錄、許可權、使用者組功能copy模組使用詳解:
src:ansible端原始檔或者目錄,空目錄不複製
content:用來替代src,用於將指定檔案的內容複製到遠端檔案內
dest:客戶端目標目錄或者檔案,需要絕對路徑
backup:複製之前,先備份遠端節點上的原始檔案
directory_mode:用於複製目錄,新建的檔案會被複製,而舊的不會被複製
follow:支援link檔案複製
force:覆蓋遠端主機不一致的內容
group:設定遠端主機目錄的組名
mode:設定遠端主機檔案及目錄的許可權
owner:設定遠端主機目錄的使用者名稱
4.ansible yum模組主要用於軟體的安裝、公升級、解除安裝,支援rpm軟體包的管理yum模組使用詳解:
conf_file:設定遠端yum執行時所依賴的yum配置檔案
disable_gpg_check:安裝軟體包之前是否檢查gpg key
name:需要安裝的軟體名稱,支援軟體組安裝
update_cache:安裝軟體之前更新快取
enablerepo:指定repo源名稱
skip_broken:跳過異常軟體節點
state:軟體包狀態,包括installed、present、latest、absent、removed
present, installed是指安裝套件,而latest指安裝最新的套件,也就是使用 yum mirror 上最新的版本。
absent, removed 沒有什麼區別
5.ansible user模組主要用於作業系統使用者、組、許可權、密碼等操作user模組使用詳解:
system:預設建立為普通使用者,為yes則建立系統使用者
append:新增乙個新的組
comment:新增描述資訊
createhome:給使用者建立家目錄
force:強制刪除使用者
group:建立使用者主組
groups:將使用者加入組或者附屬組新增
home:指定使用者的家目錄
name:表示狀態,是否create、remove、modify
password:指定使用者的密碼,為加密密碼
remove:刪除使用者
shell:設定使用者的shell登入環境
uid:設定使用者id
update_password:修改使用者密碼
state:使用者狀態,預設為present,表示新建使用者
6. setup模組,主要用於獲取主機資訊,在playbooks裡經常會用到的乙個引數gather_facts就與該模組相關。setup模組下經常使用的乙個引數是filter引數,具體使用示例如下(由於輸出結果較多,這裡只列命令不寫結果):
[root@361way ~]# ansible 10.212.52.252 -m setup -a 'filter=ansible_*_mb' //檢視主機記憶體資訊[root@361way ~]# ansible 10.212.52.252 -m setup -a 'filter=ansible_eth[0-2]' //檢視地介面為eth0-2的網絡卡資訊[root@361way ~]# ansible all -m setup --tree /tmp/facts //將所有主機的資訊輸入到/tmp/facts目錄下,每台主機的資訊輸入到主機名檔案中(/etc/ansible/hosts裡的主機名)
7. file模組主要用於遠端主機上的檔案操作,file模組包含如下選項:
force:需要在兩種情況下強制建立軟鏈結,一種是原始檔不存在但之後會建立的情況下;另一種是目標軟鏈結已存在,需要先取消之前的軟鏈,然後建立新的軟鏈,有兩個選項:yes|no
group:定義檔案/目錄的屬組
mode:定義檔案/目錄的許可權
owner:定義檔案/目錄的屬主
path:必選項,定義檔案/目錄的路徑
recurse:遞迴的設定檔案的屬性,只對目錄有效
src:要被鏈結的原始檔的路徑,只應用於state=link的情況
dest:被鏈結到的路徑,只應用於state=link的情況
state: directory:如果目錄不存在,建立目錄
file:即使檔案不存在,也不會被建立
link:建立軟鏈結
hard:建立硬鏈結
touch:如果檔案不存在,則會建立乙個新的檔案,如果檔案或目錄已存在,則更新其最後修改時間
absent:刪除目錄、檔案或者取消鏈結檔案
使用示例:
ansible test -m file -a "src=/etc/fstab dest=/tmp/fstab state=link"ansible test -m file -a "path=/tmp/fstab state=absent"ansible test -m file -a "path=/tmp/test state=touch"
8.service模組
用於管理服務
9.cron模組
用於管理計畫任務
10.yum模組
使用yum包管理器來管理軟體包,其選項有:
config_file:yum的配置檔案
disable_gpg_check:關閉gpg_check
disablerepo:不啟用某個源
enablerepo:啟用某個源
name:要進行操作的軟體包的名字,也可以傳遞乙個url或者乙個本地的rpm包的路徑
state:狀態(present,absent,latest)
11.user模組與group模組
user模組是請求的是useradd, userde
12.synchronize模組
使用rsync同步檔案,其引數如下:
archive: 歸檔,相當於同時開啟recursive(遞迴)、links、perms、times、owner、group、-d選項都為yes ,預設該項為開啟
13.get_url 模組
該模組主要用於從http、ftp、https伺服器上**檔案(類似於wget),主要有如下選項:
sha256sum:**完成後進行sha256 check;
timeout:**超時時間,預設10s
url:**的url
url_password、url_username:主要用於需要使用者名稱密碼進行驗證的情況
use_proxy:是事使用**,**需事先在環境變更中定義
14.user模組是請求的是useradd, userdel, usermod三個指令,goup模組請求的是groupadd, groupdel, groupmod 三個指令。
15.script模組 [在遠端主機執行主控端的shell/python指令碼 ] (使用相對路徑)[root@node1 ansible]# ansible testservers -m script -a '/etc/ansible/test.sh
16. shell模組 [執行遠端主機的shell/python指令碼][root@node1 ansible]# ansible testservers -m shell -a 'bash /root/test.sh'
17. raw模組 [類似於command模組、支援管道傳遞][root@node1 ansible]# ansible testservers -m raw -a "ifconfig eth0 |sed -n 2p |awk '' |awk -f: ''"
優秀管理者 拾荒者 醫生 屠夫 廚師
作為乙個在社會中摸爬滾打的管理者,在實際的工作過程中,有一些特殊的想法,對優秀管理者的評價及如何鍛鍊成為優秀的管理者。現在的社會是乙個飛速發展的時期,這個階段,很多的理論 方法包括大人物層出不窮,我今天只舉一些比喻,讓大家更明白!首先,乙個優秀的管理者必須是 拾荒者 在成功之前,一定要博覽群書,掌握...
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...