์ฐจ๋ก€
โ€ข PaaS
โ€ข Cloud Foundry
โ€ข HPE Helion Stackato
2
PaaS๋ž€?
โ€ข IaaS ํ™˜๊ฒฝ์— ์ตœ์ ํ™”๋œ (์›น ๊ธฐ๋ฐ˜์˜) ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜/์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํ”Œ๋žซํผ
โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜/์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์— ํ•„์š”ํ•œ ๋„๊ตฌ์™€ ๊ธฐ๋Šฅ, ์„œ๋น„์Šค๋“ค์ด ํŒจํ‚ค์ง•๋œ ์ผ์ข…์˜ ํด๋ผ์šฐ๋“œ
๋ฏธ๋“ค์›จ์–ด
๏ƒผ OS, ๊ฐœ๋ฐœ ๋„๊ตฌ, ํ”„๋ ˆ์ž„์›Œํฌ, language, BPM, EAI, ํ˜•์ƒ๊ด€๋ฆฌ, ์ปดํŒŒ์ผ๋Ÿฌ, ๋ฐ์ดํ„ฐ๊ด€๋ฆฌ, ๋ณด์•ˆ, ๋ฒ„์ „๊ด€๋ฆฌ, ๋กค๋ฐฑ, ํ”„๋กœ๋น„์ €๋‹,
์บ์‹ฑ
๏ƒผ ์ด๊ฒƒ๋“ค์„ ํฌํ•จํ•˜๋ฉด์„œ ์„œ๋กœ ์—ฐ๊ฒฐ/ํ†ตํ•ฉ์‹œ์ผœ ์ฃผ๋Š” ๊ธฐ๋Šฅ ํฌํ•จ ๏ƒ  ๋ณต์žกํ•œ ์•„ํ‚คํ…์ฒ˜๋กœ ๊ตฌ์„ฑ๋จ
๊ฐœ๋ฐœ์ž๋Š” ๊ฐœ๋ฐœ์—๋งŒ ์‹ ๊ฒฝ์“ฐ๊ฒŒ ํ•˜์ž!
๏ƒจ IT ์ž์›์ด ํ•ญ์ƒ ์„œ๋น„์Šค ๊ฐ€๋Šฅํ•œ ์ƒํƒœ(์ฆ‰, ํ˜ธ์ŠคํŒ…๋œ ์ƒํƒœ = ์‚ฌ์šฉ๊ฐ€๋Šฅํ•œ ์ƒํƒœ)๋กœ ์ œ๊ณต๋จ.
๏ƒจ ํด๋ผ์šฐ๋“œ ์ƒ์—์„œ ๊ฐœ๋ฐœ๊ณผ ๋”œ๋ฆฌ๋ฒ„๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅ
๏ƒจ IT ์ž์›์„ ์…€ํ”„ ์„œ๋น„์Šค๋‚˜ API๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•จ(=์ถ”์ƒํ™”ํ•˜์—ฌ ์ œ๊ณต)
4
Cloud Service์˜ ๋ถ„๋ฅ˜
IT ์ž์›์˜ ๊ด€๋ฆฌ ๊ถŒํ•œ์— ๋”ฐ๋ฅธ ๋ถ„๋ฅ˜
5
Platform-as-a-Service(PaaS)
Cloud-enabled automation and orchestration of app services and containers
SERVICE UNIT
โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋น„์Šค(์˜ˆ, ๋ฉ”์‹œ์ง€)์™€ ์ปจํ…Œ์ด๋„ˆ
(์˜ˆ, Redhat, tcServer, Weblogic)
ABSTRACTION ๋Œ€์ƒ โ€ข ๋ฌผ๋ฆฌ์  ์ธํ”„๋ผ, OS, Middleware, Runtime
PRIMARY USE CASE
โ€ข ๊ฐœ๋ฐœ์ž์™€ ํ…Œ์Šคํ„ฐ์—๊ฒŒ ํ‘œ์ค€ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์ปจํ…Œ์ด๋„ˆ
์ œ๊ณต
โ€ข ์ˆ˜ํ‰ ํ™•์žฅ๊ณผ ํ™•์žฅ ๊ธฐ๋Šฅ(bursting capability)๋ฅผ ์ง€์›ํ•˜๋Š”
์ธํ”„๋ผ ์ž์›์„ ๋™์ ์œผ๋กœ ๊ด€๋ฆฌ
ADVANCE USE CASE
โ€ข ํ…Œ์ŠคํŠธ ์ž๋™ํ™”(์„ฑ๋Šฅ, ๊ธฐ๋Šฅ, ๋ณด์•ˆ, ๊ทœ์ œ์ค€์ˆ˜ ๋“ฑ)
โ€ข ์ง€์†์  ํ†ตํ•ฉ(CI)์™€ ๋ฐฐํฌ ์‹œ์Šคํ…œ๊ณผ์˜ ํ†ตํ•ฉ
TOOLS
โ€ข Cloud Foundry
โ€ข vSphere
6
PaaS์˜ ํ™•์‚ฐ ๋ฐฐ๊ฒฝ
์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋Œ€ํ˜•ํ™”์™€ DevOps์˜ ํ•„์š”์„ฑ์— ๋”ฐ๋ผ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐฐํฌ ๋ฐฉ์‹์˜ ๋ณ€ํ™”
1. ๋น ๋ฅด๊ฒŒ ๋ณ€ํ™”ํ•˜๋Š” ๊ฐœ๋ฐœํ™˜๊ฒฝ์˜ ๊ด€๋ฆฌ ํ•„์š”
โ€ข ์ž๋™ํ™”๋œ ๊ฐœ๋ฐœ, ๋ฐฐํฌ ํ™˜๊ฒฝ
โ€ข ๋น„์ฆˆ๋‹ˆ์Šค ์š”๊ตฌ์‚ฌํ•ญ์— ๋Œ€ํ•œ ๋น ๋ฅธ ๋Œ€์‘
2. ๋ณต์žกํ•ด์ง„ Middleware
โ€ข ๊ฐœ๋ฐœ๋„๊ตฌ, ๊ด€๋ฆฌ๋„๊ตฌ, ๋ฐฐํฌ๋„๊ตฌ ๋“ฑ ์ˆ˜๋งŽ์€ middleware์˜ ๊ตฌ์ถ•๊ณผ ์šด์˜ ์ƒ์˜ ์–ด๋ ค์›€
โ€ข ์ˆ˜๋งŽ์€ middleware์˜ ์šด์˜ ๊ธฐ์ˆ ์ž, ๋ผ์ด์„ ์Šค, ํ•™์Šต ๋“ฑ์˜ ์–ด๋ ค์›€
3. ์ปดํ“จํŒ… ์ž์›์˜ ํ• ๋‹น
โ€ข ํ”„๋กœ์ ํŠธ ๊ทœ๋ชจ์˜ ํ™•๋Œ€, ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ถ”๊ฐ€ ๋“ฑ์˜ ์ด์Šˆ ์‹œ ํ•„์š”ํ•œ ์ž์› ํ™•๋ณด ์‹œ๊ฐ„ ์ฆ๊ฐ€
โ€ข Cross-platform ํ™˜๊ฒฝ์˜ ์ฆ๊ฐ€
4. ํ˜‘์—…์˜ ์ฆ๊ฐ€
โ€ข ์กฐ์ง์ , ์ง€๋ฆฌ์ ์œผ๋กœ ๋ถ„์‚ฐ๋œ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ๏ƒ  ์ด์Šˆ, ์ง„ํ–‰์ƒํ™ฉ ํŒŒ์•…, ํ˜‘์—… ๋“ฑ
<์ถœ์ฒ˜: โ€œPaaS : ํด๋ผ์šฐ๋“œ ๋„์ž… ํšจ์œจ์˜ ์™„์„ฑโ€œ, ์žฅ์ง„์˜>
7
PaaS์˜ ๊ธฐ๋Šฅ
ํ˜ธ์ŠคํŒ…๋œ ์†Œํ”„ํŠธ์›จ์–ด์˜
ํ˜•์ƒ๊ด€๋ฆฌ ์„œ๋น„์Šค
๋นŒ๋“œ ์„œ๋น„์Šค ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„ ํ”„๋ ˆ์ž„์›Œํฌ ์„œ๋น„์Šค
๋ชจ๋ธ ํ”Œ๋žซํผ ์„œ๋น„์Šค
Component as a
Service (CaaS)
ํ†ตํ•ฉ ํ”Œ๋žซํผ ์„œ๋น„์Šค ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋น„์Šค
ํ…Œ์ŠคํŠธ์™€ ์ž๋™ํ™” ๋„๊ตฌ
PaaS๊ฐ€ ์ œ๊ณตํ•˜๋Š”/์ œ๊ณตํ•ด์•ผ ํ•˜๋Š” ๊ธฐ๋Šฅ ๋˜๋Š” ์„œ๋น„์Šค
์„ฑ๋Šฅ๋ถ„์„ ๋„๊ตฌ
๊ฐœ๋ฐœ๏ƒ ํ…Œ์ŠคํŠธ๏ƒ 
ํ”„๋กœ๋•์…˜ ์ž๋™ํ™”
๋ชจ๋‹ˆํ„ฐ๋ง๊ณผ
๊ณต์ง€(Notification)
8
PaaS์˜ ๊ธฐ๋Šฅ(์ƒ์„ธ)
ํ˜ธ์ŠคํŒ…๋œ ์†Œํ”„ํŠธ์›จ์–ด์˜ ํ˜•์ƒ๊ด€๋ฆฌ ์„œ๋น„์Šค
โ€ข ๊ฐœ๋ฐœ๊ณผ์ •์—์„œ ๋ฐœ์ƒํ•˜๋Š” ์ฝ”๋“œ์˜ ๋ฒ„์ „๊ณผ ๋ชจ๋“ˆ์„ ๊ด€๋ฆฌ : ์ฝ”๋“œ๋Š” ์˜จ๋ผ์ธ ์ €์žฅ์†Œ์— ๊ด€๋ฆฌ (์˜ˆ, GitHub)
โ€ข ๊ฐœ๋ฐœ์ž์šฉ ๊ฐ€์ƒ ๊ฐœ๋ฐœ๊ธฐ์ธ ๊ฐœ๋ฐœํ™˜๊ฒฝ์„ ์‰ฝ๊ฒŒ ๋ณต์ œ -> ๊ฐœ๋ฐœ๊ณผ ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•œ ์ž„์‹œ ์›Œํฌ๋กœ๋“œ๋ฅผ ์šด์˜๊ธฐ์™€ ๋™์ผํ•˜๊ฒŒ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด ์คŒ์œผ๋กœ์จ ํ…Œ์ŠคํŠธํ•˜๊ณ ์ž ํ•˜๋Š” ๋Œ€์ƒ์„
์†Œ์Šค ์ €์žฅ์†Œ์—์„œ ์ฆ‰์‹œ ๋นŒ๋“œํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•จ.
๋นŒ๋“œ ์„œ๋น„์Šค
โ€ข ์„œ๋น„์Šค๋“ค์„ ํ†ตํ•ฉํ•˜๋Š” ๊ณผ์ •, ์ฝ”๋“œ ์ปดํŒŒ์ผ, ๊ทธ๋ฆฌ๊ณ  ํ…Œ์ŠคํŒ…์„ ๊ฑฐ์ณ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“œ๋Š” ๊ณผ์ • ๊ด€๋ฆฌ
โ€ข ์–ดํ”Œ๋ฆฌ๊ฒŒ์ด์…˜์€ ์—ฌ๋Ÿฌ ๋ชจ๋“ˆ (ํ˜น์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ) ๋“ค์— ๋Œ€ํ•œ ์ข…์†์„ฑ์„ ์ง€๋‹ˆ๊ฒŒ ๋˜๋Š”๋ฐ, PaaS ์˜ ๋นŒ๋“œ ์„œ๋น„์Šค๋Š” ์ด๋Ÿฌํ•œ ๋ชจ๋“ˆ๋“ค์˜ ๋น„์ „๊ณผ ์ข…์†์„ฑ์„ ๊ด€๋ฆฌํ•˜์—ฌ ๋นŒ๋“œ๋ฅผ ์ž๋™ํ™”
o Maven : ์ž๋ฐ” ๊ฐœ๋ฐœ์ž๋“ค์—๊ฒŒ ์ฃผ๋กœ ์‚ฌ์šฉ๋˜๋ฉฐ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋‚ด์˜ ๋ชจ๋“ˆ๊ฐ„ ์ข…์†์„ฑ์„ ๊ด€๋ฆฌํ•˜์—ฌ ๋นŒ๋“œ๋ฅผ ์ž๋™ํ™”
o Maven Repository: ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ์— ๊ทผ๊ฐ„ํ•˜์—ฌ ์†Œํ”„ํŠธ์›จ์–ด ์ปดํฌ๋„ŒํŠธ(๋ชจ )๋“ค์˜ ์ข…์†์„ฑ ๋””๋ ‰ํ† ๋ฆฌ ๋“ฑ์„ ๊ด€๋ฆฌํ•ด์ฃผ๋Š” ์˜จ๋ผ์ธ ์ €์žฅ์†Œ
์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„
โ€ข ๊ฐœ๋ฐœ์ž๊ฐ€ ์ž์‹ ์ด ๋งŒ๋“  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‰ฝ๊ณ  ๋น ๋ฅด๊ฒŒ ๊ฐ€๋Šฅํ•œ ์‹ค์ œ ํ™˜๊ฒฝ์—์„œ ํ…Œ์ŠคํŠธํ•ด ๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๊ธฐ๋Šฅ(=๋ชจ์˜ ์‹คํ–‰ํ™˜๊ฒฝ) ์ œ๊ณต
โ€ข ๊ฐœ๋ฐœ์ž๊ฐ€ ์š”์ฒญ์ด ์žˆ๋Š” ๊ฒฝ์šฐ ๊ฐœ๋ฐœ๊ธฐ๋ฅผ ๋™์ ์œผ๋กœ ์ƒ์„ฑํ•˜์—ฌ ์ œ๊ณต
ํ”„๋ ˆ์ž„์›Œํฌ ์„œ๋น„์Šค
โ€ข ์ผ๊ด€์„ฑ์žˆ๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ตฌ์กฐ๋ฅผ ๊ตฌ์ถ• <- ์•ˆ์ •๋˜๊ณ  ํ…Œ์ŠคํŠธ๋œ ๊ธฐ๋ฐ˜ ์†Œํ”„ํŠธ์›จ์–ด ๋ชจ๋“ˆ์— ๊ทผ๊ฐ„ํ•˜์—ฌ ๊ฐœ๋ฐœ
โ€ข ๋งค๋ฒˆ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์„ค์ •ํ•˜๊ณ  ์„ค์ •ํ•˜๊ณ  ์„ค์ •ํ•˜๊ณ  ์„ค์น˜ํ•  ํ•„์š” ์—†์Œ
โ€ข PaaS ์ œ๊ณต์ž๋Š” ์ œ๊ณต์ž๋Š” ๋‹ค์Œ๊ณผ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ”„๋ ˆ์ž„์›Œํฌ๋“ค์„ ํ”„๋ ˆ์ž„์›Œํฌ๋“ค์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋‹ค :
o Spring, Play Framework ๊ฐ™์€ ์„œ๋ฒ„ ํ”„๋ ˆ์ž„์›Œํฌ ํ”„๋ ˆ์ž„์›Œํฌ , X-Forms, Responsive Forms, Web ๊ณผ ๊ฐ™์€ ์›น 2.0 UX ํ”„๋ ˆ์ž„์›Œํฌ
9
PaaS์˜ ๊ธฐ๋Šฅ(์ƒ์„ธ)
๋ชจ๋ธ ํ”Œ๋žซํผ ์„œ๋น„์Šค
โ€ข BPM, ๋น„์ฆˆ๋‹ˆ์Šค ๋ฃฐ ๊ด€๋ฆฌ (BRE), BI์™€ ๊ฐ™์€ ๋ชจ๋ธ ๊ธฐ๋ฐ˜์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ†ตํ•ฉ ๋ฐฉ์‹์„ ์ง€์›ํ•˜๋Š” ๋ฏธ๋“ค์›จ์–ด์˜ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ํ˜•ํƒœ
โ€ข ํƒœ๋„ŒํŠธ๋ณ„๋กœ ํŠนํ™”๋˜๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์˜์—ญ์„ ์†Œ๋น„์ž๊ฐ€ ์ง์ ‘ ์…€ํ”„์„œ๋น„์Šคํ•˜์—ฌ ๊ตฌ์„ฑ
โ€ข ์—…๋ฌด ์ „๋ฌธ๊ฐ€๊ฐ€ ์ง์ ‘ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ”„๋กœ์„ธ์Šค ํŽธ์ง‘๊ธฐ, ํผ ํŽธ์ง‘๊ธฐ, ๋ฃฐ ํŽธ์ง‘๊ธฐ ๋“ฑ์„ ์ œ๊ณตํ•˜์—ฌ ๊ฐœ๋ฐœ์ž๊ฐ€ ์•„๋‹ˆ๋”๋ผ๋„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ํ˜•์ƒ์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์ถ”์ƒ์„ฑ์„ ์ œ๊ณต
โ€ข ๏ƒ  ์ดํ›„์— ์†Œ๋น„์ž๊ฐ€ ์…€ํ”„์„œ๋น„์Šค๋ฅผ ํ†ตํ•˜์—ฌ ์ž์‹ ์ด ์ทจ๋“ํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์—…๋ฌด ๊ทœ์น™์ด๋‚˜ ํ”„๋กœ์„ธ์Šค๋ฅผ ์šฉ์ดํ•˜๊ฒŒ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ฃผ๊ณ , ์ž์‹ ์ด ์›ํ•˜๋Š” ๋ ˆํฌํŠธ๋ฅผ
์ฃผ์–ด์ง„ BI ํ”Œ๋žซํผ์˜ ์‚ฌ์šฉ์ž ๋„๊ตฌ๋ฅผ ํ†ตํ•˜์—ฌ ๋ฝ‘์•„ ๋‚ผ์ˆ˜๋„ ์žˆ๋Š” ์ž์œจ์„ฑ์„ ์ค€๋‹ค.
Component as a Service (CaaS)
โ€ข ์†Œํ”„ํŠธ์›จ์–ด ์ปดํฌ๋„ŒํŠธ๋“ค์„ ํ˜ธ์ŠคํŒ… ๋œ ์ฑ„๋กœ ์ œ๊ณต. ์ปดํฌ๋„ŒํŠธํ™”์˜ ์„ฑ์ˆ™๋„ ์ˆ˜์ค€์ด ๋†’์€ SOA ์„ฑ์ˆ™๋„๋ฅผ ๊ฐ€์ง
โ€ข ์†Œํ”„ํŠธ์›จ์–ด ์ปดํฌ๋„ŒํŠธ๋ฅผ Open API ๋กœ (RESTful ์„œ๋น„์Šค๋‚˜ ์›น์„œ๋น„์Šค, XML ์„œ๋น„์Šค ๋“ฑ์œผ๋กœ) ๋…ธ์ถœ์‹œํ‚ค๊ธฐ ์‰ฝ๊ณ  ์–ธ์ œ๋“ ์ง€ ๋™์ ์ธ ๋ฐ”์ธ๋”ฉ๊ณผ ํ†ตํ•ฉ์ด ๊ฐ€๋Šฅ
โ€ข ํ”„๋กœ์„ธ์Šค ์˜ค์ผ€์ŠคํŠธ๋ž˜์ด์…˜๊ณผ ๊ฐ™์ด ๋น„์ฆˆ๋‹ˆ์Šค ์‚ฌ์šฉ์ž๊ฐ€ ๋‹ค๋ฃจ๊ธฐ์—๋„ ์‰ฌ์›€
โ€ข ํŠน์„ฑ์ƒ ์žฆ์€ ํ˜ธ์ถœ์ด ๋นˆ๋ฒˆํžˆ ๋ฐœ์ƒํ•˜๋Š” ์›Œํฌ๋กœ๋“œ๋ฅผ ๊ฒฌ๋ŽŒ์•ผ ํ•˜๋ฏ€๋กœ ๊ฐ€๋ณ๊ณ  ๊ฐ•๋ ฅํ•œ SOA ๊ตฌํ˜„ ํ”Œ๋žซํผ์ธ OSGi ์„ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ์ข€๋” ๋‚ฎ์€ Modularity ๋ฅผ ์ œ๊ณตํ•˜์ง€๋งŒ
์–ธ์–ด์ฐจ์›์—์„œ RESTful ์„œ๋น„์Šค๋ฅผ ์ง€์›ํ•˜๋Š” JAX-RS ํ˜น์€ Node.JS ๋“ฑ์„ ์‚ฌ์šฉ
ํ†ตํ•ฉ ํ”Œ๋žซํผ ์„œ๋น„์Šค
โ€ข ๊ธฐ์กด์˜ ์„œ๋น„์Šค๋‚˜ ์‹œ์Šคํ…œ๊ณผ์˜ ํ†ตํ•ฉ์„ ์‰ฝ๊ฒŒ ํ•ด ์ฃผ๋Š” ์—ญํ• 
โ€ข ์ธํ„ฐํŽ˜์ด์Šค ์„œ๋น„์Šค(API๋‚˜ EAI, BPM, Presentation Mashups ๋“ฑ) ์ œ๊ณต
o ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค๋‚ด์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๋“ค ํ•„์š”์— ๋”ฐ๋ผ ์‰ฝ๊ฒŒ ํ™”๋ฉด, ์„œ๋น„์Šค, ๋ฐ์ดํ„ฐ๊ฐ€ ํ†ตํ•ฉ(ACID ํ•œ ํŠธ๋žœ์žญ์…˜์ด ๋ณด์žฅ๋˜๊ฑฐ๋‚˜ ๋ฉ”์‹œ์ง€ ํ๋“ฑ์„ ํ†ตํ•˜์—ฌ ์—ฐ๋™์ด ๋ณด์žฅ)
o ๋‹ค๋ฅธ ๋„คํŠธ์›Œํฌ์˜ ํด๋ผ์šฐ๋“œ์—์„œ ์ œ๊ณตํ•˜๋Š” ์„œ๋น„์Šค๋‚˜ ์„œ๋น„์Šค์˜ ๋‹จ์œ„ ํ™”๋ฉด๊ณผ๋„ ์—ฐ๊ณ„
o โ€˜์„œ๋น„์Šค-์ค‘์‹ฌ-์•„ํ‚คํ…์ฒ˜' ๊ธฐ๋ฐ˜์˜ SOA ์„ฑ์ˆ™๋„ ๋ชจํ˜•์— ๊ทผ๊ฑฐํ•˜์—ฌ ๋†’์€ ์ˆ˜์ค€์˜ ์„œ๋น„์Šค ํ†ตํ•ฉ
๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋น„์Šค
โ€ข ํ…Œ์ŠคํŠธ ์‹œ ์‹ค์ œ ์šด์˜ํ™˜๊ฒฝ๊ณผ ๋น„์Šทํ•œ ๋Œ€์šฉ๋Ÿ‰์˜ ๋ณต์žกํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๊ตฌ์„ฑํ•˜์—ฌ ์ œ๊ณต
โ€ข ์˜ˆ๋ฅผ ๋“ค์–ด 10 ๋Œ€์˜ ํด๋Ÿฌ์Šคํ„ฐ๋œ MySQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์‚ฌ์šฉ๋  ์˜ˆ์ •์ด๋ผ๋ฉด, ์ด๋Ÿฌํ•œ ๊ฐœ๋ฐœํ™˜๊ฒฝ์„ ์›น๋ธŒ๋ผ์šฐ์ € ์ƒ์˜ ์…€ํ”„์„œ๋น„์Šค์—์„œ ๋ช…์‹œํ•ด์ฃผ๋Š” ๊ฒƒ
๋งŒ์œผ๋กœ ์ด๋Ÿฌํ•œ ์ƒŒ๋“œ๋ฐ•์Šค ํ™˜๊ฒฝ์ด ๊ตฌ์ถ• 10
PaaS์˜ ๊ธฐ๋Šฅ(์ƒ์„ธ)
ํ…Œ์ŠคํŠธ์™€ ์ž๋™ํ™” ๋„๊ตฌ
โ€ข UI ํ…Œ์ŠคํŠธ์™€ ๋กœ๋“œ ํ…Œ์ŠคํŠธ ์„œ๋น„์Šค ์ž๋™ํ™” ์ง€์›
o Jenkins: ๊ฐ€์žฅ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ์ง€์†์  ํ†ตํ•ฉ(CI) ์„œ๋ฒ„. ์†Œ์Šค์ฝ”๋“œ๋ฅผ ๋‚ด๋ ค ๋ฐ›์•„ Maven์„ ํ˜ธ์ถœํ•˜์—ฌ ๋นŒ๋“œ๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ณ  ๋‹ค์–‘ํ•œ ์ข…๋ฅ˜์˜ ํ”Œ๋Ÿฌ๊ทธ์ธ๋“ค์„ ํ†ตํ•˜์—ฌ ํ…Œ์ŠคํŠธ, ์ •์  ์ฝ”๋“œ ๋ถ„์„
๋“ฑ์„ ์ž๋™์ ์œผ๋กœ ์ˆ˜ํ–‰
o Selenium: ์—ฌ๋Ÿฌ ์ข…๋ฅ˜์˜ ์›น๋ธŒ๋ผ์šฐ์ € ์ƒ์—์„œ UI ํ…Œ์ŠคํŠธ๋ฅผ ์ž๋™ํ™”
o Sonar: ์ฝ”๋“œ์˜ ํ’ˆ์งˆ์— ๋Œ€ํ•œ ํ”ผ๋“œ๋ฐฑ์„ ์ž๋™ํ™”ํ•˜์—ฌ ๋ณด๊ณ 
์„ฑ๋Šฅ๋ถ„์„ ๋„๊ตฌ
โ€ข ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•œ ๊ธฐ๊ณ„์ , ๋„คํŠธ์›Œํฌ์  ๊ตฌ์„ฑ ์ž์ฒด๊ฐ€ ํฌ๊ฒŒ ์š”๊ตฌ๋˜๋Š” ํ”„๋กœ๋•์…˜ ํ”„๋กœํŒŒ์ผ๋ง๊ณผ ๋กœ๋“œ ํ…Œ์ŠคํŒ… ๊ฐ™์€ ์„ฑ๋Šฅ ๋ถ„์„ ๋„๊ตฌ ์ œ๊ณต
o SOASTA: ํด๋ผ์šฐ๋“œ ๋จธ์‹ ๋“ค์˜ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•˜์—ฌ ์‹ค์ œ ์‚ฌ์šฉ์ž ๋กœ๋“œ๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํ…Œ์ŠคํŠธ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•จ (ํด๋ผ์ด์–ธํŠธ ํƒ€์ž…๊ณผ ๊ฐœ์ˆ˜, ์ง€๋ฆฌ์  ์œ„์น˜, ๋กœ๋“œ ํŒจํ„ด
๋“ฑ์„ ์ง€์ • ๊ฐ€๋Šฅ)
o New Relic: ์—”๋“œ-์œ ์ €์˜ ํ–‰๋™, ์„œ๋ฒ„ ํ–‰์œ„๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋ง, ๋ณ‘๋ชฉ๊ตฌ๊ฐ„์„ ์ฐพ์•„๋‚ด๋Š”๋ฐ ์‚ฌ์šฉ
๊ฐœ๋ฐœ์—์„œ ํ…Œ์ŠคํŠธ, ํ…Œ์ŠคํŠธ์—์„œ ํ”„๋กœ๋•์…˜์„ ์œ„ํ•œ ์ž๋™ํ™” ์„œ๋น„์Šค
โ€ข ์„œ๋น„์Šค ์šด์˜์— ๋ฐฉํ•ด๋ฅผ ์ฃผ์ง€ ์•Š๋„๋ก ํด๋ผ์šฐ๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์—…๋ฐ์ดํŠธ ๊ฐ€๋Šฅ
โ€ข ์˜ˆ๋ฅผ ๋“ค๋ฉด ์ƒˆ๋กœ์šด ๋ฒ„์ „์˜ ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉ์ž๊ฐ€ ์ด๋ฏธ ์‚ฌ์šฉ์ค‘์ธ ์„œ๋น„์Šค์— ์ ์šฉ์‹œ์ผœ์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ, ๊ฐœ๋ฐœ๊ณผ ํ…Œ์ŠคํŒ…, ๋ฐฐํฌ์˜ ๊ณผ์ •์ด ์ข€๋” ๋Š๊น€ ์—†์ด ์ œ๊ณต๋˜๋„๋ก ์ง€์›(=
์„œ๋น„์Šค์˜ ์—…-ํƒ€์ž„์— ์†์‹ค ์ตœ์†Œํ™”)
โ€ข ์„ธ์…˜ ์Šคํ† ์–ด๋ฅผ ๋‚ด์žฅํ•˜์—ฌ ์ž๋™์œผ๋กœ ์—…๋ฐ์ดํŠธ์‹œ์— ์ด ๋ฐ์ดํ„ฐ๋ฅผ ์œ ์ง€
๋ชจ๋‹ˆํ„ฐ๋ง๊ณผ ๊ณต์ง€(Notification) ์„œ๋น„์Šค
โ€ข ์ƒ์‚ฐ์„ฑ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ๋ชจ๋“  ๊ด€์ ์˜ PaaS ํ™˜๊ฒฝ๊ณผ ์„ฑ๋Šฅ์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€์‹œ๋ณด๋“œ๋ฅผ ์ œ๊ณต
โ€ข SLA ์— ๊ธฐ๋ฐ˜ํ•œ ์„œ๋น„์Šค์˜ ์ƒํƒœ ๊ฐ์‹œ ๊ฐ€๋Šฅ
โ€ข ์™ธ๋ถ€ ๊ณต๊ฒฉ์ด ์ธ์‹๋˜๋ฉด ์šด ์˜์ž์—๊ฒŒ ์ž๋™ ์•Œ๋ฆผ
11
PaaS์˜ ๊ธฐ๋Šฅ ์•„ํ‚คํ…์ฒ˜
PaaS ๊ณต๊ธ‰์ž๊ฐ€ ์ œ๊ณต, ๊ด€๋ฆฌํ•˜๋Š” ๊ธฐ๋Šฅ(๋˜๋Š” ์„œ๋น„์Šค) ๊ตฌ์„ฑ
<์ถœ์ฒ˜: Gartner, 2011.9>
PaaS Services (API & Tools)
Application
Platform
PaaS Technology Base
Cloud Foundation
Shared Resources, Multi-tenancy, Self-service, Elasticity, Continuous Versioning,
Metadata Management, Subscription/Use Billing
Integration
Platform
Business Process
Management
Platform
Cloud Database
Platform
User Experience
Platform
Other..
Integrated Application Development
and Life Cycle Management
Integrated Platform Service Management
(Self-service)
Performance Foundation
In-memory Computing, Grid/Massive Scale, Autoscaling, SLA Enforcement, Use
Tracking, High Availability, Security, Data Integrity, Parallel Processing
Platform
Technology
Management
Monitoring, Tuning,
Administration,
Version Control,
Resource Control
User
Control
Provider
Control
12
๊ด€๋ฆฌ/์„œ๋น„์Šค ์˜์—ญ
PaaS Platform โ€“ ๊ฐœ๋ฐœ์ž์—๊ฒŒ ๋ณด์—ฌ์ง€๋Š” ์˜์—ญ
Marketplace/ImageManagement
ConfigurationManagement
Application Scheduling
Container Scheduling
Service Discovery
Container Networking
Container Cluster Management
Security
<์ถœ์ฒ˜: Wikibon, 2015>
PaaS ๊ณต๊ธ‰์ž๊ฐ€ ์ œ๊ณต, ๊ด€๋ฆฌํ•˜๋Š” ๊ธฐ๋Šฅ(๋˜๋Š” ์„œ๋น„์Šค) ๊ตฌ์„ฑ
13
PaaS์˜ ์œ ํ˜• 1
1. ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ๋ฐฉ์‹ : ๊ฐœ๋ฐœ ํ†ตํ•ฉ๊ฐœ๋ฐœํ™˜๊ฒฝ(IDE) + ํด๋ผ์šฐ๋“œ ๋ฐฐํฌ ๊ธฐ๋Šฅ
โ€ข ๊ธฐ์กด IDE(์ดํด๋ฆฝ์Šค, ๋น„์ฃผ์–ผ ์ŠคํŠœ๋””์˜ค ๋“ฑ)์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉ -> ์‚ฌ์šฉ์„ฑ ๋†’์Œ
โ€ข ํด๋ผ์šฐ๋“œ ๋ฐฐํฌ๊ฐ€ ๊ฐ€๋Šฅํ•œ ๊ธฐ๋Šฅ ํฌํ•จ : ๋กœ์ปฌ ๋จธ์‹ ์—์„œ ์ฝ”๋”ฉํ•˜๊ณ  ํด๋ผ์šฐ๋“œ์—์„œ ๋ฐฐํฌ
โ€ข ์†”๋ฃจ์…˜ : Google์˜ AppEngine, Pivotal์˜ Cloud Foundry, Redhat์˜ OpenShift ๋“ฑ
2. 100% ํด๋ผ์šฐ๋“œ ๋ฐฉ์‹ : ๊ฐœ๋ฐœ๋„, ๋ฐฐํฌ๋„ ํด๋ผ์šฐ๋“œ
โ€ข ์›น ๋ธŒ๋ผ์šฐ์ € ๊ธฐ๋ฐ˜์˜ ๊ฐœ๋ฐœํ™˜๊ฒฝ : ์›น ์ ‘์†๋งŒ์œผ๋กœ ์•ฑ ๊ฐœ๋ฐœ๊ณผ ๋ฐฐํฌ ๊ฐ€๋Šฅ(๊ฐœ๋ฐœํ™˜๊ฒฝ ๋ถˆํ•„์š”)
โ€ข ๊ฐœ๋ฐœ IDE ์†”๋ฃจ์…˜์— ๋น„ํ•ด ์‚ฌ์šฉ ํŽธ์˜์„ฑ, ๊ธฐ๋Šฅ, ์ƒ์‚ฐ์„ฑ์ด ๋‚ฎ์€ ํŽธ
โ€ข ์†”๋ฃจ์…˜ : Google์˜ GoogleScript, Exo์˜ CodeEnvy, ๊ตฌ๋ฆ„IDE, OCE์˜ ์œ ํด๋ฆฝ์Šค(๊ตญ์‚ฐ)
3. ๋น„์ฆˆ๋‹ˆ์Šค ์ „๋ฌธ๊ฐ€์šฉ
โ€ข ์ฝ”๋”ฉ์—†์ด ๋˜๋Š” ์ตœ์†Œํ™”ํ•˜์—ฌ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ -> ๋น„์ฆˆ๋‹ˆ์Šค ์ „๋ฌธ๊ฐ€๊ฐ€ ์‚ฌ์šฉํ•˜๊ธฐ ์‰ฝ๊ฒŒ ๊ตฌ์„ฑ
โ€ข OpenTex์˜ Cordys : BPM ํ”Œ๋žซํผ, ํผ/UI ๋””์ž์ด๋„ˆ, ๊ทœ์นฎ๊ฒ…์˜, ํ”„๋กœ์„ธ์Šค ์ •์˜, SOA ํผ๋ธ”๋ฆฌ์‹ฑ,
ํ†ตํ•ฉ๊ฐœ๋ฐœ๋„๊ตฌ ๋“ฑ ์ œ๊ณต(=BPM PaaS ํ”Œ๋žซํผ)
โ€ข Salesforce.com์˜ Apex : ํด๋ผ์šฐ๋“œ IDE, ํ”„๋กœ์„ธ์Šค ๋””์ž์ด๋„ˆ, ๋ฃฐ ๋””์ž์ด๋„ˆ, ํผ ๋””์ž์ด๋„ˆ ์ œ๊ณต
4. ํ†ตํ•ฉ๊ฐœ๋ฐœํ™˜๊ฒฝ(IDE) ์—†๋Š” ์‹คํ–‰์ „์šฉ ๋ฐฉ์‹
โ€ข ํ†ตํ•ฉ๊ฐœ๋ฐœํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜์ง€ ์•Š์Œ
โ€ข ๋ฐฐํฌ ๋Œ€์ƒ ์–ดํ”„๋ฆฌ์ผ€์ด์…˜์ด ์†Œ์Šค๊ด€๋ฆฌ ์„œ๋ฒ„ ๋“ฑ๊ณผ ์ธํ„ฐํŽ˜์ด์Šคํ•˜์—ฌ ๋ฐฐํฌ๋  ์ˆ˜ ์žˆ๋„๋ก ํ•จ
์„œ๋น„์Šค ๋ฒ”์œ„์™€ ๋ฐฉ์‹์— ์˜ํ•œ ๋ถ„๋ฅ˜ (Forrester)
<์ถœ์ฒ˜: โ€œPaaS : ํด๋ผ์šฐ๋“œ ๋„์ž… ํšจ์œจ์˜ ์™„์„ฑโ€œ, ์žฅ์ง„์˜>
14
PaaS์˜ ์œ ํ˜• 2
1. ํŠน์ • SaaS ํ™˜๊ฒฝ์— ๋งž์ถฐ์ง„ PaaS
โ€ข ์ž์‚ฌ์˜ SaaS ์„œ๋น„์Šค์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” API, ๊ฐœ๋ฐœ๋„๊ตฌ, ๋ฏธ๋“ค์›จ์–ด ์ œ๊ณต
โ€ข ์ด ๊ธฐ๋ฐ˜์—์„œ SaaS ์ ‘๊ทผ + ์ƒˆ๋กœ์šด ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ๊ฐ€๋Šฅ
โ€ข Salesforce.com์˜ Force.com : Force.com์„ ํ†ตํ•ด์„œ SFDC ์ ‘๊ทผ ๊ฐ€๋Šฅ
2. OS ํ™˜๊ฒฝ์— ๋ฌถ์—ฌ ์ œ๊ณต๋˜๋Š” PaaS
โ€ข MS Azure ํ”Œ๋žซํผ : ์œˆ๋„์šฐ ํ”Œ๋žซํผ๊ณผ SQL server๋ฅผ ์ถ”์ƒํ•˜ํ•˜์—ฌ ์ œ๊ณต
โ€ข AWS์˜ Beanstalk : AWS์˜ ํด๋ผ์šฐ๋“œ์—์„œ ์‰ฝ๊ฒŒ ๋ฐฐํฌํ•˜๊ณ  ๊ด€๋ฆฌ
3. Open Platform ๊ธฐ๋ฐ˜์˜ PaaS
โ€ข ํŠน์ • ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์— ์ข…์†๋˜์ง€ ์•Š์€ ์˜คํ”ˆ ํ”„๋กœ์„ธ์Šค์™€ ํ™˜๊ฒฝ ์ œ๊ณต
โ€ข Cloud Foundry : Pivotal ์ค‘์‹ฌ, ๋นŒ๋“œ-๋ฐฐํฌ-์šด์˜ ํ”„๋กœ์„ธ์Šค ์ง€์›
โ€ข OpenShift : ๋ ˆ๋“œํ–‡
โ€ข CloudBees : ์ž๋ฐ” PaaS ํ”Œ๋žซํผ, ๋นŒ๋“œ/ํ…Œ์ŠคํŠธ/์šด์˜/๊ด€๋ฆฌ ์ง€์›
โ€ข OCE(Open Cloud Engine) : ๊ตญ์‚ฐ ์†”๋ฃจ์…˜, ์ž๋ฐ” ํ‘œ์ค€ ์ค€์ˆ˜,
ํ๋ธŒ๋ฆฌ๋“œ DBMS/์œ ์—”์ง„ BPMS/ํ”Œ๋ผ๋ฐ๊ณ  ๋น…๋ฐ์ดํ„ฐ ํ”Œ๋žซํผ/๋„คํŠธ๋ผ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ดํ„ฐ๋กœ ๊ตฌ์„ฑ
๋ฒค๋” ์ข…์†์„ฑ์— ๋”ฐ๋ฅธ ๋ถ„๋ฅ˜ (Forrester)
<์ถœ์ฒ˜: โ€œPaaS : ํด๋ผ์šฐ๋“œ ๋„์ž… ํšจ์œจ์˜ ์™„์„ฑโ€œ, ์žฅ์ง„์˜>
15
Benefits for Enterprise
16
Benefits for Developers
โ€ข IT ํ™˜๊ฒฝ์˜ ๋ณต์žก์„ฑ ์ œ๊ฑฐ
๏ƒผ ์ปดํŒŒ์ผ๋Ÿฌ, ๊ฐœ๋ฐœ๋„๊ตฌ, ๋ฐ์ดํ„ฐ๊ด€๋ฆฌ, ๋ณด์•ˆ, ๋ฏธ๋“ค์›จ์–ด ๋“ฑ์„ ์ถ”์ƒํ™”ํ•˜์—ฌ ์ œ๊ณตํ•˜๋ฏ€๋กœ ์ƒ์„ธํ•œ ์ธํ”„๋ผ๋Š” ์•Œ ํ•„์š” ์—†์Œ
๏ƒผ ๋‹ค์–‘ํ•œ ์„œ๋น„์Šค๋ฅผ ๊ธฐ๋Šฅ ํ˜•ํƒœ๋กœ ์ œ๊ณต : Versioning, Rollback, ๋ฐฐํฌ ์ž๋™ํ™”,๋ฐฑ์—…๊ณผ ๋ณต๊ตฌ ๋“ฑ
โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ํŽธ์˜์„ฑ๊ณผ ์ƒ์‚ฐ์„ฑ ์ฆ๊ฐ€
๏ƒผ ๋ช‡ ๋ถ„๋งŒ์— ์ž‘์—… ํ”„๋กœํ† ํƒ€์ž… ์ƒ์„ฑ ๊ฐ€๋Šฅ
๏ƒผ ์ƒˆ ๋ฒ„์ „์„ ๋งŒ๋“ค๊ฑฐ๋‚˜ ์ƒˆ๋กœ์šด ์ฝ”๋“œ๋ฅผ ๋ฐฐํฌํ•  ๋•Œ ๋” ๋น ๋ฅด๊ฒŒ ํ•  ์ˆ˜ ์žˆ์Œ
๏ƒผ ์„œ๋น„์Šค๋“ค์„ ์ž์ฒด ์กฐ๋ฆฝํ•˜์—ฌ ํ•˜๋‚˜์˜ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Œ
โ€ข ์†์‰ฌ์šด ์„œ๋น„์Šค provisioning
๏ƒผ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ผ์ดํ”„์‚ฌ์ดํด(๊ฐœ๋ฐœ, ๋นŒ๋“œ, ํ…Œ์ŠคํŠธ, ํ˜•์ƒ๊ด€๋ฆฌ ๋“ฑ)์˜ ํ‘œ์ค€ํ™” ๏ƒ  self-service ๋˜๋Š” ์ž๋™ํ™”
โ€ข IT ์ž์›์— ๋Œ€ํ•œ ์ œ์–ด๊ถŒ ๊ฐœ์„ 
๏ƒผ ์ž์›์˜ ๊ณต์œ , Self-service๋ฅผ ํ†ตํ•œ ์ž์›๊ด€๋ฆฌ, ๋ถˆํ•„์š”ํ•œ ์ž์›์˜ ์ž๋™ ๋ฐ˜๋‚ฉ ๋“ฑ
โ€ข ์ž์›์— ๋Œ€ํ•œ ๊ฐœ๋ฐœ๊ณผ ์šด์˜๋ฐฉ์‹์„ ๋ณ€๊ฒฝํ•จ์œผ๋กœ์จ ํ˜‘์—… ๊ฐœ์„ 
๏ƒผ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค์˜ ๊ฐ€์‹œํ™”
๏ƒผ ํ˜‘์—… ๊ณต๊ฐ„์˜ ํ™•๋Œ€ โ€“ Github ๋“ฑ
์ปดํ“จํŒ…, ์Šคํ† ๋ฆฌ์ง€, ๋„คํŠธ์›Œํฌ, ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์ œ๊ณต, ๊ด€๋ฆฌ, ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋Š” ๋ฐ ์‹ ๊ฒฝ์“ฐ์ง€ ์•Š์•„๋„ ๋˜๋ฏ€๋กœ,
<์ถœ์ฒ˜: โ€œPaaS : ํด๋ผ์šฐ๋“œ ๋„์ž… ํšจ์œจ์˜ ์™„์„ฑโ€œ, ์žฅ์ง„์˜>
17
Open Source, Cloud Foundry, HPE Helion
HPE Helion is
โ€ข a portfolio of open-source software and integrated systems for enterprise cloud computing.
โ€ข HPE Helion is based on open-source technology, including OpenStack and Cloud Foundry.
HPE Helion OpenStack
โ€ข OpenStack cloud computing project์„ ์ƒ์šฉํ™”ํ•œ ๋ฒ„์ „
โ€ข HPE๊ฐ€ ํ›„์›ํ•˜๋Š” ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ์นดํƒˆ๋กœ๊ทธ์ธ Cloud28+๋Š” HPE Helion OpenStack์— ํฌํ•จ
HPE Helion Stackato
โ€ข Cloud Foundry๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ Platform as a Service (PaaS) ์†”๋ฃจ์…˜์œผ๋กœ OpenStack, AWS, VMWare, Azure์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅ.
HPE Helion CloudSystem
โ€ข HPE Helion OpenStack(IaaS) + HPE Helion Stackato(PaaS) + HPE Proliant server
HPE Helion Eucalyptus
โ€ข ์˜คํ”ˆ์†Œ์Šค์ธ Eucalyptus๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์„ ๊ตฌ์ถ•ํ•˜๋Š”ํ”Œ๋žซํผ์œผ๋กœ AWS์™€ ํ˜ธํ™˜
โ€ข It allows AWS applications to be moved on-premises with no modification to the workload, design patterns, or mindset.
<์ถœ์ฒ˜> wikipidia
19
Cloud Foundry
Cloud Foundry is the industryโ€™s Open PaaS and
provides a choice of clouds, frameworks,
and application services.Its unique vision is
to foster contributions from a broad
community of developers, users,customers,
partners, and ISVs while advancing
development of the platform at extreme
velocity. - cloudfoundry.org
20
Why Cloud Foundry Technology?
Business Agility
Multi-cloud deployments
Industry-Standard
High-quality code interoperability
Stackato๋Š” ์˜คํ”ˆ์†Œ์Šค PaaS์ธ Cloud Foundry ๊ธฐ๋ฐ˜์˜ ์‚ฌ์šฉ ๋ฒ„์ „
21
Cloud Foundry์˜ ์•„ํ‚คํ…์ฒ˜ โ€“ DEA Architecture
๏‚ง Platform is abstracted as a set of large-scale
distributed services
๏‚ง Components are dynamically discoverable and
loosely coupled
๏‚ง Use Cloud Foundry Bosh to operate the underlying
infrastructure from the IaaS provider
๏‚ง Uses a dynamic router to shape and route all traffic
and orchestrate load balancing
๏‚ง Droplet Execution Agents(DEAs) are responsible for
the app lifecycle.
๏‚ง Health Manager monitors and maintains application
uptime
๏‚ง Buildpacks detect app runtime and compile source
code into executable binaries.
22
Cloud Foundry์˜ ์•„ํ‚คํ…์ฒ˜ โ€“ DEA Architecture
Type of Services
๏‚ง Accounts for a SaaS application
๏‚ง Database on a multi-tenant server
๏‚ง DBaaS
๏ƒผ Easily provision instances
๏ƒผ Database choice is left to the developer : multiple SQL and NoSQL options
๏ƒผ Minimal configuration required
How it Works
๏‚ง ์„œ๋น„์Šค๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด ํ•ด๋‹น ์„œ๋น„์Šค์˜ ์ธ์Šคํ„ด์Šค๊ฐ€ ์ œ๊ณต๋จ
๏‚ง service broker๊ฐ€ CF์™€ ํ•ด๋‹น ์„œ๋น„์Šค ์‚ฌ์ด์˜ ํ†ต์‹ ์„ ์ฒ˜๋ฆฌ
๏‚ง Service processes๋Š” Service Nodes์—์„œ ์‹คํ–‰๋˜๊ฑฐ๋‚˜ ์™ธ๋ถ€์˜
as-a-service providers์™€ ํ•จ๊ป˜ ์‹คํ–‰๋จ
์ฃผ์˜์‚ฌํ•ญ
๏‚ง Avoid writing to the local file system
๏ƒผ Files disappear after app restart
๏ƒผ Instances of same app do not share LFS
๏‚ง Session data should be stored in CF service
๏‚ง Design as if app can be restarted, destroyed, start at any time.
23
A
u
s
t
i
n
C
l
o
u
d
F
o
u
n
d
r
y
P
a
a
S
M
e
e
t
u
p
2
/
2
4
/
1
5
Component How It Works Responsible for
Router โ€ข ๋ชจ๋“  ์™ธ๋ถ€ ์‹œ์Šคํ…œ ํŠธ๋ž˜ํ”ฝ(HTTP/API)๊ณผ ์ธํ„ฐ๋„ท/์ธํŠธ๋ผ๋„ท
์—์„œ ๋“ค์–ด์˜ค๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ํŠธ๋ž˜ํ”ฝ์„ Cloud Controller
๋‚˜ Diego Cell์—์„œ ์‹คํ–‰๋˜๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋ฐฐ๋ถ„
โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‹คํ–‰๋˜๋Š” cell๊ณผ container๋ฅผ ํ™•์ธํ•˜๊ธฐ ์œ„
ํ•ด ์ฃผ๊ธฐ์ ์œผ๋กœ BBS๋ฅผ ์ฟผ๋ฆฌ ๏ƒ  ๊ฐ cell์˜ VM์˜ IP ์ฃผ์†Œ์™€
cell container์˜ host-side port ๋ฒˆํ˜ธ๋ฅผ ๊ฐ€์ง€๊ณ  ๋ผ์šฐํŒ… ํ…Œ์ด
๋ธ” ๊ฐฑ์‹ 
โ€ข Load balancing
โ€ข Maintaining an active routing table
โ€ข Access logs
โ€ข Supports web-sockets
Cloud Controller โ€ข The Cloud Controller maintains command and control
systems, including interface with clients (CLI, Web UI,
Spring STS), account and provisioning control.
โ€ข It also provides RESTful interface to domain objects
(apps, services, organizations, spaces, service
instances, user roles, and more).
โ€ข Expected App state, state transitions, and
desired convergence
โ€ข Permissions/Auth Orgs/Spaces/ Users
โ€ข Services management
โ€ข App placement & deployment
โ€ข Auditing/Journaling and billing events
โ€ข orgs, spaces, user roles, service ๋“ฑ์˜ ๊ธฐ๋ก
Health Manager โ€ข Health Manager monitors application uptime by listening to the
NATS message bus for mismatched application states
(expected vs. actual).
โ€ข The Cloud Controller publishes expected state and the DEAs
publish actual state.
โ€ข State mismatches are reported to the Cloud Controller.
โ€ข Maintains the actual state of apps
โ€ข Compares to expected state
โ€ข Sends suggestions to make actual match expected
(cannot make state changes itself โ€“ only CC can do
that!)
24
A
u
s
t
i
n
C
l
o
u
d
F
o
u
n
d
r
y
P
a
a
S
M
e
e
t
u
p
2
/
2
4
/
1
5
Component How It Works Responsible for
UAA & Login Servers โ€ข ID ๊ด€๋ฆฌ : ID, ๋ณด์•ˆ, ๊ถŒํ•œ๋ถ€์—ฌ ์„œ๋น„์Šค
โ€ข party Oauth ๊ด€๋ฆฌ
โ€ข ๊ตฌ์„ฑ ํ•ญ๋ชฉ : UAA Server, Command Line Interface,
Library.
โ€ข Token Server
โ€ข ID Server (User management)
โ€ข OAuth Scopes (Groups) and SCIM
โ€ข Login Server
๏ƒผ UAA Database
๏ƒผ VMware SSO Appliance๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ SAML๊ณผ
Active Directory ์ง€์›
โ€ข Access auditing
DEA โ€ข โ€œDroplet Execution Agentsโ€๋Š” ์•ˆ์ „ํ•˜๊ณ  ์™„๋ฒฝํžˆ ๊ฒฉ๋ฆฌ๋œ
์ปจํ…Œ์ด๋„ˆ
โ€ข DEAs๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ผ์ดํ”„์‚ฌ์ดํด ๋‹ด๋‹น: building,
starting and stopping Apps as instructed.
โ€ข They periodically broadcast messages about their
state via the NATS message bus.
โ€ข Managing Linux containers (Warden)
โ€ข Monitoring resource pools : Process, File
system, Network, Memory
โ€ข Managing app lifecycle
โ€ข App log and file streaming
โ€ข DEA heartbeats (NATS to CC, HM)
Warden โ€ข Low-level manager and API protocol on each VM for
creating, configuring, destroying, monitoring, and
addressing application containers
โ€ข Linux ์ „์šฉ
Blobstore โ€ข ๋Œ€์šฉ๋Ÿ‰ binary ํŒŒ์ผ ์ €์žฅ์†Œ
โ€ข ๋‚ด๋ถ€ ์„œ๋ฒ„๋‚˜ ์™ธ๋ถ€์˜ S3 ๋“ฑ์—๋„ ์„ค์ • ๊ฐ€๋Šฅ
์ €์žฅ ๋Œ€์ƒ ํŒŒ์ผ
โ€ข Application code packages
โ€ข Buildpacks
โ€ข Droplets
25
A
u
s
t
i
n
C
l
o
u
d
F
o
u
n
d
r
y
P
a
a
S
M
e
e
t
u
p
2
/
2
4
/
1
5
Component How It Works Responsible for
Service Broker โ€ข Service Brokers provide an interface for native and
external 3rd party services.
โ€ข Service processes run on Service Nodes or with
external as-a-service providers (e.g., email, database,
messaging, etc.).
โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ฑฐ๋‚˜ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ๊ฒฐ
ํ•ฉํ•  ๋•Œ ์„œ๋น„์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์ œ๊ณต
โ€ข Advertising service catalog.
โ€ข Makes create/delete/bind/ unbind calls to
service nodes.
โ€ข Requests inventory of existing instances and
bindings from cloud controller for caching,
orphan management.
โ€ข SaaS marketplace gateway.
โ€ข Implemented as HTTP enpoint, written in any
language.
BuildPacks* โ€ข Buildpacks are Ruby scripts that detect application
runtimes/frameworks/plugins, compile the source
code into executable binaries, and release the app to
an assigned DEA.
โ€ข Runtime components can be cached for faster
execution of subsequent app pushes.
โ€ข Staging*
๏ƒผ /bin/detect
๏ƒผ /bin/compile
๏ƒผ /bin/release
โ€ข Configuredroplet
๏ƒผ Runtime (Ruby/Java/Node/ Python)
๏ƒผ Container (Tomcat/Liberty/ Jetty)
๏ƒผ Application (.WAR, .rb, .js, .py)
UPSI โ€ข User Provided Service Instances (์ด์ „์˜ โ€œService
Connectorsโ€)
โ€ข CF๊ฐ€ ์ž์‹ ์ด ๊ด€๋ฆฌํ•˜์ง€ ์•Š๋Š” ๋กœ์ปฌ ์„œ๋น„์Šค(์˜ˆ, Oracle DB,
DB2, SQL Server ๋“ฑ)์— ์ ‘์†ํ•  ์ˆ˜ ์žˆ๋„๋ก Service
Broker์— ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ ์ €์žฅ
โ€ข Metadata management
26
A
u
s
t
i
n
C
l
o
u
d
F
o
u
n
d
r
y
P
a
a
S
M
e
e
t
u
p
2
/
2
4
/
1
5
Component How It Works Responsible for
NATS Message Bus โ€ข a lightweight publish-subscribe and distributed
queueing messaging system, for internal
communication between components.
โ€ข ๋‚ด๋ถ€ ์ปดํฌ์ปจํŠธ๋“ค๊ฐ„์˜ ํ†ต์‹ 
Metrics Collector โ€ข ๊ฐ ์ปดํฌ๋„ŒํŠธ์—์„œ ์ธก์ •์ง€ํ‘œ์™€ ํ†ต๊ณ„์น˜๋ฅผ ์ทจํ•ฉ
๏ƒ  CF ๋ฐฐํฌ ์‚ฌํ•ญ ๋ชจ๋‹ˆํ„ฐ๋ง
Loggregator
(Log aggregator)
โ€ข streams application logs to developers โ€ข ๋กœ๊ทธ ์ˆ˜์ง‘
(*)Cloud Foundry Buildpacks are compatible with Heroku 27
The platform for the agile enterprise
โ€ข
โ€ข
โ€ข
โ€ข
โ€ข
โ€ข
โ€ข
HPE Helion Stackato
29
HPE Helion์˜ Values์™€ Strategy
Consistency
Confidence
Choice
โ€œThe right solution for your cloud journeyโ€
โ€ข Common platform across hybrid environment
โ€ข Best-in-class portfolio of solutions & services
โ€œA trusted partner who knows your businessโ€
โ€ข Enterprise & open source heritage
โ€ข One hand to shake โ€“ HPE One Stop Shop
โ€ข Recognized leader in hybrid cloud
โ€œThe cloud your wayโ€
โ€ข No vendor lock-in, open, standards-based
โ€ข Multiple delivery models
โ€ข Heterogeneous
Open
Enterprise
grade
Hybrid
30
HPE Helion์˜ portfolio
31
HPE Helion Stackato ์ด์ „์˜ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐฐํฌ
Development
IT/Ops
Staging
Testing
Production
32
HPE Helion Stackato ์ดํ›„์˜ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐฐํฌ
33
How it works: HPE Helion Stackato Architecture
HPE Helion Stackato
34
HPE Helion Stackato โ€“ Cloud Foundryโ„ข
HPE Helion Development Platform: Architecture v2.0
35
HPE Helion Stackato
๋‹ค์Œ๊ณผ ๊ฐ™์€ 5๊ฐœ์˜ ํ”Œ๋žซํผ ์„œ๋น„์Šค๋กœ ๊ตฌ์„ฑ๋จ
1. Helion Control Plane (HCP): The underlying core Platform
Service that HPE Helion Stackato uses to manage service lifecycles
and communicate with the underlying cloud Providers ( IaaS ).
2. Helion Service Manager (HSM): A service that provides
repository of services that can be used by applications.
3. Helion Cloud Foundry (HCF): A Cloud Foundry certified elastic
runtime that simplifies cloud native application development and
hosting.
4. Helion Code Engine (HCE): A continuous delivery service that
integrates with public or private Git repositories. HCE is a flexible
and extensible Continuous Integration/ Continuous Development
(CI/CD) pipeline.
5. HPE Helion Stackato Console (HSC): A web interface used to
manage HCF and HCE features.
Helion Control Plane
Stackato Web console
Code Engine Cloud
Foundry
Service Manager
Developer
Platform
Services
Admin
โ€œHPE Helion Stackato is platform for deploying and hosting Cloud-Native
applications and managing application services.โ€
36
HPE Stackato : Control Plane
Helion Control Plane(HCP)
Stackato Web console(HSC)
Code Engine(HCE)
Cloud
Foundry
(HCF) Service Manager
(HSM)
Developer
Platform
Services
Admin
37
๏ƒผ currently a debian package.
๏ƒผ lays down the foundation on how Stackato talks to underlying
foundation on top of infrastructure. The way it talk to underlying IaaS is
through Terraform providers that we programmatically control. This
provides us ability to create and stand up environment. With that we
are running container host. Ubuntu 14.04
๏ƒผ once Ubuntu host is up, we bring up the service lifecycle manager that
manages life cycle of containers. The under-pinning is Kubernetes.
๏ƒผ Operator and customer do not see that and is abstracted away for
them.
๏ƒผ Everything that we host and run at the bottom layer is manifested
container and it is managed through Kubernetes
HPE Stackato CI/CD: Helion Code Engine
Helion Control Plane(HCP)
Stackato Web console(HSC)
Code Engine(HCE)
(CI/CD)
Cloud
Foundry
(HCF) Service Manager
(HSM)
Developer
Platform
Services
Admin
38
โ€ข Code Engine์€ CI/CD pipeline
๏ƒผ changed the engine underneath โ€“ Concourse engine
๏ƒผ It is workflow engine โ€“ workflow of containers
๏ƒผ cool thing about โ€“ we support all the language that
are in cloud foundry
๏ƒผ implemented as build containers โ€“ adding
laungages/runtime
HPE Stackato CI/CD: Helion Code Engine
HPE Stackato Runtimes: Helion Cloud Foundry
Helion Control Plane(HCP)
Stackato Web console(HSC)
Code Engine(HCE)
(CI/CD)
Cloud
Foundry
(HCF) Service Manager
(HSM)
Developer
Platform
Services
Admin
40
DEVLOPE
MANAGE
RUN
โ€ข Stackato was derivative โ€“ first commercial
product to make enterprise grade
โ€ข Build with community or build as extension
๏ƒผ It provides standard capabilities that CF core
provides
๏ƒผ Polyglot environment based around buildpack
๏ƒผ Same buildpack structure shows up in code
engine as part of builder containers in
pipeline
HPE Stackato : Service Management
Helion Control Plane(HCP)
Stackato Web console(HSC)
Code Engine(HCE)
(CI/CD)
Cloud
Foundry
(HCF)
Universa
lService
Broker
Service Manager
(HSM)
HPESW services
Developer
Platform
Services
Admin
41
Universal Service Broker
Service Manager
Connect to
HPE Stackato : Web Console
Helion Control Plane(HCP)
Stackato Web console(HSC)
Code Engine(HCE)
(CI/CD)
Cloud
Foundry
(HCF) Service Manager
(HSM)
Developer
Platform
Services
Admin
42
Single user experience
Helion Stackato ๊ตฌ์„ฑ์š”์†Œ ๊ฐ„์˜ Diagram
43
Helion Stackato Architecture
44
OPERATORS
DEVELOPERS
CUSTOMERโ€™S
HPEโ€™S
Cloud Foundry์™€์˜ ์ฐจ๋ณ„์„ฑ
HPE Helion Stackato์€ ๊ด€๋ฆฌ์ž์šฉ ํ™”๋ฉด์„ ์ œ๊ณต โ€“ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ฐฐํฌ์™€ ๊ด€๋ฆฌ๋ฅผ ์‰ฝ๊ฒŒ ํ•จ
CF is command line only
HPE Helion Stackato๋Š” Docker container ๊ธฐ์ˆ ์„ ์ด์šฉํ•˜์—ฌ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰(launch)
Additional application runtimes and services
Native .NET support, PHP, Python, Perl
๊ฐ€๊ฒฉ์ •์ฑ… ๋ชจ๋ธ์— ๊ธฐ์ˆ ์ง€์›์ด ํฌํ•จ๋จ
World-class, global technical support available to help with deployment & configuration.
์‰ฌ์šด ์„ค์น˜์™€ ์„ค์ •(Easy setup & install)
100% BOSH free, so setting up & keep running HPE Helion Stackato is easy and fast
HPE Helion Stackato๋Š” Cloud Foundry์˜ trunk version์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•จ
HPE is committed to driving enterprise features back to the community (see our recent .NET support announcement).
48
Customer requests
Why HPE Helion Stackato?
50
ํƒ€ ์†”๋ฃจ์…˜๊ณผ์˜ ์ฐจ๋ณ„์ 
Pivotal Cloud Foundry
โ€ข Lacks OpenStack support
Messaging and Database Services not supported on OpenStack, installing PCF on OpenStack requires proserv engagement
โ€ข More complicated installation technology than HPE
BOSH can take weeks to learn and be overly cumbersome for admins, HP uses python fabric scripts which are hidden behind a simple wizard
โ€ข Licenses are very expensive, compare with HPE Helion TCO
Pivotal counts number of app instances/containers per deployment, starting price is $250k*
IBM Bluemix
โ€ข Despite many services being available, most have โ€œbeta, do not use for productionโ€ label
For enterprises, this means theyโ€™ll need to role their own backing services if using Bluemix
โ€ข No real on-premises offering โ€“ Bluemix Local still a paper product
Outside of VMDK images that run on VMware, pro-serv required
โ€ข Bluemix Local does not include majority of services available w/ Bluemix public cloud offering
Enterprises needing apps to run on-premises will need to roll their own
RedHat OpenShift
โ€ข Lacks community momentum as an open source project, driven by RedHat only
โ€ข Leave lifecycle management of backing services like DBaaS and MSGaaS to cloud operators, increasing TCO
[์ฒจ๋ถ€#1] Next Generation IT Infrastructure
<์ถœ์ฒ˜> http://tentenet.net/2013/05/29/the-5th-tenet-of-open-hybrid-cloud-start-with-an-iaas-private-cloud/
53
Management
PaaS
Business / Consumer
IaaS
Cloud Brokering
Physical Resources
Virtual Resources
Public Cloud
Resources
Public Cloud
Resources
Public Cloud
Resources
[์ฒจ๋ถ€#2] Cloud Foundry Foundation
Mission :
โ€ข to establish and sustain Cloud Foundry as the global industry standard open source PaaS technology
with a thriving ecosystem.
โ€ข To deliver continuous quality, value and innovation to users, operators and providers of Cloud
Foundry technology.
โ€ข To provide a vibrant agile experience for the community's contributors that delivers the highest quality
cloud-native applications and software, at high velocity with global scale.
Its guiding principles are:
โ€ข Governance By Contribution - Influence within the Foundation is based on contributions.
โ€ข IP Hygiene - IP cleanliness must be preserved at all times.
โ€ข Equal Opportunity To Participate - Everyone has an equal opportunity to participate in projects.
โ€ข No Surprises - Planning processes and project status are open to all.
54
[์ฒจ๋ถ€#3] Cloud Foundry์˜ ์•„ํ‚คํ…์ฒ˜ 4.0 โ€“ Diego Architecture
๏‚ง an open source, multi cloud
application platform as a
service (PaaS) governed by
the Cloud Foundry
Foundation
๏‚ง ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ธฐ๋Šฅ ์˜์—ญ์œผ๋กœ
๊ตฌ์„ฑ
๏ƒผ Routing
๏ƒผ Authentication
๏ƒผ Application Lifecycle
๏ƒผ Application Storage & Execution
๏ƒผ Services
๏ƒผ Messaging
๏ƒผ Metrics & Logging
55
[์ฒจ๋ถ€#3]
A
u
s
t
i
n
C
l
o
u
d
F
o
u
n
d
r
y
P
a
a
S
M
e
e
t
u
p
2
/
2
4
/
1
5
Component How It Works Responsible for
Router โ€ข ๋ชจ๋“  ์™ธ๋ถ€ ์‹œ์Šคํ…œ ํŠธ๋ž˜ํ”ฝ(HTTP/API)๊ณผ ์ธํ„ฐ๋„ท/์ธํŠธ๋ผ๋„ท
์—์„œ ๋“ค์–ด์˜ค๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ํŠธ๋ž˜ํ”ฝ์„ Cloud Controller
๋‚˜ Diego Cell์—์„œ ์‹คํ–‰๋˜๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋ฐฐ๋ถ„
โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‹คํ–‰๋˜๋Š” cell๊ณผ container๋ฅผ ํ™•์ธํ•˜๊ธฐ ์œ„
ํ•ด ์ฃผ๊ธฐ์ ์œผ๋กœ BBS๋ฅผ ์ฟผ๋ฆฌ ๏ƒ  ๊ฐ cell์˜ VM์˜ IP ์ฃผ์†Œ์™€
cell container์˜ host-side port ๋ฒˆํ˜ธ๋ฅผ ๊ฐ€์ง€๊ณ  ๋ผ์šฐํŒ… ํ…Œ์ด
๋ธ” ๊ฐฑ์‹ 
โ€ข Load balancing
โ€ข Maintaining an active routing table
โ€ข Access logs
โ€ข Supports web-sockets
Cloud Controller โ€ข The Cloud Controller maintains command and control
systems, including interface with clients (CLI, Web UI,
Spring STS), account and provisioning control.
โ€ข It also provides RESTful interface to domain objects
(apps, services, organizations, spaces, service
instances, user roles, and more).
โ€ข Expected App state, state transitions, and
desired convergence
โ€ข Permissions/Auth Orgs/Spaces/ Users
โ€ข Services management
โ€ข App placement & deployment
โ€ข Auditing/Journaling and billing events
โ€ข orgs, spaces, user roles, service ๋“ฑ์˜ ๊ธฐ๋ก
Diego Brain โ€ข ๊ฐœ๋ณ„ Diego Cell์„ ์กฐ์ •ํ•˜์—ฌ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰
โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ CF์— ๋“ฑ๋กํ•˜๋ ค๋ฉด ๋จผ์ € CC๋ฅผ ๋ชฉํ‘œ๋กœ ํ•˜
๊ณ , CC๋Š” CC-Bridge๋ฅผ ํ†ตํ•ด Diego Brain์— ์–ดํ”Œ๋ฆฌ์ผ€์ด
์…˜ ์‹คํ–‰์„ ํ†ต์ œ
โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰
Garden โ€ข Low-level manager and API protocol on each VM for
creating, configuring, destroying, monitoring, and
addressing application containers
56
[์ฒจ๋ถ€#3]
A
u
s
t
i
n
C
l
o
u
d
F
o
u
n
d
r
y
P
a
a
S
M
e
e
t
u
p
2
/
2
4
/
1
5
Component How It Works Responsible for
UAA & Login Servers โ€ข ID ๊ด€๋ฆฌ : ID, ๋ณด์•ˆ, ๊ถŒํ•œ๋ถ€์—ฌ ์„œ๋น„์Šค
โ€ข party Oauth ๊ด€๋ฆฌ
โ€ข ๊ตฌ์„ฑ ํ•ญ๋ชฉ : UAA Server, Command Line Interface,
Library.
โ€ข Token Server
โ€ข ID Server (User management)
โ€ข OAuth Scopes (Groups) and SCIM
โ€ข Login Server
๏ƒผ UAA Database
๏ƒผ VMware SSO Appliance๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ SAML๊ณผ
Active Directory ์ง€์›
โ€ข Access auditing
nsync, BBS, Cell Rep โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰ ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ํ•จ๊ป˜
์—ฐ๊ฒฐ๋˜์–ด ์ž‘๋™
โ€ข ํ•œ์ชฝ ๋์€ ์‚ฌ์šฉ์ž๊ณ  ๋‹ค๋ฅธ ํ•œ์ชฝ ๋์€ ๋ถ„์‚ฐ๋œ VM์—์„œ
์‹คํ–‰๋˜๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ธ์Šคํ„ด์Šค
โ€ข nsync ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ™•์žฅ์‹œ CC์—์„œ ๋ฉ”์‹œ์ง€๋ฅผ
๋ฐ›์•„์„œ Diego BBS db์— ์ธ์Šคํ„ด์ˆ˜ ๊ฐœ์ˆ˜ ๊ธฐ๋ก
โ€ข BBS : ์ปจ๋ฒ„์ „์Šค ํ”„๋กœ์„ธ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋‹ˆํ„ฐ๋ง,
์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ธ์Šคํ„ด์Šค๋ฅผ ์‹คํ–‰ ๋˜๋Š” ์ข…๋ฃŒ
โ€ข Cell Rep ์ปจํ…Œ์ด๋„ˆ ๋ชจ๋‹ˆํ„ฐ๋ง
Blobstore โ€ข ๋Œ€์šฉ๋Ÿ‰ binary ํŒŒ์ผ ์ €์žฅ์†Œ
โ€ข ๋‚ด๋ถ€ ์„œ๋ฒ„๋‚˜ ์™ธ๋ถ€์˜ S3 ๋“ฑ์—๋„ ์„ค์ • ๊ฐ€๋Šฅ
์ €์žฅ ๋Œ€์ƒ ํŒŒ์ผ
โ€ข Application code packages
โ€ข Buildpacks
โ€ข Droplets
Diego Cell โ€ข ์•ฑ ์ƒํƒœ์™€ ๊ธฐํƒ€ ๋ฐ์ดํ„ฐ๋ฅผ BBS์™€ Lggregator์— ์ „๋‹ฌ
โ€ข Diego CF ์•„ํ‚คํ…์ฒ˜ ์ด์ „์—๋Š” DEA node๊ฐ€ VM์— ์˜ฌ๋ผ ์žˆ๋Š”
์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์ปจํ…Œ์ด๋„ˆ ๊ด€๋ฆฌ
โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์‹คํ–‰๊ณผ ์ข…๋ฃŒ
โ€ข VM์˜ ์ปจํ…Œ์ด๋„ˆ ๊ด€๋ฆฌ
Loggregator
(Log aggregator)
โ€ข streams application logs to developers
57
[์ฒจ๋ถ€#3]
A
u
s
t
i
n
C
l
o
u
d
F
o
u
n
d
r
y
P
a
a
S
M
e
e
t
u
p
2
/
2
4
/
1
5
Component How It Works Responsible for
Service Broker โ€ข Service Brokers provide an interface for native and
external 3rd party services.
โ€ข Service processes run on Service Nodes or with
external as-a-service providers (e.g., email, database,
messaging, etc.).
โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ฑฐ๋‚˜ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ๊ฒฐ
ํ•ฉํ•  ๋•Œ ์„œ๋น„์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์ œ๊ณต
โ€ข Advertising service catalog.
โ€ข Makes create/delete/bind/ unbind calls to
service nodes.
โ€ข Requests inventory of existing instances and
bindings from cloud controller for caching,
orphan management.
โ€ข SaaS marketplace gateway.
โ€ข Implemented as HTTP enpoint, written in any
language.
Consul and BBS VM์€ HTTP๋‚˜ HTTPS๋ฅผ ํ†ตํ•ด ์„œ๋กœ ํ†ต์‹ ํ•˜๊ณ , ์ž„์‹œ ๋ฉ”์‹œ์ง€๋ฅผ
๊ณต์œ ํ•˜๊ณ , ์•„๋ž˜ ๋‘ ๊ตฐ๋ฐ์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅ
โ€ข Consul server : ์˜ค๋ž˜๊ฐ€๋Š” ์ œ์–ด ๋ฐ์ดํ„ฐ ์ €์žฅ(์ปดํฌ๋„ŒํŠธ์˜ IP
์ฃผ์†Œ๋‚˜ distributed locks ๋“ฑ)
โ€ข BBS : ์ž์ฃผ ๋ณ€๊ฒฝ๋˜๊ฑฐ๋‚˜ ํ•œ ๋ฒˆ ์‚ฌ์šฉํ•˜๊ณ  ๋ฒ„๋ฆฌ๋Š” ๋ฐ์ดํ„ฐ
์ €์žฅ(์˜ˆ, cell๊ณผ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ƒํƒœ, ํ• ๋‹น๋˜์ง€ ์•Š์€ ์ž‘์—…,
ํ™•์ธ ๋ฉ”์‹œ์ง€ ๋“ฑ) ๋˜๋Š” MySQL์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ ์ €์žฅ
route-emitter๋Š” NATS ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ตœ์‹  ๋ผ์šฐํŒ…
ํ…Œ์ด๋ธ”์„ router์— ์ „๋‹ฌ(โ€ป Diego ์ด์ „์˜ CF ์•„ํ‚คํ…์ฒ˜์—์„œ๋Š”
NATS Message Bus๊ฐ€ ๋ชจ๋“  ๋‚ด๋ถ€ ํ†ต์‹  ์ˆ˜ํ–‰)
โ€ข Non-Persistent messaging
โ€ข Pub/Sub
โ€ข Queues (app events)
โ€ข Directed messages (INBOX)
โ€ข ๋ฐ์ดํ„ฐ ์ €์žฅ
Metrics Collector โ€ข ๊ฐ ์ปดํฌ๋„ŒํŠธ์—์„œ ์ธก์ •์ง€ํ‘œ์™€ ํ†ต๊ณ„์น˜๋ฅผ ์ทจํ•ฉ ๏ƒ  CF ๋ฐฐํฌ ์‚ฌ
ํ•ญ ๋ชจ๋‹ˆํ„ฐ๋ง
58
[์ฒจ๋ถ€#4] DEA / Diego Differences Summary
DEA architecture Diego architecture Function ฮ” notes
Ruby Go Source code language
DEA Diego Brain
High-level coordinator that allocates processes to
containers in application VMs and keeps them
running
DEA is part of the Cloud Controller. Diego
is outside the Cloud Controller.
DEA Node Diego Cell
Mid-level manager on each VM that runs apps as
directed and communicates โ€œheartbeatโ€,
application status and container location, and
other messages
Runs on each VM that hosts apps, as
opposed to special-purpose component
VMs.
Warden Garden
Low-level manager and API protocol on each VM
for creating, configuring, destroying, monitoring,
and addressing application containers
Warden is Linux-only. Garden uses
platform-specific Garden-backends to run
on multiple OS.
DEA Placement
Algorithm
Diego Auction ํ”„๋กœ์„ธ์Šค๋ฅผ VM์— ํ• ๋‹นํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜
Diego Auction distinguishes between Task
and Long-Running Process (LRP) job types
Health Manager
(HM9000)
nSync, BBS, and Cell
Reps
System that monitors application instances and
keeps instance counts in sync with the number that
should be running
nSync syncs between Cloud Controller and
Diego, BBS syncs within Diego, and Cell
Reps sync between cells and the Diego
BBS.
NATS Message Bus
Bulletin Board System
(BBS) and Consul via
http/s, and NATS
๋‚ด๋ถ€ ์ปดํฌ๋„ŒํŠธ ๊ฐ„์˜ ํ†ต์‹ 
BBS stores most runtime data; Consul
stores control data.
59
[์ฒจ๋ถ€#5] Customer Use Cases
Developer use cases
โ€ข on demand access to resources they need to develop application using programming languages they are familiar with
โ€ข use an integrated CI/CD system (Helion Code Engine) to ensure application quality and rapid deployment
โ€ข deploy cloud native applications natively or via Docker containers (source code, binary or container)
โ€ข create and manage cloud native applications via a single integrated experience
โ€ข extend cloud native apps with integrated platform services, HPE SW services, and third party services or existing enterprise
services
โ€ข use tools, extensions and CLIs to enhance the development experience
IT Operations use cases
โ€ข the HPE Helion Stackato solution is a cloud app platform that helps IT operations meet the requirements of resiliency and SLAs;
the platform can run in private cloud environments, which helps IT meet regulatory requirements that would otherwise stop
developers to deploying to infrastructures such as AWS
โ€ข manage HPE Helion Stackato service lifecycles (e.g. user management, monitoring, update, etc.)
โ€ข seamlessly update and manage HPE Helion Stackato
โ€ข The Universal Service Broker makes it simpler to connect and manage applications deployed across many infrastructures
HPE Private & Confidential 60
โ€ข Deploy new cloud-native apps on HPE Helion Stackato & get the benefits of elasticity, resource
utilization, developer & deployment experience. Use HPE Helion Stackato to address apps that are
customer facing, with reqs in flux, utilization patterns are variable, need to span multiple platforms &
form factors - such as marketing websites, mobile apps, web apps, etc.
โ€ข Deploy on any cloud โ€“ customers searching for business agility & the flexibility to deploy on any
infrastructure with a consistent experience for developers can purchase HPE Helion Stackato, and
deploy your applications on any infrastructure as a service (AWS, Azure, VMware, etc.). This enables IT
to be flexible around business/cost needs, while still maintaining visibility & compliance.
โ€ข Deploy applications that connect to traditional/legacy systems โ€“ we help enterprises merge the old and
new by enabling connections to traditional databases or services, in addition to access to the latest
technologies for developing applications.
HPE Private & Confidential
[์ฒจ๋ถ€#5] Customer Use Cases
61

Intro to hpe helion stackato_paa_s

  • 2.
    ์ฐจ๋ก€ โ€ข PaaS โ€ข CloudFoundry โ€ข HPE Helion Stackato 2
  • 4.
    PaaS๋ž€? โ€ข IaaS ํ™˜๊ฒฝ์—์ตœ์ ํ™”๋œ (์›น ๊ธฐ๋ฐ˜์˜) ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜/์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํ”Œ๋žซํผ โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜/์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์— ํ•„์š”ํ•œ ๋„๊ตฌ์™€ ๊ธฐ๋Šฅ, ์„œ๋น„์Šค๋“ค์ด ํŒจํ‚ค์ง•๋œ ์ผ์ข…์˜ ํด๋ผ์šฐ๋“œ ๋ฏธ๋“ค์›จ์–ด ๏ƒผ OS, ๊ฐœ๋ฐœ ๋„๊ตฌ, ํ”„๋ ˆ์ž„์›Œํฌ, language, BPM, EAI, ํ˜•์ƒ๊ด€๋ฆฌ, ์ปดํŒŒ์ผ๋Ÿฌ, ๋ฐ์ดํ„ฐ๊ด€๋ฆฌ, ๋ณด์•ˆ, ๋ฒ„์ „๊ด€๋ฆฌ, ๋กค๋ฐฑ, ํ”„๋กœ๋น„์ €๋‹, ์บ์‹ฑ ๏ƒผ ์ด๊ฒƒ๋“ค์„ ํฌํ•จํ•˜๋ฉด์„œ ์„œ๋กœ ์—ฐ๊ฒฐ/ํ†ตํ•ฉ์‹œ์ผœ ์ฃผ๋Š” ๊ธฐ๋Šฅ ํฌํ•จ ๏ƒ  ๋ณต์žกํ•œ ์•„ํ‚คํ…์ฒ˜๋กœ ๊ตฌ์„ฑ๋จ ๊ฐœ๋ฐœ์ž๋Š” ๊ฐœ๋ฐœ์—๋งŒ ์‹ ๊ฒฝ์“ฐ๊ฒŒ ํ•˜์ž! ๏ƒจ IT ์ž์›์ด ํ•ญ์ƒ ์„œ๋น„์Šค ๊ฐ€๋Šฅํ•œ ์ƒํƒœ(์ฆ‰, ํ˜ธ์ŠคํŒ…๋œ ์ƒํƒœ = ์‚ฌ์šฉ๊ฐ€๋Šฅํ•œ ์ƒํƒœ)๋กœ ์ œ๊ณต๋จ. ๏ƒจ ํด๋ผ์šฐ๋“œ ์ƒ์—์„œ ๊ฐœ๋ฐœ๊ณผ ๋”œ๋ฆฌ๋ฒ„๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅ ๏ƒจ IT ์ž์›์„ ์…€ํ”„ ์„œ๋น„์Šค๋‚˜ API๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•จ(=์ถ”์ƒํ™”ํ•˜์—ฌ ์ œ๊ณต) 4
  • 5.
    Cloud Service์˜ ๋ถ„๋ฅ˜ IT์ž์›์˜ ๊ด€๋ฆฌ ๊ถŒํ•œ์— ๋”ฐ๋ฅธ ๋ถ„๋ฅ˜ 5
  • 6.
    Platform-as-a-Service(PaaS) Cloud-enabled automation andorchestration of app services and containers SERVICE UNIT โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋น„์Šค(์˜ˆ, ๋ฉ”์‹œ์ง€)์™€ ์ปจํ…Œ์ด๋„ˆ (์˜ˆ, Redhat, tcServer, Weblogic) ABSTRACTION ๋Œ€์ƒ โ€ข ๋ฌผ๋ฆฌ์  ์ธํ”„๋ผ, OS, Middleware, Runtime PRIMARY USE CASE โ€ข ๊ฐœ๋ฐœ์ž์™€ ํ…Œ์Šคํ„ฐ์—๊ฒŒ ํ‘œ์ค€ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์ปจํ…Œ์ด๋„ˆ ์ œ๊ณต โ€ข ์ˆ˜ํ‰ ํ™•์žฅ๊ณผ ํ™•์žฅ ๊ธฐ๋Šฅ(bursting capability)๋ฅผ ์ง€์›ํ•˜๋Š” ์ธํ”„๋ผ ์ž์›์„ ๋™์ ์œผ๋กœ ๊ด€๋ฆฌ ADVANCE USE CASE โ€ข ํ…Œ์ŠคํŠธ ์ž๋™ํ™”(์„ฑ๋Šฅ, ๊ธฐ๋Šฅ, ๋ณด์•ˆ, ๊ทœ์ œ์ค€์ˆ˜ ๋“ฑ) โ€ข ์ง€์†์  ํ†ตํ•ฉ(CI)์™€ ๋ฐฐํฌ ์‹œ์Šคํ…œ๊ณผ์˜ ํ†ตํ•ฉ TOOLS โ€ข Cloud Foundry โ€ข vSphere 6
  • 7.
    PaaS์˜ ํ™•์‚ฐ ๋ฐฐ๊ฒฝ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์˜๋Œ€ํ˜•ํ™”์™€ DevOps์˜ ํ•„์š”์„ฑ์— ๋”ฐ๋ผ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐฐํฌ ๋ฐฉ์‹์˜ ๋ณ€ํ™” 1. ๋น ๋ฅด๊ฒŒ ๋ณ€ํ™”ํ•˜๋Š” ๊ฐœ๋ฐœํ™˜๊ฒฝ์˜ ๊ด€๋ฆฌ ํ•„์š” โ€ข ์ž๋™ํ™”๋œ ๊ฐœ๋ฐœ, ๋ฐฐํฌ ํ™˜๊ฒฝ โ€ข ๋น„์ฆˆ๋‹ˆ์Šค ์š”๊ตฌ์‚ฌํ•ญ์— ๋Œ€ํ•œ ๋น ๋ฅธ ๋Œ€์‘ 2. ๋ณต์žกํ•ด์ง„ Middleware โ€ข ๊ฐœ๋ฐœ๋„๊ตฌ, ๊ด€๋ฆฌ๋„๊ตฌ, ๋ฐฐํฌ๋„๊ตฌ ๋“ฑ ์ˆ˜๋งŽ์€ middleware์˜ ๊ตฌ์ถ•๊ณผ ์šด์˜ ์ƒ์˜ ์–ด๋ ค์›€ โ€ข ์ˆ˜๋งŽ์€ middleware์˜ ์šด์˜ ๊ธฐ์ˆ ์ž, ๋ผ์ด์„ ์Šค, ํ•™์Šต ๋“ฑ์˜ ์–ด๋ ค์›€ 3. ์ปดํ“จํŒ… ์ž์›์˜ ํ• ๋‹น โ€ข ํ”„๋กœ์ ํŠธ ๊ทœ๋ชจ์˜ ํ™•๋Œ€, ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ถ”๊ฐ€ ๋“ฑ์˜ ์ด์Šˆ ์‹œ ํ•„์š”ํ•œ ์ž์› ํ™•๋ณด ์‹œ๊ฐ„ ์ฆ๊ฐ€ โ€ข Cross-platform ํ™˜๊ฒฝ์˜ ์ฆ๊ฐ€ 4. ํ˜‘์—…์˜ ์ฆ๊ฐ€ โ€ข ์กฐ์ง์ , ์ง€๋ฆฌ์ ์œผ๋กœ ๋ถ„์‚ฐ๋œ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ๏ƒ  ์ด์Šˆ, ์ง„ํ–‰์ƒํ™ฉ ํŒŒ์•…, ํ˜‘์—… ๋“ฑ <์ถœ์ฒ˜: โ€œPaaS : ํด๋ผ์šฐ๋“œ ๋„์ž… ํšจ์œจ์˜ ์™„์„ฑโ€œ, ์žฅ์ง„์˜> 7
  • 8.
    PaaS์˜ ๊ธฐ๋Šฅ ํ˜ธ์ŠคํŒ…๋œ ์†Œํ”„ํŠธ์›จ์–ด์˜ ํ˜•์ƒ๊ด€๋ฆฌ์„œ๋น„์Šค ๋นŒ๋“œ ์„œ๋น„์Šค ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„ ํ”„๋ ˆ์ž„์›Œํฌ ์„œ๋น„์Šค ๋ชจ๋ธ ํ”Œ๋žซํผ ์„œ๋น„์Šค Component as a Service (CaaS) ํ†ตํ•ฉ ํ”Œ๋žซํผ ์„œ๋น„์Šค ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋น„์Šค ํ…Œ์ŠคํŠธ์™€ ์ž๋™ํ™” ๋„๊ตฌ PaaS๊ฐ€ ์ œ๊ณตํ•˜๋Š”/์ œ๊ณตํ•ด์•ผ ํ•˜๋Š” ๊ธฐ๋Šฅ ๋˜๋Š” ์„œ๋น„์Šค ์„ฑ๋Šฅ๋ถ„์„ ๋„๊ตฌ ๊ฐœ๋ฐœ๏ƒ ํ…Œ์ŠคํŠธ๏ƒ  ํ”„๋กœ๋•์…˜ ์ž๋™ํ™” ๋ชจ๋‹ˆํ„ฐ๋ง๊ณผ ๊ณต์ง€(Notification) 8
  • 9.
    PaaS์˜ ๊ธฐ๋Šฅ(์ƒ์„ธ) ํ˜ธ์ŠคํŒ…๋œ ์†Œํ”„ํŠธ์›จ์–ด์˜ํ˜•์ƒ๊ด€๋ฆฌ ์„œ๋น„์Šค โ€ข ๊ฐœ๋ฐœ๊ณผ์ •์—์„œ ๋ฐœ์ƒํ•˜๋Š” ์ฝ”๋“œ์˜ ๋ฒ„์ „๊ณผ ๋ชจ๋“ˆ์„ ๊ด€๋ฆฌ : ์ฝ”๋“œ๋Š” ์˜จ๋ผ์ธ ์ €์žฅ์†Œ์— ๊ด€๋ฆฌ (์˜ˆ, GitHub) โ€ข ๊ฐœ๋ฐœ์ž์šฉ ๊ฐ€์ƒ ๊ฐœ๋ฐœ๊ธฐ์ธ ๊ฐœ๋ฐœํ™˜๊ฒฝ์„ ์‰ฝ๊ฒŒ ๋ณต์ œ -> ๊ฐœ๋ฐœ๊ณผ ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•œ ์ž„์‹œ ์›Œํฌ๋กœ๋“œ๋ฅผ ์šด์˜๊ธฐ์™€ ๋™์ผํ•˜๊ฒŒ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด ์คŒ์œผ๋กœ์จ ํ…Œ์ŠคํŠธํ•˜๊ณ ์ž ํ•˜๋Š” ๋Œ€์ƒ์„ ์†Œ์Šค ์ €์žฅ์†Œ์—์„œ ์ฆ‰์‹œ ๋นŒ๋“œํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•จ. ๋นŒ๋“œ ์„œ๋น„์Šค โ€ข ์„œ๋น„์Šค๋“ค์„ ํ†ตํ•ฉํ•˜๋Š” ๊ณผ์ •, ์ฝ”๋“œ ์ปดํŒŒ์ผ, ๊ทธ๋ฆฌ๊ณ  ํ…Œ์ŠคํŒ…์„ ๊ฑฐ์ณ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“œ๋Š” ๊ณผ์ • ๊ด€๋ฆฌ โ€ข ์–ดํ”Œ๋ฆฌ๊ฒŒ์ด์…˜์€ ์—ฌ๋Ÿฌ ๋ชจ๋“ˆ (ํ˜น์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ) ๋“ค์— ๋Œ€ํ•œ ์ข…์†์„ฑ์„ ์ง€๋‹ˆ๊ฒŒ ๋˜๋Š”๋ฐ, PaaS ์˜ ๋นŒ๋“œ ์„œ๋น„์Šค๋Š” ์ด๋Ÿฌํ•œ ๋ชจ๋“ˆ๋“ค์˜ ๋น„์ „๊ณผ ์ข…์†์„ฑ์„ ๊ด€๋ฆฌํ•˜์—ฌ ๋นŒ๋“œ๋ฅผ ์ž๋™ํ™” o Maven : ์ž๋ฐ” ๊ฐœ๋ฐœ์ž๋“ค์—๊ฒŒ ์ฃผ๋กœ ์‚ฌ์šฉ๋˜๋ฉฐ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋‚ด์˜ ๋ชจ๋“ˆ๊ฐ„ ์ข…์†์„ฑ์„ ๊ด€๋ฆฌํ•˜์—ฌ ๋นŒ๋“œ๋ฅผ ์ž๋™ํ™” o Maven Repository: ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ์— ๊ทผ๊ฐ„ํ•˜์—ฌ ์†Œํ”„ํŠธ์›จ์–ด ์ปดํฌ๋„ŒํŠธ(๋ชจ )๋“ค์˜ ์ข…์†์„ฑ ๋””๋ ‰ํ† ๋ฆฌ ๋“ฑ์„ ๊ด€๋ฆฌํ•ด์ฃผ๋Š” ์˜จ๋ผ์ธ ์ €์žฅ์†Œ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„ โ€ข ๊ฐœ๋ฐœ์ž๊ฐ€ ์ž์‹ ์ด ๋งŒ๋“  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‰ฝ๊ณ  ๋น ๋ฅด๊ฒŒ ๊ฐ€๋Šฅํ•œ ์‹ค์ œ ํ™˜๊ฒฝ์—์„œ ํ…Œ์ŠคํŠธํ•ด ๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๊ธฐ๋Šฅ(=๋ชจ์˜ ์‹คํ–‰ํ™˜๊ฒฝ) ์ œ๊ณต โ€ข ๊ฐœ๋ฐœ์ž๊ฐ€ ์š”์ฒญ์ด ์žˆ๋Š” ๊ฒฝ์šฐ ๊ฐœ๋ฐœ๊ธฐ๋ฅผ ๋™์ ์œผ๋กœ ์ƒ์„ฑํ•˜์—ฌ ์ œ๊ณต ํ”„๋ ˆ์ž„์›Œํฌ ์„œ๋น„์Šค โ€ข ์ผ๊ด€์„ฑ์žˆ๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ตฌ์กฐ๋ฅผ ๊ตฌ์ถ• <- ์•ˆ์ •๋˜๊ณ  ํ…Œ์ŠคํŠธ๋œ ๊ธฐ๋ฐ˜ ์†Œํ”„ํŠธ์›จ์–ด ๋ชจ๋“ˆ์— ๊ทผ๊ฐ„ํ•˜์—ฌ ๊ฐœ๋ฐœ โ€ข ๋งค๋ฒˆ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์„ค์ •ํ•˜๊ณ  ์„ค์ •ํ•˜๊ณ  ์„ค์ •ํ•˜๊ณ  ์„ค์น˜ํ•  ํ•„์š” ์—†์Œ โ€ข PaaS ์ œ๊ณต์ž๋Š” ์ œ๊ณต์ž๋Š” ๋‹ค์Œ๊ณผ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ”„๋ ˆ์ž„์›Œํฌ๋“ค์„ ํ”„๋ ˆ์ž„์›Œํฌ๋“ค์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋‹ค : o Spring, Play Framework ๊ฐ™์€ ์„œ๋ฒ„ ํ”„๋ ˆ์ž„์›Œํฌ ํ”„๋ ˆ์ž„์›Œํฌ , X-Forms, Responsive Forms, Web ๊ณผ ๊ฐ™์€ ์›น 2.0 UX ํ”„๋ ˆ์ž„์›Œํฌ 9
  • 10.
    PaaS์˜ ๊ธฐ๋Šฅ(์ƒ์„ธ) ๋ชจ๋ธ ํ”Œ๋žซํผ์„œ๋น„์Šค โ€ข BPM, ๋น„์ฆˆ๋‹ˆ์Šค ๋ฃฐ ๊ด€๋ฆฌ (BRE), BI์™€ ๊ฐ™์€ ๋ชจ๋ธ ๊ธฐ๋ฐ˜์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ†ตํ•ฉ ๋ฐฉ์‹์„ ์ง€์›ํ•˜๋Š” ๋ฏธ๋“ค์›จ์–ด์˜ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ํ˜•ํƒœ โ€ข ํƒœ๋„ŒํŠธ๋ณ„๋กœ ํŠนํ™”๋˜๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์˜์—ญ์„ ์†Œ๋น„์ž๊ฐ€ ์ง์ ‘ ์…€ํ”„์„œ๋น„์Šคํ•˜์—ฌ ๊ตฌ์„ฑ โ€ข ์—…๋ฌด ์ „๋ฌธ๊ฐ€๊ฐ€ ์ง์ ‘ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ”„๋กœ์„ธ์Šค ํŽธ์ง‘๊ธฐ, ํผ ํŽธ์ง‘๊ธฐ, ๋ฃฐ ํŽธ์ง‘๊ธฐ ๋“ฑ์„ ์ œ๊ณตํ•˜์—ฌ ๊ฐœ๋ฐœ์ž๊ฐ€ ์•„๋‹ˆ๋”๋ผ๋„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ํ˜•์ƒ์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์ถ”์ƒ์„ฑ์„ ์ œ๊ณต โ€ข ๏ƒ  ์ดํ›„์— ์†Œ๋น„์ž๊ฐ€ ์…€ํ”„์„œ๋น„์Šค๋ฅผ ํ†ตํ•˜์—ฌ ์ž์‹ ์ด ์ทจ๋“ํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์—…๋ฌด ๊ทœ์น™์ด๋‚˜ ํ”„๋กœ์„ธ์Šค๋ฅผ ์šฉ์ดํ•˜๊ฒŒ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ฃผ๊ณ , ์ž์‹ ์ด ์›ํ•˜๋Š” ๋ ˆํฌํŠธ๋ฅผ ์ฃผ์–ด์ง„ BI ํ”Œ๋žซํผ์˜ ์‚ฌ์šฉ์ž ๋„๊ตฌ๋ฅผ ํ†ตํ•˜์—ฌ ๋ฝ‘์•„ ๋‚ผ์ˆ˜๋„ ์žˆ๋Š” ์ž์œจ์„ฑ์„ ์ค€๋‹ค. Component as a Service (CaaS) โ€ข ์†Œํ”„ํŠธ์›จ์–ด ์ปดํฌ๋„ŒํŠธ๋“ค์„ ํ˜ธ์ŠคํŒ… ๋œ ์ฑ„๋กœ ์ œ๊ณต. ์ปดํฌ๋„ŒํŠธํ™”์˜ ์„ฑ์ˆ™๋„ ์ˆ˜์ค€์ด ๋†’์€ SOA ์„ฑ์ˆ™๋„๋ฅผ ๊ฐ€์ง โ€ข ์†Œํ”„ํŠธ์›จ์–ด ์ปดํฌ๋„ŒํŠธ๋ฅผ Open API ๋กœ (RESTful ์„œ๋น„์Šค๋‚˜ ์›น์„œ๋น„์Šค, XML ์„œ๋น„์Šค ๋“ฑ์œผ๋กœ) ๋…ธ์ถœ์‹œํ‚ค๊ธฐ ์‰ฝ๊ณ  ์–ธ์ œ๋“ ์ง€ ๋™์ ์ธ ๋ฐ”์ธ๋”ฉ๊ณผ ํ†ตํ•ฉ์ด ๊ฐ€๋Šฅ โ€ข ํ”„๋กœ์„ธ์Šค ์˜ค์ผ€์ŠคํŠธ๋ž˜์ด์…˜๊ณผ ๊ฐ™์ด ๋น„์ฆˆ๋‹ˆ์Šค ์‚ฌ์šฉ์ž๊ฐ€ ๋‹ค๋ฃจ๊ธฐ์—๋„ ์‰ฌ์›€ โ€ข ํŠน์„ฑ์ƒ ์žฆ์€ ํ˜ธ์ถœ์ด ๋นˆ๋ฒˆํžˆ ๋ฐœ์ƒํ•˜๋Š” ์›Œํฌ๋กœ๋“œ๋ฅผ ๊ฒฌ๋ŽŒ์•ผ ํ•˜๋ฏ€๋กœ ๊ฐ€๋ณ๊ณ  ๊ฐ•๋ ฅํ•œ SOA ๊ตฌํ˜„ ํ”Œ๋žซํผ์ธ OSGi ์„ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ์ข€๋” ๋‚ฎ์€ Modularity ๋ฅผ ์ œ๊ณตํ•˜์ง€๋งŒ ์–ธ์–ด์ฐจ์›์—์„œ RESTful ์„œ๋น„์Šค๋ฅผ ์ง€์›ํ•˜๋Š” JAX-RS ํ˜น์€ Node.JS ๋“ฑ์„ ์‚ฌ์šฉ ํ†ตํ•ฉ ํ”Œ๋žซํผ ์„œ๋น„์Šค โ€ข ๊ธฐ์กด์˜ ์„œ๋น„์Šค๋‚˜ ์‹œ์Šคํ…œ๊ณผ์˜ ํ†ตํ•ฉ์„ ์‰ฝ๊ฒŒ ํ•ด ์ฃผ๋Š” ์—ญํ•  โ€ข ์ธํ„ฐํŽ˜์ด์Šค ์„œ๋น„์Šค(API๋‚˜ EAI, BPM, Presentation Mashups ๋“ฑ) ์ œ๊ณต o ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค๋‚ด์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๋“ค ํ•„์š”์— ๋”ฐ๋ผ ์‰ฝ๊ฒŒ ํ™”๋ฉด, ์„œ๋น„์Šค, ๋ฐ์ดํ„ฐ๊ฐ€ ํ†ตํ•ฉ(ACID ํ•œ ํŠธ๋žœ์žญ์…˜์ด ๋ณด์žฅ๋˜๊ฑฐ๋‚˜ ๋ฉ”์‹œ์ง€ ํ๋“ฑ์„ ํ†ตํ•˜์—ฌ ์—ฐ๋™์ด ๋ณด์žฅ) o ๋‹ค๋ฅธ ๋„คํŠธ์›Œํฌ์˜ ํด๋ผ์šฐ๋“œ์—์„œ ์ œ๊ณตํ•˜๋Š” ์„œ๋น„์Šค๋‚˜ ์„œ๋น„์Šค์˜ ๋‹จ์œ„ ํ™”๋ฉด๊ณผ๋„ ์—ฐ๊ณ„ o โ€˜์„œ๋น„์Šค-์ค‘์‹ฌ-์•„ํ‚คํ…์ฒ˜' ๊ธฐ๋ฐ˜์˜ SOA ์„ฑ์ˆ™๋„ ๋ชจํ˜•์— ๊ทผ๊ฑฐํ•˜์—ฌ ๋†’์€ ์ˆ˜์ค€์˜ ์„œ๋น„์Šค ํ†ตํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋น„์Šค โ€ข ํ…Œ์ŠคํŠธ ์‹œ ์‹ค์ œ ์šด์˜ํ™˜๊ฒฝ๊ณผ ๋น„์Šทํ•œ ๋Œ€์šฉ๋Ÿ‰์˜ ๋ณต์žกํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๊ตฌ์„ฑํ•˜์—ฌ ์ œ๊ณต โ€ข ์˜ˆ๋ฅผ ๋“ค์–ด 10 ๋Œ€์˜ ํด๋Ÿฌ์Šคํ„ฐ๋œ MySQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์‚ฌ์šฉ๋  ์˜ˆ์ •์ด๋ผ๋ฉด, ์ด๋Ÿฌํ•œ ๊ฐœ๋ฐœํ™˜๊ฒฝ์„ ์›น๋ธŒ๋ผ์šฐ์ € ์ƒ์˜ ์…€ํ”„์„œ๋น„์Šค์—์„œ ๋ช…์‹œํ•ด์ฃผ๋Š” ๊ฒƒ ๋งŒ์œผ๋กœ ์ด๋Ÿฌํ•œ ์ƒŒ๋“œ๋ฐ•์Šค ํ™˜๊ฒฝ์ด ๊ตฌ์ถ• 10
  • 11.
    PaaS์˜ ๊ธฐ๋Šฅ(์ƒ์„ธ) ํ…Œ์ŠคํŠธ์™€ ์ž๋™ํ™”๋„๊ตฌ โ€ข UI ํ…Œ์ŠคํŠธ์™€ ๋กœ๋“œ ํ…Œ์ŠคํŠธ ์„œ๋น„์Šค ์ž๋™ํ™” ์ง€์› o Jenkins: ๊ฐ€์žฅ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ์ง€์†์  ํ†ตํ•ฉ(CI) ์„œ๋ฒ„. ์†Œ์Šค์ฝ”๋“œ๋ฅผ ๋‚ด๋ ค ๋ฐ›์•„ Maven์„ ํ˜ธ์ถœํ•˜์—ฌ ๋นŒ๋“œ๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ณ  ๋‹ค์–‘ํ•œ ์ข…๋ฅ˜์˜ ํ”Œ๋Ÿฌ๊ทธ์ธ๋“ค์„ ํ†ตํ•˜์—ฌ ํ…Œ์ŠคํŠธ, ์ •์  ์ฝ”๋“œ ๋ถ„์„ ๋“ฑ์„ ์ž๋™์ ์œผ๋กœ ์ˆ˜ํ–‰ o Selenium: ์—ฌ๋Ÿฌ ์ข…๋ฅ˜์˜ ์›น๋ธŒ๋ผ์šฐ์ € ์ƒ์—์„œ UI ํ…Œ์ŠคํŠธ๋ฅผ ์ž๋™ํ™” o Sonar: ์ฝ”๋“œ์˜ ํ’ˆ์งˆ์— ๋Œ€ํ•œ ํ”ผ๋“œ๋ฐฑ์„ ์ž๋™ํ™”ํ•˜์—ฌ ๋ณด๊ณ  ์„ฑ๋Šฅ๋ถ„์„ ๋„๊ตฌ โ€ข ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•œ ๊ธฐ๊ณ„์ , ๋„คํŠธ์›Œํฌ์  ๊ตฌ์„ฑ ์ž์ฒด๊ฐ€ ํฌ๊ฒŒ ์š”๊ตฌ๋˜๋Š” ํ”„๋กœ๋•์…˜ ํ”„๋กœํŒŒ์ผ๋ง๊ณผ ๋กœ๋“œ ํ…Œ์ŠคํŒ… ๊ฐ™์€ ์„ฑ๋Šฅ ๋ถ„์„ ๋„๊ตฌ ์ œ๊ณต o SOASTA: ํด๋ผ์šฐ๋“œ ๋จธ์‹ ๋“ค์˜ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•˜์—ฌ ์‹ค์ œ ์‚ฌ์šฉ์ž ๋กœ๋“œ๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํ…Œ์ŠคํŠธ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•จ (ํด๋ผ์ด์–ธํŠธ ํƒ€์ž…๊ณผ ๊ฐœ์ˆ˜, ์ง€๋ฆฌ์  ์œ„์น˜, ๋กœ๋“œ ํŒจํ„ด ๋“ฑ์„ ์ง€์ • ๊ฐ€๋Šฅ) o New Relic: ์—”๋“œ-์œ ์ €์˜ ํ–‰๋™, ์„œ๋ฒ„ ํ–‰์œ„๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋ง, ๋ณ‘๋ชฉ๊ตฌ๊ฐ„์„ ์ฐพ์•„๋‚ด๋Š”๋ฐ ์‚ฌ์šฉ ๊ฐœ๋ฐœ์—์„œ ํ…Œ์ŠคํŠธ, ํ…Œ์ŠคํŠธ์—์„œ ํ”„๋กœ๋•์…˜์„ ์œ„ํ•œ ์ž๋™ํ™” ์„œ๋น„์Šค โ€ข ์„œ๋น„์Šค ์šด์˜์— ๋ฐฉํ•ด๋ฅผ ์ฃผ์ง€ ์•Š๋„๋ก ํด๋ผ์šฐ๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์—…๋ฐ์ดํŠธ ๊ฐ€๋Šฅ โ€ข ์˜ˆ๋ฅผ ๋“ค๋ฉด ์ƒˆ๋กœ์šด ๋ฒ„์ „์˜ ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉ์ž๊ฐ€ ์ด๋ฏธ ์‚ฌ์šฉ์ค‘์ธ ์„œ๋น„์Šค์— ์ ์šฉ์‹œ์ผœ์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ, ๊ฐœ๋ฐœ๊ณผ ํ…Œ์ŠคํŒ…, ๋ฐฐํฌ์˜ ๊ณผ์ •์ด ์ข€๋” ๋Š๊น€ ์—†์ด ์ œ๊ณต๋˜๋„๋ก ์ง€์›(= ์„œ๋น„์Šค์˜ ์—…-ํƒ€์ž„์— ์†์‹ค ์ตœ์†Œํ™”) โ€ข ์„ธ์…˜ ์Šคํ† ์–ด๋ฅผ ๋‚ด์žฅํ•˜์—ฌ ์ž๋™์œผ๋กœ ์—…๋ฐ์ดํŠธ์‹œ์— ์ด ๋ฐ์ดํ„ฐ๋ฅผ ์œ ์ง€ ๋ชจ๋‹ˆํ„ฐ๋ง๊ณผ ๊ณต์ง€(Notification) ์„œ๋น„์Šค โ€ข ์ƒ์‚ฐ์„ฑ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ๋ชจ๋“  ๊ด€์ ์˜ PaaS ํ™˜๊ฒฝ๊ณผ ์„ฑ๋Šฅ์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€์‹œ๋ณด๋“œ๋ฅผ ์ œ๊ณต โ€ข SLA ์— ๊ธฐ๋ฐ˜ํ•œ ์„œ๋น„์Šค์˜ ์ƒํƒœ ๊ฐ์‹œ ๊ฐ€๋Šฅ โ€ข ์™ธ๋ถ€ ๊ณต๊ฒฉ์ด ์ธ์‹๋˜๋ฉด ์šด ์˜์ž์—๊ฒŒ ์ž๋™ ์•Œ๋ฆผ 11
  • 12.
    PaaS์˜ ๊ธฐ๋Šฅ ์•„ํ‚คํ…์ฒ˜ PaaS๊ณต๊ธ‰์ž๊ฐ€ ์ œ๊ณต, ๊ด€๋ฆฌํ•˜๋Š” ๊ธฐ๋Šฅ(๋˜๋Š” ์„œ๋น„์Šค) ๊ตฌ์„ฑ <์ถœ์ฒ˜: Gartner, 2011.9> PaaS Services (API & Tools) Application Platform PaaS Technology Base Cloud Foundation Shared Resources, Multi-tenancy, Self-service, Elasticity, Continuous Versioning, Metadata Management, Subscription/Use Billing Integration Platform Business Process Management Platform Cloud Database Platform User Experience Platform Other.. Integrated Application Development and Life Cycle Management Integrated Platform Service Management (Self-service) Performance Foundation In-memory Computing, Grid/Massive Scale, Autoscaling, SLA Enforcement, Use Tracking, High Availability, Security, Data Integrity, Parallel Processing Platform Technology Management Monitoring, Tuning, Administration, Version Control, Resource Control User Control Provider Control 12
  • 13.
    ๊ด€๋ฆฌ/์„œ๋น„์Šค ์˜์—ญ PaaS Platformโ€“ ๊ฐœ๋ฐœ์ž์—๊ฒŒ ๋ณด์—ฌ์ง€๋Š” ์˜์—ญ Marketplace/ImageManagement ConfigurationManagement Application Scheduling Container Scheduling Service Discovery Container Networking Container Cluster Management Security <์ถœ์ฒ˜: Wikibon, 2015> PaaS ๊ณต๊ธ‰์ž๊ฐ€ ์ œ๊ณต, ๊ด€๋ฆฌํ•˜๋Š” ๊ธฐ๋Šฅ(๋˜๋Š” ์„œ๋น„์Šค) ๊ตฌ์„ฑ 13
  • 14.
    PaaS์˜ ์œ ํ˜• 1 1.ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ๋ฐฉ์‹ : ๊ฐœ๋ฐœ ํ†ตํ•ฉ๊ฐœ๋ฐœํ™˜๊ฒฝ(IDE) + ํด๋ผ์šฐ๋“œ ๋ฐฐํฌ ๊ธฐ๋Šฅ โ€ข ๊ธฐ์กด IDE(์ดํด๋ฆฝ์Šค, ๋น„์ฃผ์–ผ ์ŠคํŠœ๋””์˜ค ๋“ฑ)์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉ -> ์‚ฌ์šฉ์„ฑ ๋†’์Œ โ€ข ํด๋ผ์šฐ๋“œ ๋ฐฐํฌ๊ฐ€ ๊ฐ€๋Šฅํ•œ ๊ธฐ๋Šฅ ํฌํ•จ : ๋กœ์ปฌ ๋จธ์‹ ์—์„œ ์ฝ”๋”ฉํ•˜๊ณ  ํด๋ผ์šฐ๋“œ์—์„œ ๋ฐฐํฌ โ€ข ์†”๋ฃจ์…˜ : Google์˜ AppEngine, Pivotal์˜ Cloud Foundry, Redhat์˜ OpenShift ๋“ฑ 2. 100% ํด๋ผ์šฐ๋“œ ๋ฐฉ์‹ : ๊ฐœ๋ฐœ๋„, ๋ฐฐํฌ๋„ ํด๋ผ์šฐ๋“œ โ€ข ์›น ๋ธŒ๋ผ์šฐ์ € ๊ธฐ๋ฐ˜์˜ ๊ฐœ๋ฐœํ™˜๊ฒฝ : ์›น ์ ‘์†๋งŒ์œผ๋กœ ์•ฑ ๊ฐœ๋ฐœ๊ณผ ๋ฐฐํฌ ๊ฐ€๋Šฅ(๊ฐœ๋ฐœํ™˜๊ฒฝ ๋ถˆํ•„์š”) โ€ข ๊ฐœ๋ฐœ IDE ์†”๋ฃจ์…˜์— ๋น„ํ•ด ์‚ฌ์šฉ ํŽธ์˜์„ฑ, ๊ธฐ๋Šฅ, ์ƒ์‚ฐ์„ฑ์ด ๋‚ฎ์€ ํŽธ โ€ข ์†”๋ฃจ์…˜ : Google์˜ GoogleScript, Exo์˜ CodeEnvy, ๊ตฌ๋ฆ„IDE, OCE์˜ ์œ ํด๋ฆฝ์Šค(๊ตญ์‚ฐ) 3. ๋น„์ฆˆ๋‹ˆ์Šค ์ „๋ฌธ๊ฐ€์šฉ โ€ข ์ฝ”๋”ฉ์—†์ด ๋˜๋Š” ์ตœ์†Œํ™”ํ•˜์—ฌ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ -> ๋น„์ฆˆ๋‹ˆ์Šค ์ „๋ฌธ๊ฐ€๊ฐ€ ์‚ฌ์šฉํ•˜๊ธฐ ์‰ฝ๊ฒŒ ๊ตฌ์„ฑ โ€ข OpenTex์˜ Cordys : BPM ํ”Œ๋žซํผ, ํผ/UI ๋””์ž์ด๋„ˆ, ๊ทœ์นฎ๊ฒ…์˜, ํ”„๋กœ์„ธ์Šค ์ •์˜, SOA ํผ๋ธ”๋ฆฌ์‹ฑ, ํ†ตํ•ฉ๊ฐœ๋ฐœ๋„๊ตฌ ๋“ฑ ์ œ๊ณต(=BPM PaaS ํ”Œ๋žซํผ) โ€ข Salesforce.com์˜ Apex : ํด๋ผ์šฐ๋“œ IDE, ํ”„๋กœ์„ธ์Šค ๋””์ž์ด๋„ˆ, ๋ฃฐ ๋””์ž์ด๋„ˆ, ํผ ๋””์ž์ด๋„ˆ ์ œ๊ณต 4. ํ†ตํ•ฉ๊ฐœ๋ฐœํ™˜๊ฒฝ(IDE) ์—†๋Š” ์‹คํ–‰์ „์šฉ ๋ฐฉ์‹ โ€ข ํ†ตํ•ฉ๊ฐœ๋ฐœํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜์ง€ ์•Š์Œ โ€ข ๋ฐฐํฌ ๋Œ€์ƒ ์–ดํ”„๋ฆฌ์ผ€์ด์…˜์ด ์†Œ์Šค๊ด€๋ฆฌ ์„œ๋ฒ„ ๋“ฑ๊ณผ ์ธํ„ฐํŽ˜์ด์Šคํ•˜์—ฌ ๋ฐฐํฌ๋  ์ˆ˜ ์žˆ๋„๋ก ํ•จ ์„œ๋น„์Šค ๋ฒ”์œ„์™€ ๋ฐฉ์‹์— ์˜ํ•œ ๋ถ„๋ฅ˜ (Forrester) <์ถœ์ฒ˜: โ€œPaaS : ํด๋ผ์šฐ๋“œ ๋„์ž… ํšจ์œจ์˜ ์™„์„ฑโ€œ, ์žฅ์ง„์˜> 14
  • 15.
    PaaS์˜ ์œ ํ˜• 2 1.ํŠน์ • SaaS ํ™˜๊ฒฝ์— ๋งž์ถฐ์ง„ PaaS โ€ข ์ž์‚ฌ์˜ SaaS ์„œ๋น„์Šค์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” API, ๊ฐœ๋ฐœ๋„๊ตฌ, ๋ฏธ๋“ค์›จ์–ด ์ œ๊ณต โ€ข ์ด ๊ธฐ๋ฐ˜์—์„œ SaaS ์ ‘๊ทผ + ์ƒˆ๋กœ์šด ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ๊ฐ€๋Šฅ โ€ข Salesforce.com์˜ Force.com : Force.com์„ ํ†ตํ•ด์„œ SFDC ์ ‘๊ทผ ๊ฐ€๋Šฅ 2. OS ํ™˜๊ฒฝ์— ๋ฌถ์—ฌ ์ œ๊ณต๋˜๋Š” PaaS โ€ข MS Azure ํ”Œ๋žซํผ : ์œˆ๋„์šฐ ํ”Œ๋žซํผ๊ณผ SQL server๋ฅผ ์ถ”์ƒํ•˜ํ•˜์—ฌ ์ œ๊ณต โ€ข AWS์˜ Beanstalk : AWS์˜ ํด๋ผ์šฐ๋“œ์—์„œ ์‰ฝ๊ฒŒ ๋ฐฐํฌํ•˜๊ณ  ๊ด€๋ฆฌ 3. Open Platform ๊ธฐ๋ฐ˜์˜ PaaS โ€ข ํŠน์ • ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์— ์ข…์†๋˜์ง€ ์•Š์€ ์˜คํ”ˆ ํ”„๋กœ์„ธ์Šค์™€ ํ™˜๊ฒฝ ์ œ๊ณต โ€ข Cloud Foundry : Pivotal ์ค‘์‹ฌ, ๋นŒ๋“œ-๋ฐฐํฌ-์šด์˜ ํ”„๋กœ์„ธ์Šค ์ง€์› โ€ข OpenShift : ๋ ˆ๋“œํ–‡ โ€ข CloudBees : ์ž๋ฐ” PaaS ํ”Œ๋žซํผ, ๋นŒ๋“œ/ํ…Œ์ŠคํŠธ/์šด์˜/๊ด€๋ฆฌ ์ง€์› โ€ข OCE(Open Cloud Engine) : ๊ตญ์‚ฐ ์†”๋ฃจ์…˜, ์ž๋ฐ” ํ‘œ์ค€ ์ค€์ˆ˜, ํ๋ธŒ๋ฆฌ๋“œ DBMS/์œ ์—”์ง„ BPMS/ํ”Œ๋ผ๋ฐ๊ณ  ๋น…๋ฐ์ดํ„ฐ ํ”Œ๋žซํผ/๋„คํŠธ๋ผ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ดํ„ฐ๋กœ ๊ตฌ์„ฑ ๋ฒค๋” ์ข…์†์„ฑ์— ๋”ฐ๋ฅธ ๋ถ„๋ฅ˜ (Forrester) <์ถœ์ฒ˜: โ€œPaaS : ํด๋ผ์šฐ๋“œ ๋„์ž… ํšจ์œจ์˜ ์™„์„ฑโ€œ, ์žฅ์ง„์˜> 15
  • 16.
  • 17.
    Benefits for Developers โ€ขIT ํ™˜๊ฒฝ์˜ ๋ณต์žก์„ฑ ์ œ๊ฑฐ ๏ƒผ ์ปดํŒŒ์ผ๋Ÿฌ, ๊ฐœ๋ฐœ๋„๊ตฌ, ๋ฐ์ดํ„ฐ๊ด€๋ฆฌ, ๋ณด์•ˆ, ๋ฏธ๋“ค์›จ์–ด ๋“ฑ์„ ์ถ”์ƒํ™”ํ•˜์—ฌ ์ œ๊ณตํ•˜๋ฏ€๋กœ ์ƒ์„ธํ•œ ์ธํ”„๋ผ๋Š” ์•Œ ํ•„์š” ์—†์Œ ๏ƒผ ๋‹ค์–‘ํ•œ ์„œ๋น„์Šค๋ฅผ ๊ธฐ๋Šฅ ํ˜•ํƒœ๋กœ ์ œ๊ณต : Versioning, Rollback, ๋ฐฐํฌ ์ž๋™ํ™”,๋ฐฑ์—…๊ณผ ๋ณต๊ตฌ ๋“ฑ โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ํŽธ์˜์„ฑ๊ณผ ์ƒ์‚ฐ์„ฑ ์ฆ๊ฐ€ ๏ƒผ ๋ช‡ ๋ถ„๋งŒ์— ์ž‘์—… ํ”„๋กœํ† ํƒ€์ž… ์ƒ์„ฑ ๊ฐ€๋Šฅ ๏ƒผ ์ƒˆ ๋ฒ„์ „์„ ๋งŒ๋“ค๊ฑฐ๋‚˜ ์ƒˆ๋กœ์šด ์ฝ”๋“œ๋ฅผ ๋ฐฐํฌํ•  ๋•Œ ๋” ๋น ๋ฅด๊ฒŒ ํ•  ์ˆ˜ ์žˆ์Œ ๏ƒผ ์„œ๋น„์Šค๋“ค์„ ์ž์ฒด ์กฐ๋ฆฝํ•˜์—ฌ ํ•˜๋‚˜์˜ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Œ โ€ข ์†์‰ฌ์šด ์„œ๋น„์Šค provisioning ๏ƒผ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ผ์ดํ”„์‚ฌ์ดํด(๊ฐœ๋ฐœ, ๋นŒ๋“œ, ํ…Œ์ŠคํŠธ, ํ˜•์ƒ๊ด€๋ฆฌ ๋“ฑ)์˜ ํ‘œ์ค€ํ™” ๏ƒ  self-service ๋˜๋Š” ์ž๋™ํ™” โ€ข IT ์ž์›์— ๋Œ€ํ•œ ์ œ์–ด๊ถŒ ๊ฐœ์„  ๏ƒผ ์ž์›์˜ ๊ณต์œ , Self-service๋ฅผ ํ†ตํ•œ ์ž์›๊ด€๋ฆฌ, ๋ถˆํ•„์š”ํ•œ ์ž์›์˜ ์ž๋™ ๋ฐ˜๋‚ฉ ๋“ฑ โ€ข ์ž์›์— ๋Œ€ํ•œ ๊ฐœ๋ฐœ๊ณผ ์šด์˜๋ฐฉ์‹์„ ๋ณ€๊ฒฝํ•จ์œผ๋กœ์จ ํ˜‘์—… ๊ฐœ์„  ๏ƒผ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค์˜ ๊ฐ€์‹œํ™” ๏ƒผ ํ˜‘์—… ๊ณต๊ฐ„์˜ ํ™•๋Œ€ โ€“ Github ๋“ฑ ์ปดํ“จํŒ…, ์Šคํ† ๋ฆฌ์ง€, ๋„คํŠธ์›Œํฌ, ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์ œ๊ณต, ๊ด€๋ฆฌ, ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋Š” ๋ฐ ์‹ ๊ฒฝ์“ฐ์ง€ ์•Š์•„๋„ ๋˜๋ฏ€๋กœ, <์ถœ์ฒ˜: โ€œPaaS : ํด๋ผ์šฐ๋“œ ๋„์ž… ํšจ์œจ์˜ ์™„์„ฑโ€œ, ์žฅ์ง„์˜> 17
  • 19.
    Open Source, CloudFoundry, HPE Helion HPE Helion is โ€ข a portfolio of open-source software and integrated systems for enterprise cloud computing. โ€ข HPE Helion is based on open-source technology, including OpenStack and Cloud Foundry. HPE Helion OpenStack โ€ข OpenStack cloud computing project์„ ์ƒ์šฉํ™”ํ•œ ๋ฒ„์ „ โ€ข HPE๊ฐ€ ํ›„์›ํ•˜๋Š” ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ์นดํƒˆ๋กœ๊ทธ์ธ Cloud28+๋Š” HPE Helion OpenStack์— ํฌํ•จ HPE Helion Stackato โ€ข Cloud Foundry๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ Platform as a Service (PaaS) ์†”๋ฃจ์…˜์œผ๋กœ OpenStack, AWS, VMWare, Azure์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅ. HPE Helion CloudSystem โ€ข HPE Helion OpenStack(IaaS) + HPE Helion Stackato(PaaS) + HPE Proliant server HPE Helion Eucalyptus โ€ข ์˜คํ”ˆ์†Œ์Šค์ธ Eucalyptus๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์„ ๊ตฌ์ถ•ํ•˜๋Š”ํ”Œ๋žซํผ์œผ๋กœ AWS์™€ ํ˜ธํ™˜ โ€ข It allows AWS applications to be moved on-premises with no modification to the workload, design patterns, or mindset. <์ถœ์ฒ˜> wikipidia 19
  • 20.
    Cloud Foundry Cloud Foundryis the industryโ€™s Open PaaS and provides a choice of clouds, frameworks, and application services.Its unique vision is to foster contributions from a broad community of developers, users,customers, partners, and ISVs while advancing development of the platform at extreme velocity. - cloudfoundry.org 20
  • 21.
    Why Cloud FoundryTechnology? Business Agility Multi-cloud deployments Industry-Standard High-quality code interoperability Stackato๋Š” ์˜คํ”ˆ์†Œ์Šค PaaS์ธ Cloud Foundry ๊ธฐ๋ฐ˜์˜ ์‚ฌ์šฉ ๋ฒ„์ „ 21
  • 22.
    Cloud Foundry์˜ ์•„ํ‚คํ…์ฒ˜โ€“ DEA Architecture ๏‚ง Platform is abstracted as a set of large-scale distributed services ๏‚ง Components are dynamically discoverable and loosely coupled ๏‚ง Use Cloud Foundry Bosh to operate the underlying infrastructure from the IaaS provider ๏‚ง Uses a dynamic router to shape and route all traffic and orchestrate load balancing ๏‚ง Droplet Execution Agents(DEAs) are responsible for the app lifecycle. ๏‚ง Health Manager monitors and maintains application uptime ๏‚ง Buildpacks detect app runtime and compile source code into executable binaries. 22
  • 23.
    Cloud Foundry์˜ ์•„ํ‚คํ…์ฒ˜โ€“ DEA Architecture Type of Services ๏‚ง Accounts for a SaaS application ๏‚ง Database on a multi-tenant server ๏‚ง DBaaS ๏ƒผ Easily provision instances ๏ƒผ Database choice is left to the developer : multiple SQL and NoSQL options ๏ƒผ Minimal configuration required How it Works ๏‚ง ์„œ๋น„์Šค๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด ํ•ด๋‹น ์„œ๋น„์Šค์˜ ์ธ์Šคํ„ด์Šค๊ฐ€ ์ œ๊ณต๋จ ๏‚ง service broker๊ฐ€ CF์™€ ํ•ด๋‹น ์„œ๋น„์Šค ์‚ฌ์ด์˜ ํ†ต์‹ ์„ ์ฒ˜๋ฆฌ ๏‚ง Service processes๋Š” Service Nodes์—์„œ ์‹คํ–‰๋˜๊ฑฐ๋‚˜ ์™ธ๋ถ€์˜ as-a-service providers์™€ ํ•จ๊ป˜ ์‹คํ–‰๋จ ์ฃผ์˜์‚ฌํ•ญ ๏‚ง Avoid writing to the local file system ๏ƒผ Files disappear after app restart ๏ƒผ Instances of same app do not share LFS ๏‚ง Session data should be stored in CF service ๏‚ง Design as if app can be restarted, destroyed, start at any time. 23
  • 24.
    A u s t i n C l o u d F o u n d r y P a a S M e e t u p 2 / 2 4 / 1 5 Component How ItWorks Responsible for Router โ€ข ๋ชจ๋“  ์™ธ๋ถ€ ์‹œ์Šคํ…œ ํŠธ๋ž˜ํ”ฝ(HTTP/API)๊ณผ ์ธํ„ฐ๋„ท/์ธํŠธ๋ผ๋„ท ์—์„œ ๋“ค์–ด์˜ค๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ํŠธ๋ž˜ํ”ฝ์„ Cloud Controller ๋‚˜ Diego Cell์—์„œ ์‹คํ–‰๋˜๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋ฐฐ๋ถ„ โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‹คํ–‰๋˜๋Š” cell๊ณผ container๋ฅผ ํ™•์ธํ•˜๊ธฐ ์œ„ ํ•ด ์ฃผ๊ธฐ์ ์œผ๋กœ BBS๋ฅผ ์ฟผ๋ฆฌ ๏ƒ  ๊ฐ cell์˜ VM์˜ IP ์ฃผ์†Œ์™€ cell container์˜ host-side port ๋ฒˆํ˜ธ๋ฅผ ๊ฐ€์ง€๊ณ  ๋ผ์šฐํŒ… ํ…Œ์ด ๋ธ” ๊ฐฑ์‹  โ€ข Load balancing โ€ข Maintaining an active routing table โ€ข Access logs โ€ข Supports web-sockets Cloud Controller โ€ข The Cloud Controller maintains command and control systems, including interface with clients (CLI, Web UI, Spring STS), account and provisioning control. โ€ข It also provides RESTful interface to domain objects (apps, services, organizations, spaces, service instances, user roles, and more). โ€ข Expected App state, state transitions, and desired convergence โ€ข Permissions/Auth Orgs/Spaces/ Users โ€ข Services management โ€ข App placement & deployment โ€ข Auditing/Journaling and billing events โ€ข orgs, spaces, user roles, service ๋“ฑ์˜ ๊ธฐ๋ก Health Manager โ€ข Health Manager monitors application uptime by listening to the NATS message bus for mismatched application states (expected vs. actual). โ€ข The Cloud Controller publishes expected state and the DEAs publish actual state. โ€ข State mismatches are reported to the Cloud Controller. โ€ข Maintains the actual state of apps โ€ข Compares to expected state โ€ข Sends suggestions to make actual match expected (cannot make state changes itself โ€“ only CC can do that!) 24
  • 25.
    A u s t i n C l o u d F o u n d r y P a a S M e e t u p 2 / 2 4 / 1 5 Component How ItWorks Responsible for UAA & Login Servers โ€ข ID ๊ด€๋ฆฌ : ID, ๋ณด์•ˆ, ๊ถŒํ•œ๋ถ€์—ฌ ์„œ๋น„์Šค โ€ข party Oauth ๊ด€๋ฆฌ โ€ข ๊ตฌ์„ฑ ํ•ญ๋ชฉ : UAA Server, Command Line Interface, Library. โ€ข Token Server โ€ข ID Server (User management) โ€ข OAuth Scopes (Groups) and SCIM โ€ข Login Server ๏ƒผ UAA Database ๏ƒผ VMware SSO Appliance๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ SAML๊ณผ Active Directory ์ง€์› โ€ข Access auditing DEA โ€ข โ€œDroplet Execution Agentsโ€๋Š” ์•ˆ์ „ํ•˜๊ณ  ์™„๋ฒฝํžˆ ๊ฒฉ๋ฆฌ๋œ ์ปจํ…Œ์ด๋„ˆ โ€ข DEAs๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ผ์ดํ”„์‚ฌ์ดํด ๋‹ด๋‹น: building, starting and stopping Apps as instructed. โ€ข They periodically broadcast messages about their state via the NATS message bus. โ€ข Managing Linux containers (Warden) โ€ข Monitoring resource pools : Process, File system, Network, Memory โ€ข Managing app lifecycle โ€ข App log and file streaming โ€ข DEA heartbeats (NATS to CC, HM) Warden โ€ข Low-level manager and API protocol on each VM for creating, configuring, destroying, monitoring, and addressing application containers โ€ข Linux ์ „์šฉ Blobstore โ€ข ๋Œ€์šฉ๋Ÿ‰ binary ํŒŒ์ผ ์ €์žฅ์†Œ โ€ข ๋‚ด๋ถ€ ์„œ๋ฒ„๋‚˜ ์™ธ๋ถ€์˜ S3 ๋“ฑ์—๋„ ์„ค์ • ๊ฐ€๋Šฅ ์ €์žฅ ๋Œ€์ƒ ํŒŒ์ผ โ€ข Application code packages โ€ข Buildpacks โ€ข Droplets 25
  • 26.
    A u s t i n C l o u d F o u n d r y P a a S M e e t u p 2 / 2 4 / 1 5 Component How ItWorks Responsible for Service Broker โ€ข Service Brokers provide an interface for native and external 3rd party services. โ€ข Service processes run on Service Nodes or with external as-a-service providers (e.g., email, database, messaging, etc.). โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ฑฐ๋‚˜ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ๊ฒฐ ํ•ฉํ•  ๋•Œ ์„œ๋น„์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์ œ๊ณต โ€ข Advertising service catalog. โ€ข Makes create/delete/bind/ unbind calls to service nodes. โ€ข Requests inventory of existing instances and bindings from cloud controller for caching, orphan management. โ€ข SaaS marketplace gateway. โ€ข Implemented as HTTP enpoint, written in any language. BuildPacks* โ€ข Buildpacks are Ruby scripts that detect application runtimes/frameworks/plugins, compile the source code into executable binaries, and release the app to an assigned DEA. โ€ข Runtime components can be cached for faster execution of subsequent app pushes. โ€ข Staging* ๏ƒผ /bin/detect ๏ƒผ /bin/compile ๏ƒผ /bin/release โ€ข Configuredroplet ๏ƒผ Runtime (Ruby/Java/Node/ Python) ๏ƒผ Container (Tomcat/Liberty/ Jetty) ๏ƒผ Application (.WAR, .rb, .js, .py) UPSI โ€ข User Provided Service Instances (์ด์ „์˜ โ€œService Connectorsโ€) โ€ข CF๊ฐ€ ์ž์‹ ์ด ๊ด€๋ฆฌํ•˜์ง€ ์•Š๋Š” ๋กœ์ปฌ ์„œ๋น„์Šค(์˜ˆ, Oracle DB, DB2, SQL Server ๋“ฑ)์— ์ ‘์†ํ•  ์ˆ˜ ์žˆ๋„๋ก Service Broker์— ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ ์ €์žฅ โ€ข Metadata management 26
  • 27.
    A u s t i n C l o u d F o u n d r y P a a S M e e t u p 2 / 2 4 / 1 5 Component How ItWorks Responsible for NATS Message Bus โ€ข a lightweight publish-subscribe and distributed queueing messaging system, for internal communication between components. โ€ข ๋‚ด๋ถ€ ์ปดํฌ์ปจํŠธ๋“ค๊ฐ„์˜ ํ†ต์‹  Metrics Collector โ€ข ๊ฐ ์ปดํฌ๋„ŒํŠธ์—์„œ ์ธก์ •์ง€ํ‘œ์™€ ํ†ต๊ณ„์น˜๋ฅผ ์ทจํ•ฉ ๏ƒ  CF ๋ฐฐํฌ ์‚ฌํ•ญ ๋ชจ๋‹ˆํ„ฐ๋ง Loggregator (Log aggregator) โ€ข streams application logs to developers โ€ข ๋กœ๊ทธ ์ˆ˜์ง‘ (*)Cloud Foundry Buildpacks are compatible with Heroku 27
  • 29.
    The platform forthe agile enterprise โ€ข โ€ข โ€ข โ€ข โ€ข โ€ข โ€ข HPE Helion Stackato 29
  • 30.
    HPE Helion์˜ Values์™€Strategy Consistency Confidence Choice โ€œThe right solution for your cloud journeyโ€ โ€ข Common platform across hybrid environment โ€ข Best-in-class portfolio of solutions & services โ€œA trusted partner who knows your businessโ€ โ€ข Enterprise & open source heritage โ€ข One hand to shake โ€“ HPE One Stop Shop โ€ข Recognized leader in hybrid cloud โ€œThe cloud your wayโ€ โ€ข No vendor lock-in, open, standards-based โ€ข Multiple delivery models โ€ข Heterogeneous Open Enterprise grade Hybrid 30
  • 31.
  • 32.
    HPE Helion Stackato์ด์ „์˜ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐฐํฌ Development IT/Ops Staging Testing Production 32
  • 33.
    HPE Helion Stackato์ดํ›„์˜ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐฐํฌ 33
  • 34.
    How it works:HPE Helion Stackato Architecture HPE Helion Stackato 34
  • 35.
    HPE Helion Stackatoโ€“ Cloud Foundryโ„ข HPE Helion Development Platform: Architecture v2.0 35
  • 36.
    HPE Helion Stackato ๋‹ค์Œ๊ณผ๊ฐ™์€ 5๊ฐœ์˜ ํ”Œ๋žซํผ ์„œ๋น„์Šค๋กœ ๊ตฌ์„ฑ๋จ 1. Helion Control Plane (HCP): The underlying core Platform Service that HPE Helion Stackato uses to manage service lifecycles and communicate with the underlying cloud Providers ( IaaS ). 2. Helion Service Manager (HSM): A service that provides repository of services that can be used by applications. 3. Helion Cloud Foundry (HCF): A Cloud Foundry certified elastic runtime that simplifies cloud native application development and hosting. 4. Helion Code Engine (HCE): A continuous delivery service that integrates with public or private Git repositories. HCE is a flexible and extensible Continuous Integration/ Continuous Development (CI/CD) pipeline. 5. HPE Helion Stackato Console (HSC): A web interface used to manage HCF and HCE features. Helion Control Plane Stackato Web console Code Engine Cloud Foundry Service Manager Developer Platform Services Admin โ€œHPE Helion Stackato is platform for deploying and hosting Cloud-Native applications and managing application services.โ€ 36
  • 37.
    HPE Stackato :Control Plane Helion Control Plane(HCP) Stackato Web console(HSC) Code Engine(HCE) Cloud Foundry (HCF) Service Manager (HSM) Developer Platform Services Admin 37 ๏ƒผ currently a debian package. ๏ƒผ lays down the foundation on how Stackato talks to underlying foundation on top of infrastructure. The way it talk to underlying IaaS is through Terraform providers that we programmatically control. This provides us ability to create and stand up environment. With that we are running container host. Ubuntu 14.04 ๏ƒผ once Ubuntu host is up, we bring up the service lifecycle manager that manages life cycle of containers. The under-pinning is Kubernetes. ๏ƒผ Operator and customer do not see that and is abstracted away for them. ๏ƒผ Everything that we host and run at the bottom layer is manifested container and it is managed through Kubernetes
  • 38.
    HPE Stackato CI/CD:Helion Code Engine Helion Control Plane(HCP) Stackato Web console(HSC) Code Engine(HCE) (CI/CD) Cloud Foundry (HCF) Service Manager (HSM) Developer Platform Services Admin 38 โ€ข Code Engine์€ CI/CD pipeline ๏ƒผ changed the engine underneath โ€“ Concourse engine ๏ƒผ It is workflow engine โ€“ workflow of containers ๏ƒผ cool thing about โ€“ we support all the language that are in cloud foundry ๏ƒผ implemented as build containers โ€“ adding laungages/runtime
  • 39.
    HPE Stackato CI/CD:Helion Code Engine
  • 40.
    HPE Stackato Runtimes:Helion Cloud Foundry Helion Control Plane(HCP) Stackato Web console(HSC) Code Engine(HCE) (CI/CD) Cloud Foundry (HCF) Service Manager (HSM) Developer Platform Services Admin 40 DEVLOPE MANAGE RUN โ€ข Stackato was derivative โ€“ first commercial product to make enterprise grade โ€ข Build with community or build as extension ๏ƒผ It provides standard capabilities that CF core provides ๏ƒผ Polyglot environment based around buildpack ๏ƒผ Same buildpack structure shows up in code engine as part of builder containers in pipeline
  • 41.
    HPE Stackato :Service Management Helion Control Plane(HCP) Stackato Web console(HSC) Code Engine(HCE) (CI/CD) Cloud Foundry (HCF) Universa lService Broker Service Manager (HSM) HPESW services Developer Platform Services Admin 41 Universal Service Broker Service Manager Connect to
  • 42.
    HPE Stackato :Web Console Helion Control Plane(HCP) Stackato Web console(HSC) Code Engine(HCE) (CI/CD) Cloud Foundry (HCF) Service Manager (HSM) Developer Platform Services Admin 42 Single user experience
  • 43.
  • 44.
  • 45.
  • 46.
    Cloud Foundry์™€์˜ ์ฐจ๋ณ„์„ฑ HPEHelion Stackato์€ ๊ด€๋ฆฌ์ž์šฉ ํ™”๋ฉด์„ ์ œ๊ณต โ€“ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ฐฐํฌ์™€ ๊ด€๋ฆฌ๋ฅผ ์‰ฝ๊ฒŒ ํ•จ CF is command line only HPE Helion Stackato๋Š” Docker container ๊ธฐ์ˆ ์„ ์ด์šฉํ•˜์—ฌ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰(launch) Additional application runtimes and services Native .NET support, PHP, Python, Perl ๊ฐ€๊ฒฉ์ •์ฑ… ๋ชจ๋ธ์— ๊ธฐ์ˆ ์ง€์›์ด ํฌํ•จ๋จ World-class, global technical support available to help with deployment & configuration. ์‰ฌ์šด ์„ค์น˜์™€ ์„ค์ •(Easy setup & install) 100% BOSH free, so setting up & keep running HPE Helion Stackato is easy and fast HPE Helion Stackato๋Š” Cloud Foundry์˜ trunk version์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•จ HPE is committed to driving enterprise features back to the community (see our recent .NET support announcement). 48
  • 47.
  • 48.
    Why HPE HelionStackato? 50
  • 49.
    ํƒ€ ์†”๋ฃจ์…˜๊ณผ์˜ ์ฐจ๋ณ„์  PivotalCloud Foundry โ€ข Lacks OpenStack support Messaging and Database Services not supported on OpenStack, installing PCF on OpenStack requires proserv engagement โ€ข More complicated installation technology than HPE BOSH can take weeks to learn and be overly cumbersome for admins, HP uses python fabric scripts which are hidden behind a simple wizard โ€ข Licenses are very expensive, compare with HPE Helion TCO Pivotal counts number of app instances/containers per deployment, starting price is $250k* IBM Bluemix โ€ข Despite many services being available, most have โ€œbeta, do not use for productionโ€ label For enterprises, this means theyโ€™ll need to role their own backing services if using Bluemix โ€ข No real on-premises offering โ€“ Bluemix Local still a paper product Outside of VMDK images that run on VMware, pro-serv required โ€ข Bluemix Local does not include majority of services available w/ Bluemix public cloud offering Enterprises needing apps to run on-premises will need to roll their own RedHat OpenShift โ€ข Lacks community momentum as an open source project, driven by RedHat only โ€ข Leave lifecycle management of backing services like DBaaS and MSGaaS to cloud operators, increasing TCO
  • 51.
    [์ฒจ๋ถ€#1] Next GenerationIT Infrastructure <์ถœ์ฒ˜> http://tentenet.net/2013/05/29/the-5th-tenet-of-open-hybrid-cloud-start-with-an-iaas-private-cloud/ 53 Management PaaS Business / Consumer IaaS Cloud Brokering Physical Resources Virtual Resources Public Cloud Resources Public Cloud Resources Public Cloud Resources
  • 52.
    [์ฒจ๋ถ€#2] Cloud FoundryFoundation Mission : โ€ข to establish and sustain Cloud Foundry as the global industry standard open source PaaS technology with a thriving ecosystem. โ€ข To deliver continuous quality, value and innovation to users, operators and providers of Cloud Foundry technology. โ€ข To provide a vibrant agile experience for the community's contributors that delivers the highest quality cloud-native applications and software, at high velocity with global scale. Its guiding principles are: โ€ข Governance By Contribution - Influence within the Foundation is based on contributions. โ€ข IP Hygiene - IP cleanliness must be preserved at all times. โ€ข Equal Opportunity To Participate - Everyone has an equal opportunity to participate in projects. โ€ข No Surprises - Planning processes and project status are open to all. 54
  • 53.
    [์ฒจ๋ถ€#3] Cloud Foundry์˜์•„ํ‚คํ…์ฒ˜ 4.0 โ€“ Diego Architecture ๏‚ง an open source, multi cloud application platform as a service (PaaS) governed by the Cloud Foundry Foundation ๏‚ง ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ธฐ๋Šฅ ์˜์—ญ์œผ๋กœ ๊ตฌ์„ฑ ๏ƒผ Routing ๏ƒผ Authentication ๏ƒผ Application Lifecycle ๏ƒผ Application Storage & Execution ๏ƒผ Services ๏ƒผ Messaging ๏ƒผ Metrics & Logging 55
  • 54.
    [์ฒจ๋ถ€#3] A u s t i n C l o u d F o u n d r y P a a S M e e t u p 2 / 2 4 / 1 5 Component How ItWorks Responsible for Router โ€ข ๋ชจ๋“  ์™ธ๋ถ€ ์‹œ์Šคํ…œ ํŠธ๋ž˜ํ”ฝ(HTTP/API)๊ณผ ์ธํ„ฐ๋„ท/์ธํŠธ๋ผ๋„ท ์—์„œ ๋“ค์–ด์˜ค๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ํŠธ๋ž˜ํ”ฝ์„ Cloud Controller ๋‚˜ Diego Cell์—์„œ ์‹คํ–‰๋˜๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋ฐฐ๋ถ„ โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‹คํ–‰๋˜๋Š” cell๊ณผ container๋ฅผ ํ™•์ธํ•˜๊ธฐ ์œ„ ํ•ด ์ฃผ๊ธฐ์ ์œผ๋กœ BBS๋ฅผ ์ฟผ๋ฆฌ ๏ƒ  ๊ฐ cell์˜ VM์˜ IP ์ฃผ์†Œ์™€ cell container์˜ host-side port ๋ฒˆํ˜ธ๋ฅผ ๊ฐ€์ง€๊ณ  ๋ผ์šฐํŒ… ํ…Œ์ด ๋ธ” ๊ฐฑ์‹  โ€ข Load balancing โ€ข Maintaining an active routing table โ€ข Access logs โ€ข Supports web-sockets Cloud Controller โ€ข The Cloud Controller maintains command and control systems, including interface with clients (CLI, Web UI, Spring STS), account and provisioning control. โ€ข It also provides RESTful interface to domain objects (apps, services, organizations, spaces, service instances, user roles, and more). โ€ข Expected App state, state transitions, and desired convergence โ€ข Permissions/Auth Orgs/Spaces/ Users โ€ข Services management โ€ข App placement & deployment โ€ข Auditing/Journaling and billing events โ€ข orgs, spaces, user roles, service ๋“ฑ์˜ ๊ธฐ๋ก Diego Brain โ€ข ๊ฐœ๋ณ„ Diego Cell์„ ์กฐ์ •ํ•˜์—ฌ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ CF์— ๋“ฑ๋กํ•˜๋ ค๋ฉด ๋จผ์ € CC๋ฅผ ๋ชฉํ‘œ๋กœ ํ•˜ ๊ณ , CC๋Š” CC-Bridge๋ฅผ ํ†ตํ•ด Diego Brain์— ์–ดํ”Œ๋ฆฌ์ผ€์ด ์…˜ ์‹คํ–‰์„ ํ†ต์ œ โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰ Garden โ€ข Low-level manager and API protocol on each VM for creating, configuring, destroying, monitoring, and addressing application containers 56
  • 55.
    [์ฒจ๋ถ€#3] A u s t i n C l o u d F o u n d r y P a a S M e e t u p 2 / 2 4 / 1 5 Component How ItWorks Responsible for UAA & Login Servers โ€ข ID ๊ด€๋ฆฌ : ID, ๋ณด์•ˆ, ๊ถŒํ•œ๋ถ€์—ฌ ์„œ๋น„์Šค โ€ข party Oauth ๊ด€๋ฆฌ โ€ข ๊ตฌ์„ฑ ํ•ญ๋ชฉ : UAA Server, Command Line Interface, Library. โ€ข Token Server โ€ข ID Server (User management) โ€ข OAuth Scopes (Groups) and SCIM โ€ข Login Server ๏ƒผ UAA Database ๏ƒผ VMware SSO Appliance๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ SAML๊ณผ Active Directory ์ง€์› โ€ข Access auditing nsync, BBS, Cell Rep โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰ ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ํ•จ๊ป˜ ์—ฐ๊ฒฐ๋˜์–ด ์ž‘๋™ โ€ข ํ•œ์ชฝ ๋์€ ์‚ฌ์šฉ์ž๊ณ  ๋‹ค๋ฅธ ํ•œ์ชฝ ๋์€ ๋ถ„์‚ฐ๋œ VM์—์„œ ์‹คํ–‰๋˜๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ธ์Šคํ„ด์Šค โ€ข nsync ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ™•์žฅ์‹œ CC์—์„œ ๋ฉ”์‹œ์ง€๋ฅผ ๋ฐ›์•„์„œ Diego BBS db์— ์ธ์Šคํ„ด์ˆ˜ ๊ฐœ์ˆ˜ ๊ธฐ๋ก โ€ข BBS : ์ปจ๋ฒ„์ „์Šค ํ”„๋กœ์„ธ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋‹ˆํ„ฐ๋ง, ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ธ์Šคํ„ด์Šค๋ฅผ ์‹คํ–‰ ๋˜๋Š” ์ข…๋ฃŒ โ€ข Cell Rep ์ปจํ…Œ์ด๋„ˆ ๋ชจ๋‹ˆํ„ฐ๋ง Blobstore โ€ข ๋Œ€์šฉ๋Ÿ‰ binary ํŒŒ์ผ ์ €์žฅ์†Œ โ€ข ๋‚ด๋ถ€ ์„œ๋ฒ„๋‚˜ ์™ธ๋ถ€์˜ S3 ๋“ฑ์—๋„ ์„ค์ • ๊ฐ€๋Šฅ ์ €์žฅ ๋Œ€์ƒ ํŒŒ์ผ โ€ข Application code packages โ€ข Buildpacks โ€ข Droplets Diego Cell โ€ข ์•ฑ ์ƒํƒœ์™€ ๊ธฐํƒ€ ๋ฐ์ดํ„ฐ๋ฅผ BBS์™€ Lggregator์— ์ „๋‹ฌ โ€ข Diego CF ์•„ํ‚คํ…์ฒ˜ ์ด์ „์—๋Š” DEA node๊ฐ€ VM์— ์˜ฌ๋ผ ์žˆ๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์ปจํ…Œ์ด๋„ˆ ๊ด€๋ฆฌ โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์‹คํ–‰๊ณผ ์ข…๋ฃŒ โ€ข VM์˜ ์ปจํ…Œ์ด๋„ˆ ๊ด€๋ฆฌ Loggregator (Log aggregator) โ€ข streams application logs to developers 57
  • 56.
    [์ฒจ๋ถ€#3] A u s t i n C l o u d F o u n d r y P a a S M e e t u p 2 / 2 4 / 1 5 Component How ItWorks Responsible for Service Broker โ€ข Service Brokers provide an interface for native and external 3rd party services. โ€ข Service processes run on Service Nodes or with external as-a-service providers (e.g., email, database, messaging, etc.). โ€ข ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ฑฐ๋‚˜ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ๊ฒฐ ํ•ฉํ•  ๋•Œ ์„œ๋น„์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์ œ๊ณต โ€ข Advertising service catalog. โ€ข Makes create/delete/bind/ unbind calls to service nodes. โ€ข Requests inventory of existing instances and bindings from cloud controller for caching, orphan management. โ€ข SaaS marketplace gateway. โ€ข Implemented as HTTP enpoint, written in any language. Consul and BBS VM์€ HTTP๋‚˜ HTTPS๋ฅผ ํ†ตํ•ด ์„œ๋กœ ํ†ต์‹ ํ•˜๊ณ , ์ž„์‹œ ๋ฉ”์‹œ์ง€๋ฅผ ๊ณต์œ ํ•˜๊ณ , ์•„๋ž˜ ๋‘ ๊ตฐ๋ฐ์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅ โ€ข Consul server : ์˜ค๋ž˜๊ฐ€๋Š” ์ œ์–ด ๋ฐ์ดํ„ฐ ์ €์žฅ(์ปดํฌ๋„ŒํŠธ์˜ IP ์ฃผ์†Œ๋‚˜ distributed locks ๋“ฑ) โ€ข BBS : ์ž์ฃผ ๋ณ€๊ฒฝ๋˜๊ฑฐ๋‚˜ ํ•œ ๋ฒˆ ์‚ฌ์šฉํ•˜๊ณ  ๋ฒ„๋ฆฌ๋Š” ๋ฐ์ดํ„ฐ ์ €์žฅ(์˜ˆ, cell๊ณผ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ƒํƒœ, ํ• ๋‹น๋˜์ง€ ์•Š์€ ์ž‘์—…, ํ™•์ธ ๋ฉ”์‹œ์ง€ ๋“ฑ) ๋˜๋Š” MySQL์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ ์ €์žฅ route-emitter๋Š” NATS ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ตœ์‹  ๋ผ์šฐํŒ… ํ…Œ์ด๋ธ”์„ router์— ์ „๋‹ฌ(โ€ป Diego ์ด์ „์˜ CF ์•„ํ‚คํ…์ฒ˜์—์„œ๋Š” NATS Message Bus๊ฐ€ ๋ชจ๋“  ๋‚ด๋ถ€ ํ†ต์‹  ์ˆ˜ํ–‰) โ€ข Non-Persistent messaging โ€ข Pub/Sub โ€ข Queues (app events) โ€ข Directed messages (INBOX) โ€ข ๋ฐ์ดํ„ฐ ์ €์žฅ Metrics Collector โ€ข ๊ฐ ์ปดํฌ๋„ŒํŠธ์—์„œ ์ธก์ •์ง€ํ‘œ์™€ ํ†ต๊ณ„์น˜๋ฅผ ์ทจํ•ฉ ๏ƒ  CF ๋ฐฐํฌ ์‚ฌ ํ•ญ ๋ชจ๋‹ˆํ„ฐ๋ง 58
  • 57.
    [์ฒจ๋ถ€#4] DEA /Diego Differences Summary DEA architecture Diego architecture Function ฮ” notes Ruby Go Source code language DEA Diego Brain High-level coordinator that allocates processes to containers in application VMs and keeps them running DEA is part of the Cloud Controller. Diego is outside the Cloud Controller. DEA Node Diego Cell Mid-level manager on each VM that runs apps as directed and communicates โ€œheartbeatโ€, application status and container location, and other messages Runs on each VM that hosts apps, as opposed to special-purpose component VMs. Warden Garden Low-level manager and API protocol on each VM for creating, configuring, destroying, monitoring, and addressing application containers Warden is Linux-only. Garden uses platform-specific Garden-backends to run on multiple OS. DEA Placement Algorithm Diego Auction ํ”„๋กœ์„ธ์Šค๋ฅผ VM์— ํ• ๋‹นํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ Diego Auction distinguishes between Task and Long-Running Process (LRP) job types Health Manager (HM9000) nSync, BBS, and Cell Reps System that monitors application instances and keeps instance counts in sync with the number that should be running nSync syncs between Cloud Controller and Diego, BBS syncs within Diego, and Cell Reps sync between cells and the Diego BBS. NATS Message Bus Bulletin Board System (BBS) and Consul via http/s, and NATS ๋‚ด๋ถ€ ์ปดํฌ๋„ŒํŠธ ๊ฐ„์˜ ํ†ต์‹  BBS stores most runtime data; Consul stores control data. 59
  • 58.
    [์ฒจ๋ถ€#5] Customer UseCases Developer use cases โ€ข on demand access to resources they need to develop application using programming languages they are familiar with โ€ข use an integrated CI/CD system (Helion Code Engine) to ensure application quality and rapid deployment โ€ข deploy cloud native applications natively or via Docker containers (source code, binary or container) โ€ข create and manage cloud native applications via a single integrated experience โ€ข extend cloud native apps with integrated platform services, HPE SW services, and third party services or existing enterprise services โ€ข use tools, extensions and CLIs to enhance the development experience IT Operations use cases โ€ข the HPE Helion Stackato solution is a cloud app platform that helps IT operations meet the requirements of resiliency and SLAs; the platform can run in private cloud environments, which helps IT meet regulatory requirements that would otherwise stop developers to deploying to infrastructures such as AWS โ€ข manage HPE Helion Stackato service lifecycles (e.g. user management, monitoring, update, etc.) โ€ข seamlessly update and manage HPE Helion Stackato โ€ข The Universal Service Broker makes it simpler to connect and manage applications deployed across many infrastructures HPE Private & Confidential 60
  • 59.
    โ€ข Deploy newcloud-native apps on HPE Helion Stackato & get the benefits of elasticity, resource utilization, developer & deployment experience. Use HPE Helion Stackato to address apps that are customer facing, with reqs in flux, utilization patterns are variable, need to span multiple platforms & form factors - such as marketing websites, mobile apps, web apps, etc. โ€ข Deploy on any cloud โ€“ customers searching for business agility & the flexibility to deploy on any infrastructure with a consistent experience for developers can purchase HPE Helion Stackato, and deploy your applications on any infrastructure as a service (AWS, Azure, VMware, etc.). This enables IT to be flexible around business/cost needs, while still maintaining visibility & compliance. โ€ข Deploy applications that connect to traditional/legacy systems โ€“ we help enterprises merge the old and new by enabling connections to traditional databases or services, in addition to access to the latest technologies for developing applications. HPE Private & Confidential [์ฒจ๋ถ€#5] Customer Use Cases 61