๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ์ผ์ƒ ์—…๋ฌด์—์„œ Terraform์„ ์•Œ๊ณ  ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์ง€๋งŒ ์ด์— ๋Œ€ํ•œ ๋ชจ๋ฒ” ์‚ฌ๋ก€๋Š” ์•„์ง ํ˜•์„ฑ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๊ฐ ํŒ€์€ ๊ณ ์œ ํ•œ ์ ‘๊ทผ ๋ฐฉ์‹๊ณผ ๋ฐฉ๋ฒ•์„ ๊ณ ์•ˆํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ท€ํ•˜์˜ ์ธํ”„๋ผ๋Š” ๊ฑฐ์˜ ํ™•์‹คํ•˜๊ฒŒ ๋ช‡ ๊ฐ€์ง€ ๋ฆฌ์†Œ์Šค + ๋ช‡ ๋ช…์˜ ๊ฐœ๋ฐœ์ž๋กœ ๊ฐ„๋‹จํ•˜๊ฒŒ ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค. ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๋”ฐ๋ผ ๋ชจ๋“  ๋ฐฉํ–ฅ์œผ๋กœ ์„ฑ์žฅํ•ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค๋ฅผ Terraform ๋ชจ๋“ˆ๋กœ ๊ทธ๋ฃนํ™”ํ•˜๊ณ , ์ฝ”๋“œ๋ฅผ ํด๋”๋กœ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ• ๋“ฑ ๋ฌด์—‡์ด ์ž˜๋ชป๋  ์ˆ˜ ์žˆ๋Š”์ง€ ์ฐพ์œผ์‹ญ๋‹ˆ๊นŒ? (์œ ๋ช…ํ•œ ๋งˆ์ง€๋ง‰ ๋ง)

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

XNUMX๋…„ ๋™์•ˆ Github์—์„œ AWS์šฉ Terraform ์ปค๋ฎค๋‹ˆํ‹ฐ ๋ชจ๋“ˆ ๋ชจ์Œ์„ ๊ด€๋ฆฌํ•˜๊ณ  ํ”„๋กœ๋•์…˜์—์„œ Terraform์„ ์žฅ๊ธฐ์ ์œผ๋กœ ์œ ์ง€ ๊ด€๋ฆฌํ•œ ํ›„ Anton Babenko๋Š” ์ž์‹ ์˜ ๊ฒฝํ—˜์„ ๊ณต์œ ํ•  ์ค€๋น„๊ฐ€ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฏธ๋ž˜์— ๋ฌธ์ œ๊ฐ€ ๋˜์ง€ ์•Š๋„๋ก TF ๋ชจ๋“ˆ์„ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

๊ฐ•์—ฐ์ด ๋๋‚˜๋ฉด ์ฐธ๊ฐ€์ž๋“ค์€ Terraform์˜ ๋ฆฌ์†Œ์Šค ๊ด€๋ฆฌ ์›์น™, Terraform์˜ ๋ชจ๋“ˆ๊ณผ ๊ด€๋ จ๋œ ๋ชจ๋ฒ” ์‚ฌ๋ก€, ์ธํ”„๋ผ ๊ด€๋ฆฌ์™€ ๊ด€๋ จ๋œ ๋ช‡ ๊ฐ€์ง€ ์ง€์†์ ์ธ ํ†ตํ•ฉ ์›์น™์— ๋” ์ต์ˆ™ํ•ด์งˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ถ€์ธ ์„ฑ๋ช…: ์ด ๋ณด๊ณ ์„œ์˜ ๋‚ ์งœ๋Š” 2018๋…„ 2์›”๋กœ, ๋ฒŒ์จ 0.11๋…„์ด ์ง€๋‚ฌ์Šต๋‹ˆ๋‹ค. ๋ณด๊ณ ์„œ์—์„œ ๋…ผ์˜๋œ Terraform 2 ๋ฒ„์ „์€ ๋” ์ด์ƒ ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ง€๋‚œ 2๋…„ ๋™์•ˆ ๋งŽ์€ ํ˜์‹ , ๊ฐœ์„  ๋ฐ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ํฌํ•จ๋œ XNUMX๊ฐœ์˜ ์ƒˆ ๋ฆด๋ฆฌ์Šค๊ฐ€ ์ถœ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์— ์ฃผ์˜ํ•˜์‹œ๊ณ  ๋ฌธ์„œ๋ฅผ ํ™•์ธํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋งํฌ :

์ œ ์ด๋ฆ„์€ ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ”์ž…๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ๋ถ„ ์ค‘ ์ผ๋ถ€๋Š” ์ œ๊ฐ€ ์ž‘์„ฑํ•œ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ–ˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ํ†ต๊ณ„์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด์ œ ๊ทธ ์–ด๋Š ๋•Œ๋ณด๋‹ค ๋” ์ž์‹ ์žˆ๊ฒŒ ์ด์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

์ €๋Š” Terraform์—์„œ ์ผํ•˜๊ณ  ์žˆ์œผ๋ฉฐ 2015๋…„๋ถ€ํ„ฐ Terraform ๋ฐ Amazon๊ณผ ๊ด€๋ จ๋œ ์ˆ˜๋งŽ์€ ์˜คํ”ˆ ์†Œ์Šค ํ”„๋กœ์ ํŠธ์— ์ ๊ทน์ ์œผ๋กœ ์ฐธ์—ฌํ•˜๊ณ  ๊ธฐ์—ฌํ•ด ์™”์Šต๋‹ˆ๋‹ค.

๊ทธ ์ดํ›„๋กœ ๋‚˜๋Š” ํฅ๋ฏธ๋กœ์šด ๋ฐฉ์‹์œผ๋กœ ํ‘œํ˜„ํ•˜๊ธฐ์— ์ถฉ๋ถ„ํ•œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‚˜๋Š” ์ง€๊ธˆ ์ด๊ฒƒ์— ๋Œ€ํ•ด ๋‹น์‹ ์—๊ฒŒ ๋งํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

Terraform ์ž‘์—…์˜ ๋ณต์žก์„ฑ๊ณผ ์„ธ๋ถ€ ์‚ฌํ•ญ์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๊ฒƒ์€ ์‹ค์ œ๋กœ HighLoad์˜ ์ฃผ์ œ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ์ด์ œ ๊ทธ ์ด์œ ๋ฅผ ์ดํ•ดํ•˜๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์‹œ๊ฐ„์ด ์ง€๋‚˜๋ฉด์„œ ๋‚˜๋Š” Terraform ๋ชจ๋“ˆ์„ ์ž‘์„ฑํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๋“ค์ด ์งˆ๋ฌธ์„ ์ž‘์„ฑํ–ˆ๊ณ , ์ œ๊ฐ€ ๋‹ค์‹œ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ์‚ฌ์ „ ์ปค๋ฐ‹ ํ›„ํฌ ๋“ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ฝ”๋“œ ํ˜•์‹์„ ์ง€์ •ํ•˜๋Š” ๋‹ค์–‘ํ•œ ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.

ํฅ๋ฏธ๋กœ์šด ํ”„๋กœ์ ํŠธ๊ฐ€ ๋งŽ์•˜์Šต๋‹ˆ๋‹ค. ์ €๋Š” ์ปดํ“จํ„ฐ๊ฐ€ ์ €์™€ ํ”„๋กœ๊ทธ๋ž˜๋จธ๋ฅผ ์œ„ํ•ด ์ ์  ๋” ๋งŽ์€ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒƒ์„ ์ข‹์•„ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ฝ”๋“œ ์ƒ์„ฑ์„ ์ข‹์•„ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ํ˜„์žฌ ์‹œ๊ฐ์  ๋‹ค์ด์–ด๊ทธ๋žจ์—์„œ Terraform ์ฝ”๋“œ ์ƒ์„ฑ๊ธฐ๋ฅผ ์ž‘์—…ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์•„๋งˆ๋„ ์—ฌ๋Ÿฌ๋ถ„ ์ค‘ ์ผ๋ถ€๋Š” ๊ทธ๊ฒƒ์„ ๋ณธ ์ ์ด ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ํ™”์‚ดํ‘œ๊ฐ€ ์žˆ๋Š” ์•„๋ฆ„๋‹ค์šด ์ƒ์ž์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  "๋‚ด๋ณด๋‚ด๊ธฐ" ๋ฒ„ํŠผ์„ ํด๋ฆญํ•ด์„œ ๋ชจ๋‘ ์ฝ”๋“œ๋กœ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค๋ฉด ์ •๋ง ์ข‹์„ ๊ฒƒ ๊ฐ™์•„์š”.

์ €๋Š” ์šฐํฌ๋ผ์ด๋‚˜ ์ถœ์‹ ์ด์—์š”. ๋‚˜๋Š” ์ˆ˜๋…„ ๋™์•ˆ ๋…ธ๋ฅด์›จ์ด์— ์‚ด์•˜์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ ๋ณธ ๋ณด๊ณ ์„œ์˜ ์ •๋ณด๋Š” ๋‚ด ์ด๋ฆ„์„ ์•Œ๊ณ  ์†Œ์…œ ๋„คํŠธ์›Œํฌ์—์„œ ๋‚˜๋ฅผ ์ฐพ์•„์ค€ ์‚ฌ๋žŒ๋“ค๋กœ๋ถ€ํ„ฐ ์ˆ˜์ง‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ฑฐ์˜ ํ•ญ์ƒ ๊ฐ™์€ ๋ณ„๋ช…์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

https://github.com/terraform-aws-modules
https://registry.terraform.io/namespaces/terraform-aws-modules

์•ž์„œ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด ์ €๋Š” Terraform AWS ๋ชจ๋“ˆ์˜ ์ฃผ์š” ๊ด€๋ฆฌ์ž์ž…๋‹ˆ๋‹ค. ์ด ๋ชจ๋“ˆ์€ ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ์ž‘์—…(VPC, Autoscaling, RDS)์„ ์œ„ํ•œ ๋ชจ๋“ˆ์„ ํ˜ธ์ŠคํŒ…ํ•˜๋Š” GitHub์˜ ๊ฐ€์žฅ ํฐ ์ €์žฅ์†Œ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๊ทธ๋ฆฌ๊ณ  ์ง€๊ธˆ ๋“ค์€ ๊ฒƒ์ด ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ๊ฒƒ์ž…๋‹ˆ๋‹ค. Terraform์ด ๋ฌด์—‡์ธ์ง€ ์ดํ•ดํ•˜๊ณ  ์žˆ๋Š”์ง€ ์˜์‹ฌ์Šค๋Ÿฌ์šฐ๋ฉด ๋‹ค๋ฅธ ๊ณณ์—์„œ ์‹œ๊ฐ„์„ ๋ณด๋‚ด๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” ๋งŽ์€ ๊ธฐ์ˆ  ์šฉ์–ด๊ฐ€ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‚˜๋Š” ์ฃผ์ €ํ•˜์ง€ ์•Š๊ณ  ๋ณด๊ณ ์„œ์˜ ์ˆ˜์ค€์ด ์ตœ๊ณ ๋ผ๊ณ  ์„ ์–ธํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๋งŽ์€ ์„ค๋ช… ์—†์ด๋„ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋งํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

Terraform์€ 2014๋…„์— ์ธํ”„๋ผ๋ฅผ ์ฝ”๋“œ๋กœ ์ž‘์„ฑ, ๊ณ„ํš ๋ฐ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์œ ํ‹ธ๋ฆฌํ‹ฐ๋กœ ๋“ฑ์žฅํ–ˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ํ•ต์‹ฌ ๊ฐœ๋…์€ "์ฝ”๋“œ๋กœ์„œ์˜ ์ธํ”„๋ผ"์ž…๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ๋งํ–ˆ๋“ฏ์ด ๋ชจ๋“  ๋ฌธ์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. terraform.io. ๋Œ€๋ถ€๋ถ„์˜ ์‚ฌ๋žŒ๋“ค์ด ์ด ์‚ฌ์ดํŠธ์— ๋Œ€ํ•ด ์•Œ๊ณ  ๋ฌธ์„œ๋ฅผ ์ฝ์—ˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด, ๋‹น์‹ ์€ ์˜ฌ๋ฐ”๋ฅธ ์œ„์น˜์— ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ด๋Š” ๋จผ์ € ๋ช‡ ๊ฐ€์ง€ ๋ณ€์ˆ˜๋ฅผ ์ •์˜ํ•˜๋Š” ์ผ๋ฐ˜ Terraform ๊ตฌ์„ฑ ํŒŒ์ผ์˜ ๋ชจ์Šต์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ด ๊ฒฝ์šฐ "aws_region"์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๊ทธ๋Ÿฐ ๋‹ค์Œ ์–ด๋–ค ๋ฆฌ์†Œ์Šค๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ์€์ง€ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ข…์†์„ฑ ๋ฐ ๊ณต๊ธ‰์ž๋ฅผ ๋กœ๋“œํ•˜๊ธฐ ์œ„ํ•ด ์ผ๋ถ€ ๋ช…๋ น, ํŠนํžˆ "terraform init"์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๊ทธ๋ฆฌ๊ณ  ์ง€์ •๋œ ๊ตฌ์„ฑ์ด ์šฐ๋ฆฌ๊ฐ€ ์ƒ์„ฑํ•œ ๋ฆฌ์†Œ์Šค์™€ ์ผ์น˜ํ•˜๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด โ€œterraform applyโ€ ๋ช…๋ น์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด์ „์— ์•„๋ฌด๊ฒƒ๋„ ์ƒ์„ฑํ•˜์ง€ ์•Š์•˜์œผ๋ฏ€๋กœ Terraform์—์„œ๋Š” ์ด๋Ÿฌํ•œ ๋ฆฌ์†Œ์Šค๋ฅผ ์ƒ์„ฑํ•˜๋ผ๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์šฐ๋ฆฌ๋Š” ์ด๊ฒƒ์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์šฐ๋ฆฌ๋Š” seasnail์ด๋ผ๋Š” ๋ฒ„ํ‚ท์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์œ ์‚ฌํ•œ ์œ ํ‹ธ๋ฆฌํ‹ฐ๋„ ์—ฌ๋Ÿฌ ๊ฐœ ์žˆ์Šต๋‹ˆ๋‹ค. Amazon์„ ์‚ฌ์šฉํ•˜๋Š” ๋งŽ์€ ๋ถ„๋“ค์€ AWS CloudFormation์ด๋‚˜ Google Cloud ๋ฐฐํฌ ๊ด€๋ฆฌ์ž ๋˜๋Š” Azure Resource Manager๋ฅผ ์•Œ๊ณ  ๊ณ„์‹ญ๋‹ˆ๋‹ค. ๊ฐ๊ฐ์€ ํผ๋ธ”๋ฆญ ํด๋ผ์šฐ๋“œ ์ œ๊ณต์ž ๋‚ด์—์„œ ๋ฆฌ์†Œ์Šค๋ฅผ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ์ผ์ข…์˜ ์ž์ฒด ๊ตฌํ˜„์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. Terraform์„ ์‚ฌ์šฉํ•˜๋ฉด 100๊ฐœ ์ด์ƒ์˜ ๊ณต๊ธ‰์ž๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ํŠนํžˆ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. (์ž์„ธํ•œ ๋‚ด์šฉ์€ ์—ฌ๊ธฐ์—)

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

Terraform์ด ์ฒ˜์Œ๋ถ€ํ„ฐ ์ถ”๊ตฌํ•œ ๋ชฉํ‘œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • Terraform์€ ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ๋‹จ์ผ ๋ณด๊ธฐ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ๋ชจ๋“  ์ตœ์‹  ํ”Œ๋žซํผ์„ ์ง€์›ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ทธ๋ฆฌ๊ณ  Terraform์€ ์ฒ˜์Œ๋ถ€ํ„ฐ ์ธํ”„๋ผ๋ฅผ ์•ˆ์ „ํ•˜๊ณ  ์˜ˆ์ธก ๊ฐ€๋Šฅํ•˜๊ฒŒ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋Š” ์œ ํ‹ธ๋ฆฌํ‹ฐ๋กœ ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

2014๋…„์—๋Š” ์ด๋Ÿฌํ•œ ๋งฅ๋ฝ์—์„œ โ€œ์˜ˆ์ธก ๊ฐ€๋Šฅโ€์ด๋ผ๋Š” ๋‹จ์–ด๊ฐ€ ๋งค์šฐ ์ด์ƒํ•˜๊ฒŒ ๋“ค๋ ธ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

Terraform์€ ๋ฒ”์šฉ ์œ ํ‹ธ๋ฆฌํ‹ฐ์ž…๋‹ˆ๋‹ค. API๊ฐ€ ์žˆ์œผ๋ฉด ๋ชจ๋“  ๊ฒƒ์„ ์™„๋ฒฝํ•˜๊ฒŒ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • 120๊ฐœ ์ด์ƒ์˜ ์ œ๊ณต์—…์ฒด๋ฅผ ์ด์šฉํ•˜์—ฌ ์›ํ•˜๋Š” ๋ชจ๋“  ๊ฒƒ์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์˜ˆ๋ฅผ ๋“ค์–ด Terraform์„ ์‚ฌ์šฉํ•˜์—ฌ GitHub ์ €์žฅ์†Œ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค๋ฅผ ์„ค๋ช…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • Jira์—์„œ ๋ฒ„๊ทธ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๋‹ซ์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
  • New Relic ์ง€ํ‘œ๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ •๋ง๋กœ ์›ํ•œ๋‹ค๋ฉด ๋“œ๋กญ๋ฐ•์Šค์—์„œ ํŒŒ์ผ์„ ์ƒ์„ฑํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋Š” ๋ชจ๋‘ Go์—์„œ ์„ค๋ช…ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐœ๋ฐฉํ˜• API๊ฐ€ ์žˆ๋Š” Terraform ๊ณต๊ธ‰์ž๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ด์ „ ์Šฌ๋ผ์ด๋“œ์—์„œ ๋ณด์—ฌ๋“œ๋ฆฐ ๊ฒƒ์ฒ˜๋Ÿผ Terraform์„ ์‚ฌ์šฉํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ๊ณ , ์‚ฌ์ดํŠธ์—์„œ ์ผ๋ถ€ ๋ฌธ์„œ๋ฅผ ์ฝ๊ณ , ๋น„๋””์˜ค๋ฅผ ๋ณด๊ณ , main.tf๋ฅผ ์ž‘์„ฑํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๊ทธ๋ฆฌ๊ณ  ๋ชจ๋“  ๊ฒƒ์ด ํ›Œ๋ฅญํ•ฉ๋‹ˆ๋‹ค. VPC๋ฅผ ์ƒ์„ฑํ•˜๋Š” ํŒŒ์ผ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

VPC๋ฅผ ์ƒ์„ฑํ•˜๋ ค๋ฉด ๋Œ€๋žต ๋‹ค์Œ๊ณผ ๊ฐ™์€ 12๊ฐœ ๋ผ์ธ์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์ƒ์„ฑํ•˜๋ ค๋Š” ์ง€์—ญ๊ณผ ์‚ฌ์šฉํ•  IP ์ฃผ์†Œ์˜ cidr_block์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๊ฒŒ ๋‹ค์•ผ.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋‹น์—ฐํžˆ ํ”„๋กœ์ ํŠธ๋Š” ์ ์ง„์ ์œผ๋กœ ์„ฑ์žฅํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๊ทธ๋ฆฌ๊ณ  ๋ฆฌ์†Œ์Šค, ๋ฐ์ดํ„ฐ ์†Œ์Šค, ์ƒˆ๋กœ์šด ๊ณต๊ธ‰์ž์™€ ํ†ตํ•ฉ, ๊ฐ‘์ž๊ธฐ Terraform์„ ์‚ฌ์šฉํ•˜์—ฌ GitHub ๊ณ„์ •์˜ ์‚ฌ์šฉ์ž๋ฅผ ๊ด€๋ฆฌํ•˜๋ ค๋Š” ๋“ฑ ๋งŽ์€ ์ƒˆ๋กœ์šด ํ•ญ๋ชฉ์„ ์ถ”๊ฐ€ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๊ฒƒ์„ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. DNS ๊ณต๊ธ‰์ž๋Š” ๋ชจ๋“  ๊ฒƒ์„ ๊ต์ฐจํ•ฉ๋‹ˆ๋‹ค. Terraform์„ ์‚ฌ์šฉํ•˜๋ฉด ์ด๋ฅผ ์‰ฝ๊ฒŒ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋‹ค์Œ ์˜ˆ๋ฅผ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

VPC์˜ ๋ฆฌ์†Œ์Šค๊ฐ€ ์ธํ„ฐ๋„ท์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๊ธฐ ์œ„ํ•ด internet_gateway๋ฅผ ์ ์ฐจ์ ์œผ๋กœ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์ข‹์€ ์ƒ๊ฐ์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

main.tf์˜ ์ƒ๋‹จ ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

main.tf์˜ ํ•˜๋‹จ ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค.

๊ทธ๋Ÿฐ ๋‹ค์Œ ์„œ๋ธŒ๋„ท์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. NAT ๊ฒŒ์ดํŠธ์›จ์ด, ๊ฒฝ๋กœ, ๋ผ์šฐํŒ… ํ…Œ์ด๋ธ” ๋ฐ ๊ธฐํƒ€ ์—ฌ๋Ÿฌ ์„œ๋ธŒ๋„ท์„ ์ถ”๊ฐ€ํ•˜๋ ค๋Š” ์‹œ์ ์—๋Š” 38๊ฐœ ํšŒ์„ ์ด ์•„๋‹ˆ๋ผ ๋Œ€๋žต 200-300๊ฐœ ํšŒ์„ ์ด ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ฆ‰, main.tf ํŒŒ์ผ์ด ์ ์ฐจ ์ปค์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์‚ฌ๋žŒ๋“ค์€ ๋ชจ๋“  ๊ฒƒ์„ ํ•˜๋‚˜์˜ ํŒŒ์ผ์— ์ €์žฅํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค. 10-20Kb๊ฐ€ main.tf์— ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค. 10-20Kb๊ฐ€ ํ…์ŠคํŠธ ์ฝ˜ํ…์ธ ๋ผ๊ณ  ์ƒ์ƒํ•ด ๋ณด์„ธ์š”. ๊ทธ๋ฆฌ๊ณ  ๋ชจ๋“  ๊ฒƒ์€ ๋ชจ๋“  ๊ฒƒ๊ณผ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ ์ฐจ์ ์œผ๋กœ ์ž‘์—…ํ•˜๊ธฐ๊ฐ€ ์–ด๋ ค์›Œ์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. 10-20Kb๊ฐ€ ์ข‹์€ ์‚ฌ์šฉ์ž ์‚ฌ๋ก€์ด๋ฉฐ ๋•Œ๋กœ๋Š” ๊ทธ ์ด์ƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์‚ฌ๋žŒ๋“ค์€ ์ด๊ฒƒ์ด ํ•ญ์ƒ ๋‚˜์˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ฝ”๋“œํ˜• ์ธํ”„๋ผ๊ฐ€ ์•„๋‹Œ ์ผ๋ฐ˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์šฐ๋ฆฌ๋Š” ๋‹ค์–‘ํ•œ ํด๋ž˜์Šค, ํŒจํ‚ค์ง€, ๋ชจ๋“ˆ, ๊ทธ๋ฃนํ™”๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ ์ต์ˆ™ํ•ฉ๋‹ˆ๋‹ค. Terraform์„ ์‚ฌ์šฉํ•˜๋ฉด ๊ฑฐ์˜ ๋™์ผํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

  • ์ฝ”๋“œ๊ฐ€ ๋Š˜์–ด๋‚˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ฆฌ์†Œ์Šค ๊ฐ„์˜ ์ข…์†์„ฑ๋„ ์ฆ๊ฐ€ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๊ทธ๋ฆฌ๊ณ  ์šฐ๋ฆฌ์—๊ฒŒ๋Š” ์ •๋ง ํฐ ๋„์›€์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๋” ์ด์ƒ ์ด๋ ‡๊ฒŒ ์‚ด ์ˆ˜ ์—†๋‹ค๋Š” ๊ฒƒ์„ ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ์˜ ์ฝ”๋“œ๋Š” ๊ฑฐ๋Œ€ํ•ด์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌผ๋ก  10-20Kb๋Š” ๊ทธ๋‹ค์ง€ ๊ด‘๋Œ€ํ•˜์ง€๋Š” ์•Š์ง€๋งŒ ๋„คํŠธ์›Œํฌ ์Šคํƒ์— ๋Œ€ํ•ด์„œ๋งŒ ์ด์•ผ๊ธฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ฆ‰, ๋„คํŠธ์›Œํฌ ๋ฆฌ์†Œ์Šค๋งŒ ์ถ”๊ฐ€ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” 100Kb๋ฅผ ์‰ฝ๊ฒŒ ์—ฎ์„ ์ˆ˜ ์žˆ๋Š” Application Load Balancer, ๋ฐฐํฌ ES ํด๋Ÿฌ์Šคํ„ฐ, Kubernetes ๋“ฑ์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹™๋‹ˆ๋‹ค. ์ด ๋‚ด์šฉ์„ ๋ชจ๋‘ ์ ์–ด ๋ณด๋ฉด Terraform์ด Terraform ๋ชจ๋“ˆ์„ ์ œ๊ณตํ•œ๋‹ค๋Š” ์‚ฌ์‹ค์„ ๊ณง ์•Œ๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

Terraform ๋ชจ๋“ˆ์€ ๊ทธ๋ฃน์œผ๋กœ ๊ด€๋ฆฌ๋˜๋Š” ๋…๋ฆฝํ˜• Terraform ๊ตฌ์„ฑ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด Terraform ๋ชจ๋“ˆ์— ๋Œ€ํ•ด ์•Œ์•„์•ผ ํ•  ์ „๋ถ€์ž…๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ ์ „ํ˜€ ๋˜‘๋˜‘ํ•˜์ง€ ์•Š์œผ๋ฉฐ ๋ฌด์–ธ๊ฐ€์— ๋”ฐ๋ผ ๋ณต์žกํ•œ ์—ฐ๊ฒฐ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ๋ชจ๋“  ๊ฒƒ์€ ๊ฐœ๋ฐœ์ž์˜ ์–ด๊นจ์— ๋‹ฌ๋ ค ์žˆ์Šต๋‹ˆ๋‹ค. ์ฆ‰, ์ด๊ฒƒ์€ ์ด๋ฏธ ์ž‘์„ฑํ•œ ์ผ์ข…์˜ Terraform ๊ตฌ์„ฑ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ฐ„๋‹จํžˆ ๊ทธ๋ฃน์ด๋ผ๊ณ  ๋ถ€๋ฅผ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๊ทธ๋ž˜์„œ ์šฐ๋ฆฌ๋Š” 10-20-30Kb์˜ ์ฝ”๋“œ๋ฅผ ์–ด๋–ป๊ฒŒ ์ตœ์ ํ™”ํ• ์ง€ ์ดํ•ดํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ผ๋ถ€ ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์ ์ฐจ ๊นจ๋‹ซ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ฒ˜์Œ ์ ‘ํ•˜๋Š” ๋ชจ๋“ˆ ์œ ํ˜•์€ ๋ฆฌ์†Œ์Šค ๋ชจ๋“ˆ์ž…๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ ๊ท€ํ•˜์˜ ์ธํ”„๋ผ๊ฐ€ ๋ฌด์—‡์ธ์ง€, ๋น„์ฆˆ๋‹ˆ์Šค๊ฐ€ ๋ฌด์—‡์ธ์ง€, ์กฐ๊ฑด์ด ๋ฌด์—‡์ธ์ง€, ์–ด๋””์— ์žˆ๋Š”์ง€ ์ดํ•ดํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๋ฐ”๋กœ ์ œ๊ฐ€ ์˜คํ”ˆ ์†Œ์Šค ์ปค๋ฎค๋‹ˆํ‹ฐ์™€ ํ•จ๊ป˜ โ€‹โ€‹๊ด€๋ฆฌํ•˜๊ณ  ์ธํ”„๋ผ์˜ ์ดˆ๊ธฐ ๊ตฌ์„ฑ ์š”์†Œ๋กœ ์ œ์‹œํ•˜๋Š” ๋ชจ๋“ˆ์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋ฆฌ์†Œ์Šค ๋ชจ๋“ˆ์˜ ์˜ˆ.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋ฆฌ์†Œ์Šค ๋ชจ๋“ˆ์„ ํ˜ธ์ถœํ•  ๋•Œ ํ•ด๋‹น ์ฝ˜ํ…์ธ ๋ฅผ ๋กœ๋“œํ•  ๊ฒฝ๋กœ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋‹ค์šด๋กœ๋“œํ•˜๋ ค๋Š” ๋ฒ„์ „์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์šฐ๋ฆฌ๋Š” ๊ฑฐ๊ธฐ์— ๋งŽ์€ ์ธ์ˆ˜๋ฅผ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๊ฒŒ ๋‹ค์•ผ. ์ด๊ฒƒ์ด ์šฐ๋ฆฌ๊ฐ€ ์ด ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•  ๋•Œ ์•Œ์•„์•ผ ํ•  ์ „๋ถ€์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋งŽ์€ ์‚ฌ๋žŒ๋“ค์€ ์ตœ์‹  ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ชจ๋“  ๊ฒƒ์ด ์•ˆ์ •์ ์ผ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ. ์ธํ”„๋ผ์˜ ๋ฒ„์ „์ด ์ง€์ •๋˜์–ด์•ผ ํ•˜๋ฉฐ, ์ด ๊ตฌ์„ฑ ์š”์†Œ ๋˜๋Š” ํ•ด๋‹น ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ๋ฐฐํฌ๋œ ๋ฒ„์ „์„ ๋ช…ํ™•ํ•˜๊ฒŒ ๋Œ€๋‹ตํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

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

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์‚ฌ์šฉ์ž๋Š” ๋‚ด๋ถ€์—์„œ ์–ด๋–ป๊ฒŒ ๋งŒ๋“ค์–ด์ง€๋Š”์ง€ ์•Œ ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋ฆฌ์†Œ์Šค ๋ชจ๋“ˆ๋กœ ๊ตฌ์„ฑ๋œ ๋‘ ๋ฒˆ์งธ ์œ ํ˜•์˜ ๋ชจ๋“ˆ์€ ์ด๋ฏธ ๊ท€ํ•˜์˜ ๋น„์ฆˆ๋‹ˆ์Šค์— ๋” ์ ํ•ฉํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ข…์ข… ์ด๋Š” Terraform์˜ ํ™•์žฅ์ด๋ฉฐ ํšŒ์‚ฌ ํ‘œ์ค€์— ๋”ฐ๋ผ ํƒœ๊ทธ์— ๋Œ€ํ•ด ์—„๊ฒฉํ•œ ๊ฐ’์„ ์„ค์ •ํ•˜๋Š” ์žฅ์†Œ์ž…๋‹ˆ๋‹ค. Terraform์—์„œ ํ˜„์žฌ ์‚ฌ์šฉ์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š” ๊ธฐ๋Šฅ์„ ์—ฌ๊ธฐ์— ์ถ”๊ฐ€ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ”๋กœ ์ง€๊ธˆ์ž…๋‹ˆ๋‹ค. ์ด์ œ ๋ฒ„์ „ 0.11์€ ๊ณง ๊ณผ๊ฑฐ์˜ ์ผ์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์—ฌ์ „ํžˆ ์ „์ฒ˜๋ฆฌ๊ธฐ, jsonnet, cookiecutter ๋ฐ ๊ธฐํƒ€ ์—ฌ๋Ÿฌ ๊ฐ€์ง€๊ฐ€ ๋ณธ๊ฒฉ์ ์ธ ์ž‘์—…์— ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ๋ณด์กฐ ๋ฉ”์ปค๋‹ˆ์ฆ˜์ž…๋‹ˆ๋‹ค.

๋‹ค์Œ์—๋Š” ์ด์— ๋Œ€ํ•œ ๋ช‡ ๊ฐ€์ง€ ์˜ˆ๋ฅผ ๋ณด์—ฌ ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ธํ”„๋ผ ๋ชจ๋“ˆ์€ ์ •ํ™•ํžˆ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ํ˜ธ์ถœ๋ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ฝ˜ํ…์ธ ๋ฅผ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ๋Š” ์ถœ์ฒ˜๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์—ฌ๋Ÿฌ ๊ฐ’์ด ์ „๋‹ฌ๋˜์–ด ์ด ๋ชจ๋“ˆ์— ์ „๋‹ฌ๋ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋‹ค์Œ์œผ๋กœ ์ด ๋ชจ๋“ˆ ๋‚ด์—์„œ๋Š” VPC ๋˜๋Š” Application Load Balancer๋ฅผ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜ ๋ณด์•ˆ ๊ทธ๋ฃน ๋˜๋Š” Elastic Container Service ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ์—ฌ๋Ÿฌ ๋ฆฌ์†Œ์Šค ๋ชจ๋“ˆ์ด ํ˜ธ์ถœ๋ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋ชจ๋“ˆ์—๋Š” ๋‘ ๊ฐ€์ง€ ์œ ํ˜•์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ œ๊ฐ€ ์ด ๋ณด๊ณ ์„œ์— ๋ถ„๋ฅ˜ํ•œ ๋Œ€๋ถ€๋ถ„์˜ ์ •๋ณด๋Š” ๋ฌธ์„œ์— ๊ธฐ๋ก๋˜์–ด ์žˆ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฅผ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ํ˜„์žฌ Terraform์˜ ๋ฌธ์„œ์—๋Š” ์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ์ด ์žˆ๊ณ  ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ๋‚˜์™€ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ƒ๋‹นํžˆ ๋ฌธ์ œ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ทธ๋…€๋Š” ์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ์„ ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉํ•˜๋Š”์ง€, ์™œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋” ์ข‹์€์ง€๋Š” ๋งํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ ๋งค์šฐ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ํ•จ๊ป˜ ์‚ด ์ˆ˜ ์—†๋Š” ๊ธ€์„ ์”๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋‹ค์Œ์—๋Š” ์ด๋Ÿฌํ•œ ๋ชจ๋“ˆ์„ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ์ด๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž‘์—…ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

Terraform ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ - https://registry.terraform.io/

ํŒ #0์€ ๋ฆฌ์†Œ์Šค ๋ชจ๋“ˆ์„ ์ž‘์„ฑํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ชจ๋“ˆ์˜ ๋Œ€๋ถ€๋ถ„์€ ์ด๋ฏธ ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์•ž์„œ ๋งํ–ˆ๋“ฏ์ด ์ด ๋ชจ๋“ˆ์€ ์˜คํ”ˆ ์†Œ์Šค์ด๊ณ  ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์„ ์ „ํ˜€ ํฌํ•จํ•˜์ง€ ์•Š์œผ๋ฉฐ IP ์ฃผ์†Œ, ๋น„๋ฐ€๋ฒˆํ˜ธ ๋“ฑ์— ๋Œ€ํ•œ ํ•˜๋“œ์ฝ”๋”ฉ๋œ ๊ฐ’์ด ์—†์Šต๋‹ˆ๋‹ค. ๋ชจ๋“ˆ์€ ๋งค์šฐ ์œ ์—ฐํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ทธ๊ฒƒ์€ ์ด๋ฏธ ์ž‘์„ฑ๋˜์—ˆ์„ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์Šต๋‹ˆ๋‹ค. Amazon์˜ ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ๋ชจ๋“ˆ์ด ๋งŽ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์•ฝ 650๊ฐœ. ๊ทธ๋ฆฌ๊ณ  ๋Œ€๋ถ€๋ถ„ ํ’ˆ์งˆ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ด ์˜ˆ์—์„œ๋Š” ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๋‹น์‹ ์—๊ฒŒ ์™€์„œ โ€œ๋‚˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ์›ํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋„๋ก ๋ชจ๋“ˆ์„ ๋งŒ๋“œ์„ธ์š”." ๊ทธ ์‚ฌ๋žŒ์€ Amazon์ด๋‚˜ Terraform์˜ ๊ตฌํ˜„ ์„ธ๋ถ€ ์‚ฌํ•ญ์„ ๋ชจ๋ฆ…๋‹ˆ๋‹ค. ๊ทธ๋Š” ๋‹จ์ˆœํžˆ "MSSQL์„ ๊ด€๋ฆฌํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค"๋ผ๊ณ  ๋งํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ๋ชจ๋“ˆ์„ ํ˜ธ์ถœํ•˜๊ณ  ๊ฑฐ๊ธฐ์— ์—”์ง„ ์œ ํ˜•์„ ์ „๋‹ฌํ•˜๊ณ  ์‹œ๊ฐ„๋Œ€๋ฅผ ํ‘œ์‹œํ•œ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๊ทธ๋ฆฌ๊ณ  ์‚ฌ๋žŒ์€ ์ด ๋ชจ๋“ˆ ๋‚ด์— ๋‘ ๊ฐœ์˜ ์„œ๋กœ ๋‹ค๋ฅธ ๋ฆฌ์†Œ์Šค๋ฅผ ์ƒ์„ฑํ•  ๊ฒƒ์ด๋ผ๋Š” ์‚ฌ์‹ค์„ ์•Œ์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•˜๋‚˜๋Š” MSSQL์šฉ์ด๊ณ  ๋‹ค๋ฅธ ํ•˜๋‚˜๋Š” ๋‹ค๋ฅธ ๋ชจ๋“  ๋ฆฌ์†Œ์Šค์šฉ์ž…๋‹ˆ๋‹ค. Terraform 0.11์—์„œ๋Š” ์‹œ๊ฐ„๋Œ€ ๊ฐ’์„ ์„ ํƒ ์‚ฌํ•ญ์œผ๋กœ ์ง€์ •ํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

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

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ด๊ฒƒ์€ ๋‘ ๋ฒˆ์งธ ์ฃผ์žฅ์œผ๋กœ, ํ•œ๋™์•ˆ Terraform์„ ์‚ฌ์šฉํ•ด ์™”๋‹ค๋ฉด ๋งค์šฐ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ํšŒ์‚ฌ์˜ ๋ชจ๋“  Terraform ๋ชจ๋“ˆ์„ ์ €์žฅํ•˜๋Š” ์ €์žฅ์†Œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๋”ฐ๋ผ ์ด ํ”„๋กœ์ ํŠธ์˜ ํฌ๊ธฐ๊ฐ€ XNUMX~XNUMXMB๋กœ ์ปค์ง€๋Š” ๊ฒƒ์€ ๋งค์šฐ ์ •์ƒ์ ์ธ ํ˜„์ƒ์ž…๋‹ˆ๋‹ค. ์ด๊ฑด ๊ดœ์ฐฎ์•„.

๊ทธ๋Ÿฌ๋‚˜ ๋ฌธ์ œ๋Š” Terraform์ด ์ด๋Ÿฌํ•œ ๋ชจ๋“ˆ์„ ํ˜ธ์ถœํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๊ฐ ๊ฐœ๋ณ„ ์‚ฌ์šฉ์ž๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ๋ชจ๋“ˆ์„ ํ˜ธ์ถœํ•˜๋Š” ๊ฒฝ์šฐ Terraform์€ ๋จผ์ € ์ „์ฒด ์ €์žฅ์†Œ๋ฅผ ๋กœ๋“œํ•œ ๋‹ค์Œ ํ•ด๋‹น ํŠน์ • ๋ชจ๋“ˆ์ด ์žˆ๋Š” ํด๋”๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋งค๋ฒˆ 100MB๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. 200๋ช… ๋˜๋Š” 100๋ช…์˜ ์‚ฌ์šฉ์ž๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒฝ์šฐ 200MB ๋˜๋Š” XNUMXMB๋ฅผ ๋‹ค์šด๋กœ๋“œํ•œ ๋‹ค์Œ ํ•ด๋‹น ํด๋”๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋‹น์—ฐํžˆ "Terraform init"์„ ๋ˆ„๋ฅผ ๋•Œ๋งˆ๋‹ค ๋งŽ์€ ํ•ญ๋ชฉ์„ ๋‹ค์šด๋กœ๋“œํ•˜๊ณ  ์‹ถ์ง€๋Š” ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

https://github.com/mbtproject/mbt

์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ๋‘ ๊ฐ€์ง€ ํ•ด๊ฒฐ์ฑ…์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ๋Š” ์ƒ๋Œ€ ๊ฒฝ๋กœ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ํด๋”๊ฐ€ ๋กœ์ปฌ(./)์ด๋ผ๋Š” ๊ฒƒ์„ ์ฝ”๋“œ์— ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ฌด์—‡์ด๋“  ์‹œ์ž‘ํ•˜๊ธฐ ์ „์— ์ด ์ €์žฅ์†Œ์˜ Git ๋ณต์ œ๋ฅผ ๋กœ์ปฌ๋กœ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•œ๋ฒˆ ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

๋ฌผ๋ก  ๋‹จ์ ๋„ ๋งŽ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋ฒ„์ „ ๊ด€๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด๊ฒƒ์€ ๋•Œ๋กœ๋Š” ํ•จ๊ป˜ ์‚ด๊ธฐ๊ฐ€ ์–ด๋ ต์Šต๋‹ˆ๋‹ค.

๋‘ ๋ฒˆ์งธ ์†”๋ฃจ์…˜. ํ•˜์œ„ ๋ชจ๋“ˆ์ด ๋งŽ๊ณ  ์ด๋ฏธ ํ™•๋ฆฝ๋œ ํŒŒ์ดํ”„๋ผ์ธ์ด ์žˆ๋Š” ๊ฒฝ์šฐ MBT ํ”„๋กœ์ ํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋‹จ์ผ ์ €์žฅ์†Œ์—์„œ ๋‹ค์–‘ํ•œ ํŒจํ‚ค์ง€๋ฅผ ์ˆ˜์ง‘ํ•˜์—ฌ S3์— ์—…๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์•„์ฃผ ์ข‹์€ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ iam-user-1.0.0.zip ํŒŒ์ผ์˜ ๋ฌด๊ฒŒ๋Š” 1Kb์— ๋ถˆ๊ณผํ•ฉ๋‹ˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด ์ด ๋ฆฌ์†Œ์Šค๋ฅผ ์ƒ์„ฑํ•˜๋Š” ์ฝ”๋“œ๊ฐ€ ๋งค์šฐ ์ž‘๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ทธ๊ฒƒ์€ ํ›จ์”ฌ ๋” ๋น ๋ฅด๊ฒŒ ์ž‘๋™ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋ชจ๋“ˆ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋Š” ๊ฒƒ์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•ด ๋ด…์‹œ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋ชจ๋“ˆ์—์„œ ์ด๊ฒƒ์ด ์™œ ์•…ํ•œ๊ฐ€? ์ตœ์•…์˜ ์ƒํ™ฉ์€ ์‚ฌ์šฉ์ž๋ฅผ ๊ฐ€์ •ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๋Š” ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ณต๊ธ‰์ž ์ธ์ฆ ์˜ต์…˜์ด๋ผ๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์šฐ๋ฆฌ๋Š” ๋ชจ๋‘ ์—ญํ• ์„ ๋™ํ™”ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋Š” Terraform์ด ์ด ์—ญํ• ์„ ๋งก๋Š”๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ์ด ์—ญํ• ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

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

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋‘ ๋ฒˆ์งธ ์•…์€ ๊ณต๊ธ‰์—…์ฒด์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ์•…์€ ๊ทธ๋‹ค์ง€ ์‚ฌ์†Œํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ๊ทธ๊ฒƒ์ด ๋‹น์‹ ์—๊ฒŒ ์ ํ•ฉํ•˜๋‹ค๋ฉด, ๊ทธ๊ฒƒ์ด ์ž‘๋™ํ•œ๋‹ค๋ฉด ์™œ ๋ณ€๊ฒฝํ•ด์•ผ ํ•˜๋Š”์ง€ ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋ฌธ์ œ๋Š” ๋จผ์ € ์ด ํ”„๋กœ๋น„์ €๋„ˆ๊ฐ€ ์–ธ์ œ ์‹œ์ž‘๋ ์ง€ ํ•ญ์ƒ ์ œ์–ดํ•  ์ˆ˜ ์—†๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‘˜์งธ, aws ec2๊ฐ€ ์˜๋ฏธํ•˜๋Š” ๋ฐ”๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ฆ‰, ์ง€๊ธˆ ์šฐ๋ฆฌ๊ฐ€ Linux์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•˜๊ณ  ์žˆ๋Š”์ง€ ์•„๋‹ˆ๋ฉด Windows์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•˜๊ณ  ์žˆ๋Š”์ง€๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋‹ค๋ฅธ ์šด์˜ ์ฒด์ œ๋‚˜ ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž ์‚ฌ๋ก€์—์„œ ๋™์ผํ•˜๊ฒŒ ์ž‘๋™ํ•˜๋Š” ๊ฒƒ์„ ์ž‘์„ฑํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๊ณต์‹ ๋ฌธ์„œ์—๋„ ๋‚˜์™€ ์žˆ๋Š” ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ์˜ˆ๋Š” aws_instance๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ์—ฌ๋Ÿฌ ์ธ์ˆ˜๋ฅผ ์ง€์ •ํ•˜๋Š” ๊ฒฝ์šฐ ๊ฑฐ๊ธฐ์— ํ”„๋กœ๋น„์ €๋„ˆ "local-exec"๋ฅผ ์ง€์ •ํ•˜๊ณ  ansible-๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ์•„๋ฌด๋Ÿฐ ๋ฌธ์ œ๊ฐ€ ์—†๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํ”Œ๋ ˆ์ด๋ถ .

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์‚ฌ์‹ค ๊ทธ๋ ‡์Šต๋‹ˆ๋‹ค. ์•„๋ฌด ๋ฌธ์ œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ง ๊ทธ๋Œ€๋กœ ๊ณง ์ด ๋กœ์ปฌ ์‹คํ–‰ ํ•ญ๋ชฉ(์˜ˆ: launch_configuration)์ด ์กด์žฌํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๊ทธ๋ฆฌ๊ณ  launch_configuration์„ ์‚ฌ์šฉํ•˜๊ณ  ํ•œ ์ธ์Šคํ„ด์Šค์—์„œ ์ž๋™ ํ™•์žฅ ๊ทธ๋ฃน์„ ์ƒ์„ฑํ•˜๋ ค๋Š” ๊ฒฝ์šฐ launch_configuration์—๋Š” "ํ”„๋กœ๋น„์ €๋„ˆ" ๊ฐœ๋…์ด ์—†์Šต๋‹ˆ๋‹ค. "์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ"๋ผ๋Š” ๊ฐœ๋…์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋”ฐ๋ผ์„œ ๋ณด๋‹ค ๋ณดํŽธ์ ์ธ ์†”๋ฃจ์…˜์€ ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ธ์Šคํ„ด์Šค๊ฐ€ ์ผœ์ ธ ์žˆ์„ ๋•Œ ์ธ์Šคํ„ด์Šค ์ž์ฒด์—์„œ ์‹œ์ž‘๋˜๊ฑฐ๋‚˜ Auto Scaling ๊ทธ๋ฃน์ด ์ด launch_configuration์„ ์‚ฌ์šฉํ•  ๋•Œ ๋™์ผํ•œ ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ์—์„œ ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

ํ”„๋กœ๋น„์ €๋„ˆ๊ฐ€ ์ ‘์ฐฉ ๊ตฌ์„ฑ ์š”์†Œ์ด๊ธฐ ๋•Œ๋ฌธ์— ๊ณ„์† ์‹คํ–‰ํ•˜๋ ค๋ฉด ํ•˜๋‚˜์˜ ๋ฆฌ์†Œ์Šค๊ฐ€ ์ƒ์„ฑ๋  ๋•Œ ๊ทธ ์ˆœ๊ฐ„ ํ”„๋กœ๋น„์ €๋„ˆ, ์ฆ‰ ๋ช…๋ น์„ ์‹คํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌํ•œ ์ƒํ™ฉ์ด ๋งŽ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

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

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋งํฌ http://bit.ly/common-traits-in-terraform-modules

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

์‚ฌ๋žŒ๋“ค์ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ธ€์„ ์“ฐ๊ณ  ์‹ถ๋‹ค๋ฉด ๋‹ค์Œ ํ‘œ์‹œ๋ฅผ ๋”ฐ๋ฅด๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

์ด๋“ค์€ :

  • ๋ฌธ์„œ ๋ฐ ์˜ˆ์ œ.
  • ์ „์ฒด ๊ธฐ๋Šฅ.
  • ํ•ฉ๋ฆฌ์ ์ธ ๊ธฐ๋ณธ๊ฐ’.
  • ์ฝ”๋“œ๋ฅผ ์ •๋ฆฌํ•˜์„ธ์š”.
  • ํ…Œ์ŠคํŠธ.

ํ…Œ์ŠคํŠธ๋Š” ์ž‘์„ฑํ•˜๊ธฐ๊ฐ€ ๋งค์šฐ ์–ด๋ ต๊ธฐ ๋•Œ๋ฌธ์— ์ƒํ™ฉ์ด ๋‹ค๋ฆ…๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋ฌธ์„œ์™€ ์˜ˆ์ œ๋ฅผ ๋” ๋ฏฟ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๊ทธ๋ž˜์„œ ์šฐ๋ฆฌ๋Š” ๋ชจ๋“ˆ์„ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์‚ดํŽด๋ณด์•˜์Šต๋‹ˆ๋‹ค. ๋‘ ๊ฐ€์ง€ ์ฃผ์žฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ€์žฅ ์ค‘์š”ํ•œ ์ฒซ ๋ฒˆ์งธ๋Š” ๊ฐ€๋Šฅํ•˜๋ฉด ๊ธ€์„ ์“ฐ์ง€ ์•Š๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ์ด๋ฏธ ์ด๋Ÿฌํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๋‘˜์งธ, ์—ฌ์ „ํžˆ ๊ฒฐ์ •ํ–ˆ๋‹ค๋ฉด ๋ชจ๋“ˆ๊ณผ ํ”„๋กœ๋น„์ €๋„ˆ์—์„œ ๊ณต๊ธ‰์ž๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค.

์ด๊ฒƒ์€ ๋ฌธ์„œ์˜ ํšŒ์ƒ‰ ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค. ๋‹น์‹ ์€ ์ด์ œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ƒ๊ฐํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. โ€œ๋ญ”๊ฐ€ ๋ถˆ๋ถ„๋ช…ํ•˜๋‹ค. ํ™•์‹ ํ•˜์ง€ ๋ชปํ–ˆ์–ด์š”." ํ•˜์ง€๋งŒ XNUMX๊ฐœ์›” ๋’ค์— ๋ณด์ž.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ด์ œ ์ด๋Ÿฌํ•œ ๋ชจ๋“ˆ์„ ํ˜ธ์ถœํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๋”ฐ๋ผ ์ฝ”๋“œ๊ฐ€ ์„ฑ์žฅํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋” ์ด์ƒ ํ•˜๋‚˜์˜ ํŒŒ์ผ์ด ์—†์œผ๋ฉฐ ์ด๋ฏธ 20๊ฐœ์˜ ํŒŒ์ผ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋‘ ํ•˜๋‚˜์˜ ํด๋”์— ์žˆ์Šต๋‹ˆ๋‹ค. ์•„๋‹ˆ๋ฉด ํด๋”๊ฐ€ XNUMX๊ฐœ์ผ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์–ด์ฉŒ๋ฉด ์šฐ๋ฆฌ๋Š” ์ง€์—ญ๋ณ„, ์ผ๋ถ€ ๊ตฌ์„ฑ ์š”์†Œ๋ณ„๋กœ ๋ถ„๋ฅ˜ํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ์šฐ๋ฆฌ๋Š” ์ด์ œ ๋™๊ธฐํ™”์™€ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜์— ๋Œ€ํ•œ ๋ช‡ ๊ฐ€์ง€ ๊ธฐ์ดˆ๋ฅผ ๊ฐ–๊ฒŒ ๋˜์—ˆ์Œ์„ ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ๋„คํŠธ์›Œํฌ ๋ฆฌ์†Œ์Šค๋ฅผ ๋ณ€๊ฒฝํ•œ ๊ฒฝ์šฐ ๋ฌด์—‡์„ ํ•ด์•ผ ํ•˜๋Š”์ง€, ๋‚˜๋จธ์ง€ ๋ฆฌ์†Œ์Šค๋กœ ๋ฌด์—‡์„ ํ•ด์•ผ ํ•˜๋Š”์ง€, ์ด๋Ÿฌํ•œ ์ข…์†์„ฑ์„ ์œ ๋ฐœํ•˜๋Š” ๋ฐฉ๋ฒ• ๋“ฑ์„ ์ดํ•ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋‘ ๊ฐ€์ง€ ๊ทน๋‹จ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ ๊ทน๋‹จ์€ ๋ชจ๋‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ํ•˜๋‚˜์˜ ๋งˆ์Šคํ„ฐ ํŒŒ์ผ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹น๋ถ„๊ฐ„ ์ด๋Š” Terraform ์›น์‚ฌ์ดํŠธ์˜ ๊ณต์‹ ๋ชจ๋ฒ” ์‚ฌ๋ก€์˜€์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ์ง€๊ธˆ์€ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๊ฒƒ์œผ๋กœ ์ž‘์„ฑ๋˜์–ด ์ œ๊ฑฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๋”ฐ๋ผ Terraform ์ปค๋ฎค๋‹ˆํ‹ฐ๋Š” ์‚ฌ๋žŒ๋“ค์ด ํ”„๋กœ์ ํŠธ๋ฅผ ๋‹ค์–‘ํ•œ ๋ฐฉ์‹์œผ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์ด ๋ชจ๋ฒ” ์‚ฌ๋ก€์™€๋Š” ๊ฑฐ๋ฆฌ๊ฐ€ ๋ฉ€๋‹ค๋Š” ๊ฒƒ์„ ๊นจ๋‹ฌ์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋ชจ๋“  ์ข…์†์„ฑ์„ ํ•œ ๊ณณ์— ๋‚˜์—ดํ•˜๋Š” ๊ฒฝ์šฐ์ž…๋‹ˆ๋‹ค. "Terraform ๊ณ„ํš"์„ ํด๋ฆญํ•˜๋ฉด Terraform์ด ๋ชจ๋“  ๋ฆฌ์†Œ์Šค์˜ ์ƒํƒœ๋ฅผ ์—…๋ฐ์ดํŠธํ•  ๋•Œ๊นŒ์ง€ ๋งŽ์€ ์‹œ๊ฐ„์ด ์†Œ์š”๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋งŽ์€ ์‹œ๊ฐ„์€ ์˜ˆ๋ฅผ ๋“ค์–ด 5๋ถ„์ž…๋‹ˆ๋‹ค. ์–ด๋–ค ์‚ฌ๋žŒ๋“ค์—๊ฒŒ๋Š” ์ด๊ฒƒ์€ ๋งŽ์€ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. 15๋ถ„๋งŒ์— ๋๋‚˜๋Š” ๊ฒฝ์šฐ๋„ ๋ดค์Šต๋‹ˆ๋‹ค. AWS API๋Š” ๊ฐ ๋ฆฌ์†Œ์Šค์˜ ์ƒํƒœ์— ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ๋Š”์ง€ ํŒŒ์•…ํ•˜๋Š” ๋ฐ 15๋ถ„์„ ์†Œ๋น„ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋งค์šฐ ๋„“์€ ์ง€์—ญ์ž…๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ํ•œ ๊ณณ์—์„œ ๋ญ”๊ฐ€๋ฅผ ๋ฐ”๊พธ๊ณ  ์‹ถ์„ ๋•Œ ๊ด€๋ จ๋œ ๋ฌธ์ œ๊ฐ€ ๋‚˜ํƒ€๋‚˜๊ฒŒ ๋˜๋Š”๋ฐ, ๊ทธ ํ›„ 15๋ถ„์„ ๊ธฐ๋‹ค๋ฆฌ๋ฉด ๋ช‡ ๊ฐ€์ง€ ๋ณ€ํ™”์˜ ์บ”๋ฒ„์Šค๊ฐ€ ๋‚˜์˜ต๋‹ˆ๋‹ค. ์นจ์„ ๋ฑ‰๊ณ  "์˜ˆ"๋ผ๊ณ  ์ผ๋Š”๋ฐ ๋ญ”๊ฐ€ ์ž˜๋ชป๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋งค์šฐ ์‹ค์ œ์ ์ธ ์˜ˆ์ž…๋‹ˆ๋‹ค. Terraform์€ ๋ฌธ์ œ๋กœ๋ถ€ํ„ฐ ์‚ฌ์šฉ์ž๋ฅผ ๋ณดํ˜ธํ•˜๋ ค๊ณ  ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ฆ‰, ์›ํ•˜๋Š” ๊ฒƒ์„ ์ž‘์„ฑํ•˜์‹ญ์‹œ์˜ค. ๋ฌธ์ œ๊ฐ€ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค - ๋‹น์‹ ์˜ ๋ฌธ์ œ. Terraform 0.11์€ ์–ด๋–ค ์‹์œผ๋กœ๋“  ์‚ฌ์šฉ์ž๋ฅผ ๋•๊ธฐ ์œ„ํ•ด ๋…ธ๋ ฅํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. 0.12์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋งํ•  ์ˆ˜ ์žˆ๋Š” ํฅ๋ฏธ๋กœ์šด ๋ถ€๋ถ„์ด ์žˆ์Šต๋‹ˆ๋‹ค: "Vasya, ๋‹น์‹ ์€ ์ด๊ฒƒ์„ ์ •๋ง๋กœ ์›ํ•ฉ๋‹ˆ๋‹ค. ์ •์‹ ์„ ์ฐจ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?"

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋‘ ๋ฒˆ์งธ ๋ฐฉ๋ฒ•์€ ์ด ์˜์—ญ์„ ์ค„์ด๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ฆ‰, ํ•œ ๊ณณ์—์„œ ์˜ค๋Š” ์ „ํ™”๊ฐ€ ๋‹ค๋ฅธ ๊ณณ์—์„œ ์—ฐ๊ฒฐ๋˜๋Š” ์–‘์ด ์ค„์–ด๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์œ ์ผํ•œ ๋ฌธ์ œ๋Š” ๋” ๋งŽ์€ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ฆ‰, ๋งŽ์€ ์ˆ˜์˜ ํŒŒ์ผ์—์„œ ๋ณ€์ˆ˜๋ฅผ ์„ค๋ช…ํ•˜๊ณ  ์ด๋ฅผ ์—…๋ฐ์ดํŠธํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์–ด๋–ค ์‚ฌ๋žŒ๋“ค์€ ๊ทธ๊ฒƒ์„ ์ข‹์•„ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋‚˜์—๊ฒŒ ์ •์ƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์–ด๋–ค ์‚ฌ๋žŒ๋“ค์€ โ€œ์ด๊ฑธ ์™œ ์—ฌ๋Ÿฌ ๊ณณ์— ์“ฐ๋Š”๋ฐ, ๋‹ค ํ•œ ๊ณณ์— ๋ชจ์•„ ๋†“์„๊นŒโ€๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ์ด๊ฒƒ์€ ๋‘ ๋ฒˆ์งธ ๊ทน๋‹จ์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ด ๋ชจ๋“  ๊ฒƒ์„ ํ•œ ๊ณณ์— ์‚ฌ๋Š” ์‚ฌ๋žŒ์€ ๋ˆ„๊ตฌ์ž…๋‹ˆ๊นŒ? ํ•˜๋‚˜, ๋‘˜, ์…‹, ์ฆ‰ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ๋ˆ„๊ฐ€ ํ•˜๋‚˜์˜ ํŠน์ • ๊ตฌ์„ฑ ์š”์†Œ, ํ•˜๋‚˜์˜ ๋ธ”๋ก ๋˜๋Š” ํ•˜๋‚˜์˜ ์ธํ”„๋ผ ๋ชจ๋“ˆ์„ ํ˜ธ์ถœํ•ฉ๋‹ˆ๊นŒ? XNUMX~XNUMX๋ช…. ์ด๊ฒƒ์€ ๋ฉ‹์ง€๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ๋Œ€๋‹ต์€ ์ค‘๊ฐ„ ์–ด๋”˜๊ฐ€์— ์žˆ์Šต๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ๊ทœ๋ชจ๊ฐ€ ํฌ๋ฉด ์ ํ•ฉํ•œ ์†”๋ฃจ์…˜์ด ์—†๊ณ  ๋ชจ๋“  ๊ฒƒ์ด ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•˜์—ฌ ๊ฒฐ๊ณผ์ ์œผ๋กœ ํ˜ผํ•ฉ๋˜๋Š” ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค. ๋‘˜ ๋‹ค ์žฅ์ ์ด ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์ดํ•ดํ•˜๋Š” ํ•œ, ์ด๊ฒƒ์—๋Š” ์•„๋ฌด๋Ÿฐ ๋ฌธ์ œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์Šคํƒ VPC์—์„œ ๋ณ€๊ฒฝ๋œ ์‚ฌํ•ญ์ด ์žˆ๊ณ  ์ด๋Ÿฌํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ EC2์— ์ ์šฉํ•˜๋ ค๋Š” ๊ฒฝ์šฐ, ์ฆ‰ ์ƒˆ ์„œ๋ธŒ๋„ท์ด ์žˆ์–ด์„œ Auto Scaling ๊ทธ๋ฃน์„ ์—…๋ฐ์ดํŠธํ•˜๋ ค๋Š” ๊ฒฝ์šฐ ์ด๋Ÿฌํ•œ ์ข…๋ฅ˜์˜ ์ข…์†์„ฑ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜์„ ํ˜ธ์ถœํ•ฉ๋‹ˆ๋‹ค. ๋ช‡ ๊ฐ€์ง€ ํ•ด๊ฒฐ์ฑ…์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ˆ„๊ฐ€ ๋ฌด์—‡์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๊นŒ?

์–ด๋–ค ํ•ด๊ฒฐ์ฑ…์ด ์žˆ๋Š”์ง€ ์ œ์•ˆํ•ด ๋“œ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Terraform์„ ์‚ฌ์šฉํ•˜์—ฌ ๋งˆ๋ฒ•์„ ์ˆ˜ํ–‰ํ•˜๊ฑฐ๋‚˜ makefile์„ ์‚ฌ์šฉํ•˜์—ฌ Terraform์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฑฐ๊ธฐ์—์„œ ๋ณ€๊ฒฝ๋œ ์‚ฌํ•ญ์ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ์—ฌ๊ธฐ์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ด ๊ฒฐ์ •์ด ๋งˆ์Œ์— ๋“œ์‹œ๋‚˜์š”? ์ด๊ฒƒ์ด ๋ฉ‹์ง„ ํ•ด๊ฒฐ์ฑ…์ด๋ผ๊ณ  ๋ฏฟ๋Š” ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ? ๋‚˜๋Š” ๋ฏธ์†Œ๋ฅผ ์ง“๋Š”๋‹ค. ๋ถ„๋ช…ํžˆ ์˜์‹ฌ์ด ์Šค๋ฉฐ๋“ค์—ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋ฌผ๋ก  ์ง‘์—์„œ ์ด๊ฒƒ์„ ์‹œ๋„ํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. Terraform์€ Terraform์—์„œ ์‹คํ–‰๋˜๋„๋ก ์„ค๊ณ„๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

ํ•œ ๋ณด๊ณ ์„œ์—์„œ ๊ทธ๋“ค์€ ๋‚˜์—๊ฒŒ "์•„๋‹ˆ์š”, ์ด๊ฒƒ์€ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค"๋ผ๊ณ  ๋งํ–ˆ์Šต๋‹ˆ๋‹ค. ์š”์ ์€ ๊ทธ๊ฒƒ์ด ์ž‘๋™ํ•ด์„œ๋Š” ์•ˆ๋œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. Terraform์—์„œ Terraform์„ ์‹œ์ž‘ํ•œ ๋‹ค์Œ Terraform์„ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์œผ๋ฉด ๋งค์šฐ ์ธ์ƒ์ ์œผ๋กœ ๋ณด์ด์ง€๋งŒ ๊ทธ๋ ‡๊ฒŒ ํ•ด์„œ๋Š” ์•ˆ ๋ฉ๋‹ˆ๋‹ค. Terraform์€ ํ•ญ์ƒ ๋งค์šฐ ์‰ฝ๊ฒŒ ์‹œ์ž‘๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

https://github.com/gruntwork-io/terragrunt/

ํ•œ ๊ณณ์—์„œ ๋ฌด์–ธ๊ฐ€ ๋ณ€๊ฒฝ๋˜์—ˆ์„ ๋•Œ ํ†ตํ™” ์กฐ์ •์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ Terragrunt๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

Terragrunt๋Š” ์ธํ”„๋ผ ๋ชจ๋“ˆ์— ๋Œ€ํ•œ ํ˜ธ์ถœ์„ ์กฐ์ •ํ•˜๊ณ  ์กฐ์ •ํ•  ์ˆ˜ ์žˆ๋Š” Terraform์˜ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์ธ ์œ ํ‹ธ๋ฆฌํ‹ฐ์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ผ๋ฐ˜์ ์ธ Terraform ๊ตฌ์„ฑ ํŒŒ์ผ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

ํ˜ธ์ถœํ•˜๋ ค๋Š” ํŠน์ • ๋ชจ๋“ˆ์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋ชจ๋“ˆ์—๋Š” ์–ด๋–ค ์ข…์†์„ฑ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๊ทธ๋ฆฌ๊ณ  ์ด ๋ชจ๋“ˆ์€ ์–ด๋–ค ์ธ์ˆ˜๋ฅผ ํ—ˆ์šฉํ•ฉ๋‹ˆ๊นŒ? ์ด๊ฒƒ์ด Terragrunt์— ๋Œ€ํ•ด ์•Œ์•„์•ผ ํ•  ์ „๋ถ€์ž…๋‹ˆ๋‹ค.

๋ฌธ์„œ๋Š” ๊ฑฐ๊ธฐ์— ์žˆ์œผ๋ฉฐ GitHub์—๋Š” 1๊ฐœ์˜ ๋ณ„์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ์ด๊ฒƒ์ด ๋‹น์‹ ์ด ์•Œ์•„์•ผ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋Š” Terraform์„ ์ด์ œ ๋ง‰ ์‚ฌ์šฉํ•˜๊ธฐ ์‹œ์ž‘ํ•œ ํšŒ์‚ฌ์—์„œ ๊ตฌํ˜„ํ•˜๊ธฐ๊ฐ€ ๋งค์šฐ ์‰ฝ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜์€ Terragrunt์ž…๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์˜ต์…˜์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ด์ œ ์ฝ”๋“œ ์ž‘์—… ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

์ฝ”๋“œ์— ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ์ด๋Š” ์‰ฝ์Šต๋‹ˆ๋‹ค. ๋‹น์‹ ์€ ์ƒˆ๋กœ์šด ๋ฆฌ์†Œ์Šค๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ๋ชจ๋“  ๊ฒƒ์ด ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์˜ˆ๋ฅผ ๋“ค์–ด, ๋ฏธ๋ฆฌ ์ƒ์„ฑํ•œ ๋ฆฌ์†Œ์Šค๊ฐ€ ์žˆ๊ณ  AWS ๊ณ„์ •์„ ๊ฐœ์„คํ•œ ํ›„ Terraform์— ๋Œ€ํ•ด ๋ฐฐ์› ๊ณ  ์ด๋ฏธ ๋ณด์œ ํ•˜๊ณ  ์žˆ๋Š” ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋Š” ๊ฒฝ์šฐ ์ด๋Ÿฌํ•œ ๋ฐฉ์‹์œผ๋กœ ๋ชจ๋“ˆ์„ ํ™•์žฅํ•˜๋Š” ๊ฒƒ์ด ์ ์ ˆํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ธฐ์กด ๋ฆฌ์†Œ์Šค์˜ ์‚ฌ์šฉ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๊ทธ๋ฆฌ๊ณ  ๋ธ”๋ก ๋ฆฌ์†Œ์Šค๋ฅผ ํ™œ์šฉํ•œ ์ƒˆ๋กœ์šด ๋ฆฌ์†Œ์Šค ์ƒ์„ฑ์„ ์ง€์›ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ถœ๋ ฅ ์‹œ ์‚ฌ์šฉ๋œ ํ•ญ๋ชฉ์— ๋”ฐ๋ผ ํ•ญ์ƒ ์ถœ๋ ฅ ID๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

Terraform 0.11์—์„œ ๋‘ ๋ฒˆ์งธ๋กœ ์ค‘์š”ํ•œ ๋ฌธ์ œ๋Š” ๋ชฉ๋ก ์ž‘์—…์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์–ด๋ ค์šด ์ ์€ ๊ทธ๋Ÿฌํ•œ ์‚ฌ์šฉ์ž ๋ชฉ๋ก์ด ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๊ทธ๋ฆฌ๊ณ  ๋ธ”๋ก ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋Ÿฌํ•œ ์‚ฌ์šฉ์ž๋ฅผ ์ƒ์„ฑํ•˜๋ฉด ๋ชจ๋“  ๊ฒƒ์ด ์ž˜ ๋ฉ๋‹ˆ๋‹ค. ์ „์ฒด ๋ชฉ๋ก์„ ์‚ดํŽด๋ณด๊ณ  ๊ฐ๊ฐ์— ๋Œ€ํ•œ ํŒŒ์ผ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ๋ชจ๋“  ๊ฒƒ์ด ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์˜ˆ๋ฅผ ๋“ค์–ด ์ค‘๊ฐ„์— ์žˆ๋Š” user3์„ ์—ฌ๊ธฐ์—์„œ ์ œ๊ฑฐํ•ด์•ผ ํ•˜๋ฉฐ, ๊ทธ๋Ÿฌ๋ฉด ์ธ๋ฑ์Šค๊ฐ€ ๋ณ€๊ฒฝ๋˜๋ฏ€๋กœ ๊ทธ ์ดํ›„์— ์ƒ์„ฑ๋œ ๋ชจ๋“  ๋ฆฌ์†Œ์Šค๊ฐ€ ๋‹ค์‹œ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ƒํƒœ ์ €์žฅ ํ™˜๊ฒฝ์—์„œ ๋ชฉ๋ก ์ž‘์—…. ์ƒํƒœ ์ €์žฅ ํ™˜๊ฒฝ์ด๋ž€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ์ด ๋ฆฌ์†Œ์Šค๊ฐ€ ์ƒ์„ฑ๋˜๋ฉด ์ƒˆ๋กœ์šด ๊ฐ€์น˜๊ฐ€ ์ƒ์„ฑ๋˜๋Š” ์ƒํ™ฉ์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด AWS ์•ก์„ธ์Šค ํ‚ค ๋˜๋Š” AWS ๋น„๋ฐ€ ํ‚ค์ž…๋‹ˆ๋‹ค. ์ฆ‰, ์‚ฌ์šฉ์ž๋ฅผ ์ƒ์„ฑํ•˜๋ฉด ์ƒˆ ์•ก์„ธ์Šค ๋˜๋Š” ๋น„๋ฐ€ ํ‚ค๋ฅผ ๋ฐ›์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์‚ฌ์šฉ์ž๋ฅผ ์‚ญ์ œํ•  ๋•Œ๋งˆ๋‹ค ์ด ์‚ฌ์šฉ์ž๋Š” ์ƒˆ ํ‚ค๋ฅผ ๊ฐ–๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด๊ฒƒ์€ ํ’์ˆ˜๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ํŒ€์„ ๋– ๋‚  ๋•Œ๋งˆ๋‹ค ์ƒˆ๋กœ์šด ์‚ฌ์šฉ์ž๋ฅผ ์ƒ์„ฑํ•˜๋ฉด ์‚ฌ์šฉ์ž๋Š” ์šฐ๋ฆฌ์™€ ์นœ๊ตฌ๊ฐ€ ๋˜๊ณ  ์‹ถ์–ดํ•˜์ง€ ์•Š์„ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ด๊ฒƒ์ด ํ•ด๊ฒฐ์ฑ…์ž…๋‹ˆ๋‹ค. Jsonnet์œผ๋กœ ์ž‘์„ฑ๋œ ์ฝ”๋“œ์ž…๋‹ˆ๋‹ค. Jsonnet์€ Google์˜ ํ…œํ”Œ๋ฆฟ ์–ธ์–ด์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ด ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜๋ฉด ์ด ํ…œํ”Œ๋ฆฟ์„ ์ˆ˜๋ฝํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ถœ๋ ฅ์œผ๋กœ ํ…œํ”Œ๋ฆฟ์— ๋”ฐ๋ผ ๋งŒ๋“ค์–ด์ง„ json ํŒŒ์ผ์ด ๋ฐ˜ํ™˜๋ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

ํ…œํ”Œ๋ฆฟ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

Terraform์„ ์‚ฌ์šฉํ•˜๋ฉด ๋™์ผํ•œ ๋ฐฉ์‹์œผ๋กœ HCL๊ณผ Json์„ ๋ชจ๋‘ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ Json์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ๋Šฅ๋ ฅ์ด ์žˆ์œผ๋ฉด ์ด๋ฅผ Terraform์— ๋„ฃ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ™•์žฅ์ž๊ฐ€ .tf.json์ธ ํŒŒ์ผ์ด ์„ฑ๊ณต์ ์œผ๋กœ ๋‹ค์šด๋กœ๋“œ๋ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๊ทธ๋Ÿฐ ๋‹ค์Œ ํ‰์†Œ๋Œ€๋กœ terraform init, terramorm Apply๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž‘์—…ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์šฐ๋ฆฌ๋Š” ๋‘ ๋ช…์˜ ์‚ฌ์šฉ์ž๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

์ด์ œ ์šฐ๋ฆฌ๋Š” ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ํŒ€์„ ๋– ๋‚˜๋„ ๋‘๋ ต์ง€ ์•Š์Šต๋‹ˆ๋‹ค. json ํŒŒ์ผ๋งŒ ํŽธ์ง‘ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. Vasya Pupkin์€ ๋– ๋‚ฌ๊ณ  Petya Pyatochkin์€ ๋‚จ์•˜์Šต๋‹ˆ๋‹ค. Petya Pyatochkin์€ ์ƒˆ ํ‚ค๋ฅผ ๋ฐ›์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

Terraform์„ ๋‹ค๋ฅธ ๋„๊ตฌ์™€ ํ†ตํ•ฉํ•˜๋Š” ๊ฒƒ์€ ์‹ค์ œ๋กœ Terraform์˜ ์ž‘์—…์ด ์•„๋‹™๋‹ˆ๋‹ค. Terraform์€ ๋ฆฌ์†Œ์Šค ์ƒ์„ฑ์„ ์œ„ํ•œ ํ”Œ๋žซํผ์œผ๋กœ ๋งŒ๋“ค์–ด์กŒ์œผ๋ฉฐ ๊ทธ๊ฒŒ ์ „๋ถ€์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‚˜์ค‘์— ๋‚˜์˜ค๋Š” ๋ชจ๋“  ๊ฒƒ์€ Terraform์˜ ๊ด€์‹ฌ์‚ฌ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ฑฐ๊ธฐ์— ๊ทธ๊ฒƒ์„ ์—ฎ์„ ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ํ•„์š”ํ•œ ๋ชจ๋“  ๊ฒƒ์„ ์ˆ˜ํ–‰ํ•˜๋Š” Ansible์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ Terraform์„ ํ™•์žฅํ•˜๊ณ  ์ž‘์—…์ด ์™„๋ฃŒ๋œ ํ›„ ์ผ๋ถ€ ๋ช…๋ น์„ ํ˜ธ์ถœํ•˜๋ ค๋Š” ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

์ฒซ ๋ฒˆ์งธ ๋ฐฉ๋ฒ•. ์ด ๋ช…๋ น์„ ์ž‘์„ฑํ•˜๋Š” ์ถœ๋ ฅ์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๊ทธ๋Ÿฐ ๋‹ค์Œ ์‰˜ terraform ์ถœ๋ ฅ์—์„œ โ€‹โ€‹์ด ๋ช…๋ น์„ ํ˜ธ์ถœํ•˜๊ณ  ์›ํ•˜๋Š” ๊ฐ’์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋ช…๋ น์€ ๋Œ€์ฒด๋œ ๋ชจ๋“  ๊ฐ’์œผ๋กœ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ๋งค์šฐ ํŽธ์•ˆํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋‘ ๋ฒˆ์งธ ๋ฐฉ๋ฒ•. ์ด๋Š” ์ธํ”„๋ผ ๋ณ€๊ฒฝ์— ๋”ฐ๋ผ null_resource๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ ๋ฆฌ์†Œ์Šค์˜ ID๊ฐ€ ๋ณ€๊ฒฝ๋˜๋Š” ์ฆ‰์‹œ ๋™์ผํ•œ local-exe๋ฅผ ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋‹น์—ฐํžˆ ์ด ๋ชจ๋“  ๊ฒƒ์ด ์„œ๋ฅ˜์ƒ์œผ๋กœ๋Š” ์ˆœ์กฐ๋กญ๊ฒŒ ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด Amazon์€ ๋‹ค๋ฅธ ๋ชจ๋“  ๊ณต๊ณต ์„œ๋น„์Šค ์ œ๊ณต์—…์ฒด์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ž์ฒด์ ์ธ ์˜ˆ์™ธ ์‚ฌ๋ก€๋ฅผ ๋งŽ์ด ๊ฐ€์ง€๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ๊ทน๋‹จ์ ์ธ ๊ฒฝ์šฐ๋Š” AWS ๊ณ„์ •์„ ๊ฐœ์„คํ•  ๋•Œ ์–ด๋–ค ๋ฆฌ์ „์„ ์‚ฌ์šฉํ•˜๋Š”์ง€๊ฐ€ ์ค‘์š”ํ•˜๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ์ด ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๊นŒ? ์–ด์ฉŒ๋ฉด 2013๋…„ XNUMX์›” ์ดํ›„์— ์—ด์—ˆ์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์–ด์ฉŒ๋ฉด VPC ๋“ฑ์—์„œ ๊ธฐ๋ณธ๊ฐ’์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งŽ์€ ์ œํ•œ ์‚ฌํ•ญ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  Amazon์€ ์ด๋ฅผ ๋ฌธ์„œ ์ „์ฒด์— ๋ถ„์‚ฐ์‹œ์ผฐ์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ œ๊ฐ€ ํ”ผํ•˜๋ผ๊ณ  ๊ถŒ์žฅํ•˜๋Š” ๋ช‡ ๊ฐ€์ง€ ์‚ฌํ•ญ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์‹œ์ž‘ํ•˜๋ ค๋ฉด Terraform ๊ณ„ํš ๋˜๋Š” Terraform CLI ๋‚ด์—์„œ ๋น„๋ฐ€์ด ์•„๋‹Œ ๋ชจ๋“  ์ธ์ˆ˜๋ฅผ ํ”ผํ•˜์„ธ์š”. ์ด ๋ชจ๋“  ๊ฒƒ์€ tfvars ํŒŒ์ผ์ด๋‚˜ ํ™˜๊ฒฝ ๋ณ€์ˆ˜์— ๋„ฃ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ์ด ๋งˆ๋ฒ• ๋ช…๋ น์„ ๋ชจ๋‘ ์™ธ์šธ ํ•„์š”๋Š” ์—†์Šต๋‹ˆ๋‹ค. Terraform ๊ณ„ํš โ€“ var๋ฅผ ์„ ํƒํ•˜๊ณ  ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ ๋ณ€์ˆ˜๋Š” var, ๋‘ ๋ฒˆ์งธ ๋ณ€์ˆ˜๋Š” var, ์„ธ ๋ฒˆ์งธ, ๋„ค ๋ฒˆ์งธ ๋ณ€์ˆ˜์ž…๋‹ˆ๋‹ค. ์ œ๊ฐ€ ๊ฐ€์žฅ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ์ฝ”๋“œํ˜• ์ธํ”„๋ผ์˜ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ์›์น™์€ ์ฝ”๋“œ๋ฅผ ๋ณด๋Š” ๊ฒƒ๋งŒ์œผ๋กœ๋„ ๊ฑฐ๊ธฐ์— ๋ฌด์—‡์ด ๋ฐฐํฌ๋˜๊ณ , ์–ด๋–ค ์ƒํƒœ๋กœ, ์–ด๋–ค ๊ฐ’์œผ๋กœ ๋ฐฐํฌ๋˜๋Š”์ง€ ๋ช…ํ™•ํ•˜๊ฒŒ ์ดํ•ดํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋ฌธ์„œ๋ฅผ ์ฝ๊ฑฐ๋‚˜ Vasya์—๊ฒŒ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•œ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๋ฌผ์–ด๋ณผ ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ข…์ข… ํ™˜๊ฒฝ๊ณผ ์ผ์น˜ํ•˜๋Š” tfvars ํ™•์žฅ์ž๋ฅผ ๊ฐ€์ง„ ํŒŒ์ผ์„ ์—ด๊ณ  ๊ฑฐ๊ธฐ์— ์žˆ๋Š” ๋ชจ๋“  ๊ฒƒ์„ ์‚ดํŽด๋ณด๊ธฐ๋งŒ ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

๋˜ํ•œ ๋ฒ”์œ„๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•ด ๋Œ€์ƒ ์ธ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. ์ด๋ฅผ ์œ„ํ•ด ์ž‘์€ ์ธํ”„๋ผ ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ํ›จ์”ฌ ์‰ฝ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ ๋ณ‘๋ ฌ์„ฑ์„ ์ œํ•œํ•˜๊ฑฐ๋‚˜ ๋Š˜๋ฆด ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. 150๊ฐœ์˜ ๋ฆฌ์†Œ์Šค๊ฐ€ ์žˆ๊ณ  Amazon ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ๋ฅผ ๊ธฐ๋ณธ๊ฐ’ 10์—์„œ 100์œผ๋กœ ๋Š˜๋ฆฌ๊ณ  ์‹ถ๋‹ค๋ฉด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์Šต๋‹ˆ๋‹ค. ์•„๋‹ˆ๋ฉด ์ง€๊ธˆ์€ ์ž˜ ๋ ์ง€ ๋ชจ๋ฅด์ง€๋งŒ Amazon์—์„œ ์ „ํ™”๋ฅผ ๋„ˆ๋ฌด ๋งŽ์ด ๊ฑธ๊ณ  ์žˆ๋‹ค๊ณ  ๋งํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Terraform์€ ์ด๋Ÿฌํ•œ ๋ฌธ์ œ์˜ ๋Œ€๋ถ€๋ถ„์„ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๋ ค๊ณ  ์‹œ๋„ํ•˜์ง€๋งŒ ๊ฑฐ์˜ ์•„๋ฌด ์„ฑ๊ณผ๋„ ์–ป์ง€ ๋ชปํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. Parallelism=1์€ AWS API ๋˜๋Š” Terraform ๊ณต๊ธ‰์ž ๋‚ด๋ถ€์—์„œ ๋ฒ„๊ทธ๋ฅผ ๋ฐœ๊ฒฌํ•œ ๊ฒฝ์šฐ ์‚ฌ์šฉํ•˜๋Š” ์ค‘์š”ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ=1์„ ์ง€์ •ํ•˜๊ณ  Terraform์ด ํ•œ ํ˜ธ์ถœ, ๋‘ ๋ฒˆ์งธ ํ˜ธ์ถœ, ์„ธ ๋ฒˆ์งธ ํ˜ธ์ถœ์„ ์™„๋ฃŒํ•  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ ค์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Š” ๊ทธ๊ฒƒ๋“ค์„ ํ•˜๋‚˜์”ฉ ์‹œ์ž‘ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์‚ฌ๋žŒ๋“ค์€ ์ข…์ข… "Terraform ์ž‘์—… ๊ณต๊ฐ„์ด ๋‚˜์˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?"๋ผ๊ณ  ๋ฌป์Šต๋‹ˆ๋‹ค. ์–ด๋–ค ์ธํ”„๋ผ๊ฐ€ ์–ด๋–ค ๊ฐ€์น˜๋กœ ๋งŒ๋“ค์–ด์กŒ๋Š”์ง€ ์‚ดํŽด๋ณด๋Š” ๊ฒƒ์ด ์ฝ”๋“œํ˜• ์ธํ”„๋ผ์˜ ์›๋ฆฌ๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ž‘์—…๊ณต๊ฐ„์€ ์‚ฌ์šฉ์ž๊ฐ€ ๋งŒ๋“  ๊ฒƒ์ด ์•„๋‹™๋‹ˆ๋‹ค. ์ด๋Š” ์‚ฌ์šฉ์ž๊ฐ€ Terraform ์ž‘์—…๊ณต๊ฐ„ ์—†์ด๋Š” ์‚ด ์ˆ˜ ์—†๋Š” ๋ฌธ์ œ๋ฅผ GitHub์— ์ผ๋‹ค๋Š” ์˜๋ฏธ๋Š” ์•„๋‹™๋‹ˆ๋‹ค. ์•„๋‹ˆ, ์ด๋ ‡์ง€ ์•Š์•„. Terraform Enterprise๋Š” ์ƒ์šฉ ์†”๋ฃจ์…˜์ž…๋‹ˆ๋‹ค. HashiCorp์˜ Terraform์€ ์ž‘์—… ๊ณต๊ฐ„์ด ํ•„์š”ํ•˜๋‹ค๊ณ  ํŒ๋‹จํ•˜์—ฌ ์ด๋ฅผ ์ •๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋กœ ํด๋”์— ๋„ฃ์–ด๋‘๋Š” ๊ฒŒ ํ›จ์”ฌ ํŽธํ•œ ๊ฒƒ ๊ฐ™์•„์š”. ๊ทธ๋Ÿฌ๋ฉด ํŒŒ์ผ์ด ์กฐ๊ธˆ ๋” ๋งŽ์•„์ง€์ง€๋งŒ ๋” ๋ช…ํ™•ํ•ด์ง‘๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์ฝ”๋“œ๋กœ ์ž‘์—…ํ•˜๋Š” ๋ฐฉ๋ฒ•? ์‚ฌ์‹ค ๋ชฉ๋ก ์ž‘์—…์ด ์œ ์ผํ•œ ๊ณ ํ†ต์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  Terraform์„ ๋” ์‰ฝ๊ฒŒ ํ™œ์šฉํ•˜์„ธ์š”. ์ด๊ฒƒ์€ ๋‹น์‹ ์„ ์œ„ํ•ด ๋ชจ๋“  ์ผ์„ ํ›Œ๋ฅญํ•˜๊ฒŒ ํ•ด ์ค„ ์ผ์ด ์•„๋‹™๋‹ˆ๋‹ค. ๋ฌธ์„œ์— ๊ธฐ๋ก๋œ ๋ชจ๋“  ๋‚ด์šฉ์„ ๊ฑฐ๊ธฐ์— ๋ฐ€์–ด๋„ฃ์„ ํ•„์š”๋Š” ์—†์Šต๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

๋ณด๊ณ ์„œ์˜ ์ฃผ์ œ๋Š” '๋ฏธ๋ž˜๋ฅผ ์œ„ํ•ด'๋กœ ์ž‘์„ฑ๋๋‹ค. ์ด์— ๋Œ€ํ•ด ์•„์ฃผ ๊ฐ„๋žตํ•˜๊ฒŒ ์ด์•ผ๊ธฐํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์•ž์œผ๋กœ๋Š” 0.12๊ฐ€ ๊ณง ์ถœ์‹œ๋  ๊ฒƒ์ด๋ผ๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

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

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

ํ•˜์ง€๋งŒ! ๊ธฐ์„ฑ ๋ชจ๋“ˆ๊ณผ ํƒ€์‚ฌ ์†”๋ฃจ์…˜์„ ์‚ฌ์šฉํ•˜์—ฌ ์ ์  ๋” ๊ฐ„๋‹จํ•˜๊ฒŒ ์ž‘์„ฑํ•œ๋‹ค๋ฉด ๊ธฐ๋‹ค๋ฆด ํ•„์š”๊ฐ€ ์—†์œผ๋ฉฐ 0.12๊ฐ€ ์™€์„œ ๋ชจ๋“  ๊ฒƒ์„ ํ•ด๊ฒฐํ•ด ์ฃผ๊ธฐ๋ฅผ ๋ฐ”๋ž„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฏธ๋ž˜๋ฅผ ์œ„ํ•œ Terraform์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์•ˆํ†ค ๋ฐ”๋ฒค์ฝ” (2018)

์‹ ๊ณ ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! ์ฝ”๋“œํ˜• ์ธํ”„๋ผ(Infrastructure as Code)์— ๋Œ€ํ•ด ๋ง์”€ํ•˜์…จ๊ณ  ๋ฌธ์ž ๊ทธ๋Œ€๋กœ ํ…Œ์ŠคํŠธ์— ๋Œ€ํ•ด ํ•œ ๋งˆ๋”” ๋ง์”€ํ•˜์…จ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“ˆ์— ํ…Œ์ŠคํŠธ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๊นŒ? ์ด๊ฒƒ์€ ๋ˆ„๊ตฌ์˜ ์ฑ…์ž„์ž…๋‹ˆ๊นŒ? ์ง์ ‘ ์ž‘์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ, ์•„๋‹ˆ๋ฉด ๋ชจ๋“ˆ์˜ ์ฑ…์ž„์ž…๋‹ˆ๊นŒ?

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

์ €๋Š” ์ด ์ฃผ์ œ, ์ฆ‰ ๊ท€ํ•˜๊ฐ€ ์ž‘์„ฑํ•œ ์ธํ”„๋ผ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ…Œ์ŠคํŠธ๋ฅผ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ ๊ทน์ ์œผ๋กœ ์—ฐ๊ตฌํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ฆ‰, ์ด ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ–ˆ๋‹ค๋ฉด ์ด๋ฅผ ์‹คํ–‰ํ•ด์•ผ ํ•˜๋ฉฐ ์ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ…Œ์ŠคํŠธ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ…Œ๋ผํ…Œ์ŠคํŠธ Terraform์— ๋Œ€ํ•œ ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ์ž์ฃผ ์–ธ๊ธ‰๋˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ์œ ํ‹ธ๋ฆฌํ‹ฐ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” rspec๊ณผ ๊ฐ™์€ DSL ์œ ํ˜•์„ ์„ ํ˜ธํ•ฉ๋‹ˆ๋‹ค.

์•ˆํ†ค, ์‹ ๊ณ ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! ๋‚ด ์ด๋ฆ„์€ ๋ฐœ๋ ˆ๋ฆฌ์ž…๋‹ˆ๋‹ค. ์กฐ๊ธˆ ์ฒ ํ•™์ ์ธ ์งˆ๋ฌธ์„ ํ•ด๋ณด์ž. ์กฐ๊ฑด๋ถ€๋กœ ํ”„๋กœ๋น„์ €๋‹์ด ์žˆ๊ณ  ๋ฐฐํฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ํ”„๋กœ๋น„์ €๋‹์€ ์ธํ”„๋ผ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๋ฐฐํฌ์—์„œ๋Š” ์„œ๋ฒ„, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋“ฑ๊ณผ ๊ฐ™์€ ์œ ์šฉํ•œ ๊ฒƒ์œผ๋กœ ์ฑ„์›๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‚ด ๋จธ๋ฆฟ์†์—๋Š” Terraform์ด ํ”„๋กœ๋น„์ €๋‹์— ๋” ์ ํ•ฉํ•˜๊ณ  Ansible์ด ๋ฐฐํฌ์— ๋” ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด Ansible์€ ๋ฌผ๋ฆฌ์  ์ธํ”„๋ผ์—๋„ ์ ํ•ฉํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. nginx, Postgres๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋™์‹œ์— Ansible์€ ์˜ˆ๋ฅผ ๋“ค์–ด Amazon ๋˜๋Š” Google ๋ฆฌ์†Œ์Šค์˜ ํ”„๋กœ๋น„์ €๋‹์„ ํ—ˆ์šฉํ•˜๋Š” ๊ฒƒ์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ Terraform์„ ์‚ฌ์šฉํ•˜๋ฉด ํ•ด๋‹น ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ผ๋ถ€ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๋ฐฐํฌํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ท€ํ•˜์˜ ๊ด€์ ์—์„œ ๋ณผ ๋•Œ Terraform๊ณผ Ansible ์‚ฌ์ด์— ์ผ์ข…์˜ ๊ฒฝ๊ณ„๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? ์–ด๋””์—์„œ ๋ฌด์—‡์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋” ์ข‹์Šต๋‹ˆ๊นŒ? ์•„๋‹ˆ๋ฉด ์˜ˆ๋ฅผ ๋“ค์–ด Ansible์ด ์ด๋ฏธ ์“ฐ๋ ˆ๊ธฐ๋ผ๊ณ  ์ƒ๊ฐํ•˜์‹œ๋‚˜์š”? ๋ชจ๋“  ๊ฒƒ์— Terraform์„ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์‹œ๋‚˜์š”?

์ข‹์€ ์งˆ๋ฌธ์ด์—์š”, ๋ฐœ๋ ˆ๋ฆฌ. ์ €๋Š” Terraform์ด 2014๋…„ ์ดํ›„๋กœ ๋ชฉ์  ๋ฉด์—์„œ ๋ณ€ํ•˜์ง€ ์•Š์•˜๋‹ค๊ณ  ๋ฏฟ์Šต๋‹ˆ๋‹ค. ์ธํ”„๋ผ๋ฅผ ์œ„ํ•ด ๋งŒ๋“ค์–ด์กŒ๊ณ  ์ธํ”„๋ผ๋ฅผ ์œ„ํ•ด ์ฃฝ์—ˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์—ฌ์ „ํžˆ ๊ตฌ์„ฑ ๊ด€๋ฆฌ Ansible์— ๋Œ€ํ•œ ํ•„์š”์„ฑ์„ ๊ฐ–๊ณ  ์žˆ์—ˆ๊ณ  ์•ž์œผ๋กœ๋„ ๊ทธ๋Ÿด ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ฌธ์ œ๋Š” launch_configuration ๋‚ด๋ถ€์— ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ฑฐ๊ธฐ์—์„œ Ansible ๋“ฑ์„ ๋Œ์–ด์˜ต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์ œ๊ฐ€ ๊ฐ€์žฅ ์ข‹์•„ํ•˜๋Š” ํ‘œ์ค€ ๊ตฌ๋ณ„์ž…๋‹ˆ๋‹ค.

์•„๋ฆ„๋‹ค์šด ์ธํ”„๋ผ์— ๊ด€ํ•ด ์ด์•ผ๊ธฐํ•˜๊ณ  ์žˆ๋‹ค๋ฉด ์ด ์ด๋ฏธ์ง€๋ฅผ ์ˆ˜์ง‘ํ•˜๋Š” Packer์™€ ๊ฐ™์€ ์œ ํ‹ธ๋ฆฌํ‹ฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ Terraform์€ ๋ฐ์ดํ„ฐ ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด ์ด๋ฏธ์ง€๋ฅผ ์ฐพ๊ณ  ํ•ด๋‹น launch_configuration์„ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ์ด๋Ÿฌํ•œ ๋ฐฉ์‹์œผ๋กœ ํŒŒ์ดํ”„๋ผ์ธ์€ ๋จผ์ € Tracker๋ฅผ ๊ฐ€์ ธ์˜จ ๋‹ค์Œ Terraform์„ ๊ฐ€์ ธ์˜ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋นŒ๋“œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ์ƒˆ๋กœ์šด ๋ณ€๊ฒฝ์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š”! ์‹ ๊ณ ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! ์ œ ์ด๋ฆ„์€ RBS ํšŒ์‚ฌ ๋ฏธ์ƒค์ž…๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ํ”„๋กœ๋น„์ €๋„ˆ๋ฅผ ํ†ตํ•ด Ansible์„ ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Ansible์—๋Š” ๋™์  ์ธ๋ฒคํ† ๋ฆฌ๋ผ๋Š” ์ฃผ์ œ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๋จผ์ € Terraform์„ ํ˜ธ์ถœํ•œ ๋‹ค์Œ Ansible์„ ํ˜ธ์ถœํ•˜๋ฉด ์ƒํƒœ์—์„œ ๋ฆฌ์†Œ์Šค๋ฅผ ๊ฐ€์ ธ์™€ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌด์—‡์ด ๋” ์ข‹๋‚˜์š”?

์‚ฌ๋žŒ๋“ค์€ ๋‘ ๊ฐ€์ง€๋ฅผ ๋ชจ๋‘ ์„ฑ๊ณต์ ์œผ๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. AutoScaling ๊ทธ๋ฃน์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•˜๊ณ  ์žˆ์ง€ ์•Š๋‹ค๋ฉด Ansible์˜ ๋™์  ์ธ๋ฒคํ† ๋ฆฌ๊ฐ€ ํŽธ๋ฆฌํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. AutoScaling ๊ทธ๋ฃน์—๋Š” ์ด๋ฏธ launch_configuration์ด๋ผ๋Š” ์ž์ฒด ํˆดํ‚ท์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. launch_configuration์—๋Š” ์ƒˆ ๋ฆฌ์†Œ์Šค๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ์‹œ์ž‘ํ•ด์•ผ ํ•˜๋Š” ๋ชจ๋“  ํ•ญ๋ชฉ์„ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ Amazon์—์„œ๋Š” ๋™์  ์ธ๋ฒคํ† ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  Terraform ts ํŒŒ์ผ์„ ์ฝ๋Š” ๊ฒƒ์ด ๊ณผ์ž‰์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  "์ž๋™ ํ™•์žฅ ๊ทธ๋ฃน"์ด๋ผ๋Š” ๊ฐœ๋…์ด ์—†๋Š” ๋‹ค๋ฅธ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ(์˜ˆ: DigitalOcean ๋˜๋Š” ์ž๋™ ํ™•์žฅ ๊ทธ๋ฃน์ด ์—†๋Š” ๋‹ค๋ฅธ ๊ณต๊ธ‰์ž๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ) ์ˆ˜๋™์œผ๋กœ API๋ฅผ ๊ฐ€์ ธ์™€์„œ IP ์ฃผ์†Œ๋ฅผ ์ฐพ๊ณ , ์ƒ์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋™์  ์ธ๋ฒคํ† ๋ฆฌ ํŒŒ์ผ์ด๋ฉฐ Ansible์€ ์ด๋ฏธ ์ด๋ฅผ ํƒ์ƒ‰ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ฆ‰, Amazon์—๋Š” launch_configuration์ด ์žˆ๊ณ  ๋‹ค๋ฅธ ๋ชจ๋“  ๊ฒƒ์—๋Š” ๋™์  ์ธ๋ฒคํ† ๋ฆฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€