Ansible: ๋ ˆ์ง€์Šคํ„ฐ: ec2 / with_items: ec2.instances - "str ๊ฐœ์ฒด์— ์†์„ฑ์ด ์—†์Šต๋‹ˆ๋‹ค"๋ผ๋Š” ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2015๋…„ 06์›” 18์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: ansible/ansible

์˜จ๋ผ์ธ ์˜ˆ์ œ์™€ ๋งค์šฐ ์œ ์‚ฌํ•œ ํ”Œ๋ ˆ์ด๋ถ์ด ์žˆ์Šต๋‹ˆ๋‹ค.


์ž‘์—…:
- ์ด๋ฆ„: EC2 ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ
EC2:
[-ํ•œ์กฐ๊ฐ-]
๋ ˆ์ง€์Šคํ„ฐ: ec2
- ์ด๋ฆ„: ์ธ์‡„
๋””๋ฒ„๊ทธ: msg="ํ•ญ๋ชฉ์ด - {{ item.public_ip }}"
with_items: ec2.instances


์ด๊ฒƒ์€ ์˜ค๋ฅ˜๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค:


์น˜๋ช…์ : [localhost] => ํ•˜๋‚˜ ์ด์ƒ์˜ ์ •์˜๋˜์ง€ ์•Š์€ ๋ณ€์ˆ˜: 'str ๊ฐœ์ฒด'์— 'public_ip' ์†์„ฑ์ด ์—†์Šต๋‹ˆ๋‹ค.

{{ item }}๋กœ ๋ณ€๊ฒฝํ•˜๋ฉด ๋‹ค์Œ์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

TASK [๊ทธ๊ฒƒ์„ ์ธ์‡„ * * * * * * * * * * * * * * * * * * * *
ํ™•์ธ: [localhost] => (item=ec2.instances) => {
"ํ•ญ๋ชฉ": "ec2.instances",
"msg": "ํ•ญ๋ชฉ์— - ec2.instances๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค."
}


'ec2.instances'๊ฐ€ ๋‹จ์ˆœํžˆ ๋ฌธ์ž์—ด์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๊นŒ? ๋งˆ์ง€๋ง‰์œผ๋กœ "with_items: ec2.results"๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฐ˜๋ณตํ•  ์ˆ˜ ์žˆ์ง€๋งŒ item.instances.0.public_ip๋กœ ์ฐธ์กฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ec2_instances๊ฐ€ ์‚ฌ์ „์ด ์•„๋‹Œ ๋ฌธ์ž์—ด๋กœ ๋‚˜ํƒ€๋‚˜๋Š” ์ด์œ ๋ฅผ ์•Œ๊ณ  ๊ณ„์‹ญ๋‹ˆ๊นŒ?

ํŽธ์ง‘ํ•˜๋‹ค:
: arp_kiki/pts/55:0.08:new; ansible --๋ฒ„์ „ ansible 1.5.4

์—…๊ทธ๋ ˆ์ด๋“œ ํ›„:

ํ™•์ธ: [localhost] => (item=ec2.instances) => {
"ํ•ญ๋ชฉ": "ec2.instances",
"msg": "ํ•ญ๋ชฉ์— - ec2.instances๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค."
}

RECAP์„ PLAY * * * * * * * * * * * * * * * * * * * * * *
๋กœ์ปฌ ํ˜ธ์ŠคํŠธ : ํ™•์ธ=2 ๋ณ€๊ฒฝ๋จ=1 ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†์Œ=0 ์‹คํŒจ=0

: arp_kiki/pts/55:0.31:new; ๊ฐ€๋Šฅํ•œ --๋ฒ„์ „
๊ฐ€๋Šฅํ•œ 1.9.1

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์ดํ•ดํ–ˆ๋‹ค. ์„ค๋ช…์„œ๋ฅผ ๋”ฐ๋ฅด๊ณ  ๋‹ค๋ฅธ ๊ฒฐ๊ณผ๋ฅผ ์–ป์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฒ„๊ทธ๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  3 ๋Œ“๊ธ€

์•ˆ๋…•ํ•˜์„ธ์š”!

Ansible์— ๊ด€์‹ฌ์„ ๊ฐ€์ ธ์ฃผ์…”์„œ ๋Œ€๋‹จํžˆ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ์ง„์‹ฌ์œผ๋กœ ์šฐ๋ฆฌ์—๊ฒŒ ๋งŽ์€ ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ์‚ฌ์šฉ์ž ์งˆ๋ฌธ์ธ ๊ฒƒ ๊ฐ™์œผ๋ฉฐ, ์šฐ๋ฆฌ๋Š” ์ด๋Ÿฌํ•œ ์ข…๋ฅ˜์˜ ๊ฒƒ๋“ค์„ ๋ฉ”์ผ๋ง ๋ฆฌ์ŠคํŠธ๋‚˜ IRC ์ฑ„๋„๋กœ ๋ณด๋‚ด๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ ์ด์œ ๋Š” with_items๊ฐ€ ์‚ฌ์šฉ๋˜์–ด ์—ฌ๋Ÿฌ ์ธ์Šคํ„ด์Šค๊ฐ€ ์žˆ๊ณ  ์ƒ์„ฑ๋œ ๊ฐ ์ธ์Šคํ„ด์Šค์˜ ๊ฒฐ๊ณผ๊ฐ€ ec2.results ์‚ฌ์ „์— ์ €์žฅ๋˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. with_items ์ƒ์„ฑ์„ ํ”ผํ•˜๋Š” ๋‹จ์ผ ์ธ์Šคํ„ด์Šค๊ฐ€ ํ•˜๋‚˜๋งŒ ์žˆ๋Š” ๊ฒฝ์šฐ ํ•„์š”ํ•œ ๊ฒƒ์„ ๊ฐ€์ ธ์™€์•ผ ํ•˜๊ฑฐ๋‚˜ ์ƒ์„ฑํ•  ์ธ์Šคํ„ด์Šค๊ฐ€ ์—ฌ๋Ÿฌ ๊ฐœ์ธ ๊ฒฝ์šฐ ๊ณต์šฉ IP์˜ with_items ์‚ฌ์šฉ์„ ์–ป์œผ๋ ค๋ฉด ec2.results ๋ฐ item.public_ip

IRC: #irc.freenode.net์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
๋ฉ”์ผ๋ง ๋ฆฌ์ŠคํŠธ: https://groups.google.com/forum/#!forum/ansible -project
๊ฑฐ๊ธฐ์— ๋“ค๋Ÿฌ์ฃผ์‹œ๋ฉด ๊ฐ์‚ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋ฒ„๊ทธ, pull ์š”์ฒญ, RFE ๋“ฑ์— ๋Œ€ํ•œ ๋ฌธ์ œ ์ถ”์ ๊ธฐ๋ฅผ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹ค์‹œ ํ•œ ๋ฒˆ ๊ฐ์‚ฌ๋“œ๋ฆฌ๋ฉฐ ๋ชฉ๋ก์ด๋‚˜ IRC์—์„œ ๋ต™๊ธฐ๋ฅผ ๊ธฐ๋Œ€ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ์‚ฌ ํ•ด์š”!

์ดํ•ดํ–ˆ๋‹ค. ์„ค๋ช…์„œ๋ฅผ ๋”ฐ๋ฅด๊ณ  ๋‹ค๋ฅธ ๊ฒฐ๊ณผ๋ฅผ ์–ป์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฒ„๊ทธ๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค.

@bennojoy ๊ฐ€ ๋งค์šฐ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ์›์ธ์„ ์„ค๋ช…ํ•œ ๋™์ผํ•œ "์‚ฌ์šฉ์ž ์˜ค๋ฅ˜"๋กœ ์ธํ•ด ์ด ์Šค๋ ˆ๋“œ์— ์™”์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๋งค์šฐ "๋ช…๋ฐฑํ•˜์ง€ ์•Š์€" ์ƒํ™ฉ์ž„์„ ๋ฐœ๊ฒฌํ•˜๋ฉด with_items ๊ฐ€ ๋งค์šฐ ์ผ๋ฐ˜์ ์ธ ํŒจํ„ด์ด ๋  ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ์ ์–ด๋„ ec2 ๋ชจ๋“ˆ ๋ฌธ์„œ์˜ ์˜ˆ์—์„œ ์ด๊ฒƒ์„ ์ฐธ์กฐํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์„ค์ •๋œ ๊ฐ€์šฉ์„ฑ ์˜์—ญ์—์„œ ์‹œ์Šคํ…œ์„ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰