Flynn: ์™œ ์ธ  ๋ฃจ๊ฐ€ ์•„๋‹ˆ์•ผ?

์— ๋งŒ๋“  2013๋…„ 07์›” 31์ผ  ยท  11์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: flynn/flynn

Tsuru (https://github.com/globocom/tsuru)๋Š” ์ด๋™ ์ค‘์— ๊ตฌํ˜„ ๋œ ๋˜ ๋‹ค๋ฅธ ์˜คํ”ˆ ์†Œ์Šค ํ”„๋กœ๊ทธ๋žจ์ด๋ฉฐ flynn-spec์— ์ •์˜ ๋œ ๋Œ€๋ถ€๋ถ„์˜ ๊ธฐ๋Šฅ์„ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค.

์ด ํ”„๋กœ์ ํŠธ์— ์ฐธ์—ฌํ•˜์—ฌ ๋Œ€์‹  ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์–ด๋–ป์Šต๋‹ˆ๊นŒ?

kinquestion

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

์—ฌ๊ธฐ์„œ @msabramo์— ๋™์˜ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. Tsuru์˜ ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ํฌํ•จํ•˜๋Š” ์ƒˆ๋กœ์šด PaaS๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ์ด์œ ์— ๋Œ€ํ•ด์„œ๋Š” ์—ฌ์ „ํžˆ ์ข‹์€ ์ ์ด ์—†์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋˜ํ•œ ๋…ธ๋ ฅ์„ ๊ฒฐํ•ฉํ•˜๋ฉด ๋ฉ‹์ง„ ์ œํ’ˆ์ด ๋  ๊ฒƒ์ด๋ผ๋Š” ๋ฐ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค.

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

์ด๊ฒƒ์€ golang-nuts์—์„œ ๋…ผ์˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค . ๋‚ด ์ธ์ƒ์€ ์ผ๋ถ€ ๊ธฐ๋Šฅ์€ ๋น„์Šทํ•˜์ง€๋งŒ ํ•ต์‹ฌ ๋ชฉํ‘œ๋Š” ๋‹ค๋ฅด๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

/ cc @fsouza

@titanous ๋‚˜๋Š”์ด ์Šค๋ ˆ๋“œ๋ฅผ ๋ณด์•˜๋‹ค. tsuru์™€ flynn ์‚ฌ์ด์˜ ๊ฐ€์žฅ ํฐ ์ฐจ์ด๊ฐ€ tsuru ์ธ ๊ฒฝ์šฐ ์›น์— ๊ตญํ•œ๋œ ๊ฒฝ์šฐ ์•ฝ๊ฐ„์˜ ๋…ธ๋ ฅ์œผ๋กœ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‘ ํ”„๋กœ์ ํŠธ๊ฐ€ ํ•ฉ์ณ์ง€๋ฉด์ด ํ”„๋กœ์ ํŠธ์— ๋” ์ข‹์„ ๊ฒƒ์ด๋ฉฐ rails + merb์—์„œ ์ผ์–ด๋‚œ ๊ฒƒ์ฒ˜๋Ÿผ์ด ์ƒˆ๋กœ์šด ํ”„๋กœ์ ํŠธ (tsuru + flynn)๋ฅผ ๋งŒ๋“ค๊ณ  ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๋” ๊ฐ•๋ ฅํ•œ ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ๊ฒƒ์ด ๋” ์‰ฌ์›Œ ์งˆ ๊ฒƒ์ด๋ผ๊ณ  ๋ฏฟ์Šต๋‹ˆ๋‹ค.

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

๊ฒฐ๋ก ์€ ์ด์ œ ์ฐจ์ด์ ์ด ๋ฌด์—‡์ธ์ง€ ๋” ๋ถ„๋ช…ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ฐจ์ด์ ์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ๋ช…ํ™•ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ˆ˜ํ–‰์ค‘์ธ ๋ชจ๋“  PaaS ์ž‘์—…์„ ์ดํ•ดํ•  ์ˆ˜์žˆ๋Š” ์ถ”์ฒœ ํ•  ์ˆ˜์žˆ๋Š” ์†Œ์Šค๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

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

์ง€๊ธˆ๊นŒ์ง€ ๋ณธ ๊ฒƒ์—์„œ Flynn์€ ๊ฝค ๋‹ฌ์ฝค ํ•ด ๋ณด์ž…๋‹ˆ๋‹ค. ๊ณง ์‚ฌ์šฉํ•ด ๋ณผ ์ˆ˜์žˆ์–ด ๊ธฐ์ฉ๋‹ˆ๋‹ค.

PS I got here by Googling "tsuru flynn"

@keyvanfatehi ๊ด€์‹ฌ์„

ํŠนํžˆ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ๋น„๊ณต๊ฐœ ๋˜๋Š” ์ผ๊ด€์„ฑ์—†๋Š” ๋กœ๋“œ๋งต์„ ๋”ฐ๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ๋ชจ๋“  PaaS ํ”„๋กœ์ ํŠธ๋ฅผ ์ตœ์‹  ์ƒํƒœ๋กœ ์œ ์ง€ํ•˜๊ธฐ๊ฐ€ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ Flynn๊ณผ ๋Œ€๋ถ€๋ถ„์˜ ๋‹ค๋ฅธ PaaS ํ”„๋กœ์ ํŠธ ๊ฐ„์˜ ์ฐจ์ด์ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค (tsuru์™€์˜ ์ง์ ‘์ ์ธ ๋น„๊ต๊ฐ€ ์•„๋‹ˆ๋ผ ์ผ๋ฐ˜์ ์ธ ๊ณต๊ฐ„).

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

๋Œ€๋ถ€๋ถ„์˜ ๋‹ค๋ฅธ PaaS ํ”„๋กœ์ ํŠธ ๋Š” ์„ค์ • ๋ฐ ๋ฐฐํฌ๊ฐ€ ์–ด๋ ต๊ฑฐ๋‚˜ ๋Š๋ฆฌ๋ฉฐ ํŠน์ • ์ข…๋ฅ˜์˜ ์•ฑ์—๋งŒ ์œ ์šฉํ•˜๋ฉฐ ๊ฐœ๋ฐœ์ž๊ฐ€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋‹ค์‹œ ์„ค๊ณ„ํ•ด์•ผํ•˜๋ฉฐ ๋ชจ ๋†€๋ฆฌ ์‹์ž…๋‹ˆ๋‹ค. ์š”์ปจ๋Œ€, Flynn์€ ์–ด๋ ค์šด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ•˜์ง€๋งŒ ๋Œ€๋ถ€๋ถ„์˜ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ๋Š” ์—ฐ๋ น, ๊ธฐ์กด ์‚ฌ์šฉ์ž ๊ธฐ๋ฐ˜ ๋ฐ ๋””์ž์ธ ๋™๊ธฐ๋กœ ์ธํ•ด ํ•ด๊ฒฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

Flynn์ด ์ƒ์‚ฐ ์•ˆ์ •์„ฑ๊ณผ ๊ธฐ๋Šฅ ์™„์„ฑ์— ๋„๋‹ฌํ•˜๋ฉด ํ”„๋กœ์ ํŠธ๋ณ„๋กœ ์ฐจ์ด์ ์„ ๋ฌธ์„œํ™”ํ•˜๋ ค๊ณ ํ•ฉ๋‹ˆ๋‹ค.

@danielsiders ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! ์—ฌ๋Ÿฌ๋ถ„์ด์ด ๊ณต๊ฐ„์—์„œ ํ˜์‹ ํ•˜๋Š” ๋ชจ์Šต์„๋ณด๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋‚ด ์–ด๊นจ์— ๋„ˆ๋ฌด ๋งŽ์€ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐ ์–ด๋ ค์›€์„ ๊ฒช์Šต๋‹ˆ๋‹ค (Docker์™€ ๊ทธ ์ฃผ๋ณ€์˜ ๋„๊ตฌ๋ฅผ ๋ณด๋Š” ์ด์œ ). ๋‚˜๋Š” ์ž‘์ „์„ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ๋ฏฟ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

์ง€๊ธˆ๊นŒ์ง€ ๋‚ด ๊ฒฝํ—˜์€ deis์ฒ˜๋Ÿผ ๋ณด์ด๋Š” flynn-demo (์„ฑ๊ณต์ ์œผ๋กœ)๋ฅผ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค (์ง์ ‘ ์‹œ๋„ํ•˜์ง€๋Š” ์•Š์•˜์ง€๋งŒ heroku์™€ ๊ฐ™์€ ๋™์ž‘์„ ๋ณด์—ฌ์ฃผ๋Š” ๋ฉ‹์ง„ ๋ฃจํ•‘ ๋น„๋””์˜ค๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค). ๋”ฐ๋ผ์„œ์ด ์–•์€ ์ˆ˜์ค€์—์„œ deis, flynn ๋ฐ heroku๋Š” ๋™์ผํ•˜๊ฒŒ ๋ณด์ž…๋‹ˆ๋‹ค.

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

์–ด์จŒ๋“ , ํฅ๋ฏธ ์ง„์ง„ํ•œ ์‹œ๊ฐ„๋“ค-์•„์ง ์™„์ „ํžˆ ์ดํ•ดํ•˜์ง€ ๋ชปํ•˜๋”๋ผ๋„์ด ๋ชจ๋“  ์ผ์ด ์ผ์–ด๋‚˜๊ฒŒ ํ•ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. :)

@keyvanfatehi ๋Œ€๋ถ€๋ถ„์˜ PaaS๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ Heroku ์Šคํƒ€์ผ (git push) ๋ฐฐํฌ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ •๋ง ๋‹ค๋ฅธ ์ ์€ ๋ฐฐํฌ ํ•  ์ˆ˜์žˆ๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์œ ํ˜•๊ณผ ์•ฑ ๋ฐฐํฌ ํ›„ ๋ฐœ์ƒํ•˜๋Š” ์ผ์ž…๋‹ˆ๋‹ค.

(nb : Flynn์€ ๋˜ํ•œ docker pull ๋ฐ git pull ๋ฐ ๋นŒ๋“œํ•˜๋ ค๋Š” ๋‹ค๋ฅธ ๋ชจ๋“  ๋ฐฐํฌ ํŒจ๋Ÿฌ๋‹ค์ž„์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. FTP๋„ ์–ด๋ ต์ง€ ์•Š์Šต๋‹ˆ๋‹ค.)

@keyvanfatehi , Tsuru์—์„œ๋Š” ํ™˜๊ฒฝ ๋ณ„ ๊ตฌ์„ฑ ๋ฐ ์ •์  ํŒŒ์ผ์— ๋Œ€ํ•œ ๊ฐœ์ฒด ์ €์žฅ์†Œ ์‚ฌ์šฉ๊ณผ ๊ฐ™์€ ์ž‘์€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ๋ณ€๊ฒฝ์„ ์š”๊ตฌํ•˜๋Š” ๊ฒƒ์ด ๋” ํšจ์œจ์ ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ : ๋ฌธ์ œ์—†์ด ์ˆ˜ํ‰์œผ๋กœ ํ™•์žฅํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.) ๊ทธ๋Ÿฌ๋‚˜ ์šฐ๋ฆฌ๋Š” ์‚ฌ์šฉ์ž๋“ค์ด ๋งค์šฐ ๋น ๋ฅธ ์†๋„๋กœ ๊ทธ๊ฒƒ์„ ์–ป์„ ์ˆ˜์žˆ์„ ์ •๋„๋กœ ์ž˜ ํ•ด๋ƒˆ๊ณ , ์ด๋ฏธ ์—ฌ๊ธฐ (Globo.com์—์„œ) ์ƒ์‚ฐ์ค‘์ธ ์ œํ’ˆ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
์„œ๋น„์Šค์— ๊ด€ํ•ด์„œ๋Š” ๋‹จ์ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ ์ž˜ ์ฒ˜๋ฆฌํ•˜๊ธฐ์—๋Š” ๋„ˆ๋ฌด ๊ตฌ์ฒด์ ์ž…๋‹ˆ๋‹ค (๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค, nosql, redis, memcached, elasticsearch, ๊ฐœ์ฒด ์Šคํ† ๋ฆฌ์ง€ ๋“ฑ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ์ด ์–ผ๋งˆ๋‚˜ ์–ด๋ ค์šธ ์ง€ ์ƒ์ƒํ•ด๋ณด์‹ญ์‹œ์˜ค). ์šฐ๋ฆฌ๋Š” ์„œ๋น„์Šค api (์„œ๋น„์Šค๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์ด ๋ฐฐ์น˜ ๋  ์œ„์น˜)๋ฅผ ์ง€์ •ํ•˜๋Š” ๊ฒƒ์„ ์„ ํ˜ธํ–ˆ์œผ๋ฉฐ tsuru๋Š” ์–ด๋–ค ์„œ๋น„์Šค ๋“  ๋™์ผํ•œ ๋ฐฉ์‹์œผ๋กœ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์•„๋ฌด๋ฆฌ ๋‹ค๋ฅด๋”๋ผ๋„ ์ƒ๊ด€ ์—†์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” ๋งค์šฐ ์นœ์ ˆํ•˜๋ฉฐ ๊ธฐ์—ฌ์™€ ์ƒˆ๋กœ์šด ์•„์ด๋””์–ด์— ์ „์ ์œผ๋กœ ์—ด๋ ค ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์—ฌ์ „ํžˆ ๋‹จ์ผ ์†”๋ฃจ์…˜์œผ๋กœ flynn๊ณผ ํ•จ๊ป˜ ์ž‘์—…ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์ง€๋งŒ (๋ฏธ๋ž˜์— flynn ์ด์ƒ์„ ์ถฉ์กฑ์‹œํ‚ค๊ธฐ ์œ„ํ•ด tsuru๋ฅผ ํ™•์žฅ ํ•  ์ˆ˜ ์žˆ์Œ), ์šฐ๋ฆฌ์™€ ๊ฐ™์€ ์•ผ๋ง์ด๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ๋“ค์˜ ์˜๊ฒฌ๊ณผ ๋น„์ „์„ ์ „์ ์œผ๋กœ ์กด์ค‘ํ•ฉ๋‹ˆ๋‹ค :-)

TL; DR
์šฐ๋ฆฌ๋Š” ์„œ๋น„์Šค๊ฐ€ ์–ผ๋งˆ๋‚˜ ์ค‘์š”ํ•œ์ง€ ์•Œ๊ณ  ์žˆ์œผ๋ฏ€๋กœ ์ด๋Ÿฌํ•œ ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ์šฐ์•„ํ•œ ๋ฐฉ๋ฒ•์„ ๊ฐœ๋ฐœํ•ฉ๋‹ˆ๋‹ค. Tsuru๋Š” ์ž˜ ์ •์˜ ๋œ ์„œ๋น„์Šค API (์ƒ์„ฑ, ์ œ๊ฑฐ, ๋ฐ”์ธ๋”ฉ, ๊ณ„ํš๊ณผ ๊ฐ™์€ ๊ฐ„๋‹จํ•œ ์ง„์ž… ์  ํฌํ•จ)๋กœ ๋ชจ๋“  ์„œ๋น„์Šค๋ฅผ ์ฒ˜๋ฆฌ ํ•  ์ˆ˜ โ€‹โ€‹์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํŠน์ • ์„œ๋น„์Šค์˜ ๋ชจ๋“  ๋ณต์žก์„ฑ์€ ์ž์ฒด ์„œ๋น„์Šค API์— ์˜ํ•ด ์ฒ˜๋ฆฌ๋ฉ๋‹ˆ๋‹ค. Redis API์— ๋Œ€ํ•œ ์˜ˆ๋ฅผ ๋“ค์–ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. # tsuru service-add redis (servicename) redis_blognews (serviceinstancename) plus (plan)์„ ์‹คํ–‰ํ•˜๋ฉด redis_blognews๋ผ๋Š” ์ด๋ฆ„์œผ๋กœ redis ์ธ์Šคํ„ด์Šค๊ฐ€ ์ƒ์„ฑ๋˜๊ณ  plan plus (2 ๊ฐœ์˜ ์ธ์Šคํ„ด์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š”)๊ฐ€ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. ๊ณ  ๊ฐ€์šฉ์„ฑ์„ ๊ฐ€์ง„ redis์˜). Tsuru๋Š” ๊ทธ๊ฒƒ์ด ์–ด๋–ป๊ฒŒ ๋งŒ๋“ค์–ด ์งˆ์ง€ ๋ชจ๋ฅด์ง€๋งŒ (๊ณ  ๊ฐ€์šฉ์„ฑ์„ ๊ฐ€์งˆ์ง€๋ผ๋„), ๊ทธ๊ฒƒ์€ ์ „์ ์œผ๋กœ service-api์— ์˜ํ•ด ์ฒ˜๋ฆฌ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋˜ํ•œ tsuru ์ฝ”๋“œ๋ฅผ ๊ฑด๋“œ๋ฆฌ์ง€ ์•Š๊ณ ๋„ ์„œ๋น„์Šค API๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ๋งŒ์œผ๋กœ๋„ ์™ธ๋ถ€ (๋…์ ์  ์ธ) ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์„œ๋น„์Šค๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ์ด ํ›จ์”ฌ ๋” ์œ ์—ฐํ•˜๊ณ  Tsuru์˜ ๋ณต์žก์„ฑ ์ฆ๊ฐ€๋ฅผ ํ”ผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ # tsuru bind redis_blognews --app yourblognewsapp๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ tsuru๋Š” ์„œ๋น„์Šค ์ž๊ฒฉ ์ฆ๋ช…์„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์‚ฝ์ž…ํ•ฉ๋‹ˆ๋‹ค.

์ €๋Š” PaaSes๋ฅผ ์ฒ˜์Œ ์‚ฌ์šฉํ•˜๋ฉฐ ํ˜ผ๋ž€ ์Šค๋Ÿฝ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ธ ๋ฃจ๋ฅผ ๊ณจ ๋ž๊ณ  ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ์กฐ๊ธˆ ์—‰๋ง์œผ๋กœ ๋งŒ๋“ค์—ˆ๋‹ค. ํ”Œ๋ฆฐ์˜ ๋ชฉํ‘œ์™€ ํฌ๊ฒŒ ๋‹ค๋ฅด์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์„œ๋น„์Šค API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ƒํƒœ ์ €์žฅ์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ tsuru-api, docker-cluster, gandalf ๋“ฑ์ด์žˆ๋Š” ๋งค์šฐ ๋ชจ๋“ˆ ์‹์ž…๋‹ˆ๋‹ค.

๋…ธ๋ ฅ์„ ํ•ฉ์น˜๋ฉด ๋” ์ข‹์€ ์ œํ’ˆ์ด ๋‚˜์˜ฌ์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์„œ @msabramo์— ๋™์˜ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. Tsuru์˜ ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ํฌํ•จํ•˜๋Š” ์ƒˆ๋กœ์šด PaaS๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ์ด์œ ์— ๋Œ€ํ•ด์„œ๋Š” ์—ฌ์ „ํžˆ ์ข‹์€ ์ ์ด ์—†์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋˜ํ•œ ๋…ธ๋ ฅ์„ ๊ฒฐํ•ฉํ•˜๋ฉด ๋ฉ‹์ง„ ์ œํ’ˆ์ด ๋  ๊ฒƒ์ด๋ผ๋Š” ๋ฐ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค.

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