У Ансиблеу можете дефинисати три врсте прилагођених чињеница.
1) Глобалне чињенице: Те чињенице су доступне свим домаћинима у вашој евиденцији инвентара.
2) Групне чињенице: Те чињенице су доступне само одређеном скупу домаћина или групи домаћина.
3) Чињенице о домаћину: Ове чињенице су доступне само одређеном домаћину.
У овом чланку ћу вам показати како се ради са прилагођеним чињеницама о одговорима. Па, кренимо.
Предуслови:
Ако желите да испробате примере овог чланка,
1) На рачунару морате имати инсталиран Ансибле.
2) Морате имати најмање 6 Линук хостова конфигурисаних за Ансибле аутоматизацију.
На ЛинукХинту постоји много чланака посвећених Инсталирању Ансибле-а и конфигурисању хостова за Ансибле аутоматизацију. Можете их погледати ако је потребно.
Постављање директоријума пројеката:
Пре него што започнемо, креирајмо директоријум пројекта како бисмо могли да организујемо датотеке пројекта.
Да бисте креирали директоријум пројекта цустом-чињенице / у вашем КУЋА директоријум, покрените следећу наредбу:
$ мкдир -пв цустом-чињенице / плаибоокс, хост_варс, гроуп_варс
Сада идите на цустом-чињенице / директоријум како следи:
$ цд прилагођене чињенице /
Направите конфигурациону датотеку Ансибле ансибле.цфг у директоријуму вашег пројекта на следећи начин:
$ нано ансибле.цфг
Унесите следеће ансибле.цфг датотека.
[подразумевано]инвентар = домаћини
хост_кеи_цхецкинг = Нетачно
Када завршите, притисните
Сада креирајте датотеку инвентара Ансибле домаћини у директоријуму вашег пројекта на следећи начин:
$ нано домаћини
Унесите следеће редове у свој домаћина досије инвентара.
вм1.нодеките.цомвм2.нодеките.цом
[веб]
вм3.нодеките.цом
вм4.нодеките.цом
[база података]
вм [5: 6].нодеките.цом
Када завршите, притисните
Да бисте пописали све доступне хостове у датотеци инвентара, покрените следећу команду:
$ ансибле алл --лист-хостсКао што видите, у својој евиденцији инвентара имам шест домаћина.
Да бисте навели хостове доступне у веб групи датотеке инвентара, покрените следећу команду:
$ ансибле веб --лист-хостсКао што видите, имам два домаћина (вм3.нодеките.цом и вм4.нодеките.цом) у веб група мог инвентарског досијеа.
Да наведете хостове доступне у база података групи датотеке инвентара, покрените следећу команду:
$ ансибле база података --лист-хостсКао што видите, имам два домаћина (вм5.нодеките.цом и ВМ 6.нодеките.цом) у база података група мог инвентарског досијеа.
Рад са одговорним глобалним чињеницама:
У овом одељку ћу вам показати како да дефинишете глобалне чињенице / променљиве Ансибле у својој датотеци инвентара и приступите им из својих књига одговора Ансибле. Такође ћу вам показати како да дефинишете глобалне чињенице / променљиве у посебној датотеци.
Прво отворите домаћина датотека инвентара са следећом наредбом:
$ нано домаћини
Сада додајте означене редове у свој домаћина досије инвентара. Када завршите, притисните
'
Глобалне чињенице додајете у сви: варс одељак. Ево, додао сам веб_урл глобална чињеница.
Сада направите нову књигу песама принт_глобал_фацт.иамл у плаибоокс / директоријум како следи:
$ нано плаибоокс / принт_глобал_фацт.иамл
Затим укуцајте следеће редове у принт_глобал_фацт.иамл датотека.
- домаћини: свикорисник: ансибле
задаци:
- име: Одштампајте вредност глобалне чињенице 'веб_урл'
отклањање грешака:
мсг: 'Веб УРЛ: веб_урл'
Сврха ове књиге је да штампа веб_урл глобална чињеница.
Када завршите, притисните
Сада покрените принт_глобал_фацт.иамл књига прилога на следећи начин:
$ ансибле-плаибоок плаибоокс / принт_глобал_фацт.иамл
Као што видите, сви хостови у мојој датотеци инвентара могу приступити глобалној чињеници веб_урл.
Такође можете додати глобалне чињенице у засебну датотеку. На овај начин можете одржавати евиденцију инвентара чистом. Да видимо како да то урадимо.
Прво, уклонимо глобалне чињенице из домаћина досије инвентара.
$ нано домаћини
Сада уклоните означене редове из датотеке инвентара и притисните
Затим креирајте нову датотеку све у гроуп_варс / директоријум како следи:
$ нано гроуп_варс / све
Да се дода глобална чињеница веб_урл, укуцајте следећи ред у гроуп_варс / алл датотека.
веб_урл: хттпс: // ввв.линукхинт.цомКада завршите, притисните
Да бисте проверили да ли можете да приступите глобалној чињеници веб_урл, покренути принт_глобал_фацт.иамл поново приручник на следећи начин:
$ ансибле-плаибоок плаибоокс / принт_глобал_фацт.иамл
Као што видите, сви хостови у мојој датотеци инвентара могу приступити глобалној чињеници веб_урл.
Рад са чињеницама о одговорним групама:
У овом одељку ћу вам показати како да дефинишете чињенице / променљиве групе Ансибле у свом инвентару и приступите им из својих књига одговора Ансибле. Такође ћу вам показати како да дефинишете групне чињенице / променљиве у посебној датотеци.
Прво отворите домаћина датотека инвентара са следећом наредбом:
$ нано домаћини
Ако имате групу домаћина група1, онда додајете чињенице / променљиве групе за ту групу домаћина у група1: варс одељак вашег инвентара.
[група1]…
[група1: варс]
променљива1 = вредност1
променљива2 = вредност2
На пример, да додате групу чињеница / променљивих име_домена и датабасе_бацкендс за веб групу домаћина, можете укуцати означене редове у датотеци инвентара.
Када завршите, притисните
Да бисте одштампали и тестирали да ли можемо да приступимо чињеницама о групи, направите нову књигу приручника принт_гроуп_фацтс.иамл у плаибоокс / директоријум како следи:
$ нано плаибоокс / принт_гроуп_фацтс.иамл
Унесите следеће редове у свој принт_гроуп_фацтс.иамл датотека.
- домаћини: вебкорисник: ансибле
задаци:
- име: Штампати чињенице о групи
отклањање грешака:
мсг: 'Име домене: домаин_наме Бацкенд базе података: датабасе_бацкенд'
Када завршите, притисните
Сада покрените принт_гроуп_фацтс.иамл књига прилога на следећи начин:
$ ансибле-плаибоок плаибоокс / принт_гроуп_фацтс.иамл
Као што видите, домаћини у веб група може приступити име_домена и датабасе_бацкенд груписати чињенице / променљиве.
А сада, почистимо датотеку инвентара и видећемо како додати групне чињенице / променљиве у засебну датотеку.
Прво отворите домаћина инвентарска датотека на следећи начин:
$ нано чињенице
Уклоните означене линије са домаћина досије инвентара. Када завршите, притисните
Како додајемо групне променљиве за веб хост група, креирајте нову датотеку веб (исто као и име групе) у гроуп_варс / директоријум како следи:
$ нано гроуп_варс / веб
Да додате групне чињенице име_домена и датабасе_бацкенд за веб групи домаћина, додајте следеће редове у гроуп_варс / веб датотека.
име_домена: веб.линукхинт.цомдатабасе_бацкенд: пгскл
Када завршите, притисните
Да бисте проверили да ли су домаћини у веб група може приступити чињеницама о групи, покренути принт_гроуп_фацтс.иамл књига прилога на следећи начин:
$ ансибле-плаибоок плаибоокс / принт_гроуп_фацтс.иамл
Као што видите, домаћини у веб група може приступити име_домена и датабасе_бацкенд групишу чињенице / променљиве.
Рад са чињеницама о одговорном хосту:
У овом одељку ћу вам показати како да дефинишете чињенице / променљиве домаћина Ансибле у својој датотеци инвентара и приступите им из својих књига одговора Ансибле. Такође ћу вам показати како да дефинишете чињенице / променљиве хоста у посебној датотеци.
Прво отворите домаћина датотека инвентара са следећом наредбом:
$ нано домаћини
Чињенице / променљиве хоста можете додати након ДНС имена или ИП адресе хоста у датотеку инвентара на следећи начин:
ввв.домаин1.цом променљива1 = вредност1 променљива2 = вредност2192.168.22.2 променљива1 = вредност3 променљива2 = вредност4
На пример, можете додати чињенице / променљиве хоста име_домена и датабасе_бацкенд за домаћине вм3.нодеките.цом и вм4.нодеките.цом, како је означено на снимку екрана испод.
Приметите да вредност име_домена и датабасе_бацкенд чињенице / променљиве су различите за сваког домаћина.
Када завршите са додавањем чињеница / променљивих хоста, притисните
Како сам додао исте чињенице / променљиве као у примеру групне чињенице / променљиве, можемо користити принт_гроуп_фацтс.иамл приручник за тестирање такође доступности ових чињеница / променљивих.
Покренути принт_гроуп_фацтс.иамл књига прилога на следећи начин:
$ ансибле-плаибоок плаибоокс / принт_гроуп_фацтс.иамл
Као што видите, чињенице / променљиве хоста су доступне њиховом наведеном хосту. Вредности се разликују и за сваког домаћина.
Како се сваки од хостова налази у засебном реду у мојој датотеци инвентара, лако бих могао додати чињенице / променљиве хоста у своју датотеку инвентара. Али, ако користите опсеге за дефинисање хостова у датотеци инвентара како је означено на снимку екрана испод, не можете додати чињенице / променљиве хоста.
Чињенице / променљиве хоста можете додати у засебну датотеку, баш као што сте то учинили за глобалне и групне чињенице / променљиве.
Да бисте додали чињенице / променљиве хоста за вм5.нодеките.цом хост, креирајте нову датотеку вм5.нодеките.цом (исто као и ДНС име хоста) у хост_варс / директоријум како следи:
$ нано хост_варс / вм5.нодеките.цом
Можете додати чињенице / променљиве хоста дб_порт и дб_наме за домаћина вм5.нодеките.цом са следећим редовима.
дб_порт: 3306дб_наме: демо1
Када завршите, притисните
На исти начин, за додавање чињеница / променљивих хоста за хоста ВМ 6.нодеките.цом, креирајте нову датотеку ВМ 6.нодеките.цом у хост_варс / директоријум како следи:
$ нано хост_варс / вм6.нодеките.цом
Можете додати чињенице / променљиве хоста дб_порт и дб_наме за домаћина ВМ 6.нодеките.цом са следећим редовима.
дб_порт: 8877дб_наме: апп1
Када завршите, притисните
Да бисте одштампали и тестирали да ли можемо да приступимо чињеницама / променљивим домаћина, направите нову књигу приручника принт_хост_фацтс.иамл у плаибоокс / директоријум како следи:
$ нано плаибоокс / принт_хост_фацтс.иамл
Сада укуцајте следеће редове у принт_хост_фацтс.иамл датотека.
- домаћини: база податакакорисник: ансибле
задаци:
- име: Штампање чињеница о хосту
отклањање грешака:
мсг: 'Име базе података: дб_наме Порт базе података: дб_порт'
Када завршите, притисните
Да бисте проверили да ли је домаћин вм5.нодеките.цом и ВМ 6.нодеките.цом може приступити чињеницама / променљивим хоста, покренути принт_хост_фацтс.иамл књига прилога на следећи начин:
$ ансибле-плаибоок плаибоокс / принт_хост_фацтс.иамл
Као што видите, домаћини вм5.нодеките.цом и ВМ 6.нодеките.цом могу приступити дб_наме и дб_порт домаћин чињенице / променљиве.
Састављање свега: предност одговорних чињеница
У овом одељку ћу говорити о превасходној чињеници / променљивој предности. Па, кренимо.
Пре него што започнемо, почистимо списак инвентара.
Отвори домаћина датотека инвентара са следећом наредбом:
$ нано домаћини
Уклоните означени одељак из датотеке инвентара.
Тако би у овом тренутку требала изгледати ваша датотека инвентара.
Сада додајте означену линију у вашу датотеку инвентара. Ови редови додају глобалне чињенице / променљиве фацт_сцопе и Лука.
Затим додајте означене редове у датотеку инвентара. Ови редови додају фацт_сцопе и Лука чињенице / променљиве за домаћине у база података група.
На крају додајте фацт_сцопе и Лука домаћин чињенице / променљиве за вм3.нодеките.цом и вм4.нодеките.цом домаћини, како је означено на снимку екрана испод.
Када завршите, притисните
Да бисте исписали вредност глобалних, групних и хостованих чињеница / променљивих, направите нову књигу приручника чињеница_преценција.иамл у плаибоокс / директоријум како следи:
$ нано приручници / чињеница_прецеденце.иамл
Укуцајте следеће редове у чињеница_прецеденце.иамл датотека.
- домаћини: свикорисник: ансибле
задаци:
- име: Одштампајте све чињенице
отклањање грешака:
мсг: 'Обим чињеница: фацт_сцопе Порт: порт'
Када завршите, притисните
Да бисте исписали глобалне, групне и хостоване чињенице / променљиве, покрените чињеница_прецеденце.иамл књига прилога на следећи начин:
$ ансибле-плаибоок плаибоокс / фацт_прецеденце.иамл
Као што видите, штампају се глобалне, групне и хост чињенице / променљиве.
Приметите да су групне чињенице / променљиве замениле глобалне чињенице / променљиве (1). Такође, приметите да су чињенице / променљиве домаћина замениле и групне и глобалне чињенице / променљиве (2).
Предност чињенице / променљиве Ансибле је следећа:
Чињеница о домаћину> Чињеница о групи> Глобална чињеницаЗакључак:
Након читања овог чланка, требали бисте бити у стању да удобно радите са чињеницама / променљивим Ансибле глобалних, групних и хостованих. Запамтите предност прилагођене чињенице Ансибле. Помоћи ће вам да лакше отклоните грешке у својим Ансибле играчким књигама.