Google, Knative 1.0 ์„œ๋ฒ„๋ฆฌ์Šค ์ปดํ“จํŒ… ํ”Œ๋žซํผ ์ถœ์‹œ

Google์€ Kubernetes ํ”Œ๋žซํผ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ์ปจํ…Œ์ด๋„ˆ ๊ฒฉ๋ฆฌ ์‹œ์Šคํ…œ ์œ„์— ๋ฐฐํฌ๋˜๋Š” ์„œ๋ฒ„๋ฆฌ์Šค ์ปดํ“จํŒ… ์ธํ”„๋ผ๋ฅผ ์ƒ์„ฑํ•˜๋„๋ก ์„ค๊ณ„๋œ Knative 1.0 ํ”Œ๋žซํผ์˜ ์•ˆ์ •์ ์ธ ๋ฆด๋ฆฌ์Šค๋ฅผ ๋ฐœํ‘œํ–ˆ์Šต๋‹ˆ๋‹ค. Google ์™ธ์—๋„ IBM, Red Hat, SAP, VMware ๋“ฑ์˜ ๊ธฐ์—…๋„ Knative ๊ฐœ๋ฐœ์— ์ฐธ์—ฌํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. Knative 1.0์˜ ๋ฆด๋ฆฌ์Šค๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ API์˜ ์•ˆ์ •ํ™”๋ฅผ ์˜๋ฏธํ•˜๋ฉฐ, ์•ž์œผ๋กœ๋„ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š๊ณ  ์ด์ „ ๋ฒ„์ „๊ณผ๋„ ํ˜ธํ™˜๋ฉ๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ์ฝ”๋“œ๋Š” Go๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ Apache 2.0 ๋ผ์ด์„ ์Šค์— ๋”ฐ๋ผ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.

Knative๊ฐ€ ์ œ๊ณตํ•˜๋Š” ์„œ๋ฒ„๋ฆฌ์Šค ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ๋ชจ๋ธ์€ ํด๋ผ์šฐ๋“œ ์‹œ์Šคํ…œ์— ๋Œ€ํ•œ ์ถ”๊ฐ€์ ์ธ ์ถ”์ƒํ™” ์ˆ˜์ค€์„ ์ œ๊ณตํ•˜์—ฌ ๊ธฐ๋Šฅ์„ ์„œ๋น„์Šค(FaaS, Functions as a service)๋กœ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ์„œ๋ฒ„๋ฆฌ์Šค ๋ชจ๋ธ์˜ ๋ณธ์งˆ์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰์„ ์œ„ํ•œ ์ธํ”„๋ผ ์ƒ์„ฑ ๋ฐ ๊ด€๋ฆฌ์— ๋Œ€ํ•œ ๊ฑฑ์ • ์—†์ด, ํŠน์ • ์„œ๋ฒ„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ ํ•ด๋‹น ์šด์˜์— ํ•„์š”ํ•œ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์— ์–ฝ๋งค์ด์ง€ ์•Š๊ณ  ๊ฐœ๋ณ„ ๊ธฐ๋Šฅ ์ˆ˜์ค€์—์„œ ๋กœ์ง์„ ๊ตฌํ˜„ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

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

Knative ํ”Œ๋žซํผ ์ž์ฒด๋Š” ํ•„์š”์— ๋”ฐ๋ผ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ์ค€๋น„๋œ ๊ธฐ๋Šฅ์„ ์ปจํ…Œ์ด๋„ˆ์— ๋ฐฐ์น˜ํ•˜๋ฉฐ ๊ด€๋ฆฌ๋ฅผ ๊ตฌ์„ฑํ•˜๊ณ  ์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ํ™˜๊ฒฝ์˜ ํ™•์žฅ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค. ํ”Œ๋žซํผ์€ ์™ธ๋ถ€ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค์— ๋ฌถ์ด์ง€ ์•Š๊ณ  ์ž์ฒด์ ์œผ๋กœ ๋ฐฐํฌ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹คํ–‰ํ•˜๋ ค๋ฉด Kubernetes๋งŒ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. Django, Ruby on Rails, Spring ๋“ฑ ๋‹ค์–‘ํ•œ ๊ณตํ†ต ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์ง€์›ํ•˜๋Š” ๋„๊ตฌ๊ฐ€ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. ๋ช…๋ น์ค„ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ”Œ๋žซํผ ์ž‘๋™์„ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ”Œ๋žซํผ์€ ๋‘ ๊ฐ€์ง€ ์ฃผ์š” ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  • ๋„คํŠธ์›Œํฌ ํ†ต์‹ ์˜ ์ž๋™ ๊ตฌ์„ฑ, ๋ผ์šฐํŒ…, ๋ณ€๊ฒฝ ์ถ”์ (ํ˜ธ์ŠคํŒ… ์ฝ”๋“œ ๋ฐ ์„ค์ •์˜ ์Šค๋ƒ…์ƒท ์ƒ์„ฑ) ๋ฐ ํ•„์š”ํ•œ ์ˆ˜์ค€์˜ ํ™•์žฅ ์œ ์ง€(ํ™œ๋™์ด ์—†์„ ๋•Œ ํฌ๋“œ ์ˆ˜๋ฅผ 2์œผ๋กœ ์ค„์ด๋Š” ๊ฒƒ๊นŒ์ง€)๋ฅผ ํ†ตํ•ด Kubernetes์—์„œ ์„œ๋ฒ„๋ฆฌ์Šค ์ปจํ…Œ์ด๋„ˆ ์‹คํ–‰์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. . ๊ฐœ๋ฐœ์ž๋Š” ๋กœ์ง์—๋งŒ ์ง‘์ค‘ํ•˜๊ณ  ์‹คํ–‰๊ณผ ๊ด€๋ จ๋œ ๋ชจ๋“  ๊ฒƒ์€ ํ”Œ๋žซํผ์—์„œ ์ฒ˜๋ฆฌ๋ฉ๋‹ˆ๋‹ค. ๋„คํŠธ์›Œํฌ ์ƒํ˜ธ ์ž‘์šฉ ๋ฐ ๋ผ์šฐํŒ… ์š”์ฒญ์„ ๊ตฌ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ๋„คํŠธ์›Œํฌ ํ•˜์œ„ ์‹œ์Šคํ…œ์ธ Ambassador, Contour, Kourier, Gloo ๋ฐ Istio๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. HTTP/XNUMX, gRPC ๋ฐ WebSocket์ด ์ง€์›๋ฉ๋‹ˆ๋‹ค.
  • Eventing์€ ๊ตฌ๋…(ํ•ธ๋“ค๋Ÿฌ ์—ฐ๊ฒฐ), ์ „๋‹ฌ ๋ฐ ์ด๋ฒคํŠธ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ ๋ฒ”์šฉ ์‹œ์Šคํ…œ์ž…๋‹ˆ๋‹ค. ๊ฐœ์ฒด ๋ชจ๋ธ ๋ฐ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์‚ฌ์šฉํ•˜์—ฌ ์ปดํ“จํŒ… ๋ฆฌ์†Œ์Šค๋ฅผ ๋ฐ์ดํ„ฐ ์ŠคํŠธ๋ฆผ์— ์—ฐ๊ฒฐํ•˜์—ฌ ๋น„๋™๊ธฐ์ ์œผ๋กœ ์‹คํ–‰๋˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

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