This commit is contained in:
Madars Batraks 2025-09-02 18:20:47 +03:00
parent 926dff5e71
commit 19609edf42

View File

@ -16,7 +16,7 @@ pipx install --include-deps ansible
## Ansible struktūra (Vismaz šajā situācijā)
### `/inventory.yml`
#### `/inventory.yml`
Inventory failā pieraksta (Un sagrupē!) visus aktuālos serverus, to IP adreses,
kā arī, dažreiz aktuālos variables.
@ -25,16 +25,16 @@ Bet ir iespējams ka inventory fails var būt dots INI formātā.
Skat. https://docs.ansible.com/ansible/latest/inventory_guide/intro_inventory.html
### `/roles/`
#### `/roles/`
Šajā mapē nosaka atsevišķas serveru "lomas".
Parasti visu sadala atsevišķās lomās
### `/main.yml`
#### `/main.yml`
Faktiski šajā failā nosaka kādi roles attiecās uz kādiem hostiem.
Bet, ja nemaldos, var arī vienkārši pa taisno rakstīt taskus, kas, laikam,
ir tas ko šī uzdevuma veidotāji vēlējās.
### Tasks/Modules (`/roles/common/tasks/*`)
#### Tasks/Modules (`/roles/common/tasks/*`)
Ansible playbook faili ir sadalīti *task*os.
Katrā *task*ā var izsaukt vienu, vai vairākus moduļus (izmantojot `block`),
@ -46,13 +46,13 @@ Piemēram `apt` modulis, lai ielādētu package, vai
Katram modulim ir kaut kādi savi iestatījumi,
tāpēc ir svarīgi skatīties dokumentāciju moduļiem.
### Handlers and Notify
#### Handlers and Notify
Situācijā, kad izmaina kādu failu, iespējams vajag restartēt kādu servisu.
Šim nolūkam izmanto *handlers* un *notify*.
#### Handlers
##### Handlers
Handleri, šajā situācijā, atrodās iekš `/roles/common/handlers/main.yml`
Šis fails ir strukturēts tā pat kā parasti playbook *task* faili,
@ -81,8 +81,26 @@ tad jāizmanto ansible `flush_handlers` task.
meta: flush_handlers
```
#### Vault
#### Tags
## Kā laizt ansible?
```bash
ansible-playbook
Pamats kas vajadzīgs:
```sh
ansible-playbook -i <inventory file> <playbook file>
# Example:
# ansible-playbook -i inventory.yml main.yml
```
Pēc tam var karināt klāt dažādus "karogus":
- `-u` - ar kādu lietotāju slēgsies klāt (ssh)
- `-k` - prasīs kādu SSH login paroli izmantot (ja vajag)
- `-K` - prasīs kādu SUDO paroli izmantot (ja vajadzīga)
- `--check`, `-C` - tā saucamais "dry-run", kur parāda tikai kas mainīsies,
un vai būs kādas kļūdas, bet reāli neko nemainīs (nestrādās ar dažiem moduļiem)
- `--diff`, `-D` - visos taskos parāda kas ir mainījies (piemēram, failiem `diff` formātā)