[ํ›„๊ธฐ] ansible ์„ธ๋ฏธ๋‚˜ ์ฐธ๊ฐ€

464 views
Skip to first unread message

๋ฌธํƒœ์ค€

unread,
Jun 21, 2016, 9:12:19โ€ฏAM6/21/16
to sysadminstudy
์ง€๋‚œ์ฃผ ๊ธˆ์š”์ผ์—๋Š” ansible ์„ธ๋ฏธ๋‚˜๊ฐ€ ์žˆ์–ด์„œ ์ฐธ๊ฐ€๋ฅผ ํ–ˆ์—ˆ์Šต๋‹ˆ๋‹ค. ansible ์€ configuration ๊ด€๋ฆฌ ๊ธฐ๋Šฅ(puppet/chef ๋“ฑ๊ณผ ๋น„๊ต ๊ฐ€๋Šฅ)๊ณผ ์›๊ฒฉ ๋ช…๋ น ์‹คํ–‰ ๊ธฐ๋Šฅ(fabric, func, capistrano)์ด ์žˆ๋Š” ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ saltstack ๋„ ๋‘๊ฐ€์ง€ ๊ธฐ๋Šฅ์„ ํ•จ๊ป˜ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์‹œ์Šคํ…œ๊ด€๋ฆฌ์ž๋‚˜ ์ž๋™ํ™” ํ”„๋กœ๊ทธ๋žจ์— ๋Œ€ํ•ด์„œ ๊ด€์‹ฌ์ด ์žˆ๋Š” ์‚ฌ๋žŒ๋“ค์ด์•ผ puppet/chef/ansible/saltstack ๋“ฑ์„ ๋“ค์–ด๋ณด๊ฑฐ๋‚˜ ์‚ฌ์šฉ์„ ํ•ด๋ณด์•˜์„ ๊ฑด๋ฐ์š”. ์ €๋Š” cfengine, puppet, saltstack, mcollective, fabric ๋“ฑ์„ ์‚ฌ์šฉ์„ ํ–ˆ์—ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ์ค‘ ์ œ๊ฐ€ ์žฌ๋ฐŒ์žˆ๊ณ  ํฅ๋ฏธ๋กญ๊ฒŒ ๋ณด์•˜๋˜ ๋ถ€๋ถ„์ด ์•„๋ฆฌ์Šคํƒ€๋„คํŠธ์›์Šค์—์„œ ๋ฐœํ‘œ๋ฅผ ํ•œ ๋„คํŠธ์›Œํฌ ์žฅ๋น„๋ฅผ ansible ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค.ย 

๋„คํŠธ์›Œํฌ ์žฅ๋น„์˜ ๊ฒฝ์šฐ๋„ ์š”์ฆ˜์—๋Š” API๋ฅผ ์ œ๊ณต์„ ํ•  ๊ฒƒ ๊ฐ™์€๋ฐ์š”. puppet,saltstack ๋“ฑ ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋žจ์˜ ๊ฒฝ์šฐ์—๋„ ๋„คํŠธ์›Œํฌ ์žฅ๋น„๋ฅผ ์„ค์ •ํ•˜๋Š” ๋‚ด์šฉ๋“ค์ด ๋‚˜์˜ค๊ธฐ๋Š” ํ•˜๋Š”๋ฐ ์ œ๊ฐ€ ์ง์ ‘ ๋„คํŠธ์›Œํฌ์ชฝ ์žฅ๋น„๋ฅผ ์„ค์ •ํ•  ์ผ์ด ์—†๋‹ค๋ณด๋‹ˆ ๋ˆˆ์œผ๋กœ ๋ณผ ๊ธฐํšŒ๊ฐ€ ์—†์—ˆ์Šต๋‹ˆ๋‹ค.

์•„๋ฆฌ์Šคํƒ€๋„คํŠธ์›์Šค์˜ ย NOS์ธ EOS์˜ ๊ฒฝ์šฐ ๋ฆฌ๋ˆ…์Šค ๋ฐฐํฌํŒ์„ ์ปค์Šคํ„ฐ๋งˆ์ด์ง•ํ•ด์„œ ์‚ฌ์šฉ์„ ํ•ด์„œ ๊ธฐ์กด์— ๋ฆฌ๋ˆ…์Šค์— ๋Œ์•„๊ฐ€๋˜ ํ”„๋กœ๊ทธ๋žจ์„ ๊ทธ๋Œ€๋กœ ์˜ฌ๋ ค์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์žฅ์ ์ด ์žˆ๋”๊ตฐ์š”.
๋ฌผ๋ก  ๋„คํŠธ์›Œํฌ ์žฅ๋น„์˜ ๊ฒฝ์šฐ ์„œ๋ฒ„๋ณด๋‹ค๋Š” ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธด ๊ฒฝ์šฐ ์˜ํ–ฅ๋„๊ฐ€ ๋” ํฌ์ง€๋งŒ ๊ทœ๋ชจ๊ฐ€ ์ปค์ง€๋Š” ๊ฒฝ์šฐ ์ฝ”๋“œ๋กœ ๊ด€๋ฆฌ๋ฅผ ํ•œ๋‹ค๋ฉด ์ž๋™ํ™”๋„ ๊ฐ€๋Šฅํ•˜๊ณ  ์‚ฌ๋žŒ์˜ ์‹ค์ˆ˜๋„ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋„คํŠธ์›Œํฌ์ชฝ์—์„œ ์ด๋Ÿฐ ์„ค์ •๊ด€๋ฆฌํˆด์„ ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ๋ก€๊ฐ€ ์žˆ์—ˆ๋Š”์ง€ ๊ถ๊ธˆํ–ˆ์—ˆ์Šต๋‹ˆ๋‹ค.

์˜ค๋ ๋ฆฌ์˜ ์ฑ…์—์„œ๋„ ๋„คํŠธ์›Œํฌ ์ž๋™ํ™”๋ฅผ ์–ธ๊ธ‰ํ•  ์ฑ…๋“ค์ด ์ตœ๊ทผ ๊ณ„์† ๋‚˜์˜ค๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.


Network Programmability and Automation http://shop.oreilly.com/product/0636920042082.do

ansible ์—์„œ ์ œ๊ณตํ•˜๋Š” ๋„คํŠธ์›Œํฌ ๋ชจ๋“ˆ : http://docs.ansible.com/ansible/list_of_network_modules.html

Taejoon Moon

unread,
Jun 21, 2016, 9:13:53โ€ฏAM6/21/16
to sysadm...@googlegroups.com
์„ธ๋ฏธ๋‚˜๋•Œ ์ œ๊ฐ€ ๋Œ€๊ทœ๋ชจ ์„œ๋ฒ„ ์šด์˜์‹œ ์งˆ๋ฌธ์„ ํ–ˆ์—ˆ๋Š”๋ฐ ์˜ค๋Š˜ ๋ ˆ๋“œํ–‡ ์ฝ”๋ฆฌ์•„๋ถ„์ด ๋‹ต๋ณ€ ์ฃผ์‹  ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค.ย 

-----
ansible performance tuning

์ด๋ฒˆ ์„ธ๋ฏธ๋‚˜๋ฅผ ํ†ตํ•ด ์—ฌ๋Ÿฌ๋ถ„์ด ansible์˜ ์„ฑ๋Šฅ ๋ฐ ๋Œ€๊ทœ๋ชจ ํ˜ธ์ŠคํŠธ์˜ ๊ด€๋ฆฌ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์งˆ๋ฌธ์„ ์ฃผ์…จ๋Š”๋ฐ ์ €์˜ ansible ๊ฒฝํ—˜์ด ๋ถ€์กฑํ•˜์—ฌ ์ •ํ™•ํ•œ ๋‹ต๋ณ€์„ ๋“œ๋ฆฌ์ง€ ๋ชปํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ˆ˜์‹ญ๋Œ€ ์ˆ˜์ค€์ด ์•„๋‹Œ ์ˆ˜์ฒœ๋Œ€ ์ˆ˜๋งŒ๋Œ€๊ฐ€ ์—ฌ๋Ÿฌ ๊ณณ์— ๋ถ„์‚ฐ๋˜์—ˆ์„ ๋•Œ ์–ด๋–ป๊ฒŒ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ณ ๋ฏผํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ž๋ฃŒ๋ฅผ ์กฐ์‚ฌํ•˜๋‹ค๊ฐ€ ์ข‹์€ ์„ฑ๋Šฅ ๊ด€๋ฆฌ ๊ธฐ๋ฒ•์„ ์ฐพ๊ฒŒ ๋˜์–ด ์†Œ๊ฐœํ•ด๋“œ๋ฆฌ๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.
์›๋ฌธ์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.
https://www.ansible.com/blog/ansible-performance-tuning

[์š”์•ฝ]
1. ํŒจํ‚ค์ง€ ๋ฏธ๋Ÿฌ์‚ฌ์ดํŠธ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ธฐย 
- ์ˆ˜์ฒœ๋Œ€์˜ ์„œ๋ฒ„๋“ค์ด ์ธํ„ฐ๋„ท repository๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ํ•˜์ง€๋ง๊ณ , ๊ทธ๋ฃน๋ณ„ ๋˜๋Š” ์ง€์—ญ๋ณ„ repository๋ฅผ ๊ตฌ์„ฑํ•˜์—ฌ ์—ฌ๊ธฐ์„œ ๋‹ค์šด๋ฐ›๊ฒŒ ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํŠนํžˆ ๊ธฐ์—…IDC์—์„œ์™€ ๊ฐ™์ด ํ์‡„๋ง์„ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ์ด๋ ‡๊ฒŒ local repository๋ฅผ ๋งŒ๋“ค๊ณ  ๋ชจ๋“  repository๋ฅผ ๋™๊ธฐํ™” ์‹œ์ผœ ๋†“๋Š” ๊ฒƒ์ด ํŒจํ‚ค์ง€ ๋‹ค์šด๋กœ๋“œ ์‹œ๊ฐ„๊ณผ ๊ด€๋ฆฌ๋ฉด์—์„œ ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

2. ํŒจํ‚ค์ง€ ์„ค์น˜๋ฅผ ํšจ์œจ์ ์œผ๋กœ ํ•˜๊ธฐ
- with_items ๋ฅผ ํ™œ์šฉํ•ด์„œ ํ•˜๋‚˜์˜ ssh ์„ธ์…˜์œผ๋กœ ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•˜๊ฒŒ ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. yum module์„ ์—ฌ๋Ÿฌ๊ฐœ ์‚ฌ์šฉํ•  ๋•Œ์™€ ํ•˜๋‚˜์˜ yum module์„ ์“ฐ๋Š” ์ฐจ์ด์ ์€ ์•„๋ž˜ ๋ช…๋ น์˜ ์ฐจ์ด์™€ ๊ฐ™์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.
<code>
โ€ช#โ€Žyumโ€ฌย install python python-doc #(ํ•˜๋‚˜์˜ ์„ธ์…˜์‚ฌ์šฉ)
or
#yum install python; yum install python-doc #(๋‘๊ฐœ์˜ ์„ธ์…˜์‚ฌ์šฉ)
</code>

3. Fork ์ˆ˜ ์•Œ๊ธฐ
- folk ํŒŒ๋ผ๋ฏธํ„ฐ๋Š” ansible์ด ๋™์‹œ์— ๋ช‡ ๊ฐœ์˜ host์— ์ž‘์—…์„ ์‹คํ–‰ํ•˜๋Š”๊ฐ€๋ฅผ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’์€ ์ƒ๋‹นํžˆ ๋ณด์ˆ˜์ ์œผ๋กœ ์„ค์ •๋˜์–ด ๊ฐ’์ด "5"์ด๋ฉฐ 5๋Œ€์˜ ์„œ๋ฒ„์—์„œ๋งŒ ๋™์‹œ์— ์‹คํ–‰๋˜๊ณ  ์ด ์ž‘์—…์ด ๋๋‚˜์•ผ ๋‹ค๋ฅธ ํ˜ธ์ŠคํŠธ์—์„œ ํ•ด๋‹น ์ž‘์—…๋“ค์ด ์ˆ˜ํ–‰๋˜๊ธฐ ๋•Œ๋ฌธ์— ์‹คํ–‰์‹œ๊ฐ„์ด ๋Š˜์–ด๋‚˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ฆ‰, ansible์ด ๊ด€๋ฆฌํ•˜๋Š” ์„œ๋ฒ„๋“ค์ด ์ˆ˜์ฒœ๋Œ€๋ผ๊ณ  ํ•˜๋ฉด fork ๋ฅผ 100 ์ด์ƒ์œผ๋กœ ๋Š˜๋ ค์„œ ์ž‘์—…์‹œ๊ฐ„์„ ๋นจ๋ฆฌ ๋๋‚ด๊ฒŒ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. folk๋Š” ๋™์‹œ์— ์ž‘์—…์ด ์‹คํ–‰๋  ํ˜ธ์ŠคํŠธ์ˆ˜๋ผ๊ณ  ์ƒ๊ฐํ•˜๊ธฐ๋ฉด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

4. openssh ์—ฐ๊ฒฐ ํŒ
- ansible.cfg์—์„œ "ControlPersist" ๊ฐ’์„ ๋Š˜๋ ค connection timeout๊ฐ’์„ ๋Š˜๋ ค์ฃผ๋Š” ๋ฐฉ๋ฒ•.ย 
- "pipelining" ์„ค์ •์„ ํ†ตํ•ด ansible module์˜ ํŒŒ์ผ ์ „์†ก ์†๋„๋ฅผ ํ–ฅ์ƒ ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Œ
- ์œ„ ๋‘ ๋ถ€๋ถ„์€ ํ…Œ์ŠคํŠธ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

5. ansible ์ „์šฉ ssh ํด๋ผ์ด์–ธํŠธ(paramiko) ์‚ฌ์šฉํ•˜๊ธฐ
- ๊ธฐ๋ณธ openSSH ํด๋ผ์ด์–ธํŠธ๋Š” ์ž‘์—…๋งˆ๋‹ค ์ƒˆ๋กœ์šด ssh connection์„ ๋งบ์–ด์„œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ณ  ๊ด€๋ฆฌํ˜ธ์ŠคํŠธ๊ฐ€ ๋งŽ์€ ๊ฒฝ์šฐ์—๋Š” ์ด ์‹œ๊ฐ„๋„ ์ƒ๋‹นํžˆ ๋งŽ์€ ์‹œ๊ฐ„์„ ์žก์•„๋จน์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ "paramiko" ์˜ "accelerated mode"๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋ฉด ๊ธฐ๋ณธ์— ๋น„ํ•ด 4-5๋ฐฐ ์„ฑ๋Šฅํ–ฅ์ƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

6. Pull Mode ์‚ฌ์šฉ
- ๋‹ค๋ฅธ puppet์ด๋‚˜ chef ์™€ ๋‹ฌ๋ฆฌ ansible์€ push ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.์ฆ‰ ์ค‘์•™์„œ๋ฒ„์—์„œ ๊ด€๋ฆฌ๋˜๋Š” ํ˜ธ์ŠคํŠธ๋“ค๋กœ ๋ช…๋ น์„ ๋ฐ€์–ด๋„ฃ๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ pull ๋ชจ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๊ด€๋ฆฌ๋˜๋Š” ํ˜ธ์ŠคํŠธ๋“ค์—์„œ ์ค‘์•™์„œ๋ฒ„์— ์ง์ ‘ ๋ช…๋ น์„ ์š”์ฒญํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

7. Immutable Systems
-ย โ€ช#โ€Ž์ •ํ™•ํ•œโ€ฌย ์ž‘๋™๋ฐฉ์‹์„ ์ œ๊ฐ€ ๋ชจ๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ์ƒ๋žตํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์›๋ฌธ์„ ์ฐธ๊ณ ํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.


2016๋…„ 6์›” 21์ผ ์˜คํ›„ 10:12, ๋ฌธํƒœ์ค€ <taejoo...@gmail.com>๋‹˜์ด ์ž‘์„ฑ:

--
์ด ๋ฉ”์ผ์€ Google ๊ทธ๋ฃน์Šค 'sysadminstudy' ๊ทธ๋ฃน์— ๊ฐ€์ž…ํ•œ ๋ถ„๋“ค์—๊ฒŒ ์ „์†ก๋˜๋Š” ๋ฉ”์‹œ์ง€์ž…๋‹ˆ๋‹ค.
์ด ๊ทธ๋ฃน์—์„œ ํƒˆํ‡ดํ•˜๊ณ  ๋” ์ด์ƒ ์ด๋ฉ”์ผ์„ ๋ฐ›์ง€ ์•Š์œผ๋ ค๋ฉด sysadminstud...@googlegroups.com์— ์ด๋ฉ”์ผ์„ ๋ณด๋‚ด์„ธ์š”.
์ด ๊ทธ๋ฃน์— ๊ฒŒ์‹œํ•˜๋ ค๋ฉด sysadm...@googlegroups.com์— ์ด๋ฉ”์ผ์„ ๋ณด๋‚ด์„ธ์š”.
https://groups.google.com/group/sysadminstudy์—์„œ ์ด ๊ทธ๋ฃน์„ ๋ฐฉ๋ฌธํ•˜์„ธ์š”.
๋” ๋งŽ์€ ์˜ต์…˜์„ ๋ณด๋ ค๋ฉด https://groups.google.com/d/optout์„(๋ฅผ) ๋ฐฉ๋ฌธํ•˜์„ธ์š”.

Taejoon Moon

unread,
Jun 21, 2016, 9:14:31โ€ฏAM6/21/16
to sysadm...@googlegroups.com
๋งˆ์ง€๋ง‰์œผ๋กœ ์œ„ ๊ธ€์— ์ œ๊ฐ€ ๋‹ฌ์€ ๋‹ต๋ณ€์ž…๋‹ˆ๋‹ค... ์—ฐ๋‹ฌ์•„ ์ด๋ฉ”์ผ์„...

๋„์›€์ด ๋˜๋Š” ์ž๋ฃŒ๋„ค์š”.
๋ช‡๊ฐ€์ง€ ์˜๊ฒฌ์„ ์ ์–ด๋ณด์•˜์Šต๋‹ˆ๋‹ค.

1. ํŒจํ‚ค์ง€ ๋ฏธ๋Ÿฌ์‚ฌ์ดํŠธ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ -> ๊ธ€๋กœ๋ฒŒํ•˜๊ฒŒ ์šด์˜์„ ํ•˜๋Š” ๊ฒฝ์šฐ์—๋Š” ๋‹ค์šด๋กœ๋“œ ์†๋„ ๋ฌธ์ œ๋กœ ๊ณ ์ƒ์„ ํ•ฉ๋‹ˆ๋‹ค. ๊ธ€๋กœ๋ฒŒ CDN ๊ฐ™์€๊ฑฐ ์ด์šฉํ•˜์—ฌ ์ฒ˜๋ฆฌ๋ฅผ ํ•˜์ง€์š”. ์–ด์ฐŒ๋˜์—ˆ๊ฑด ๊ฐ€๊นŒ์šด ๊ณณ์—์„œ ํŒŒ์ผ๋“ค์„ ๋‹ค์šด๋กœ๋“œ ๋ฐ›์„ ์ˆ˜ ์žˆ๋„๋ก ๊ตฌ์„ฑ์„ ํ•ด์•ผ ๊ฒ ์ง€์š”.

2. ํŒจํ‚ค์ง€ ์„ค์น˜๋ฅผ ํšจ์œจ์ ์œผ๋กœ ํ•˜๊ธฐ -> CM tool์—์„œ ๊ตฌ์„ฑ์„ ํ•  ๋•Œ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•œ๋‹ค๋ฉด ๋ฐฐ์—ด ๊ฐ™์€๊ฑฐ ์ด์šฉํ•˜์—ฌ ์ฒ˜๋ฆฌ๋ฅผ ํ•˜๋Š”๊ฒŒ ์ฝ”๋“œ๋ฉด์—์„œ๋„ ๋” ๊น”๋”ํ•˜์ง€์š”. single transaction block ์€ ์—ฌ๋Ÿฌ ๋ฒˆ yum ์‹คํ–‰์„ ํ•˜์ง€ ์•Š๋„๋ก ํ•ด์„œ ์‹œ๊ฐ„์„ ์ค„์ธ๋‹ค๋Š” ์˜๋ฏธ์ด๊ฒ ์ง€์š”?

3. Fork ์ˆ˜ ์•Œ๊ธฐ -> ์ด ๋ถ€๋ถ„์€ ์‹ค์ œ ์šด์—ฌ์„ ํ•˜๋ฉด์„œ ์กฐ์ •์„ ํ•ด์•ผ ํ•˜๋Š” ๋ถ€๋ถ„์ด๊ฒ ๋„ค์š”. ๊ทธ๋Ÿฐ๋ฐ 5๋ผ๋ฉด ๊ธฐ๋ณธ ์„ค์ • ์ž์ฒด๊ฐ€ ์ข€ ๋‚ฎ์€ ํŽธ ๊ฐ™์Šต๋‹ˆ๋‹ค.

4. openssh ์—ฐ๊ฒฐ ํŒ -> ์ด ๋ถ€๋ถ„์€ ์ž˜ ๋ชจ๋ฅด๊ฒ ๋„ค์š”. ๋‚˜์ค‘์— ํ•œ๋ฒˆ ์ฐพ์•„๋ด์•ผ ๊ฒ ๊ตฐ์š”.

5. ansible ์ „์šฉ ssh ํด๋ผ์ด์–ธํŠธ(paramiko) ์‚ฌ์šฉํ•˜๊ธฐ -> RHEL6 ๊ณผ ๊ทธ ์ด์ „ ๋ฒ„์ „์—์„œ๋Š” pipelining ๊ธฐ๋Šฅ์ด ์ง€์›์ด ์•ˆ๋˜๊ธฐ ๋•Œ๋ฌธ์— accelerated mode ๋ฅผ ํ†ตํ•ด์„œ ์„ฑ๋Šฅ ๋ณด์™„์„ ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๋ง์ด๊ตฐ์š”. ๋ฌธ์„œ๋งŒ ๋ณด๊ณ ๋Š” pipelining ์ด๋ผ๋Š”๊ฒŒ ๋ฌด์—‡์ธ์ง€ ์ •ํ™•ํžˆ ์ดํ•ด๊ฐ€ ๊ฐ€์ง€๋Š” ์•Š๋„ค์š”.

6. Pull Mode ์‚ฌ์šฉ -> youโ€™ll lose out on centralized logging. ansible์—์„œ ์ œ๊ณตํ•˜๋Š” ๋กœ๊น…์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‚˜ ๋ณด๊ตฐ์š”.. "If you want to achieve periodic check-in without giving up the central history, Ansible Tower has a nice provisioning callback feature that provides this." ์ด๊ฑด ๋ฌด์Šจ ์˜๋ฏธ์ธ์ง€ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

7. Immutable Systems -> Immutable Systems ๋Š” Docker์™€ ๊ฐ™์€ ๊ฒƒ์„ ๋งํ•˜์ง€์š”. ansible ๊ฐ™์€ ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ์ด๋ฏธ์ง€๋ฅผ ๋งŒ๋“ค๊ณ  cloud ๊ธฐ์ˆ ์„ ์ด์šฉํ•˜์—ฌ ๊ทธ ์ด๋ฏธ์ง€๋ฅผ ๋ฐฐํฌํ•˜๋Š” ๊ฒƒ์„ ๋งํ•˜๋Š”๋ฐ์š”. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์ด๋ฏธ์ง€ ๋‹จ์œ„๋กœ ๊ด€๋ฆฌ๋ฅผ ํ•˜๋Š” ๊ฒƒ์ด๋‹ˆ๊นŒ ์„ค์น˜ ์‹œ๊ฐ„์ด ํ•„์š”์—†๊ฒ ์ง€์š”. Docker ์ด๋ฏธ์ง€๋ฅผ ๋งŒ๋“ค ๋•Œ ์„ค์ •์„ ์ˆ˜๋™์œผ๋กœ ๋ช…์‹œํ•˜์ง€ ์•Š๊ณ  ansible ์ด๋‚˜ puppet ๋“ฑ์„ ์ด์šฉํ•˜์—ฌ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์„ ์ƒ๊ฐํ•ด ๋ณผ ์ˆ˜ ์žˆ๊ฒ ๋„ค์š”. ์ด๋Ÿฐ ๊ฒฝ์šฐ์—๋Š” ์ด๋ฏธ์ง€๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์™€ ์—ฐ๊ด€์ด ํ•„์š”ํ• ๊ฑด๋ฐ์š”. ์›๊ธ€์—์„œ ๋ช…์‹œ๋˜์–ด ์žˆ๋Š” https://www.packer.io/ ๊ฐ™์€ ๊ฒฝ์šฐ๋„ ๋‹จ์ผํ•œ ์†Œ์Šค ํŒŒ์ผ์—์„œ Amazon EC2, DigitalOcean, Docker, Google Compute Engine, QEMU, VirtualBox, VMware ๋“ฑ์˜ ์ด๋ฏธ์ง€๋ฅผ ๋งŒ๋“ค์–ด์ฃผ๋Š” ํ”„๋กœ๊ทธ๋žจ์ž…๋‹ˆ๋‹ค. ansible ๋“ฑ๊ณผ ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ํ†ตํ•ด์„œ ์„œ๋กœ ์—ฐ๊ด€์„ ํ•ด์„œ ์“ด๋‹ค๋Š” ๋ง์ด๊ฒ ๊ตฐ์š”.

Immutable Systems ์˜ aminiator ๋ฅผ ๋”ฐ๋ผ๊ฐ€๋‹ค๋ณด๋‹ˆ NetflixOSS Ansible Playbooks ์ •๋„๋กœ ๋‚˜์˜ค๋Š” ๊ตฐ์š”. ์ด๊ฑด ํ•œ๋ฒˆ ๋‚˜์ค‘์— ์‚ดํŽด๋ด์•ผ๊ฒ ๋„ค์š”.

๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋žจ์„ ์‚ดํŽด ๋ณด์ง€์š”.
mcollective ๋Š” ActiveMQ,RabbitMQ ์™€ ๊ฐ™์€ publish/subscribe ๋ฏธ๋“ค์›จ์–ด๋ฅผ ์ด์šฉํ•ด์„œ ํ™•์žฅ์„ ํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ตฌํ˜„์ด ๋˜์–ด์žˆ๊ตฌ์š”.

saltstack์€ ZeroMQ๋Š” ๋ถ„์‚ฐ๋ฉ”์‹œ์ง• ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ด์šฉํ•˜๋ฉฐ Salt Transport ์—์„œ ๋ณด์‹œ๋ฉด Publish-Subscribe ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.ย 
syndic ์ด๋ผ๋Š” ๊ฒƒ์„ ์ด์šฉํ•˜์—ฌ ์—ฌ๋Ÿฌ ๋Œ€์˜ ๋งˆ์Šคํ„ฐ์—์„œ ๋‚˜๋ˆ„์–ด์„œ ์ฒ˜๋ฆฌ๋ฅผ ํ•˜๊ณ  Master of Masters ์™€ ํ†ต์‹ ์„ ํ•œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. (์ด ๋ถ€๋ถ„์€ ์ œ๊ฐ€ ํ…Œ์ŠคํŒ…์„ ํ•ด๋ณด์ง€๋Š” ์•Š์•„์„œ)

Mcollective, saltstack ๋ชจ๋‘ ๋น„๋™๊ธฐ ๋ฉ”์‹œ์ง• ๊ฐ™์€ ๊ธฐ์ˆ ์„ ์ด์šฉํ•˜์—ฌ ์ฒ˜๋ฆฌ๋ฅผ ํ•˜๊ณ  ์žˆ์ง€์š”.

์•„๋ฌดํŠผ ๋‚˜์ค‘์— ์œ„ ๋ฌธ์„œ์— ์žˆ๋Š” ๋‚ด์šฉ์„ ๊ฐ€์ง€๊ณ  ํ…Œ์ŠคํŒ…์„ ํ•˜๋ฉด ๋„์›€์ด ๋™ฌ ๋“ฏ ํ•˜๋„ค์š”.

2016๋…„ 6์›” 21์ผ ์˜คํ›„ 10:13, Taejoon Moon <taejoo...@gmail.com>๋‹˜์ด ์ž‘์„ฑ:

Jaehun Shin

unread,
Jun 21, 2016, 2:42:54โ€ฏPM6/21/16
to sysadm...@googlegroups.com
ansible๊ณผ puppet์„ ์ง์ ‘ ๋น„๊ตํ•œ๋‹ค๋ฉด ์–ด๋А ์ชฝ์ด ๋” ๋‚ซ๋‹ค๊ณ  ํ•  ์ˆ˜ ์žˆ์„๊นŒ์š”?

2016๋…„ 6์›” 21์ผ ์˜คํ›„ 10:14, Taejoon Moon <taejoo...@gmail.com>๋‹˜์ด ์ž‘์„ฑ:



--
ๅคง้€†ๆˆฐ

Taejoon Moon

unread,
Jun 23, 2016, 12:45:41โ€ฏAM6/23/16
to sysadm...@googlegroups.com
์งˆ๋ฌธ์ด ๋„ˆ๋ฌด ๊ฐ„๋‹จํ•œ๋ฐ์š”.

Puppet์€ ์„ค์ •๊ด€๋ฆฌ ๊ธฐ๋Šฅ๋งŒ ์žˆ๊ณ  ansible์€ ์„ค์ •๊ด€๋ฆฌ ๊ธฐ๋Šฅ + ์›๊ฒฉ ๋ช…๋ น ์‹คํ–‰ ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
Pupppet ๊ฐœ๋ฐœ์‚ฌ์—์„œ mcollective ๋ผ๊ณ  ์›๊ฒฉ ๋ช…๋ น ์‹คํ–‰ ํ”„๋กœ๊ทธ๋žจ์„ ์˜คํ”ˆ์†Œ์Šค๋กœ ์ œ๊ณตํ•˜๋ฉฐ ์ƒ์šฉ๋ฒ„์ „์ธ Puppet Enterprise์—๋Š” ํฌํ•จ์ด ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
ruby, python ์–ธ์–ด๋ฅผ ๊ผญ ์•Œ์•„์•ผ ์„ค์ •๊ด€๋ฆฌ ํ”„๋กœ๊ทธ๋žจ์„ ์“ธ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ ์•„๋‹Œ๋ฐ ์–ด์ฐŒ๋˜์—ˆ๊ฑด ๋ชจ๋“ˆ์„ ์ง์ ‘ ๋งŒ๋“ ๋‹ค๋ฉด ํ•ด๋‹น ์–ธ์–ด์— ๋Œ€ํ•ด ์–ด๋А ์ •๋„ ์ต์ˆ™ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
๊ทธ๋ฆฌ๊ณ  ์–ด๋–ค ํ”„๋กœ๊ทธ๋žจ์„ ์“ฐ๊ฑด ๊ทœ๋ชจ๊ฐ€ ์ปค์ง€๋ฉด ์ปค์งˆ์ˆ˜๋ก ์ดˆ๊ธฐ์— ์„ค๊ณ„, ๋””์ž์ธ ํ•  ๋•Œ ์ž˜ ํ•ด๋†“์ง€ ์•Š์œผ๋ฉด ๊ณ ์ƒ์„ ํ•˜๋”๋ผ๊ตฌ์š”.
๊ทธ๋ž˜์„œ ์ œ๊ฐ€ ์—„์ฒญ๋‚˜๊ฒŒ... ๊ณ ์ƒ์„ ํ–ˆ์Šต๋‹ˆ๋‹ค. ํ•œ๋ฒˆ ๋„์ž…ํ•˜๋ฉด ์ค‘๊ฐ„์— ๋ฐ”๊พธ๊ธฐ๋Š” ์‰ฝ์ง€ ์•Š์ง€์š”.

- ์„ค์ •๊ด€๋ฆฌ ๊ธฐ๋Šฅ ๋น„๊ต
Puppet/Chef : ruby
Saltstck/Ansible : python


https://en.m.wikipedia.org/wiki/Infrastructure_as_Code

Notable CCA tools include:

Tool Name Released by Method Approach
Ansible Tower Ansible Push Declarative & Imperative
CFEngine CFEngine Pull Declarative
Chef Chef Pull Imperative
Otter Inedo Push Declarative & Imperative
Puppet Puppet Pull Declarative
SaltStack SaltStack Push Declarative & Imperative

2013๋…„ ์ž๋ฃŒ์ด๊ธฐ๋Š” ํ•˜์ง€๋งŒ ์žฅ๋‹จ์  ์„ค๋ช…๋œ ํ‘œ
http://www.infoworld.com/article/2609482/data-center/data-center-review-puppet-vs-chef-vs-ansible-vs-salt.html?page=4


chef๋Š” ์ œ๊ฐ€ ์จ๋ณด์ง€ ์•Š์•˜๊ตฌ์š”.
์ปค๋ฎค๋‹ˆํ‹ฐ์—์„œ ์ œ๊ณต๋˜๋Š” ๊ฐ์ข… ๋ชจ๋“ˆ์˜ ์„ฑ์ˆ™๋„๋ฅผ ๋ณด๋ฉด Puppet ์ด ์ข€ ๋” ๋‚˜์€ ๊ฒƒ ๊ฐ™๊ธฐ๋Š” ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด saltstack์—์„œ apache ๋ชจ๋“ˆ์„ ๋Œ๋ฆฌ๋ ค๊ณ  ํ•˜๋‹ˆ ubuntu๋Š” ์ž˜๋˜๋Š”๋ฐ CentOS๋Š” ์—๋Ÿฌ๊ฐ€ ๋‚˜๋”๊ตฐ์š”. Openldap ์—์„œ slapd.conf ๋ฅผ ์ฝ์ง€ ์ฝ๊ณ  ์„ค์ •์ •๋ณด๋„ ldap db์— ๋„ฃ๋Š” ๊ธฐ๋Šฅ์ด ์žˆ๋Š”๋ฐ Puppet module์—์„œ๋Š” ์ด ๋ถ€๋ถ„๊นŒ์ง€ ์ง€์›์„ ํ•˜๋Š” ๋ฐ˜๋ฉด Saltstack, Ansible์˜ ๋ชจ๋“ˆ์—์„œ๋Š” ์ด ๋ถ€๋ถ„์ด ์—†๊ตฌ์š”. ๋ฌผ๋ก  ์ง์ ‘ ๋งŒ๋“ค๊ณ  ๊ณ ์ณ์„œ ์“ฐ๋ฉด ๋˜๋Š”๊ฑด๋ฐ ์กฐ๊ธˆ์ด๋ผ๋„ ์ž‘์—…์„ ์ค„์ด๋ ค๊ณ  ํ•œ๋‹ค๋ฉด ๊ณ ๋ฏผ๋˜๋Š” ๋ถ€๋ถ„์ด์ง€์š”.
ํ•œ๊ธ€ ์ž๋ฃŒ๋Š” chef๊ฐ€ ๋” ๋งŽ์€ ๋“ฏ ํ•œ๋ฐ ๊ธ€๋กœ๋ฒŒํ•˜๊ฒŒ๋Š” ์„ค์ •๊ด€๋ฆฌ ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ๋Š” Puppet์ด ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

ํ˜„์žฌ ์„ค์ •๊ด€๋ฆฌํ”„๋กœ๊ทธ๋žจ, ์›๊ฒฉ์œผ๋กœ ๋ช…๋ น์„ ์‹คํ–‰ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์•„๋ฌด๊ฒƒ๋„ ์“ฐ์ง€ ์•Š๊ณ  ์žˆ๋‹คํ•˜๋ฉด Ansible/Saltstack์„ ์“ฐ๋ฉด ๋‘˜๋‹ค ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๊ธฐ์— ํŽธ๋ฆฌํ•  ๊ฒ๋‹ˆ๋‹ค.
๊ทธ๊ฒŒ ์•„๋‹ˆ๋ผ ์–ด๋А ํ•œ๊ฐ€์ง€๋ฅผ ์“ฐ๊ณ  ์žˆ๋‹ค๊ณ  ํ•˜๋ฉด ๋‚˜๋จธ์ง€ ํ•œ๊ฐ€์ง€๋ฅผ ์ ์ ˆํ•œ ๊ฒƒ ๊ณจ๋ผ์„œ ์จ์•ผ ๊ฒ ์ง€์š”.
์–ธ์–ด์ธก๋ฉด์—์„œ ruby/python ์–ด๋””๊ฐ€ ํŽธํ•˜๋ƒ๋„ ํŒ๋‹จ์„ ํ•ด๋ด์•ผ ํ•˜๊ตฌ์š”. ์ž๊ธฐํ•œํ…Œ ์ต์ˆ™ํ•œ ์–ธ์–ด๋ฅผ ์“ฐ๋Š”๊ฒŒ ๋” ๋‚ซ๊ฑฐ๋“ ์š”.
saltstack ๋ชจ๋“ˆ๋„ ๋งŒ๋“ค๋ ค๊ณ  ํ•˜๋‹ค๋ณด๋‹ˆ๊นŒ python์„ ๋‹ค์‹œ ๊ณต๋ถ€ํ•˜๊ฒŒ ๋˜๋”๋ผ๊ตฌ์š”.

์„ค์ •๊ด€๋ฆฌ์šฉ์œผ๋กœ Ansible/Saltstack ๋‘˜์ค‘์—์„œ ๊ณ ๋ฅธ๋‹ค๊ณ  ํ•œ๋‹ค๋ฉด ์•„์ง๊นŒ์ง€ ์ €๋Š” Saltstack์— ๋” ์†์ด ๊ฐ‘๋‹ˆ๋‹ค. ๋ฌผ๋ก  ์•„์ง ์ œ๊ฐ€ ansible ์€ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ์•„์ฃผ ๊ฐ„๋‹จํžˆ๋งŒ ํ…Œ์ŠคํŒ…์„ ํ•ด๋ดค๊ธฐ์— ๊นŠ์€ ์ง€์‹์ด ์—†๊ธฐ๋Š” ํ•ฉ๋‹ˆ๋‹ค๋งŒ.
์ด ๋ถ€๋ถ„์€ ์ฝ”๋“œ๋ฅผ ๊ฐ€์ง€๊ณ  ๋น„๊ต๋ฅผ ํ•ด์•ผ ํ•˜๊ฑฐ๋“ ์š”.

์ด ๋ถ€๋ถ„์€ ๋ง๋กœ ์„ค๋ช…ํ•˜๊ธฐ ์‰ฝ์ง€ ์•Š๋„ค์š”.
apache ๋ชจ๋“ˆ์— ๋Œ€ํ•œ url ๋งํฌ๋ฅผ ๊ฑธ์–ด๋ด…๋‹ˆ๋‹ค.

๋ง‰์ƒ ๋‹ค์‹œ puppet module์„ ๋ณด๋‹ˆ puppet module์€ ๋„ˆ๋ฌด ์ง€๋‚˜์น˜๊ฒŒ ๋ณต์žกํ•˜๊ฒŒ ์งœ๋Š” ๊ฒƒ ๊ฐ™๊ณ  ansible์€ ์ƒ๋Œ€์ ์œผ๋กœ ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค.
ansible์— ๋น„ํ•˜๋ฉด saltstack formula๋Š” ์ƒ๋Œ€์ ์œผ๋กœ ๋” ๋ณต์žกํ•ด ๋ณด์ด๊ธฐ๋Š” ํ•˜๋Š”๋ฐ ์—ฌ๋Ÿฌ ๊ฐœ์˜ OS, ์—ฌ๋Ÿฌ ํ™˜๊ฒฝ์„ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด ์˜คํžˆ๋ ค saltstack์ด ๋‚˜์•„ ๋ณด์ด๋”๋ผ๊ตฌ์š”.\
์•„๋ž˜ ansible/saltstack ์ฝ”๋“œ๋ฅผ ๋น„๊ตํ•ด๋ณด๋ฉด ansible์€ ๊ฐ os๋ณ„ ์„ค์ •์ด ๋ฉ”์ธ ์„ค์ •์— ๋“ค์–ด๊ฐ€๋Š”๋ฐ saltstack์€ ๊ฐ OS๋ณ„ ์ฐจ์ด๊ฐ€ ๋‚˜๋Š” ๋ถ€๋ถ„์€ ๋ณ„๋„์˜ ํŒŒ์ผ๋กœ ๋บ๋‹ˆ๋‹ค. (puppet ๋„ ์ด์™€ ๋น„์Šทํ•จ)

ansible apache module
https://github.com/mrlesmithjr/ansible-apache2/blob/master/tasks/main.yml

saltstack apache formula
https://github.com/saltstack-formulas/apache-formula/blob/master/apache/init.sls
https://github.com/saltstack-formulas/apache-formula/blob/master/apache/map.jinja

Puppet apache module
https://forge.puppet.com/puppetlabs/apache



- ์›๊ฒฉ์œผ๋กœ ๋ช…๋ น ์‹คํ–‰ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ ๋น„๊ต
fabric, capistrano๋Š” ์ผ๋‹จ ๋นผ๊ณ  ๋งํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

mcollective๋Š” pub/sub ๋ฏธ๋“ค์›จ์–ด ์‚ฌ์šฉํ•˜์—ฌ ํ™•์žฅ์„ฑ ๋ฉด์—์„œ ์ข‹๊ณ  ๊ทœ๋ชจ๊ฐ€ ์ปค์ง€๋ฉด ๋ฏธ๋“ค์›จ์–ด๋งŒ ๋Š˜๋ฆฌ๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์ œ๊ณต๋˜๋Š” ๋ชจ๋“ˆ? ํ”Œ๋Ÿฌ๊ทธ์ธ? ์ด ๋ณ„๋กœ ์—†์Šต๋‹ˆ๋‹ค. ruby๋กœ ์ง์ ‘ ๋‹ค ๋งŒ๋“ค์–ด์„œ ๊ตฌํ˜„์„ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทผ๋ฐ ๋‹ค๋Ÿ‰์˜ ์„œ๋ฒ„์—์„œ ๋ช…๋ น์„ ์‹คํ–‰ํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋ ˆํฌํŒ…ํ•ด์ฃผ๋Š” ๊ฒƒ์ด ์ •๋ง ํŽธ๋ฆฌํ•˜๊ฒŒ ๋˜์–ด ์žˆ๊ธฐ๋Š” ํ•ฉ๋‹ˆ๋‹ค.

ansible/saltstack ์„ ๋ณด๋ฉด ์ œ๋Œ€๋กœ ์ž˜ ๋Œ์•„๊ฐ€๋Š”์ง€๊นŒ์ง€๋Š” ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด์ ธ ์žˆ๋Š” ๊ฒƒ๋“ค์ด ์ •๋ง ๋งŽ์Šต๋‹ˆ๋‹ค.ย  (saltstack ์—์„œ lvs ์‹คํ–‰ํ•˜๋Š” ๊ธฐ๋Šฅ์ด ์žˆ๋Š”๋ฐ ์ƒ๊ฐ๋ณด๋‹ค ๊ธฐ๋Šฅ์ด ๋„ˆ๋ฌด ๊ฐ„๋‹จํ•˜๋”๋ผ๊ตฌ. ๋ฌผ๋ก  ๋‚ด๊ฐ€ ๋งŒ๋“ค ์ˆ˜ ์žˆ๊ธฐ๋Š” ํ•˜์ง€๋งŒ)

ansible ๋Š” ssh ๋ฐฉ์‹์ด๊ณ  saltstack ์€ agent ๋ฐฉ์‹์ธ๋ฐ pub/sub ๋ฅผ ์ด์šฉํ•˜์—ฌ ํ™•์žฅ์„ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ์ง€์š”.
saltstack ์˜ ๊ฒฝ์šฐ๋Š” ์‹คํ–‰ํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋‹ค๋ฅธ ๊ณณ์—์„œ ๋ณด๋‚ด๊ธฐ, ๋ชจ๋‹ˆํ„ฐ๋ง ์‹œ์Šคํ…œ๊ณผ ์—ฐ๋™ํ•˜์—ฌ ํŠน์ • ์ด๋ฒคํŠธ ๋ฐœ์ƒ์‹œ ํŠน์ • ์ž‘์—… ์‹คํ–‰ํ•˜๊ธฐ ๋“ฑ ์›๊ฒฉ ๋ช…๋ น ์‹คํ–‰ํ•˜๋Š” ๊ธฐ๋Šฅ ๋ง๊ณ ๋„ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ๋ถ€๊ฐ€ ๊ธฐ๋Šฅ๋“ค์ด ๋งŽ์Šต๋‹ˆ๋‹ค.
๋Œ€์‹  ansible์€ saltstack์— ๋น„ํ•˜๋ฉด ์‚ฌ์šฉํ•˜๊ธฐ๊ฐ€ ํ›จ์”ฌ ๊ฐ„๋‹จํ•˜๊ณ  ์‰ฝ์Šต๋‹ˆ๋‹ค.
์›น์—์„œ ์ œ๊ณตํ•˜๋Š” ๋งค๋‰ด์–ผ์€ ansible ์ด saltstack๋ณด๋‹ค ํ›จ์”ฌ ๋‚ซ๋”๋ผ๊ตฌ์š”. saltstack ๋งค๋‰ด์–ผ๋ณด๋ฉด์„œ ๋น„์Šทํ•œ ๋‚ด์šฉ์ด ์ด๋ฆฌ์ €๋ฆฌ ๋ฐ˜๋ณต๋˜๊ณ  ํฉ์–ด์ ธ ์žˆ์–ด์„œ ๊ดด๋กœ์› ์Šต๋‹ˆ๋‹ค.

ansible/saltstack์˜ ์›๊ฒฉ ๋ช…๋ น ์‹คํ–‰ ๊ธฐ๋Šฅ์ค‘์—์„œ ๊ณ ๋ฅด๋ผ๊ณ  ํ•˜๋ฉด ์•„์ง๊นŒ์ง€ ์ €๋Š” saltstack์— ๋งˆ์Œ์ด ๋” ๊ฐ‘๋‹ˆ๋‹ค.
์ƒ๋Œ€์ ์œผ๋กœ ์งง์€ ์‹œ๊ฐ„๋‚ด์— ์ ์šฉํ•˜๊ธฐ ์‰ฌ์šด ๊ฒƒ์€ ansible์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.



2016๋…„ 6์›” 22์ผ ์˜ค์ „ 3:42, Jaehun Shin <gunsmo...@gmail.com>๋‹˜์ด ์ž‘์„ฑ:

Jaehun Shin

unread,
Jun 23, 2016, 1:43:59โ€ฏAM6/23/16
to sysadm...@googlegroups.com
์งˆ๋ฌธ์€ ๋„ˆ๋ฌด ๊ฐ„๋‹จํ–ˆ๋Š”๋ฐ ์ž์„ธํ•œ ์„ค๋ช… ์ •๋ง ๊ณ ๋ง™์Šต๋‹ˆ๋‹ค.

์ฒ˜์Œ์—๋Š” ๊ฐ„๋‹จํžˆ ์ž‘์„ฑํ•œ puppet module์ด ์ถ”๊ฐ€ ์‚ฌํ•ญ์„ ํ•˜๋‚˜์”ฉ ๋ง๋ถ™์ด๋‹ค๋ณด๋ฉด ์ดํ•ดํ•˜๊ธฐ ์–ด๋ ค์›Œ์ง€๋Š”๊ฒŒ ๋ถˆ๋งŒ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ansible์„ ๋ฐ”๋กœ ๋„์ž…ํ•˜๊ธฐ์—๋Š” ๊ณค๋ž€ํ•œ ์ƒํ™ฉ์ด์—ˆ๋Š”๋ฐ ํƒœ์ค€๋‹˜ ์„ค๋ช…์œผ๋กœ ๋งŽ์€ ๋„์›€์ด ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

2016๋…„ 6์›” 23์ผ ์˜คํ›„ 1:45, Taejoon Moon <taejoo...@gmail.com>๋‹˜์ด ์ž‘์„ฑ:



--
ๅคง้€†ๆˆฐ
Reply all
Reply to author
Forward
0 new messages