templates vs files and jinja2
Last updated
Last updated
ansible ํด๋์๋ ์ฌ๋ฌ๊ฐ์ง ํด๋๊ฐ ๊ฐ๊ฐ์ ์๋ฏธ๋ฅผ ๊ฐ์ง๋ฉฐ ์กด์ฌํฉ๋๋ค.
์ฌ๊ธฐ์๋ files์ templates ํด๋์ ๋ํด์ ์์๋ณด๊ฒ ์ต๋๋ค.
ํ์ผ์ด ๋ณ๊ฒฝ์ด ๋์ง ์์ ๊ฒฝ์ฐ (static) files ํด๋์ ํ์ผ์ ๋ฃ์ด๋๊ณ ์ฌ์ฉํฉ๋๋ค.
ํ์ผ์ด ๋ณ๊ฒฝ์ด ๋ ๊ฒฝ์ฐ (dynamic) templates ํด๋์ ํ์ผ์ ๋ฃ์ด๋๊ณ ์ฌ์ฉํฉ๋๋ค.
๋ณ๊ฒฝ๋๋ ํ์ผ์ ๊ฒฝ์ฐ jinja template์ ์ฌ์ฉํฉ๋๋ค.
https://jinja.palletsprojects.com/en/3.1.x/
์ฌ๊ธฐ์ ํ์ธํ ์ ์์ต๋๋ค.
์์ ์ ํด๋ณด๊ฒ ์ต๋๋ค.
๋ฐ์ดํฐ์ผํฐ๋ง๋ค ntp์๋ฒ๊ฐ ๋ฌ๋ผ์ ์ค์ ์ด ๋ฌ๋ผ์ ธ์ผํฉ๋๋ค.
IDC_A datacenter
IDC_B datacenter
jinjaํ์ผ์ ๋ง๋ค์ด๋ด ๋๋ค.
inventory_hostname
: ์ธ๋ฒคํ ๋ฆฌ์ ์๋ ํ์ผ์ด๋ฆ์ idc์ด๋ฆ์ด ์๋ค๊ณ ๊ฐ์ ํฉ๋๋ค.
python find ํจ์๋ ์คํธ๋ง์ ํน์ ๋ฌธ์์ด์ด ์๋์ง ํ์ธํฉ๋๋ค. ์์ผ๋ฉด -1์ ๋ฆฌํดํฉ๋๋ค.
์ด์ ansible playbook์ ๋ง๋ค์ด ๋ด ๋๋ค.
๊ฒฐ๊ณผ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.