日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Ansible常用模块介绍及使用

發布時間:2025/7/14 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Ansible常用模块介绍及使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

ansible常用命令解析:

? ? 查看當前 ansible 都支持哪些模塊: ansible-doc -l

? ? ? ? ? ? ? ? 查看某一模塊可以使用的參數:ansible-doc -s copy (eg:copy模塊)

ansible用法:

ansible 主機名 -m 模塊名 -a 模塊參數

-m:模塊的名字,如果執行單一的命令不用加-m,默認走command

-a: 模塊參數,如果模塊是command,-a 后面跟的就是命令參數

-i : 指定hosts文件位置 ? ? ?默認:/etc/ansible/hosts

-f: 并行任務數,一定是整數

-u:指定遠程用戶,默認是root

ping模塊

? ? ? ansible 192.168.118.14 -m ping



可以看到在不使用管道的時候shell和command兩個模塊是沒有分別的,但是使用了管道,可以看到command的管道是不生效的。

shell和command:這兩個模塊都是運行命令的模塊,區別是command模塊不支持shell變量和管道。

(1)、批量使用命令[command/shell]

1

????ansible?storm_cluster?-m?command?-a?'date'??#??如下圖

? ??

? ?# 通過這個命令可以直接將兩個測試環境的時間都顯示出來,success 表示成功執行了。command

? ? 此參數表示“在遠程主機上執行命令”。


? ? 如此可以將date命令,換成/usr/local/tomcat/bin/./shutdown.sh等命令。

(2)、文件復制[copy] ? ? # ?復制文件到遠程文件 ??

1

2

3

4

??????ansible?storm_cluster?-m?copy?-a?"\

??????src=/alidata/www/WEB-INF1214.zip\

??????dest=/alidata/www/WEB-INF1214.zip\

??????owner=root?group=root?backup=yes";?????#??如下圖

? ? src:被復制到遠程主機的本地文件,可以是絕對路徑,也可以是相對路徑。

? ? owner:文件所有者

? ? group:文件所屬用戶組

? ? dest:復制到遠程的文件。必填項

? ? mode:文件權限。如文件為755權限,mode="0755"即可。


(3)、遠程查看文件內容 ??

1

?????[root@localhost?/]#?ansible?storm_cluster?-m?command?-a?"cat?/1.txt"????#??如下圖

? ??


(4)文件管理[file]

file:更改文件的用戶及權限,創建或刪除文件和目錄。

修改所有服務器的/tmp/test.txt文件的權限為755:

#?ansible?all?-m?file?-a?"dest=/tmp/test.txt?mode=755"

? 創建/tmp/test目錄:

? #?ansible?testservers?-m?file?-a?"dest=/tmp/test?mode=755?owner=root?group=root?state=directory"

??刪除/tmp/test目錄:

? #?ansible?testservers?-m?file?-a?"dest=/tmp/test.txt?state=absent"

?(5) 軟件包管理:【yum/apt】

atp(ubuntu),yum(redhat):

安裝一個軟件包(links):

#?ansible?testservers?-m?yum?-a?"name=curl state=present"

安裝軟件到最新版本

#?ansible?testservers?-m?yum?-a?"name=links?state=latest"?

??刪除一個軟件包:

#?ansible?testservers?-m?yum?-a?"name=links?state=absent"

(6) 用戶和用戶組[user/group]:

user:創建,修改,刪除用戶。

創建cmh用戶:

#?ansible?all?-m?user?-a?"name=cmh?password=123456"

刪除cmh用戶:

#?ansible?all?-m?user?-a?"name=cmh?state=absent"?

創建ansible組:

#?ansible 192.168.118.14 -m group -a "name=ansible gid=2016"

(7)服務管理[service]:

? ?service:啟動,重啟,關閉系統服務。

? ?關閉服務:

?#?ansible?testservers?-m?service?-a?"name=nfs?state=stopped"

?開啟服務:

?#?ansible?testservers?-m?service?-a?"name=nfs?state=started"

?重啟或者重新加載服務:

?#?ansible?testservers?-m?service?-a?"name=nfs?state=restarted"

?#?ansible?testservers?-m?service?-a?"name=nfs?state=reloaded"

(8)收集系統信息[setup]:

收集匹配主機的所有信息:

#?ansible?all?-m?setup

收集信息并以主機名為文件保存在指定目錄中:

#?ansible?all?-m?setup?--tree?/tmp/facts

過濾信息:(收集內存相關)

#?ansible?all?-m?setup?-a?'filter=ansible_*_mb'

(9)定義任務計劃[cron]

??#?ansible all -m cron -a 'name="Cron job" minute=*/3 hour=* day=* month=* weekday=* job="/usr/bin/ntpdate tiger.sina.com.cn"

(10)下載文件[get_url]

??#?ansible 192.168.118.14 -m get_url -a 'url=http://192.168.118.14/1.png dest=/tmp'

? (11)文件同步[ synchronize]

? ??ansible 192.168.118.14 -m synchronize -a 'src=/root/test dest=/tmp/ compress=yes'

? ?





























http://docs.ansible.com/ansible/modules_by_category.html? # 更多的模塊請查看此鏈接


轉載于:https://blog.51cto.com/tfbaby/1902966

總結

以上是生活随笔為你收集整理的Ansible常用模块介绍及使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。