áááá˝ á°áá˝ Ansible áŽáľ áĽá áááááá˝á á á°áááá áĽá áĽá áŤá´ áĽá áĽá˝áááᢠáľá á°áśášá (á¨ááá˝áá áá á¨áŤá´á) áĽáá˛áá á¨á°áá°á áá-áá ááá˝á á áá°áá°á áá°áľ ááľáĽ á¨á áá˛áĽá á°á áááá˝ á¨ááŤá°áááľá áá áľá á°áľ á°ááááĽáŠ - áááá áłááአáá° ááľáĽáľáĽá ááľáĽ áááŁáá˘
áá áá áááá°áá á˘ááľááááľ áááľá°áŤá¨áᣠááľáááá áááŤáááľ áá áá˛áŞá ááá˘áŤ áááťá áá°ááŠá˘ á áľá áá áá˝áááᣠáá á¨áá áááá á áá°ááᣠáá áĽá áá°áá˝ á¨ááá áľ áĽá ááá áľááá˝ á¨ááá áľ á¨á á ááŁáĽ ááá˘
á¨á ááŁá˘á á¨áá á áá á°á¨á á áşáá˝ á¨ááá አá¨áŤáá ááľááŽá˝ á°á˝ááá, á¨áá ááá ááľááá á ááá¨áľ áá áá, ááá áá "á áá ááአááá ááá á áá áá."
áľáá˝
á¨Asible á°á áá ááá áľá á°áľ áá á°áĽá áĽáá°áá ፠á áááá ááᢠáľáášá áŤááá á á°ááą ááľáĽ á¨á°áťááá áá¨áłáľ á áá˝áá. ááŤá ááłáᥠá áá áá áá á ááľ á°á á á áá˛áĽá áĽá áĽáá°áá á¨ááá á¨áááľáá á°á "ááŤááť áá˝áá ááá áŤáŤáľáłá?" á¨áááá áĽáŤá ááááľ á ááťááᢠáĽáá "áááą á¨áá á áá á¨á¨ááł áá áá á¨ááłá áŤáŤá°á° áá" áĽáŹ ááłáĽ áłááἠááłáŠ "á áá ááá áľá" á¨áá á áľá°áŤá¨áľ á°á¨á°áᢠá°áá˝ ááááἠAnsible áĽáá áá˝áá áĽá á¨ááłá á áá áááᢠáĽááą á áľááá áá ááá, áá áá áĽáá°áá á áŤááá.
áľááá á ááá áĽááááᥠáá ááŁááᢠááááŁáľ áá á áŤáá áááá ááá ááŤáááľ áá˝áá, ááááŤáąá á°ááśášá á˛áŤáᥠáľáŠá¨áľ á áá°áĄá.
asible-playbook á¨ááŤááť áá˝ááá áŤáľáá˝áá. Playbook áĽáá°áá áŤá ááá áŤáá á¨yml/yaml ááá áááĄ-
---
- hosts: group1
roles:
- role1
- hosts: group2,group3
tasks:
- debug:
áá áá ááá á¨ááŤááť áá˝áá áááá á áľááľáá á°á¨áľá°ááᢠááááš á¨áľ áĽááłáᣠá°ááŁáŽáš á¨áľ áĽááłá ááłá¨áľ áĽáá˝áááᢠáá á¨ááł á¨áľ áá? áĽá á¨á᳠ᨠáá ááá á¨ááł áá˝áá á¨ááá¨á áĽáá´áľ áá?
ááá á á°ááľ ááľáĽ ááᢠáĽá á°ááá. áááŞáá˝ - á áŁá áĽá áľááá áĽá áááá ááá á á ááľ áá ááľáłááľ á áá˝áá. áááľ áŤáá - ááááŤáąá "áľááá˝ áááŽá˝." áááľ áŤááľ áĽááá á áážá˝ á˘áŤááľ á á¨á ááą á ááľ áá áĽáá°áá áŤááĽáĄ áĽá áŽáľá á¨á°áťá ááá ááááá˘
áľááá
áŤáľáłááąáĄ á¨ááŤááť áá˝áá á¨á¨ááł áááá áĽá import_playbook
.
áá
á ááľ á¨ááł áááĄ-
- hosts: group1
roles:
- role1
áá á°áá áá á¨ááł ááá˘
- hosts: group2,group3
tasks:
- debug:
á¨ááł áááľá áá? ááááľáá?
ááŤááľ á¨ááŤááť áá˝áá ááá á áŤá áá ááááŤáąá ááŤááľ áĽá ááŤááľ á¨áááá˝á áĽá/ááá á°ááŁáŽá˝á áááá á¨á áľá°áááá˝ áááá áá áľáááŤááŤá ááᢠá á°ááśáš áĽáá
á áááľ ááľáĽ, áá ááąá ááááľ áá˝áá delegate_to
ᣠá¨á áŤáŁá˘ ááá á°á°áŞáὠᣠá¨á ááłá¨ áá¨áĽ-áá-á°áŽá ááźáśá˝ ᣠá áľá°áááá˝ áááá ᣠááá°. á¨á°ááŁáŽá˝á á áááá áŚáł á áľááš áĽáá˛ááአáŤáľá˝áááłáᢠááá áá áľááą áá¨áąáľá˘ áĽáŤááłááłá¸á áĽááá
á áľá¸á᪠á ááŤáŽá˝ á áŁá áአá á áááá˝ á áá¸á ᣠáĽá áĽááą á áĽááá áááľ áááá°áá á áá°ááᢠáĽá áĽáŤááŤá áŤááá ááá á°á ááŤááá áĽá áá áááŁá¸á áľááááŁá¸á áá°á¨áłá áááŽá˝ ááá˘
"á ááľ ááá" "á ááľ áŚáł" áá¨ááá á¨ááá - á¨ááłá áá˝áá. áá á áá°ááᢠá¨áááá˝ áĽá á°ááŤáŽá˝ áá áá á áá°áá. á¨ááłá ááľá°á áťáᢠá á¨áľáá ᣠá á áľá°áááá˝ ááľá ᣠá¨áľ áĽáá°áááá ááá¨ááŤá ᣠáĽá áááá˝ / á°ááŁáŤáľ - áá áĽáá°ááááá˘
á áᣠáľááá? áĽá áá áĽáá´áľ ááá áá˝áá?
á°áá˝ á á¨ááł áłááá áááľá¨á ááááľ áŤáá¸á áŁá áŞáŤá¸á á ááą "áááá ááá á¨ááŤáááá áá" áá. á¨ááááŞáŤáá á áááľ áááąáá á ááááŽá˝ áĽá á¨ááá°áá á áááľ á ááááŽá˝á á¨ááŤáá á áá áĽáá˛áá¨á áĽáááááá˘
á ááľ áá ááłá ááľáľá áá. ááľáľáá á¨ááŤááá
á¨ááľáľá áá áĽáá˛áá¨á áĽáááááᢠá¨ááľáľá ááá á áľá°áááá˝á ááá¨áłá°á á°ááľá§á (acc. play)ᢠááá ááᣠááá¨áłá°á á ááá¨áłá°áá¸á á áľá°áááá˝ áá ááŹáá˝á ááľááἠá ááĽáᢠááá á°ááŤá á áľá ááá? áĽáá˛áá iptables áááá áŤáľáááááłá. á°ááŤáŠ? áĽá á ááá ááľáľá á¨ááá¨áá á¨á˛á˘á¤áá¤áľ á áááá ááá/áá¨á áŤáľááááᢠá°ááŤá! áĽá áá áŤá áĽá
áŤá, áááá ááľá¨á áá˝áá include_role
á áĄáľá áááá ááľáĽ áĽá á ááľáĽá á á°áŁá á ááŁáŞáŤ á áŠá á á°á¸áá áá°áľ ááľáĽ include_role
á¨á áá ááľá¨á áľá˝ááá
delegate_to
áĽáá°ááᢠáĽá áĽáááłáá ...
áááŤá áááľ - "áááá á¨ááŤá°áá" á ááľ áá á á¨ááľáľá áá áĽáá˛áá¨á - áĽááá áá á ááľ áá፠áá°áááá áľ áááá áááŤáá áááá ááá á¨áŁáś áĽáá°áá áááá˘
áľá á°áą á¨áľ á°á¨á°? á á áľá°ááá X áá âxâá ááááá áá° áá áá°á âyâ ááľá¨á áĽááłááĽá áŁáá á á á˝á áľáŁ ááá ááááľ ááľá¨á áá á¨áĽá ᥠááľ áĽá á á áľá°ááá Y áá y á¨ááŤá°áá á°áááľ áťáᢠá¨áá ááá á "x" áá á áľá¨ááŠ, ááá áá á¨áŁáś ááá. á áááľ áŽáľ á¨á°ááᥠá°ááááŽá˝ áĽááłáá˘
á¨áá áŁááľ á ááážá˝ ááľáĽ ááá ááá áľááá áááľáá. áá áá á¨áĽááľá ááłá á áá°áá! áľáá áĽá á áá ááá á¨áá˝á áŽáľ ááťá áľáááľááá áĽá áĽáá° á¤á°-áá˝áááľ á áááľ áĽá áá á áááľá¨á á¨ááŤáľá˝á ááááľ áááá á ááĽááľá˘
áá áľáá áľá á°áľ áĽáá á áᢠáĽá ááŽáááśá˝á á ááťáťá á¨á°áá (á¨á°áťá ááá áá˝áá ᣠáá ááá ááá áá°áŤá áĽá ááá¨áá ááá áá) á°áŤá˛á áĽááłá ááááá á áá°ááá˝áá á áľááŞááľ áŤáᣠáľá á°áľá˘ áá°áŤá ááá áá áĽááá áĽáá áááĽá áá¨ááááá˘
áá áľá á°áľ áĽáá°áá áááľááᥠáá á¨á¤á° ááá ááľ á°ááŁá ááᢠáá á°ááłáłáááľ áĽá áĽáŠ á ááŽá˝á á á áá˝áˇá áľááá á áááá¨áľ á áŁá áŤáłáááᢠáá á¨á¤á°-áá˝áááľ á°ááŁá á áá°ááᢠáĽáˇ áľááľ ááľá¨á á áľá˝áá áĽá á¨á¨ááł á°á¨á ááłááá˝á ááľá¨á á áľá˝áá. á¨ááł áá ááłááá˝á áĽáá°ááŤá°áá á áľáłáá°á?
á áá°ááááᣠáá áá ᢠá¨ááł á á¨áľááš á áľá°áááá˝ áá á¨áľááá á°ááŁáŤáľ áĽá áááá˝ áá¨ááá áĽááłáá áľ ááłá áá°áŁá (áá áἠá áľáááᣠáá¨á ááá)á˘
áá áá ááłá áá ááľ áá á¨á°áĄáľáŁ áĽá á áľááśá˝á á˘ááᣠáĽáŤáłá˝áá (áĽá áŽáľá áá°áá°á á¨ááááá á°á) áá° á áłáá á ááá áľá ááá˝áᢠááá á¨áľ áĽáá°ááŤáľáŹáľ á áááľáá. áá ááłá á¨áá¨áááá á á¨ááł ááᢠááá á¨áłááááᣠá á°ááá¨á áľ áŚáł áŤá°áááá˘
á Ansible ááŽááŤááá ááá á á°áá áĽáá°áá áĽá COBOL á¨á áá˛á áĽáá´áľ áĽáá°ááťáᣠá á°áááá áĽá á ááá áá á áááŤá ááľáĽ áĽáááááŤááᢠáá ááᣠá ááľ ááá áĽáá á - áĽáŤááłááą áľááľá ááá á ááá á°ááááŽá˝á ááááἠá¨ááá á áąáŤ áľáśáłáᣠáĽá ááá ááľá¨á á áľá˝ááᢠáááą "áąáŤáá˝" áĽáá°á°áťáአááá ááá á ááˇáá˘
áááááŽá ááľáłááť: ááá, á áĽáááĽ, á¨áááŁá áŞáŤáá áá°áľ áááł áá˝áá. áĽá delegate_to
áĽá ááááŤáłá á á áááá˝ á ááľ. áĽá meta: end host/play
. áá! áá°á¨áłá áááŽá˝á áĽáá°áááľá°áá á áľáłááľ? áľá á¨áłá delegate_to
. áĽá¨á°ááááá áŤááá áľá ááá áĽá á áŁá áááá Ansible code ááᢠá¨áľáá áááá ἠááá ᣠáááá ááá ᣠááá¨á ááá ᣠáááá°á˝ ááá áĽá áááá ááá á¨áááᢠáľááá
á ááľ á°á¨á᪠áááĄ-
ááŤááľ áĽá á¨ááł áĽáť á¨áľááá á áľá°ááá áĽáá°ááá˝á áááľááá˘
á áá ááá á¨á¨ááł áĽá á¨áá á°áááá á áľá°ááá°ááᢠá áá áľá á°ááŁáŽáš áĽá áľá áá áááááľ áĽáááááá˘
á°ááŁáŤáľ áĽá áááá˝
á¨ááłá á áľáĄá áľáĄ-
- hosts: somegroup
pre_tasks:
- some_tasks1:
roles:
- role1
- role2
post_tasks:
- some_task2:
- some_task3:
foo ááľá¨á áŤáľáááááłá áĽáá áᢠáĽá áááľáá foo: name=foobar state=present
. á¨áľ áá ááťá áŤáá áľ? á á
áľá? ááĽá? áá ááá á?
⌠áĽá á°ááŁáŽáš á¨áľ ááą?
á áá á¨áłá áááŽá˝ - á ááŤááť ááłáŞáŤá áĽáá°áá áĽááááŤáá. á áá ááŞáŤ áĽá¨á°ááłáá á¨áá, á¨ááłá áááá ááá áá°á¨áľ á áľááá áá áá á áá˝áá, áĽá á¨áĽááľá áá¤áľ "á áľááŞ" áá.
á¨ááŤááťá ááŁáŞáŤáĄ á¨á áľá°áááá˝ áááŞáŤáŁ áá¨ááłá áŤáą á áá áśá˝ áĽá á áľá_á°ááŁáŤáľáŁ á°ááŁáŽá˝áŁ áááá˝áŁ á¨áľá á¨_á°ááŁáŤáľ áááᢠá¨ááŠáľ á¨á¨ááł áááŞáŤáá˝ á áá ááĽá á áľááá á áá°ááá˘
á¨ááááťá¸á á
á°á á°á¨á°á á¨á°ááŁáŽá˝ áĽá áááá˝ áááĄ- pre_tasks
, roles
, tasks
, post_tasks
. áááŽ, á ááş, ááŤá¨á á¨á ááťá¸á á
á°á á°á¨á°á tasks
и roles
ááá˝ á áá°áá, á¨á፠ááἠáááśá˝ ááá áĽá¨á¨ááá áá ááá tasks
áŤááá áĽáť roles
... áŤá roles
, á¨ááŤá ááá á¨á°áŤáŤá áľáŤáá˝ á ááááš ááľáĽ ááááŁá pre_tasks
/post_tasks
.
ááá ááá á áľááá ááá˝ áá áĽáť áááŤá-ááááŞáŤ pre_tasks
, á¨á፠roles
, á¨á፠post_tasks
.
áá á ááá ááĽáŤáá áááľ á áá°á áá-á¨ááá áĽáŞá á¨áľ áá foo
ááťá? ááĽáŤááłááą ááá áá áá ááá á ááĽá? ááá áááá ááá áááŤá áá á˘áá¨á ááťáá? áĽá áá áŤááá ᣠá¨á፠á¨áľ áĽáá°ááá - á á
áľá ááá á ááľáł?
ááĽááá
áĽáŤááá˝ ááááŤáłá áááľ á¨áá áá
á¨áĽáááľ áĽáĽá¨áľ ááááľ áá ᣠáááľá áĽáá፠á áŁá âá¨áááá áᥠáá á¨áśá˝âᢠáĽáľá˛ áĽáááá°áᢠá ááááŞáŤ á¨á°á
áááľ áĽáŤáᥠá¨ááłá áŤá pre_tasks
и post_tasks
(áĽá á°ááŁáŽá˝á áá áááá˝ á¨áá) ᣠá¨á፠ááááŞáŤ á¨á°áááłááľáŠ á¨áá ááá áá°á á áá˝ááᢠpost_tasks
áá° áá¨á¨áťá ááááłááľ pre_tasks
?
áĽááἠáá, á¨áĽáŤáá á áťáťá áĽáá°ááááľ ááá áá°áŁá. áá á áľááá áááľá áá?
⌠á°ááŁáŁáŞáá˝á˘ áá°á¨áłá áááŽá˝á ááá ἠá ááľ á áľááá áĽáááł áŤáłáŤá-ááá á°ááŁáŁáŞáá˝ á¨áĽáŤááłááą ááá á áá á áŤáľ-á°á ááłá áŁáᢠáĽáááŤá˘ ááá á°ááŁáŤáľ ᨠpre_tasks
, á¨ááŤá ááá á°ááŁáŁáŞáá˝ áŤáłáááľ. á¨á፠ááá áááá˝ áĽá á áááá˝ ááľáĽ áŤáłáááľ ááá á°ááŁáŁáŞáá˝ ááá¸ááᢠá áá post_tasks
áĽá á°ááŁáŁáŞááťá¸á.
áĽáá°áá
, á ááľ á°ááŁá ᨠááľá°á á¨áá post_tasks
в pre_tasks
, á¨á፠á°ááŁáŁáŞá á¨ááá¸á á ááľ ááá˝ááľ áá˝áá. áááłá, á¨áᣠpre_tasks
á¨áľá á ááááŠá ááŤá áĽá ááááᣠáĽá post_tasks
á¨áá ááá áá° áĽáą áááŤá, á¨ááŤá á¨áá
á á°ááŁá áá° ááá ááľá°ááá pre_tasks
áá° áĽáááł áááŤá "á ááá" áá á áááአáá á áá°ááá¨á áĽá ááá ááá ááá¨áŁá.
á áá ááá áĽáá° áá áĽááľáĽ pre_tasks
и post_tasks
? áááłá, ááá á¨ááá¸á á ááľ á áľááááá áá (á°ááŁáŁáŞáá˝á á¨ááŽ) ááá¨ááá. á post_tasks
áááá˝á á ááľáá¸á áá¤áľ (á°ááŁáŁáŞáá˝á á¨ááŽ) áĽááľáá°áŤ áŤáľá˝áááá˘
á áá áá áĽáá°áá ááááŠááᢠmeta: flush_handlers
ááá áá á á¨ááłá ááľáĽ áŁááľ áááá˝ á ááťá¸á áá áá°ááá áľáá˝á ááá flush_handlers áŤáľááááá? á á°á¨ááŞá á¨ááł á á áááᥠflush_handlers áŤáá°á á á áááŽá˝á á á°á°ááá á°ááŁáŁáŞáá˝ ááŤá°ááąáá áá˝ááᣠáľáá ááá áĽáááł á¨áá ááľá ááááŤáá˝á áá°áĄááᢠwhen
Ń block
ááá°. ááťá á¨áá˝ááá á á°áťá áŁáá ááĽá á"á áľá¸ááŞ" áááľá áá°á¨á á¨ááľá˝áá¸á áĽá ááááŚá˝ ááááᢠáĽá ááá áááľá - á á
áľá / áááá˝ / ááĽá ááŤá¨á á°ááĽáŻá áááŤá¨áľá á áá áá - ááŠááśá˝á á áŤááŁáá˘
áĽá áá° áĽá 'á' áĽááááľá˘ á¨áľ áá ááľáááĽ? á á áľáᣠááĽá áááľ áááá˝? á ááá˝ ááá¨áľ áĽáá°ááťáá, áá á¨á°ááŁáŁáŞáá áá¤áľ á foo áĽáá°ááááá ááá°áá. áĽááą á¨áá ᣠá¨á፠foo á á áľáá áá á ááľáł ááľáĽ ááľááŁáľ á áŤáľáááá - áĽááá áááá˝ áአáľááá á áá¸á - á¨ááá áŽáľ áľááľá á ááľ áĽá á áá á°ááŁáŤáľá áá¨áááá˘
á áá "áá ááá á°ááŁá" áááá áĽáŤá áááą ááľááá á á¨ááłá ááľáĽ áá°áá á¨á ááááłá - á°ááŁáŤáľ áŤá, áá° á°ááŁáŤáľ áá¨áá áŤáľáááááłá. áááá˝ áŤá, áá ááŤááľ áŤáľáááááłá (á¨á ááľ á°ááŁá á˘ááá). á°ááŁáŤáľ áĽá áááá˝ á á°ááłáłá áá áĽá á áá áĽáá°áááá á áľáłááłá˝ááá.
á¨á áá˛áŞá áá°á¨áłá áááŽá˝á áá¨áłáľ ááŁáá ááááľá áĽáŤááá˝ ááááŤáłá áááśá˝á áá°áŁáá˘
á°ááŁáŤáľ áĽá áááá˝ (ááá áááľ)
á áá á¨ááŤááť áá˝áá ááťá á˛ááአáááłáá áĽáááŤá. á, áŁá áĽá áŁá ááľáŤáľ áŤáľáááááłá. áĽááá áśáľáľ á°ááŁáŤáľ áá¸á á ááľ áá áááľ áśáľáľ áááá˝? áĽáŤááá áá ááá-á á¨áľáá ááĽáĽ áá áááá˝á ááťá áááá á ááĽááľ? á°ááŁáŤáľá ááá á˛á˝á áááá˝á á¨ááá áááł áááľá áá? ... áĽá áá áááľá áá?
á¨áľáá áľá á°áśá˝ á ááą (áľááá ááłá á°áááŹá áá) áá á ááŽááŤá áááĽá¨áŞ ááľáĽ áĽááłá á°ááŁá áá áĽá áá°áĽ ááᢠá¨á ááľ á°ááŁá á á ááá ááá፠áá áááľáá? á¨áá¤áľ áá᪠áĽá´áśá˝á áááľáłá ᣠá¨áá ááááŤáśá˝ áá ááááá ᣠá¨áááŽá˝ ááłáśá˝á áŤá°ááá ᣠáĽá´áľ ááááłáá˘
á áá, áľáŠá¨áľ. á áá
áá ááľáĽ áá áá°á¨á áá˝áá? á¨áááŽá˝ ááłáśá˝á áá°áá - áá áá áĽááłá á°á
á áᥠᣠáá
á¨á á
ááá áá ááá áá - á¨áááŽá˝ ááłáśá˝á ááľá¨áᢠá¨áá ááááŤáśá˝ á áááľ? á¨ááááŞáŤ á°á¨á. ááá áá "áĽá´áľá á áłááá
ááá°á
" - áĽáą á¨ááá áľ áá. á ááááŞáŤáŁ áá ááľ áá áĽá´áľ ááľá°ááá á áá˝ááᢠá ááá á áŤááľ ááá ááľáĽ á¨á
áááľ ááá á¨áá á á¨ááł áŤáá ááá á áá á°áááá áááááľ áá˝ááᢠá á ááľ áá ááľáĽ á¨á
áááľ áááá á ááŤááľ ááá á áá á°áááá áááááľ áá˝ááᢠááá á ááááľ áááá¸á á¨ááŤááť áá˝ááá á˘áá (set_fact
/register
). ááá áá "á áŤáŁá˘áŤá á°ááááŽá˝" áááááľ á áá˝áá. "áĽá´áľ ááá°áľ" áĽá "ááááľ" á áá˝áá.
ááá ááá á¨áá
á¨áá¨á°áá áá-á á áá˝áá áá á ááľ ááá ááťá á áá˝áá áĽá á¨áááŽá˝ ááłáśá˝á á áŤáľá¨áľá. á ááá áá á°ááááŽá˝á ááá¨á áááá áá ááľ á°ááŁá á¨áááŽá˝ ááłáľ ááᢠá Rust ááľáĽ, áááłá, ááá á áá á°áááá áááἠáá unsafe
. áĽá á á°ááŁáŁá - áá áĽá´áśá˝ áá á°á˝áá áááľá¨á áĽá¸áá ááááľá˘ áĽá
á áá áááááľ áááśá˝ áľáŠá¨áľ ááľáĄ: "áĽá´áľá áá° áá á áłáá" áłááá " ááá á¨áá áááŁá¸áá áĽá´áśá˝ ááááĄ". áááá˝ ááŤá¨á ááá áááá á¨áá. á á°ááŁáŽá˝ áĽá áááá˝ ááŤá¨á ááá ááŠááľ á¨áá.
á á áá: áá á°ááŁá á áá°ááá˘.
áľá áá áá áĽáŠ ááá á á? á ááááŞáŤ ᣠááá ááŁáŞ áĽá´áśá˝ á ááľ (/default/main.yaml
), á ááá°á á°á¨á, ááá áááá˝á áááŁá á á°á¨á᪠áááŤáá˝ á ááľ.
ááŁáŞ áááá˝ ááá áĽáŠ áá¸á? á Maslow's ááŤááľ ááľáĽáŁ Ansible's ááááá á áá á°áááá á¨á
áľá፠á áá á¨áĽáŁ áá ááŁáŞáá˝ á¨ááá á áá á
áľá፠á¨ááá°áĄ áááá¸á áá (á¨ááťá á¨áľáĽáá ááľáá áááŞáŤáá˝ á áľá°áá)ᢠáá
áááľ ááŁáŞ áĽá´áśá˝á áá
á¨áĽ á¨ááá áĽá á¨áĽá ááá á¨áĄáľá á°ááááŽá˝á áľáááťáŠ áá¨áá
áŤáááá áá ááŁáŞáá˝ ááĽááľá áĽá¸áá áľáááá áŚáł áá¸áᢠ(áľáá˝ áĽááťáá - á°á¨á᪠á áᢠ|d(your_default_here)
, ááá áá áľá áá áŚáłáá˝ á¨á°ááááá, á¨ááŤá á¨á°ááŁáŽá˝ ááŁáŞáá˝ áĽáť).
áľá áááá˝ áá áá áĽáŠ ááá á á? á¨áŤáłá¸á áááŤáá˝ áľááá¸á ááᢠáĽááá
áá°ááááŽá˝ áááŤáá˝ áá¸áᣠáááąá áá (áááľá áááá á¨á°á°á) áĽá á°áááá (áĽáá˛á
áŤá áľááá°-áĽááľ ááá áá¨-ááľá á á - include_vars
á ááľ áá {{ ansible_distribution }}-{{ ansible_distribution_major_version }}.yml
.) áĽááá
á áááŤáá˝ áá¸áᢠfiles/
, templates/
. áĽáá˛áá á¨áĽáŤáľá áááá˝ áĽá á°á°áŞáá˝ áááá˝ áĽáá˛ááŠááľ ááá
áľáááłá (library/
). ááá ááᣠá¨ááŤááť áá˝áá á°ááŁáŤáľ áá á ááááá (áá
áá ááá¨áá áá˝áá) áĽáá
áŤáá áĽá¸áá áĽá
á ááááš áá° á ááľ ááá á áááŁá áá ᣠáá áĽá á¨á°ááŤáŠ áááá˘
á ááľ á°á¨á᪠ááááᥠááĽáá°áá áĽá á áá á¨ááá áááá˝á áááľáŤáľ ááá¨á áľá˝ááá (á áááᲠá áŠá)ᢠááá˝áśá˝ á¨áᥠá áá, áááá˝ áľáááľ áĽáá° á°á¨áł ááá á áá˝áá.
áľááá , áááá˝ áááľ á áá áŁá áŞáŤáľ á áá¸á: ááŁáŞáá˝ (áአáŁá áŞ) á áá¸á áĽá áŽáľáá áĽáá˛áŤáá አáŤáľá˝áááłá.
áá° ááááŞáŤá áĽáŤá áľááááľáĄ á°ááŁáŤáľ ááź áĽá ááź áááá˝ áĽáá°áá°áŠ? á ááŤááť á°áĽá°á ááľáĽ áŤá á°ááŁáŤáľ á áĽáááá áá áĽá á áá á¨áááᾠᨠáááá˝ á ááľ/á áá áĽáá° "ááŤ" ááá áĽáá° áááá°á á¨áááŁáł á áŤá áá (á¨ááŤá á áŽáą ááľáĽ ááá áááá˝ ááአá áááŁá)ᢠá¨áá°á á áľáŤáá˝ ááá á¨á°ááá˝ áá á°á°áŁáá á¨ááŤáťá áľáľáĽ ááᢠá ááľ á¨á°áá°á ááá¤á - á°ááŁáŽá˝á ááá áááá˝á ááá á á ááĽááľá˘ áááá˝ á¨á áŤá áááá˝á áĽá ááŁáŞáá˝á áááŤá¨áľ áá°áŁá ᣠá°ááŁáŽá˝ áŽáąá á ááĽááľ áĽáá˛áŤáᥠáŤáľá˝áááłáᢠáĽááá áá, á°á¨á᪠"á¨áá" (á áľááá áĽá ááľáĽáľáĽ) áŽáľ á ááá ááľáĽ áááŁá, áĽá á¨áłáľ áľááŞááśá˝ á á°ááŁáŽá˝ ááᤠááťáá.
áĽáá° á°ááŁá á áľááŞ_áŽáá ááľá¨á ááťááᣠááá áá áá á á¨ááᣠááá áá á áááľá¨á áĽáá°áááá˝á ááŤáľá á¨áá áľ áľááľ ááĽáŤáŞáŤ á°ááá á˘
á áľá°áá á ááŁá˘ áááá˝ áááá˝á ááľááŁáľáŁ áááá˝ á galaxy.yml á áŠá áĽáá ááá áá˝ááᣠáĽá á¨á፠á áľá᪠áĽá á áľááŞá á á áá áá˝ááᢠinclude_role
- á áĽáá ááááľá˛á áłááá á áá á¨áłá Ansible ááľáĽ á˝ááłáá˝á áĽáá°áááťá˝á á áľáłááłá˝áááá˘
á°ááŁáŁáŞáá˝ áĽá á°ááŁáŤáľ
á ááľ á°á¨á᪠ááá˝ ááá áĽáááŤáᥠá°ááŁáŁáŞáá˝á˘ á áľááá áĽáá´áľ áĽáá°áá áááŁá¸á ááá áĽá ἠáá áááľ ááťááᢠá á áľá°áłáłáŞ áĽá á á°ááŁáŠ ááŤá¨á áŤáá ááŠááľ áááľá áá?
áá°á¨áłá áááŽá˝á áľááááľáłááľáŁ á ááľ ááłá áĽáá á ááĄ-
- hosts: group1
tasks:
- foo:
notify: handler1
handlers:
- name: handler1
bar:
á¨ááá á°ááŁáŁáŞáá˝ á áŽá áľá/á áłáłá/áá.áŤáá áá¸áᢠá°ááŁáŁáŞáá˝ á á¨ááłá ááľáĽ áŁá ááá á°áłáłááá˝ ááŤá¨á áááŤááŤáᥠá áľá/áľá á¨_á°ááŁá áá á°ááŁáŁáŞáá˝á áááľáľ áá˝ááᣠáĽá áá á°ááŁáŁáŞáá˝á á¨á¨ááłá áááľáľ áá˝ááᢠááá ááᣠ"á°áťá᪠áá" áá° á°ááŁáŁáŞáá˝ á¨áá°á¨á áĽáŞáá˝ á°áŤ á°ááŁáŁáŞá á¨ááľáá á¨á áá wtf áŤáľá¨áľááᢠ(ááá á¨ááἠáááśá˝ á áŤá á¨á°ááŁáŁáŞ áľáá˝á ááľáá áá)á˘
ááá ááŠááľ á°ááŁáŠ á¨ááá¸áá (á á°áá áááł) áááá (áááľ / á¨ááááľ áááŤáá˝ áĽá when
), áĽá á°ááŁáŁáŞá - á áľá´áľ ááἠ(á¨á°áá¨á¨ á¨áá áĽáť áĽáá°áá°áŤ ááłáá
). á á°áá áááľá áá? áááłá ᣠáĽáá°áá á˛ááአᣠáŤáá°áá¨á¨ ᣠá¨á፠ááá á°ááŁáŁáŞ á ááááᢠáĽá á¨ááá
ááľ á°ááŁá áŤáá°áá¨á¨ á°ááŁáŁáŞáá ááľááá ááá áŤáľááááá? áááłá á ááľ ááá áľáá°á áḠáĽá áľáá°ááá ááá áá ááľáŤá á°ááŁáŁáŞá áá á áá°á¨á°á. áááłá á ááłá¨ áá¨áĄ áááá áľáá áᢠá áááአá°ááá§áᣠá áááááą áĽáá°áá á áá°ááá¨áᢠá áááĽáá á
áá, áá
አá¨á áá á áá á ááááĽá, áĽá á áááááą á¨á áŽáá á¨áá
á¨áľ áľáŞáľ áá áááŤá.
á áááአáá áŤáá áááł áááł á¨áá˝á á áá°áá (á áá áἠá áľááá ááĽáŤáľá áአáłáá ááľááá ááŽáśáŽáá á ááá áŁáá˛áŤáá˝ ááá° ááá á áá˝áá ᣠáá áá
á ááááá ááአ'áá°á¨áłá ááťá á¨áá˝á' á áá°áá)ᢠáá áá á¨á°ááá° áłáŞá á á: á áááŹá˝áá áŤáá, ááłáá .service
- ááá, áĽá á áá áĽáááááá daemon_reload
и state=started
. áĽá áá፠á¨á°ááĽáŽ áŚáłá á°ááŁáŁáŞá áááľáá. ááá áá á°ááŁáŁáŞ áłááá á á°ááŁá áááአáá¨á¨áť áá áŤá á°ááŁá áŤá°á¨áá˝ááľ ááááá á áľáá¨áľ ááá¸ááᢠá¨ááŤááť á°áĽá°áŠ á ááá áá á˘á°á áá. áá
áĽáá°áá á¨ááá¨áá á˝áá á ááŤá˝ á áááłáá (áĽáá°áá á¨á°ááá¨á áŁá
᪠áá á ááľ á°ááŁá áá¨ááá á áá˝áá ᣠááááŤáąá áľáá¨áą á ááˇá) ᣠáá á áĽááá áááľ áááłá ááľá¨á á áá áá ᣠá¨ááŤááťá á á ááá áá¨áááľ áá¨ááŤá ᣠááááŤáąáᢠá¨áááááśá˝ áĽááľ áĽá á°áááá áááł ááááłá.
ááá á¨á°ááŁáŁáŞá á áááłá áŁá ᪠áá¤áąá á¨ááá áá ááá ááᢠááá áááŚá˝ á ááá áŠá - ááá á°á¨á᪠á¨á°ááá á¨áá ááá á áá¤áą ááľáĽ áĽáş - áááá ἠáááᢠáĽáą á°áá á ááłá ááĽá¨áľ áá - á ááááŞáŤá áŠáŤ áá á ááľáá áá á á°á°áŤ á°ááŁá ááľáĽ á¨áľá¨áŁ ááááľ áŤáá ᣠá¨á፠á°ááŁáŁáŞáá˝ á˛áá¨áŠ áĽáť ááá°áá ᣠáááľáᢠá á°áá°á áááłáá˝ - á áŁá á áá á áá. áááłá á áááá´ ááľáĽ áááááŞáŤ áá á¨á ááľáľ áááľ á áá. áĽá á áĽáááĽ, á áľá ááľáĽ á¨áľá¨áŁ áááá áĽá ááá ááá ááá¨áŁá. áĽá áááá°á áá á ááŽáĄá - á áá°ááá á.
á á°áá á, áľá á°ááááŽá˝ ááááľ ááááá á áľááá áá. áááłáᣠáá ááľ á°ááŁá á loop áŤáłááᣠá á°ááááŽá˝ ááľáĽ áá áááá? á áľááłá ááááľ áľá˝ááá˝áᣠááá áá ááááá ááá á áá°ááᣠá á°áá á°ááááŽá˝ á¨á°ááŤáŠ áŚáłáá˝ á¨ááᥠá¨ááá˘
⌠áľááá á°ááŁáŁáŞáá˝ á¨áááľááľ á áá á áá áĽá áĽá á˝áá áŤááŁá¸á áá¸áᢠá¨áá ááá áŤá á°ááŁáŁáŞáá˝ á ááŤáá áááł ááťá á¨áťá áŤááĽááą á˘áŤá°áááľ ááťááᢠá ááŤáá áááł áŤáá°áŤ, á¨áĽááą áá á¨á°áťá áá.
á áľá°áá á ááŁá˘ áŤáá°ááááááá á áľááá á áľá°áááᢠlisten
á ááľ á°ááŁáŁáŞ á áá á°ááŁáŁáŞ áá ááłáá፠áá°áá áĽáá°áá˝áᣠá ááľ á°ááŁáŁáŞ á¨ááľááŁáľ_á°ááŁáŤáľá ááŤáŤáľáľ áĽáá°áá˝á (áĽááá
á_role c with_itemsá ááŤáŤáľáľ áá˝áá)ᣠᨠAnsible's á°ááŁáŁáŞ áľáááľ áąáŞáá-áá ááᣠá¨áá á°ááŁáŁáŞáá˝ á¨á¨ááł á°ááŁáŁáŞáá˝ áá á áááá áááł á¨ááááá áľáŁ ááá°. á. - áá
áá á ááá˝ "áá°á¨áłá" á áá°áá).
ááá áĽááłá á ááľ á¨á°áá°á WTF á áĽáááą ááłááľ á¨áááŁá áŁá
᪠á˘áááᢠá°ááŁáá á¨á°ááá delegate_to
áĽá á áłááá, á¨ááŤá á°ááłá á°ááŁáŁáŞá áŤááą áá¨áááá delegate_to
ᣠáááľá áĽ.á¤.á . á¨ááł á á°áá°á á áľ á áľá°ááá
áá. (ááá áĽááłá á°ááŁáŁáŞá á áĽááἠááá¨á áá˝áá delegate_to
á°ááłáłá)á˘
áá¨áĽáťáŁ áĽáá°áá áĽá
á áá áľáááá áááá˝ áĽááľ áááľ áááľ áĽáááááᢠá¨áľáĽáľáĽ á ááľáŁ á¨ááľá˝ááľá áááá°áá áááá˝ ááľá¨á áĽáá°ááľá˝á ááłáĽ áá áᢠansible-galaxy install
áá°á˘ á ááá áááłáá˝ á ááá áľáŞáśá˝ á ááá OS áá áá°áŤáᢠáĽááá˛á
á¨á áĽááł áá
ááᥠá áá°áŤáᢠáľáá
áá áŤáá ááááá áá include_vars
, 100500 ááłáŽá˝á áá°áá á¨áááá áŹá áľá
á°áśá˝ áá°á áá. á áľáá
áá¨áŤ áá°áŠ áá˝ááᣠááá áá áĽáá°ááááá áá¨áŤáŁ á¨áŤáá´áĽáŤ á¨áá¤áľ áĽá´áśá˝ áĽá á á ááá á°ááŁá á áá
ᣠááá "á¨á°ááŤáŠ áááłáá˝ á°á¸áááá"ᢠá¨áĽá á áľá°áŤá¨áľ ááá ááľááŤá (áłááááá˛á ááľáĽáľáĽááľ 1) á¨áá á áŁá á¨á°áťá áá.
áĽááśáš if'ov (ááá˝ ááá ááá - á á
áš when
ááá á
á˝ include_vars
á á°ááááŽá˝ áľáĽáľáĽ áá), á¨á°áťá áá. á ááłááľ áá á
áááŤáá˝á ááĽáŤáľ á ááĽááľ, áá, áĽá°áááá, áŤááą, á¨á°áťá áá¸á. áľááá
á¨áááá˛á áá áĽáŠ áá áŤáá áááľáá (áá°áŤá!) á áĄáľá when
á¨á ááľáľ á°ááŁáŤáľ "á¨áŤáľ" áá áŤáá° á°ááŤá ááá áá˝áá. á¨áááá˛á áá áŤáá áá á¨á°áťá á áááá áľ áá á ááľ ááá ááťá á˛ááአááᢠá áŁá á¨ááŁáŁáľá áľ áá á ááľ ááá á˛á°á á áá, áĽá "á¨áááá˛á áá áŤáá áá" ááááŤáľ áĽáá°áá áĽááŁáŹ á áááľ. á¨áá°ááłáᣠáĽá á ááľáľ ááŤá°áśá˝áŁ áľáááľ á¨á°ááŁá ááááŽá˝ áĽá ááá á áᢠwhen
'ov ... áĽá áá ááľá°áŤá¨á á áá áľá˘ ᨠ5 á°ááŁáŤáľ ááá
, ááá á¨áá°á á ááá á¨ááá áľ, á¨ááľáá áááá.
á áá¨á°ááľ áááá˝
- áľá ááá˝áľáŁ á¨áĄáľá á°ááááŽá˝áŁ á áľá°ááá _group_vars á°á°áŞáŁ á áľá°ááá ááľ áĽááľá˘ á¨ááá˛áŤá ááľ á¨áľááᲠáĽáá´áľ áĽáá°ááłá°áᢠáá°á áĽá á áľá-á°ááááŽá˝ ᣠááťá á¨áá˝á á¨áá á°á¨ áľááľáł áá´áᢠ"áááá á¨ááἠááłáá á¨á°á áá áľá á¨áľ áá á¨ááŤá¨áášáľ?"
jinja: {{ jinja }}
- nosql notype á áá፠ááľááł áááľá˛á. áĽááľá á ááá áĽááľ áŚáł áĽááłá á ááá áŚáł áá. áľá áľáá˝!!unsafe
áĽá áŁáá yaml.
ááá: hab.com