上面我們已經提到過 ansible 是基於 ssh 協議實現的,所以其配置公私鑰的方式與 ssh 協議的方式相同,具體操作步驟如下:
生成金鑰
[root@ localhost ~]
# ssh-keygen -t rsa
向主機分發私鑰
[root@ localhost ~]
# ssh-copy-id [email protected]
[root@ localhost ~]
# ssh-copy-id [email protected]
這樣,就可以實現無密碼登入到各個伺服器上。
使用yum軟體包管理器安裝,公升級,降級,刪除和列出軟體包和組。
這個模組是redhat / centos系統作為遠端節點的os的時候,用的最多的。yum是啥就不多說了,redhat 、centos包管理工具
yum模組用來在centos系統上使用yum命令安裝軟體包
ansible webservers -m service -a 'name=vsftpd state=started enabled=yes'
ansible webservers -m yum -a 'name=httpd state=latest'
present:預設的,表示為安裝
lastest: 安裝為最新的版本
absent:表示刪除解除安裝
copy模組用來複製檔案至目標主機
src:原始檔絕對路徑或相對路徑
content:可以代替src,要寫入到dest檔案中的內容,會echo追加進去
owner:屬主
group:屬組
mode: 複製到遠端主機後,指定檔案或目錄許可權,類似與chmod指明
backup:覆蓋檔案之前是否備份,yes|no
directory_mode:遞迴設定目錄許可權
force:yes,如果檔案存在,但是內容不同,則強行覆蓋,預設選項;no,如果檔案不存在才複製
它用於從遠端機器獲取檔案,並將其本地儲存在由主機名組織的檔案樹中。
src: 遠端系統上要獲取的檔案。 這必須是乙個檔案,而不是乙個目錄。 後續版本可能會支援遞迴提取。
dest: 儲存檔案的目錄。
flat: 允許覆蓋將主機名/路徑/檔案/檔案附加到目的地的預設行為。
fail_on_missing: 當設定為yes時,如果原始檔丟失,任務將會失敗。
validate_checksum: 在獲取檔案之後驗證源和目標校驗和是否匹配
服務管理模組這是常用模組,用於控**務:
name:必選項,服務的名稱。
state: started(啟動) stopped(停止) restarted(重啟) reloaded(過載)
enabled:設定服務是否開機自動啟動,預設是no,引數為yes|no, 要求狀態(state)和啟用(enabled)中至少有乙個。
arguments:給命令列提供一些選項,向服務傳遞的命令列引數。
runlevel:執行級別,設定服務自啟動級別。
sleep:如果執行了restarted,則在stop和start之間沉睡幾秒鐘
pattern:定義乙個模式,如果通過status指令來檢視服務的狀態時,沒有響應,就會通過ps指令在程序中根據該模式進行查詢,如果匹配到,則認為該服務依然在執行
ansible常用模組詳解
1.模組介紹 明確一點 模組的執行就類似是linux命令的一條命令,就單單的是為了執行一條語句,不是批量的操作,批量操作需要用到playbook內類似shell編寫指令碼進行批量。1.1 模組的使用方法 檢視ansible支援的所有模組 ansible doc l 然後在 ansible doc l...
ansible模組之yum模組詳解(六)
語法格式 引數name 指定要安裝軟體包的名稱,如果有多個用 隔開 state 指定使用yum的方法 installed present 安裝軟體包 removed absent 移除軟體包 latest 安裝最新軟體包案例1 安裝已存在的軟體包 案例2 刪除指定的安裝包 root ansible ...
Ansible 常用檔案模組使用詳解
1 file模組 1 file模組常用的引數列表 setype設定目標檔案安全上下文屬性 owner裝置目標檔案的所屬主 group設定目標檔案的所屬組 mode設定檔案的許可權 src指定鏈結檔案的路徑 2 演示例項 2 fetch模組 1 fetch模組常用的引數列表 2 演示例項 3 line...