Võimalik

Kuidas kataloogi luua rakenduses Ansible

Kuidas kataloogi luua rakenduses Ansible

Ansible on üks parimaid saadaolevaid automatiseerimistööriistu, mis pakub lihtsaid, intuitiivseid ja võimsaid tööriistu automatiseerimisülesannete täitmiseks tänapäeva maailmas.

Enamiku automatiseerimisülesannete jaoks peate looma kataloogid, eriti mitmesuguste tööriistade ja rakenduste installimisel, varundamisel ja taastamisel. Kuigi saate neid toiminguid teha automatiseeritud skripti abil, pakub Ansible paremat funktsionaalsust, võimaldades teil luua katalooge määratud hostides.

See õpetus näitab, kuidas kasutada failimoodulit Ansible määratud hostide kataloogilubade loomiseks, eemaldamiseks ja muutmiseks.

Kuidas kataloogi luua rakenduses Ansible

Ansible'is kataloogi loomiseks saab kasutada mõnda järgmistest meetoditest:

Kataloogi loomiseks rakenduses Ansible käsumooduli abil sisestage alltoodud käsk:

$ ansible all -m käsk -a "mkdir ~ / backups"

Pärast ülaltoodud käsu sisestamist peaksite hankima allpool näidatud väljundi:

Sisestage võtme '/ home / user / parool.ssh / id_rsa ':
[HOIATUS]: Kaaluge failimooduli kasutamist olekuga kataloog, selle asemel et käivitada 'mkdir'.  Kui peate käsku kasutama, kuna fail on ebapiisav, saate sellele käsule lisada „warn: false” või määrata „command_warnings = False”.cfg, et sellest sõnumist lahti saada.
35.222.210.12 | MUUTUD | rc = 0 >>

Veenduge, et teie kataloogis / etc / ansible / hosts sisalduv Ansible hosts nimekiri sisaldab teie kaughostide kohta õiget teavet.

Kuigi käsumoodulit on ühes Ansible hostis lihtne kasutada, muutub see mitme kataloogi ja ülesandega hosti puhul väga ebaefektiivseks.

Selle puuduse kõrvaldamiseks kasutame failimoodulit Ansible ja koostame mänguraamatu, mis sisaldab hoste, mida soovime kasutada, ja katalooge, mida soovime luua.

MÄRGE: Failimoodulit saab Ansible'is kasutada ka ühe käsuna, kuid see toimib sarnaselt käsumooduliga.

Ansible playbooki kasutamiseks looge YAML-fail ja sisestage kataloogi loomiseks järgmised kirjed:

- hostid: kõik ülesanded:
- nimi: võimalik failimooduli kataloog
fail:
tee: ~ / varukoopiad
riik: kataloog

Salvestage fail ja kasutage kataloogide loomiseks ansible-playbooki:

ansible-playbook mkdir.yml

See peaks andma sellise väljundi nagu allpool, mis näitab, et toimingud viidi edukalt läbi määratud esitusraamatu faili abil.

MÄNGU ​​[kõik] ************************************************ *************************************************** *************
ÜLESANNE [Faktide kogumine] ********************************************** *************************************************** **
Sisestage võtme '/ home / user / parool.ssh / id_rsa ':
ok: [35.222.210.12]
ÜLESANNE [Ansible file mooduli loomise kataloog] ******************************************* ***********************************
ok: [35.222.210.12]
MÄNGI KORRALDUST ************************************************ *************************************************** ***********
35.222.210.12: ok = 2 muudetud = 0 kättesaamatu = 0 ebaõnnestunud = 0 vahele jäetud = 0 päästetud = 0 ignoreeritud = 0

Kuidas luua üksustega mitu kataloogi

Võimalikud esitusraamatud võimaldavad teil ka YAML-failis olevat lauset with_items kasutades luua mitu kataloogi.

Näiteks kolme teenuse (MySQL, hoidla ja config) varukoopiate loomiseks võite üles ehitada allolevas YAML-failis näidatud ülesande:

- hostid: kõik ülesanded:
- nimi: Võimalik luua mitu kataloogi with_items
fail:
tee: ~ / backups / item
riik: kataloog
with_items:
- 'mysql'
- 'hoidla'
- 'config'

Salvestage ülaltoodud fail ja käivitage see ansible-playbookiga.

$ ansible-playbook mkdir_multi.yml MÄNGI [kõik] *********************************************** *************************************************** *************************************************** *************************************************** ***
ÜLESANNE [Faktide kogumine] ********************************************** *************************************************** ************************************ ******** ******************************************
Sisestage võtme '/ home / user / parool.ssh / id_rsa ':
ok: [35.222.210.12]
ÜLESANNE [Mitme kataloogi loomine koos_üksustega] ******************************************* *************************************************** *************************************************** *************
muutunud: [35.222.210.12] => (kirje = mysql)
muutunud: [35.222.210.12] => (kirje = hoidla)
muutunud: [35.222.210.12] => (element = konfiguratsioon)
MÄNGIGE KOKKUVÕTE ********************************* *************************************************** *************************************************** ***************************************************
35.222.210.12: ok = 2 muudetud = 1 kättesaamatu = 0 ebaõnnestunud = 0 vahele jäetud = 0 päästetud = 0 ignoreeritud = 0

Ülaltoodud mängukiri peaks looma mitu kataloogi, näiteks ~ / backups / mysql, ~ / backups / repository ja ~ / backups / config.

$ ls -la

Kataloogide loendi väljund on järgmine:

kokku 0
drwxrwxr-x. 5 debian debian 51 märts 6 17:26 .
drwx------. 6 debian debian 117 märts 6 17: 26…
drwxrwxr-x. 2 debian debian 6. märts 6. 17:26 konfig
drwxrwxr-x. 2 debian debian 6. märts 6. 17:26 mysql
drwxrwxr-x. 2 debiani debian 6. märts 6. 17:26 hoidla

Kuidas kataloogile õigusi määrata

Funktsioon Ansible võimaldab režiimi direktiivi abil määrata kataloogi õigused. Mõelge järgmisele raamatule, mis loob kataloogi ja määrab õigused:

- võõrustajad: kõik
ülesanded:
- nimi: võimalik kataloogi loomine ja õiguste määramine
fail:
tee: / varukoopiad
riik: kataloog
režiim: "u = rw, g = wx, o = rwx"
muutunud: jah

Ülalolevas kirjes lõime kataloogi kataloogis /. Peame ka juuriks saama, seega ka kanne saama: jah.

$ ansible-playbooki luba.yml MÄNGI [kõik] *********************************************** *************************************************** *************************************************** *************************************************** ***
ÜLESANNE [Faktide kogumine] ********************************************** *************************************************** ************************************ ******** ******************************************
Sisestage võtme '/ home / user / parool.ssh / id_rsa ':
ok: [35.222.210.12]
ÜLESANNE [Ansible luua kataloog ja määrata õigused] ********************************** ************************************************* ************************************************* ****************
muutunud: [35.222.210.12]
MÄNGI KORRALDUST ********************************************* *************************************************** *************************************************** ***************************************************
35.222.210.12: ok = 2 muudetud = 1 kättesaamatu = 0 ebaõnnestunud = 0 vahele jäetud = 0 päästetud = 0 ignoreeritud = 0

Kui vaatate meie loodud kataloogi õigusi, näete järgmist:

$ ls -lrt / | grep varukoopiad

Väljund on järgmine:

drw - wxrwx.   2 juurjuure 6. märts 6 17:36 varukoopiad

Kuidas kataloogi õigusi rekursiivselt muuta

Kataloogi ja selle failide õiguste rekursiivseks muutmiseks määrake lihtsalt rekursiivne kirje, nagu allpool näidatud:

- võõrustajad: kõik
ülesanded:
- nimi: võimalik kataloogi loomine ja õiguste määramine
fail:
tee: / varukoopiad
riik: kataloog
režiim: "u = rw, g = wx, o = rwx"
rekursiivne: jah
muutunud: jah

Kuidas määrata õigusi mitmes kataloogis

Mitme kataloogi lubade seadistamine rakenduses Ansible on sama lihtne kui paar rida sisestusi. Mõelge järgmisele mänguraamatule.

- võõrustajad: kõik
ülesanded:
- nimi: lubamatu luua mutlipli kataloog koos lubadega
fail:
tee: "item.tee "
mode: "item.režiim "
riik: kataloog
with_items:
- tee: '~ / backups / mysql', režiim: '0777'
- tee: '~ / backups / repository', režiim: '0755'
- tee: '~ / backups / config', režiim: '0707'

Kuidas kustutada kataloogi rakenduses Ansible

Kataloogi ja kogu selle sisu eemaldamiseks Ansible playbooki abil määrake olek puuduvaks, nagu allpool näidatud:

- võõrustajad: kõik
ülesanded:
- nimi: kustutamiskataloog
fail:
tee: / varukoopiad
riik: puudub
muutunud: jah

See käsk eemaldab kataloogi ning kõik laste failid ja kataloogid.

MÄRGE: Veenduge, et teil oleks töötava kataloogi õigused.

Kuidas luua ajatempliga kataloog

Mõnel juhul peate võib-olla looma kataloogi, millele on lisatud ajatempel, mis võib olla väga kasulik, eriti varukoopiate loomisel. Ajatempliga kataloogi loomiseks võime kasutada muutujat ansible_date_time.

Mõelge järgmisele raamatule:

- võõrustajad: kõik
ülesanded:
- nimi: võimalik kataloogi ajatempli lisamine
fail:
tee: "/ backups / mysql ansible_date_time.kuupäev "
riik: kataloog
režiim: "0777"
muutunud: jah

Kui olete mängukirja käivitanud, on teil ajatempliga kataloog.

$ ls -l

Kataloogide loend peaks olema järgmine:

kokku 0 drwxrwxrwx. 2 juurjuurt 6. märts 6. 18:03 mysql2021-03.06

MÄRGE: Vigade vältimiseks kontrollige alati YAML-faili süntaksit, mida kavatsete jaotises Ansible kasutada.

Järeldus

See õpetus näitas teile, et Ansible moodulitega töötamine on väga lihtne ja intuitiivne, muutes keeruliste ülesannete automatiseerimise lihtsamaks. Mooduli Ansible abil saate luua ühe või mitu kataloogi ja lisada nende jaoks õigused. Sama moodulit saate kasutada ka kataloogi eemaldamiseks. Lisateavet mooduli Ansible kasutamise kohta vaadake ressursside lehel olevat ametlikku dokumentatsiooni.

Kasulikud tööriistad Linuxi mängijatele
Kui teile meeldib Linuxis mänge mängida, on tõenäoline, et olete mängukogemuse parandamiseks kasutanud selliseid rakendusi ja utiliite nagu Wine, Lutr...
HD Remastered Games Linuxile, millel pole kunagi varem Linuxi väljalaset olnud
Paljud mängude arendajad ja kirjastajad pakuvad frantsiisi eluea pikendamiseks välja vanade mängude HD-remasteri. Palun fännid, kes soovivad ühilduvus...
Kuidas kasutada AutoKeyt Linuxi mängude automatiseerimiseks
AutoKey on Linuxi ja X11 töölaua automatiseerimise utiliit, mis on programmeeritud Python 3, GTK ja Qt. Selle skriptimise ja MACRO funktsionaalsuse ab...