Ansible常用的模塊有哪些?-創(chuàng)新互聯(lián)

Ansible命令

命令格式:ansible [主機(jī)] [-m 模塊] [-a args]
ansible-doc -l   #列出所有已安裝的模塊 注:按q退出
ansible-doc -s yum  #-s列出yum模塊描述信息和操作動(dòng)作
ansible 192.168.0.106 -m command -a 'date'  #指定ip執(zhí)行date
ansible abc -m command -a 'date'    #指定分類(lèi)執(zhí)行date
ansible all -m command -a 'date'     #所有hosts主機(jī)執(zhí)行date命令
ansible all -a 'ls /root'    #如果不加-m模塊,則默認(rèn)運(yùn)行command模塊

昔陽(yáng)網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司,昔陽(yáng)網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為昔陽(yáng)1000多家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站制作要多少錢(qián),請(qǐng)找那個(gè)售后服務(wù)好的昔陽(yáng)做網(wǎng)站的公司定做!

Ansible模塊

command模塊

command模塊在遠(yuǎn)程主機(jī)執(zhí)行命令,不支持管道、重定向等shell的特性。常用的參數(shù)如下:
chdir:在遠(yuǎn)程主機(jī)上運(yùn)行命令前要提前進(jìn)入的目錄;
creates:在命令運(yùn)行時(shí)創(chuàng)建一個(gè)文件,如果文件已存在,則不會(huì)執(zhí)行創(chuàng)建任務(wù);
removes:在命令運(yùn)行時(shí)移除一個(gè)文件,如果文件不存在,則不會(huì)執(zhí)行移除任務(wù);
executeable:指明運(yùn)行命令的shell程序;

示例如下:

ansible web -m command -a  'ls /root'

Ansible常用的模塊有哪些?

shell模塊

shell模塊在遠(yuǎn)程主機(jī)執(zhí)行命令,相當(dāng)于調(diào)用遠(yuǎn)程主機(jī)的Shell進(jìn)程,然后在該Shell下打開(kāi)一個(gè)子Shell運(yùn)行命令。和command模塊的區(qū)別是它支持Shell特性:如管道、重定向等。

示例如下:

ansible web -m shell -a "echo hello world "      #輸出到屏幕
ansible web -m shell -a "echo hello world > a.txt"  #輸出到a.txt

Ansible常用的模塊有哪些?

copy模塊

copy模塊用于復(fù)制指定主機(jī)文件到遠(yuǎn)程主機(jī)的指定位置。常見(jiàn)的參數(shù)如下:
dest:指出復(fù)制文件的目標(biāo)目錄位置,使用絕對(duì)路徑。如果源是目錄,則目標(biāo)也要是目錄,如果目標(biāo)文件已存在,會(huì)覆蓋原有內(nèi)容;
src:指出源文件的路徑,可以使用相對(duì)路徑和絕對(duì)路徑,支持直接指定目錄。如果源是目錄,則目標(biāo)也要是目錄;
mode:指出復(fù)制時(shí),目標(biāo)文件的權(quán)限,可選;
owner:指出復(fù)制時(shí),目標(biāo)文件的屬主,可選;
group:指出復(fù)制時(shí)目標(biāo)文件的屬組,可選;
content:指出復(fù)制到目標(biāo)主機(jī)上的內(nèi)容,不能和src一起使用,相當(dāng)于復(fù)制content指明的數(shù)據(jù)到目標(biāo)文件中;

示例如下:

ansible web -m copy -a 'src=/root/m.txt dest=/root/ owner=root mode=640'

Ansible常用的模塊有哪些?
Ansible常用的模塊有哪些?

hostname模塊

hostname模塊用于管理遠(yuǎn)程主機(jī)上的主機(jī)名
常用的參數(shù)如下:
name:指明主機(jī)名;

示例如下:

ansible 192.168.0.100 -m hostname -a "name=web"

Ansible常用的模塊有哪些?

yum模塊

yum模塊基于yum機(jī)制,對(duì)遠(yuǎn)程主機(jī)管理程序包。常用的參數(shù)如下:
name:程序包名稱(chēng),可以帶上版本號(hào)。若不指明版本,則默認(rèn)為最新版本;
state=present|atest|absent:指明對(duì)程序包執(zhí)行的操作:present表明安裝程序包,latest表示安裝最新版本的程序包,absent表示卸載程序包;
disablerepo:在用yum安裝時(shí),臨時(shí)禁用某個(gè)倉(cāng)庫(kù)的ID;
enablerepo:在用yum安裝時(shí),臨時(shí)啟用某個(gè)倉(cāng)庫(kù)的ID;
conf_file:yum運(yùn)行時(shí)的配置文件,而不是使用默認(rèn)的配置文件;
disable_gpg_check=yes|no:是否啟用完整性校驗(yàn)功能;

示例如下:

ansible web -m yum -a "name=httpd"  #安裝httpd
ansible web -m shell -a "rpm -qa | grep httpd"  #查看安裝httpd

Ansible常用的模塊有哪些?
Ansible常用的模塊有哪些?

管理端只是發(fā)送yum指令到被管理端,被管理端要存在可用的yum倉(cāng)庫(kù)才可以成功安裝。

service模塊

service模塊為用來(lái)管理遠(yuǎn)程主機(jī)上的服務(wù)的模塊。常見(jiàn)的參數(shù)如下:
name:被管理的服務(wù)名稱(chēng);
state=started|stopped|restarted:動(dòng)作包含啟動(dòng),關(guān)閉或重啟;
enable=yes|no:表示是否設(shè)置該服務(wù)開(kāi)機(jī)自啟動(dòng);
runlevel:如果設(shè)定了enabled開(kāi)機(jī)自啟動(dòng),則要定義在哪些運(yùn)行目標(biāo)下自動(dòng)啟動(dòng);

示例如下:

ansible web -m service -a "name=httpd
enabled=yes state=restarted"  #設(shè)置httpd服務(wù)重新啟動(dòng)和開(kāi)機(jī)自動(dòng)啟動(dòng)

Ansible常用的模塊有哪些?
Ansible常用的模塊有哪些?

user模塊

user模塊主要用于管理遠(yuǎn)程主機(jī)上的用戶賬號(hào)。常見(jiàn)的參數(shù)如下:
name:必選參數(shù),賬號(hào)名稱(chēng);
state=present|absent:創(chuàng)建賬號(hào)或者刪除賬號(hào),present表示創(chuàng)建,absent表示刪除;
system=yes|no:是否為系統(tǒng)賬戶;
uid:用戶UID;
group:用戶的基本組;
groups:用戶的附加組;
shell:默認(rèn)使用的shell;
home:用戶的家目錄;
mve_home=yes|no:如果設(shè)置的家目錄已經(jīng)存在,是否將已存在的家目錄進(jìn)行移動(dòng);
pssword:用戶的密碼,建議使用加密后的字符串;
comment:用戶的注釋信息;
remore=yes|no:當(dāng)state=absent時(shí),是否要?jiǎng)h除用戶的家目錄;

示例如下:

ansible web -m user -a "name=user01 system=yes uid=52 group=root groups=root shell=/etc/nologin home=/home/user01 password=123123"
在web組的所有主機(jī)上新建一個(gè)系統(tǒng)用戶,UID為52,
屬組是root,名字是user01,密碼是123123
ansible abc -m command -a 'tail -3 /etc/passwd'

Ansible常用的模塊有哪些?

cron模塊

用于定義任務(wù)計(jì)劃
兩種狀態(tài)(state):present表示添加(可以省略),absent表示移除。

示例如下:

ansible abc -m cron -a 'minute="*/1" job="/bin/echo hello world" name="test cron job"' #每一分鐘寫(xiě)入“hello world”
ansible abc -a 'crontab -l'  #查看計(jì)劃性任務(wù)
ansible abc -m cron -a 'name="test cron job" state=absent'  #移除計(jì)劃任務(wù)
ansible abc -a 'crontab -l'

Ansible常用的模塊有哪些?

group模塊

對(duì)用戶組進(jìn)行管理
group模塊請(qǐng)求的是groupadd, groupdel, groupmod 三個(gè)指令。

示例如下:

ansible abc -m group -a 'name=nginx gid=306 system=yes'
ansible abc -a 'tail -2 /etc/group'

Ansible常用的模塊有哪些?

file模塊

用于設(shè)置文件屬性 (path: 是文件路徑 src:定義源文件路徑 )

示例如下:

ansible abc -m file -a "path=/root/test.txt state=touch" #新建文件
ansible abc -a "ls -l /root/test.txt"  #查看
ansible abc -m file -a "path=/root/test.txt state=absent"  #刪除文件

Ansible常用的模塊有哪些?

ping模塊

用于檢測(cè)指定主機(jī)的連通性

示例如下:

ansible all -m ping

Ansible常用的模塊有哪些?

script模塊

可以將本地腳本復(fù)制到被管理主機(jī)上進(jìn)行執(zhí)行。需要注意使用相對(duì)路徑來(lái)指定腳本

示例如下:

echo -e 'echo "this is ansible script !" >/root/abc.sh' > /root/test.sh
chmod +x test.sh
ansible abc -m script -a 'test.sh'
ansible abc -a 'cat /root/abc.sh'

Ansible常用的模塊有哪些?

備注:本地腳本不要加上聲明(#!/bin/bash),否則報(bào)錯(cuò)

Ansible常用的模塊有哪些?

setup模塊

用于收集、查看被管理主機(jī)的facts(facts是Ansible采集被管理主機(jī)設(shè)備信息的一個(gè)功能)

示例如下:

ansible abc -m setup

Ansible常用的模塊有哪些?

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

本文題目:Ansible常用的模塊有哪些?-創(chuàng)新互聯(lián)
鏈接地址:http://muchs.cn/article32/dseppc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、移動(dòng)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)公司App設(shè)計(jì)、建站公司虛擬主機(jī)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營(yíng)