一、Playbooks 介紹

1.Playbooks是Ansible的配置,部署和編排語(yǔ)言。它們可以描述您希望遠(yuǎn)程系統(tǒng)執(zhí)行的策略,或一般IT流程中的一組步驟。

如果說(shuō)ansible 模塊 是你車間里的工具,那么playbooks 是你的說(shuō)明書/使用手冊(cè),并且資源清單上的主機(jī)是你的原材料。

在基本層面上,劇本可以用于管理遠(yuǎn)程主機(jī)的配置與部署,在更高的一層來(lái)說(shuō),它們可以對(duì)涉及滾動(dòng)更新的多層發(fā)布任務(wù)進(jìn)行排序,并且可以將操作委派給其他主機(jī),同時(shí)與監(jiān)視服務(wù)器和負(fù)載平衡器進(jìn)行交互。

官網(wǎng)介紹的說(shuō)playbooks 篇章有很多的內(nèi)容,他們不建議我們一下子學(xué)完,重在積累,以及在使用的過程中來(lái)學(xué)習(xí),建議不錯(cuò)。嘿嘿

在ansible 上使用Playbooks是一種完全不同于adhoc的任務(wù)執(zhí)行模式,并且特別強(qiáng)大。簡(jiǎn)單地說(shuō),playbooks是一個(gè)非常簡(jiǎn)單的配置管理和多機(jī)器部署系統(tǒng)的基礎(chǔ),以及非常適合部署復(fù)雜應(yīng)用程序的系統(tǒng)。

Playbooks可以對(duì)任務(wù)進(jìn)行編排,就像我們要安裝一個(gè)程序,寫個(gè)安裝shell腳本一樣,在哪一步復(fù)制配置文件,最后一步啟動(dòng)服務(wù)。雖然/usr/bin/ansible 可以運(yùn)行一些臨時(shí)任務(wù),但是針對(duì)復(fù)雜的配置,并且可以將配置標(biāo)準(zhǔn)化,這個(gè)時(shí)候就需要Playbooks了。

 

2.Playbooks Language example

Playbooks 語(yǔ)言是以YAML 格式表示,并且有最小的語(yǔ)法,有意的說(shuō)明它不是一個(gè)編程或者腳本語(yǔ)言,它是一種寫配置文件的語(yǔ)言。簡(jiǎn)潔可讀性高。

 

YAML 語(yǔ)法:

這里我們先大致的看下YAML的語(yǔ)法吧,看看有什么需要遵守和記住的編寫規(guī)則。

a.對(duì)于Ansible來(lái)說(shuō),幾乎每個(gè)YAML文件都以列表開頭。列表中的每個(gè)項(xiàng)目是 鍵/值對(duì)的列表,通常稱為“列表”或“字典”。因此,我們需要知道如何在YAML中編寫列表和字典。

b.還有一個(gè)地方,每個(gè)文件都是以  --- 開始,以 ... 結(jié)尾。這也是yaml 語(yǔ)言格式的一部分,指出文檔的開始和結(jié)束。

c.列表中所有的詞都是 - (減號(hào)和空格)開頭的相同縮進(jìn)的行。如下:

iOS培訓(xùn),Swift培訓(xùn),蘋果開發(fā)培訓(xùn),移動(dòng)開發(fā)培訓(xùn)

---# A list of tasty fruits
fruits:    - Apple    - Orange    - Strawberry    - Mango
...

iOS培訓(xùn),Swift培訓(xùn),蘋果開發(fā)培訓(xùn),移動(dòng)開發(fā)培訓(xùn)

d.字典以簡(jiǎn)單的形式表示 key: value (冒號(hào)后面必須跟一個(gè)空格),不能使用tab 鍵如下:

        		

網(wǎng)友評(píng)論