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

  • Catalog API : ์˜จ๋ผ์ธ ์Šคํ† ์–ด์˜ ๋ชจ๋“  ์•„์ดํ…œ์— ๋Œ€ํ•œ ๋ฐฑ์—”๋“œ RESTful API. ์ด Node.js ์•ฑ์€ Express๋กœ ๋งŒ๋“ค์–ด์ ธ ์žˆ์œผ๋ฉฐ IBM Cloudantยฎ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์•„์ดํ…œ ์นดํƒˆ๋กœ๊ทธ๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
  • Order API : ์˜จ๋ผ์ธ ์Šคํ† ์–ด์˜ ๋ชจ๋“  ์ฃผ๋ฌธ์— ๋Œ€ํ•œ ๋ฐฑ์—”๋“œ RESTful API. ์ด Node.js ์•ฑ์€ IBM SQL Database for Bluemix๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ฃผ๋ฌธ์„ SQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
  • UI : ๊ฐ„๋‹จํ•œ UI๋กœ ์˜จ๋ผ์ธ ์Šคํ† ์–ด ์นดํƒˆ๋กœ๊ทธ์˜ ๋ชจ๋“  ์•„์ดํ…œ์„ ํ‘œ์‹œํ•˜๊ณ , ์ฃผ๋ฌธ๋„ ์ž‘์„ฑํ•˜๋Š”๋ฐ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด PHP UI๋Š” ์œ„์˜ ๋‘ ๊ฐ€์ง€ REST API๋ฅผ ๋ชจ๋‘ ํ˜ธ์ถœํ•ฉ๋‹ˆ๋‹ค.

๊ฐ๊ฐ์˜ ๋งˆ์ดํฌ๋กœ ์„œ๋น„์Šค๋Š” ๊ฐœ๋ฐœ(development), ํ…Œ์ŠคํŠธ(test) ๋ฐ ์šด์˜(production)์˜ ์„ธ ๊ฐ€์ง€ ํ™˜๊ฒฝ์œผ๋กœ ๋ฐฐํฌ๋˜๋ฉฐ, ํŠœํ† ๋ฆฌ์–ผ ๋งˆ์ง€๋ง‰์—” 9 ๊ฐœ์˜ ๋ฐฐํฌ ๋œ ์•ฑ์„ ๊ฐ–๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ์ ์œผ๋กœ ํˆด์ฒด์ธ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํˆด์ฒด์ธ ํ†ตํ•ฉ์ด ๊ฐ™์ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

  • ์„ธ ๊ฐœ์˜ GitHub ์ €์žฅ์†Œ (repos). ๊ทธ ์ค‘ ํ•˜๋‚˜๋งŒ GitHub ์ด์Šˆ (issue)๊ฐ€ ํ™œ์„ฑํ™”๋˜๋ฉฐ, ์ด ์ƒ˜ํ”Œ์—์„œ๋Š” ์ด์Šˆ๊ฐ€ ๋ชจ๋“  ์ €์žฅ์†Œ์—์„œ ๊ณต์œ ๋ฉ๋‹ˆ๋‹ค. ๋งˆ์ดํฌ๋กœ ์„œ๋น„์Šค๋“ค์€ ๊ฐ๊ฐ ํ•˜๋‚˜์”ฉ์˜ GitHub ์ €์žฅ์†Œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ฐ GitHub ์ €์žฅ์†Œ๋งˆ๋‹ค 3 ๊ฐœ์˜ Delivery ํŒŒ์ดํ”„ ๋ผ์ธ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ํŒŒ์ดํ”„ ๋ผ์ธ์€ ๋…๋ฆฝ์ ์ด๋ฉฐ ๋ณ‘๋ ฌ๋กœ ์‹คํ–‰๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • Eclipse Orion ์›น IDE. ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ฝ”๋“œ๋ฅผ ํŽธ์ง‘ํ•˜๊ณ  ํŒŒ์ดํ”„ ๋ผ์ธ์„ ์‚ฌ์šฉํ•œ ๋ฐฐํฌ๋ฅผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • Sauce Labs : OS์™€ ๋ธŒ๋ผ์šฐ์ €์— ๋Œ€ํ•œ ๊ธฐ๋Šฅ ํ…Œ์ŠคํŠธ๋ฅผ ์ž๋™ํ™”ํ•ฉ๋‹ˆ๋‹ค.
  • PagerDuty : ์‹ฌ๊ฐํ•œ ์‚ฌ๊ฑด์— ๋Œ€ํ•ด ์šด์˜ ํŒ€์— ์•Œ๋ฆฝ๋‹ˆ๋‹ค.
  • Slack : ๋นŒ๋“œ ๋ฐ ๋ฐฐํฌ ์ƒํƒœ์— ๋Œ€ํ•œ ์‹ค์‹œ๊ฐ„ ์•Œ๋ฆผ์„ ์–ป๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํˆด์ฒด์ธ์ด ๊ตฌ์„ฑ๋˜๊ณ  3๊ฐœ์˜ ์•ฑ์ด ๋ฐฐํฌ๋˜๊ณ  ๋‚˜๋ฉด, ์—ฌ๋Ÿฌ๋ถ„์€ ์•„๋ž˜์™€ ๊ฐ™์€ ์ผ์ƒ์  ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

  • ๋นŒ๋“œ ๋ฐ ๋ฐฐํฌ ํ™œ๋™์„ ๋ณด๊ณ , ๋„๊ตฌ ์ฒด์ธ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค๋ฅผ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
  • ์ƒˆ๋กœ์šด ๋ฌธ์ œ๋ฅผ GitHub ์ด์Šˆ์— ์ œ์ถœํ•˜๊ณ , GitHub ์ด์Šˆ์˜ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋„๋ก ์•ฑ์˜ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ • ํ•œ ๋‹ค์Œ, ์—…๋ฐ์ดํŠธ ๋œ ์ฝ”๋“œ๋ฅผ pushํ•˜์—ฌ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ž๋™์œผ๋กœ ๋นŒ๋“œํ•˜๊ณ  ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค.
  • ๋ณด๊ณ  ๋œ ์˜ค๋ฅ˜์˜ ๊ทผ๋ณธ์ ์ธ ์›์ธ์„ ๋ณด๊ณ  ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
  • ์ถ”๊ฐ€์ ์ธ ํˆด์ฒด์ธ ํ†ตํ•ฉ์„ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค
  • ๋งˆ์ง€๋ง‰์œผ๋กœ ๋นŒ๋“œ ๋ฐ ๋ฐฐํฌ๋ฅผ ๋ถ„์„ํ•˜๋Š”๋ฐ ๋„์›€์„ ๋ฐ›๊ธฐ ์œ„ํ•ด DevOps Insights๋กœ ๋ถ€ํ„ฐ ๋ฐ›์€ ์ •๋ณด๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

์ค€๋น„์‚ฌํ•ญ

  • ํˆด์ฒด์ธ์€ Bluemix์—์„œ ์ œ์ž‘ ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— Bluemix ๊ณ„์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. Bluemix ๊ณ„์ •์ด ์—†๋‹ค๋ฉด ํˆด์ฒด์ธ ์ƒ์„ฑ์„ ํด๋ฆญํ•˜๋ฉด ๊ณ„์ •์„ ๋งŒ๋“ค์ง€ ๋ฌป๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ Bluemix ๊ณ„์ •์— ์ ์–ด๋„ ํ•˜๋‚˜์˜ ์กฐ์ง์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
  • Bluemix ํˆด์ฒด์ธ์„ ์ฒ˜์Œ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ์กฐ์ง์—์„œ ํˆด ์ฒด์ธ์„ ํ™œ์„ฑํ™”ํ•˜๋ผ๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ํ‘œ์‹œ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋งˆ์ดํฌ๋กœ ์„œ๋น„์Šค ํˆด์ฒด์ธ์€ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ œ์–ดํ•˜๊ธฐ ์œ„ํ•ด GitHub ์ €์žฅ์†Œ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— GitHub ๊ณ„์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. GitHub์— ๊ฐ€์ž…ํ•ฉ๋‹ˆ๋‹ค.
  • ๋งˆ์ดํฌ๋กœ ์„œ๋น„์Šค ํˆด์ฒด์ธ์˜ ์•ฑ์€ Sauce Labs๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž๋™์œผ๋กœ ๋ชจ์นด ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์— Sauce Labs ๊ณ„์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. Sauce Labs์— ๊ฐ€์ž…ํ•ฉ๋‹ˆ๋‹ค.
  • ์ž๋™ ์•Œ๋ฆผ์„ ๋ฐ›์œผ๋ ค๋ฉด ์Šฌ๋ž™ ๊ณ„์ •๊ณผ ํŒ€์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. Slack์— ๊ฐ€์ž…ํ•ฉ๋‹ˆ๋‹ค.
  • ๋นŒ๋“œ ์‹คํŒจ์— ๋Œ€ํ•œ ์ž๋™ ํ†ต์ง€๋ฅผ ์ง€์ •๋œ ํŒ€ ๊ตฌ์„ฑ์›์—๊ฒŒ ๋ฐฐํฌํ•˜๋ ค๋ฉด PagerDuty ๊ณ„์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. PagerDuty์— ๊ฐ€์ž…ํ•ฉ๋‹ˆ๋‹ค.

1 ๋‹จ๊ณ„: ํˆด์ฒด์ธ ์ƒ์„ฑ ์‹œ์ž‘ํ•˜๊ธฐ

  1. Bluemix์— ๋กœ๊ทธ์ธํ•ฉ๋‹ˆ๋‹ค. Bluemix ๋Œ€์‹œ๋ณด๋“œ์—์„œ๋Š” ํ˜„์žฌ ์กฐ์ง(org)์—์„œ์˜ ์ „๋ฐ˜์ ์ธ ํ™œ๋™ ๋‚ด์—ญ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    initial_dashboard
  2. ํ™”๋ฉด ์™ผ์ชฝ ์ƒ๋‹จ์˜ ํ–„๋ฒ„๊ฑฐ ๋ฉ”๋‰ด ์ค‘์—์„œ ์„œ๋น„์Šค๋ฅผ ์„ ํƒํ•˜๊ณ  ์•„๋ž˜ DevOps ํ•ญ๋ชฉ๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  3. ๋„๊ตฌ ์ฒด์ธ ์ž‘์„ฑ์„ ํด๋ฆญํ•˜์—ฌ ๋„๊ตฌ ์ฒด์ธ ํ…œํ”Œ๋ฆฟ์„ ํ™•์ธ ํ•ฉ๋‹ˆ๋‹ค.
    ms_tc_catalog

  4. Microservices toolchain์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

  5. Microservice toolchain ์ƒ์„ฑ ํŽ˜์ด์ง€์—์„œ ์ƒ์„ฑํ•˜๋ ค๊ณ  ํ•˜๋Š” ํˆด์ฒด์ธ์— ๋Œ€ํ•œ ๋‹ค์ด์–ด๊ทธ๋žจ์„ ๊ฒ€ํ† ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋‹ค์ด์–ด๊ทธ๋žจ์€ ํˆด์ฒด์ธ์—์„œ์˜ ๊ฐ ํˆด ํ†ตํ•ฉ๊ณผ ์—ญํ•  ๋ฐ ์ƒํ˜ธ ์ž‘์šฉ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
    ms_tc_diagram

  6. ํˆด์ฒด์ธ ์„ค์ •์— ๋Œ€ํ•œ ๊ธฐ๋ณธ ์ •๋ณด๋ฅผ ๊ฒ€ํ† ํ•ฉ๋‹ˆ๋‹ค. ํˆด์ฒด์ธ์˜ ์ด๋ฆ„์€ Bluemix์—์„œ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค.
    ์ฐธ๊ณ  : ๊ฐ ํˆด์ฒด์ธ์€ ํŠน์ • ์กฐ์ง (org)๊ณผ ์—ฐ๊ฒฐ๋ฉ๋‹ˆ๋‹ค. ํˆด์ฒด์ธ ์ด๋ฆ„์ด ์กฐ์ง ๋‚ด์—์„œ ๊ณ ์œ ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์กฐ์ง ๋‹น ํˆด ์ฒด์ธ์„ 50 ๊ฐœ๊นŒ์ง€ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ์ž‘์—…์ค‘์ธ ์กฐ์ง์ด ๋ฉ”๋‰ด ํ‘œ์‹œ ์ค„์— ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์กฐ์ง์œผ๋กœ ์ „ํ™˜ํ•˜๋ ค๋ฉด ๋ฉ”๋‰ด ๋ชจ์Œ์—์„œ ์กฐ์ง์„ ํด๋ฆญ ํ•œ ๋‹ค์Œ ์›ํ•˜๋Š” ์กฐ์ง์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ ํŠน์ • ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ํˆด์ฒด์ธ์˜ ์ด๋ฆ„์„ ๋ณ€๊ฒฝํ•˜์—ฌ ์ง€์ • ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    ms_tc_settings

  7. GitHub์„ ์‚ฌ์šฉํ•˜์—ฌ ์Šน์ธํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ GitHub์„ ์Šน์ธํ•˜๋ผ๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. Authorize์„ ํด๋ฆญํ•˜๊ณ  ์•ˆ๋‚ด์— ๋”ฐ๋ผ Bluemix ๊ณ„์ •์„ GitHub ๊ณ„์ •์— ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค.
    github_authorization

2 ๋‹จ๊ณ„ : ํˆด ํ†ตํ•ฉ ์„ค์ •ํ•˜๊ธฐ

์ด ํŠœํ† ๋ฆฌ์–ผ์— ํฌํ•จ ๋œ ์ „์ฒด ์‹œ๋‚˜๋ฆฌ์˜ค๋ฅผ ์‹œ๋„ํ•˜๋ ค๋ฉด ํˆด์ฒด์ธ์— ๋Œ€ํ•ด ์ด๋Ÿฌํ•œ ํˆด ํ†ตํ•ฉ์„ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

GitHub ๊ตฌ์„ฑ

GitHub๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํด๋ผ์šฐ๋“œ์—์„œ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๊ด€๋ฆฌ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  1. GitHub๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  2. GitHub์— ์•ก์„ธ์Šคํ•˜๊ธฐ ์œ„ํ•ด Bluemix๋ฅผ ์Šน์ธํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ฅด์‹ญ์‹œ์˜ค.
    a. Authorize๋ฅผ ํด๋ฆญํ•˜๋ฉด GitHub ์›น ์‚ฌ์ดํŠธ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.
    ms_tc_github_authorize

    b. Authorize application์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
    ms_tc_authorize_in_github

    c. ํ™œ์„ฑํ™”๋œ GitHub ์„ธ์…˜์ด์—†๋Š” ๊ฒฝ์šฐ ๋กœ๊ทธ์ธํ•˜๋ผ๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. Authorize Application์„ ํด๋ฆญํ•˜๋ฉด Bluemix๊ฐ€ GitHub ๊ณ„์ •์— ์•ก์„ธ์Šค ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ™œ์„ฑ GitHub ์„ธ์…˜์ด ์žˆ์ง€๋งŒ ์ตœ๊ทผ์— ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ํ™•์ธ์„ ์œ„ํ•ด GitHub ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•˜๋ผ๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ํ‘œ์‹œ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  3. GitHub ์ €์žฅ์†Œ์˜ ๊ธฐ๋ณธ ๋Œ€์ƒ ์ €์žฅ์†Œ ์œ„์น˜๋ฅผ ๊ฒ€ํ† ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ €์žฅ์†Œ๋Š” ์„ธ ๊ฐ€์ง€ ์ƒ˜ํ”Œ ์ €์žฅ์†Œ์—์„œ ๋ณต์ œ๋ฉ๋‹ˆ๋‹ค. ํ•„์š”์— ๋”ฐ๋ผ ๋Œ€์ƒ ์ €์žฅ์†Œ์˜ ์ด๋ฆ„์„ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.
    ms_tc_conf_github

๋”œ๋ฆฌ๋ฒ„๋ฆฌ ํŒŒ์ดํ”„ ๋ผ์ธ ๊ตฌ์„ฑ

๋”œ๋ฆฌ๋ฒ„๋ฆฌ ํŒŒ์ดํ”„ ๋ผ์ธ์„ ์‚ฌ์šฉํ•˜๋ฉด ์•ฑ์˜ ์ง€์†์ ์ธ ๊ตฌ์ถ•, ํ…Œ์ŠคํŠธ ๋ฐ ๋ฐฐํฌ๋ฅผ ์ž๋™ํ™” ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  1. Delivery Pipeline์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  2. ์„ธ ๊ฐ€์ง€ microservices ์• ํ”Œ ๋ฆฌ์ผ€์ด์…˜์˜ ๊ธฐ๋ณธ ์ด๋ฆ„์„ ๊ฒ€ํ† ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ dev, test ๋ฐ prod ๋‹จ๊ณ„์˜ ๊ธฐ๋ณธ ์˜์—ญ, ์กฐ์ง ๋ฐ ๊ณต๊ฐ„์„ ๊ฒ€ํ† ํ•ฉ๋‹ˆ๋‹ค. ํ•„์š”์— ๋”ฐ๋ผ ํ•ด๋‹น ์„ค์ •์„ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ  : ํˆด์ฒด์ธ์€ ํ˜„์žฌ ํ•˜๋‚˜์˜ ์ง€์—ญ (๋ฏธ๊ตญ ๋‚จ๋ถ€)์—์„œ๋งŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ํŒŒ์ดํ”„ ๋ผ์ธ์€ ๋ฏธ๊ตญ ๋‚จ ์ง€์—ญ์— ์•ฑ์„ ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค.

์Šฌ๋ž™ ๊ตฌ์„ฑ

Slack์„ ์‚ฌ์šฉํ•˜๋ฉด ํŒ€๊ณผ ๊ณต๋™ ์ž‘์—…ํ•˜๊ณ  ํ…Œ์ŠคํŠธ ๋ฐ ๋ฐฐํฌ ์ž‘์—…์— ๋Œ€ํ•œ ์•Œ๋ฆผ์„๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ค‘์š” : ๊ณต๊ณต ์Šฌ๋ž™ ์ฑ„๋„์— ๊ฒŒ์‹œ๋˜๋Š” ์•Œ๋ฆผ์€ ํŒ€์˜ ๋ชจ๋“  ์‚ฌ์šฉ์ž์—๊ฒŒ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ๋ถ„์ด ๊ฒŒ์‹œํ•˜๋Š” ์ฝ˜ํ…์ธ ์— ๋Œ€ํ•œ ์ฑ…์ž„์€ ์—ฌ๋Ÿฌ๋ถ„๊ป˜ ์žˆ์œผ๋‹ˆ ์ฃผ์˜ํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

1. ์Šฌ๋ž™์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

2. Slack ๊ณ„์ •์˜ webhook URL์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. Slack๊ณผ ํ†ตํ•ฉํ•˜๋ ค๋ฉด webhook URL์„ ์‚ฌ์šฉํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.
Webhook ๋งŒ๋“ค๊ธฐ์— ๋Œ€ํ•œ ์ง€์นจ์€ ๋“ค์–ด์˜ค๋Š” Slack Incoming Webhooks๋ฅผ ์ฐธ์กฐํ•ฉ๋‹ˆ๋‹ค.

3. Webhook URL๊ณผ ๊ด€๋ จ๋œ Slack ์ฑ„๋„์˜ ์ด๋ฆ„์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. ์ด ์ฑ„๋„๋กœ ์•Œ๋ฆผ์ด ์ „์†ก๋ฉ๋‹ˆ๋‹ค.

Sauce Labs ๊ตฌ์„ฑ

Sauce Labs๋Š” ์—ฌ๋Ÿฌ ์šด์˜ ์ฒด์ œ ๋ฐ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ž๋™ ๊ธฐ๋Šฅ ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•˜๋ฏ€๋กœ ์‚ฌ์šฉ์ž๊ฐ€ ์›น ์‚ฌ์ดํŠธ ๋˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‚ฌ์šฉํ•  ์ˆ˜์žˆ๋Š” ๋ฐฉ๋ฒ•์„ ํ‰๋‚ด ๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  1. Sauce Labs์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  2. Sauce Labs ๊ณ„์ •๊ณผ ์—ฐ๊ฒฐ๋œ ์‚ฌ์šฉ์ž ์ด๋ฆ„์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. Sauce Labs ๋Œ€์‹œ ๋ณด๋“œ์˜ ์™ผ์ชฝ ํ•˜๋‹จ์—์žˆ๋Š” ์ด๋ฆ„์„ ํด๋ฆญํ•˜๊ณ  My Account์„ ํด๋ฆญํ•˜๋ฉด ์‚ฌ์šฉ์ž ์ด๋ฆ„์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  3. Sauce Labs ๊ณ„์ •์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ํ‚ค๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. Sauce Labs ๋Œ€์‹œ ๋ณด๋“œ์˜ ์™ผ์ชฝ ํ•˜๋‹จ์—์žˆ๋Š” ์ด๋ฆ„์„ ํด๋ฆญํ•˜๊ณ  My Account์„ ํด๋ฆญํ•˜๋ฉด ํ‚ค๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋„๊ตฌ ์ฒด์ธ ์ž‘์„ฑ ๋งˆ๋ฌด๋ฆฌ ํ•˜๊ธฐ

๋งŒ๋“ค๊ธฐ๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค. ๋ช‡ ๋‹จ๊ณ„๊ฐ€ ์ž๋™์œผ๋กœ ์‹คํ–‰๋˜์–ด ํˆด์ฒด์ธ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

  • ํˆด์ฒด์ธ์€ ํ˜„์žฌ ์กฐ์ง์—์„œ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.
  • Sauce Labs ํ†ตํ•ฉ์€ ํŒŒ์ดํ”„ ๋ผ์ธ์—์„œ ์ž‘์—…์„ ํ™œ์„ฑํ™”ํ•˜๊ณ  ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•˜๋„๋ก ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.
  • Slack ํ†ตํ•ฉ์€ Slack์—์„œ ๊ตฌ์„ฑํ•œ ์ฑ„๋„์— ์•Œ๋ฆผ์„ ๋ณด๋‚ด๋„๋ก ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์•Œ๋ฆผ์€ ๋ฐฐํฌ ์ง„ํ–‰๋ฅ ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด “ํ”„๋กœ์ ํŠธ XYZ, ํŒŒ์ดํ”„ ๋ผ์ธ ๊ตฌ์„ฑ ๋ฐ ์Šคํ…Œ์ด์ง€ ‘๋นŒ๋“œ’์™€ ์—ฐ๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.”
  • ์„ธ ๊ฐœ์˜ ์ƒ˜ํ”Œ GitHub ์ €์žฅ์†Œ๊ฐ€ GitHub ๊ณ„์ •์— ๋ณต์ œ๋ฉ๋‹ˆ๋‹ค. ๊ฐ ๋งˆ์ดํฌ๋กœ ์„œ๋น„์Šค์—๋Š” ํ•˜๋‚˜์˜ GitHub ์ €์žฅ์†Œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํŒŒ์ดํ”„ ๋ผ์ธ์ด ํŠธ๋ฆฌ๊ฑฐ๋ฉ๋‹ˆ๋‹ค. ๊ฐ ๋งˆ์ดํฌ๋กœ ์„œ๋น„์Šค๋Š” ๊ฐœ๋ฐœ ์šฉ (dev), ํ…Œ์ŠคํŠธ ์šฉ, ํ”„๋กœ๋•์…˜ ์šฉ (prod)์˜ ์„ธ ๊ณต๊ฐ„์œผ๋กœ ๋ฐฐ์น˜๋ฉ๋‹ˆ๋‹ค. toolchain์€ ๋ณ‘๋ ฌ ์—ฐ์† ์ „๋‹ฌ๊ณผ ํ’๋ถ€ํ•œ ๋„๊ตฌ ์„ธํŠธ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

PagerDuty ํ†ตํ•ฉ์€ ํˆด์ฒด์ธ ์ƒ์„ฑ ์ดํ›„์—๋„ ๊ตฌ์„ฑ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์„ ๋ณด์—ฌ์ฃผ๊ธฐ ์œ„ํ•ด ๋’ท ๋ถ€๋ถ„์—์„œ ์ง„ํ–‰ํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

3 ๋‹จ๊ณ„ : ๋นŒ๋“œ ๋ฐ ๋ฐฐํฌ ํ™œ๋™ ํ™•์ธํ•˜๊ธฐ

ํˆด ์ฒด์ธ์—์žˆ๋Š” ์„ธ ๊ฐœ์˜ ํŒŒ์ดํ”„ ๋ผ์ธ์ด ๊ฐ๊ฐ ์‹œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ”„๋กœ์„ธ์Šค ์‹คํ–‰์„ ๊ด€์ฐฐํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ํƒ์ƒ‰ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  1. ํˆด์ฒด์ธ์˜ ๊ฐœ์š” ํŽ˜์ด์ง€์—์„œ ํŒŒ์ดํ”„ ๋ผ์ธ์„ ํด๋ฆญํ•˜์—ฌ ๊ฐ๊ฐ์˜ ๋นŒ๋“œ ํ™œ๋™, ๋กœ๊ทธ ๋ฐ ํ…Œ์ŠคํŠธ ๊ฒฐ๊ณผ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ๋ด…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์™„๋ฃŒ๋œ Sauce Labs ์ž‘์—…์„ ํด๋ฆญํ•˜์—ฌ ๋กœ๊ทธ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ…Œ์ŠคํŠธ ๊ฒฐ๊ณผ๋ฅผ๋ณด๊ธฐ ์œ„ํ•ด ์ „๋‹ฌ ๋œ ๋‹จ์œ„ ํ…Œ์ŠคํŠธ ์ž‘์—…์„ ํด๋ฆญ ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
  2. ์•ฑ ๋ณด๊ธฐ๋ฅผ ํด๋ฆญํ•˜๋ฉด ํŒŒ์ดํ”„ ๋ผ์ธ์ด ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋กœ ๋งŒ๋“œ๋Š” ๋ชจ๋“  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋กœ๊ทธ๋žจ ๋ชฉ๋ก์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  3. ํˆด์ฒด์ธ์˜ ์—ฐ๊ฒฐ ํŽ˜์ด์ง€์—์„œ ํˆด์ฒด์ธ์˜ ๋ฐฐํฌ์— ๋Œ€ํ•œ ์ „๋ฐ˜์ ์ธ ์ƒํƒœ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฐ๊ฒฐ์ด ํ‘œ์‹œ๋˜์ง€ ์•Š์œผ๋ฉด ์•„์ง ๋ฐฐํฌ ๋œ ์•ฑ์ด ์—†๊ฑฐ๋‚˜ ํ•˜๋‚˜ ์ด์ƒ์˜ ํŒŒ์ดํ”„ ๋ผ์ธ์ด ์‹คํŒจ ํ•œ ์ƒํƒœ์ž…๋‹ˆ๋‹ค. ๋ฐฐํฌ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์™„๋ฃŒ๋˜๋ฉด ์—ฐ๊ฒฐ ํŽ˜์ด์ง€์— 9 ๊ฐœ์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
    ์—ฐ๊ฒฐ๋ณด๊ธฐ

ํŒ : ๋ณ„๋„์˜ ํƒญ์—์„œ ๊ฐ ํŒŒ์ดํ”„ ๋ผ์ธ์„ ์—ด๊ณ  ๋ฐฐํฌ ์ง„ํ–‰ ์ƒํ™ฉ์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ์ƒํƒœ๊ฐ€ ์ž๋™์œผ๋กœ ์—…๋ฐ์ดํŠธ๋˜์ง€ ์•Š์œผ๋ฉด ํŽ˜์ด์ง€๋ฅผ ์ƒˆ๋กœ ๊ณ ์นฉ๋‹ˆ๋‹ค. ์ž‘์—…์ด ์ทจ์†Œ ๋œ ๊ฒฝ์šฐ ์ž‘์—…์ด์žˆ๋Š” ๋‹จ๊ณ„์—์„œ ๋‹จ๊ณ„ ์‹คํ–‰ ์•„์ด์ฝ˜์„ ํด๋ฆญํ•˜์—ฌ ๋‹จ๊ณ„๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

4 ๋‹จ๊ณ„ : ์ ‘๊ทผ ๊ถŒํ•œ ๊ด€๋ฆฌํ•˜๊ธฐ

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

  1. ํ˜„์žฌ ์ž‘์—…ํ•˜๊ณ ์žˆ๋Š” ์กฐ์ง์„ ํ™•์ธํ•˜๋ ค๋ฉด ๋ฐฐ๋„ˆ์—์„œ ํ˜„์žฌ ์กฐ์ง๊ณผ ๊ณต๊ฐ„์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
  2. ๋ฉ”๋‰ด ํ‘œ์‹œ ์ค„์—์„œ ๊ณ„์ •์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  3. ์กฐ์ง ๊ด€๋ฆฌ๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  4. ์‚ฌ์šฉ์ž๋ฅผ ์ถ”๊ฐ€ ํ•  ์กฐ์ง์„ ํด๋ฆญ ํ•œ ๋‹ค์Œ ์กฐ์ง ํŽธ์ง‘์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  5. ์‚ฌ์šฉ์ž ์ดˆ๋Œ€๋ฅผ ํด๋ฆญํ•˜๊ณ  ์‚ฌ์šฉ์ž์˜ ์ด๋ฉ”์ผ ์ฃผ์†Œ๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.
  6. ์‚ฌ์šฉ์ž์—๊ฒŒ ์˜์—ญ์— ๋Œ€ํ•œ ๊ถŒํ•œ์„ ํ• ๋‹นํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ์˜์—ญ์— ๋Œ€ํ•ด ํ•ด๋‹น ์—ญํ• ์„ ํ• ๋‹นํ•˜๊ณ  ์ „์ฒด ๊ด€๋ฆฌ ๊ถŒํ•œ์„ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ถ€์—ฌํ•˜๋ ค๋ฉด ๊ด€๋ฆฌ์ž ์ฒดํฌ๋ฐ•์Šค๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ์ฒญ๊ตฌ ๊ด€๋ฆฌ์ž ๋ฐ ๊ฐ์‚ฌ์ž ์—ญํ• ์€ ํˆด์ฒด์ธ ์•ก์„ธ์Šค์— ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž์—๊ฒŒ ์ ์–ด๋„ ํ•˜๋‚˜ ์ด์ƒ์˜ ํ™˜๊ฒฝ์—์„œ์˜ ์—ญํ• ์„ ํ• ๋‹น ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  7. ์ด ๊ณ„์ •์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๋ชจ๋“  ๋น„์šฉ์— ๋Œ€ํ•œ ์žฌ์ •์  ์ฑ…์ž„์„ ๋งก๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ณ„์ •๊ณผ ์—ฐ๊ด€๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์ˆ˜ํ–‰ํ•œ ์กฐ์น˜ ๋˜๋Š” ๋‚ด ์กฐ์น˜์— ๋Œ€ํ•œ ๋น„์šฉ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.์— ๋Œ€ํ•œ ์ฒดํฌ ๋ฐ•์Šค๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  8. ์ดˆ๋Œ€๋ฅผ ํด๋ฆญ ํ•œ ๋‹ค์Œ ์ €์žฅ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  9. ์‚ฌ์šฉ์ž๊ฐ€ ํˆด์ฒด์ธ์˜ ์กฐ์ง์— ์†ํ•œ ํ›„ ํˆด์ฒด์ธ์˜ ๊ด€๋ฆฌ ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.
    ๋งˆ์ดํฌ๋กœ ์„œ๋น„์Šค ํˆด์ฒด์ธ ๊ด€๋ฆฌ
  10. ์‚ฌ์šฉ์ž ID๋ฅผ ์ž…๋ ฅํ•˜๊ณ  Add user๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค. ์ถ”๊ฐ€๋œ ์‚ฌ์šฉ์ž๋Š” ํˆด ์ฒด์ธ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  11. ์‚ฌ์šฉ์ž์—๊ฒŒ ๊ด€๋ฆฌ์ž ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜๋ ค๋ฉด ํ•ด๋‹น ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ADMIN ์ฒดํฌ๋ฐ•์Šค๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ๊ด€๋ฆฌ์ž๋Š” ํˆด์ฒด์ธ์„ ์ˆ˜์ •ํ•˜๊ณ  ์‚ญ์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

5 ๋‹จ๊ณ„ : PagerDuty ๊ตฌ์„ฑํ•˜๊ธฐ

์ด์ œ ์•ž์„œ ๊ตฌ์„ฑํ•˜์ง€ ์•Š์•˜๋˜ PagerDuty๋ฅผ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

  1. ํˆด์ฒด์ธ์˜ ๊ฐœ์š” ํŽ˜์ด์ง€์—์„œ PagerDuty์— ๋Œ€ํ•œ ํ•ญ๋ชฉ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค. PagerDuty ๊ณ„์ •์ด ์—†์œผ๋ฉด ๋“ฑ๋กํ•ฉ๋‹ˆ๋‹ค.
    PagerDuty ๊ตฌ์„ฑ
  2. PagerDuty ๊ณ„์ •์˜ API ์•ก์„ธ์Šค ํ‚ค๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. ํ‚ค๋ฅผ ์ฐพ๋Š” ๋ฐฉ๋ฒ•์€ API ์ธ์ฆ์„ ์ฐธ์กฐํ•ฉ๋‹ˆ๋‹ค.
  3. PagerDuty ์„œ๋น„์Šค์˜ ์ด๋ฆ„์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. ์ด ํŽ˜์ด์ง€์—์„œ ์„œ๋น„์Šค๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๊ฑฐ๋‚˜ PagerDuty ์›น ์‚ฌ์ดํŠธ์— ๊ตฌ์„ฑ๋œ ์„œ๋น„์Šค๋ฅผ ์ฐธ์กฐ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. PagerDuty ์›น ์‚ฌ์ดํŠธ์—์„œ ์„œ๋น„์Šค๋ฅผ ๊ด€๋ฆฌ ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
  4. ์„ ํƒ ์‚ฌํ•ญ. ๊ธฐ๋ณธ PagerDuty ์—ฐ๋ฝ์ฒ˜์˜ ์ „์ž ๋ฉ”์ผ ์ฃผ์†Œ๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.
  5. ๊ธฐ๋ณธ PagerDuty ์—ฐ๋ฝ์ฒ˜์˜ ์ „ํ™” ๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.
  6. PagerDuty๋ฅผ ํˆด ์ฒด์ธ์— ์ถ”๊ฐ€ํ•˜๋ ค๋ฉด ํ†ตํ•ฉ ์ €์žฅ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

6 ๋‹จ๊ณ„ : ์ด์Šˆ ์ œ์ถœํ•˜๊ธฐ

๋ฌธ์ œ ๋ฐ ์ฝ”๋“œ ์ˆ˜์ •์„ ์ถ”์ ํ•˜๋ ค๋ฉด GitHub ๋ฌธ์ œ๋ฅผ ์ œ์ถœํ•ฉ๋‹ˆ๋‹ค.

  1. ํˆด์ฒด์ธ์˜ ๊ฐœ์š” ํŽ˜์ด์ง€์—์„œ Issues ํƒ€์ผ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค. ์ด ํˆด์ฒด์ธ์˜ ์ž‘์—…์„ ์‰ฝ๊ฒŒ ์ถ”์ ํ•˜๊ณ  ๊ณ„ํšํ•˜๊ธฐ ์œ„ํ•ด ๋ชจ๋“  ์ €์žฅ์†Œ์— ๋Œ€ํ•œ ๋ฌธ์ œ๋Š” UI ์ฝ”๋“œ์˜ ์ €์žฅ์†Œ์—์„œ ์ถ”์ ๋ฉ๋‹ˆ๋‹ค.
  2. ์ƒˆ ์ด์Šˆ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค. ํ™œ์„ฑ GitHub ์„ธ์…˜์ด์—†๋Š” ๊ฒฝ์šฐ ๋กœ๊ทธ์ธํ•˜๋ผ๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ํ™œ์„ฑ GitHub ์„ธ์…˜์ด ์žˆ์ง€๋งŒ ์ตœ๊ทผ์— ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ GitHub ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•˜๋ผ๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ํ‘œ์‹œ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    ์ƒˆ ์ด์Šˆ
  3. ์ด์Šˆ์˜ ์ œ๋ชฉ์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค : Increase Catalog API memory.
  4. Submit new issue์„ ํด๋ฆญํ•˜๊ณ  ์ด์Šˆ ID๋ฅผ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์ธ ํ˜•์‹์€ Git_username/git_issues_repo_name#issue_identifier์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, Git ์‚ฌ์šฉ์ž ์ด๋ฆ„์ด username์ด๊ณ  ์ด๊ฒƒ์ด ui-toolchain-microservices ์ €์žฅ์†Œ์—์„œ ์ƒ์„ฑ ๋œ ์ฒซ ๋ฒˆ์งธ ๋ฌธ์ œ ์ธ ๊ฒฝ์šฐ ์ „์ฒด ์ด์Šˆ ์‹๋ณ„์ž๋Š” username/ui-toolchain-microservices#1์ž…๋‹ˆ๋‹ค.

ํŠœํ† ๋ฆฌ์–ผ์˜ ๋’ท๋ถ€๋ถ„์—์„œ์ด ๋ฌธ์ œ์ ์— ๋Œ€ํ•œ ์ˆ˜์ • ์‚ฌํ•ญ์„ ์ปค๋ฐ‹ ํ•  ๋•Œ ์‹๋ณ„์ž๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

7 ๋‹จ๊ณ„ : ์ฝ”๋“œ ์ˆ˜์ •ํ•˜๊ธฐ

ํŒŒ์ดํ”„ ๋ผ์ธ์„ ๋ฐฐํฌํ•˜์ง€ ๋ชปํ•˜๊ฒŒํ•˜๋Š” ์˜ค๋ฅ˜๋ฅผ ๋„์ž…ํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ  :์ด ํŠœํ† ๋ฆฌ์–ผ์˜ ์ง€์‹œ ์‚ฌํ•ญ์€ Eclipse Orion Web IDE๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค. GitHub ํŽธ์ง‘๊ธฐ ๋˜๋Š” ์ข‹์•„ํ•˜๋Š” ํŽธ์ง‘๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์•ฑ์˜ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

  1. ํˆด์ฒด์ธ์˜ ๊ฐœ์š” ํŽ˜์ด์ง€์—์„œ Eclipse Orion Web IDE๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค. 3 ๊ฐœ์˜ GitHub ์ €์žฅ์†Œ๊ฐ€ ์ž‘์—… ๊ณต๊ฐ„์— ์ž๋™์œผ๋กœ๋กœ๋“œ๋ฉ๋‹ˆ๋‹ค. ์›น IDE ์ž‘์—… ๊ณต๊ฐ„์€ ํด๋ผ์šฐ๋“œ์— ์žˆ์Šต๋‹ˆ๋‹ค.

    ํŒ : ์ด์ „์— ํŠœํ† ๋ฆฌ์–ผ์„ ์™„์„ฑํ•˜์—ฌ ํˆด์ฒด์ธ์„ ๋งŒ๋“ค์—ˆ๋‹ค๋ฉด ์ž‘์—… ๊ณต๊ฐ„์— GitHub ์ €์žฅ์†Œ๊ฐ€ 3 ๊ฐœ ์ด์ƒ ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ํˆด์ฒด์ธ์˜ ์ €์žฅ์†Œ๊ฐ€ ๊ฐ•์กฐ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

  2. ํŒŒ์ผ ํƒ์ƒ‰๊ธฐ์—์„œ catalog-api-toolchain_name ์ €์žฅ์†Œ๋ฅผ ํ™•์žฅํ•ฉ๋‹ˆ๋‹ค.
  3. ํŒŒ์ผ ๋””๋ ‰ํ† ๋ฆฌ์—์„œ manifest.yml์„ ํด๋ฆญํ•˜์—ฌ ํŒŒ์ผ์„ ์—ฝ๋‹ˆ๋‹ค.
  4. ๋ฉ”๋ชจ๋ฆฌ ๊ฐ’์„ 128g์œผ๋กœ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. ์ด ์„ค์ •์€ ์กฐ์ง์˜ ํ• ๋‹น๋Ÿ‰์„ ์ดˆ๊ณผํ•˜๋„๋ก ์˜๋„์ ์œผ๋กœ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋Š˜๋ฆฝ๋‹ˆ๋‹ค. ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ์ž๋™์œผ๋กœ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.
    ์›น IDE ์ž‘์—… ์˜์—ญ
  5. ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ํ‘ธ์‹œํ•ฉ๋‹ˆ๋‹ค.

    a. Eclipse Orion Web IDE ๋ฉ”๋‰ด์—์„œ Git ์•„์ด์ฝ˜์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
    git ์•„์ด์ฝ˜

    b. ์ฐฝ์˜ ์˜ค๋ฅธ์ชฝ ์œ„ ๋ชจ์„œ๋ฆฌ์— ์žˆ๋Š” ์ž‘์—… ๋””๋ ‰ํ† ๋ฆฌ ๋ณ€๊ฒฝ ์„น์…˜์—์„œ ๋ณ€๊ฒฝ๋œ ํŒŒ์ผ์ด ์„ ํƒ ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

    c. ์ด์Šˆ๋ฅผ ์ œ์ถœํ•  ๋•Œ ์ƒ์„ฑ ๋œ ID๊ฐ€ ํฌํ•จ ๋œ ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฉ”์‹œ์ง€ ํ˜•์‹์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

    fixes Git_username/git_issues_repo_name#issue_identifier

    ์ปค๋ฐ‹์„ ํด๋ฆญํ•˜์—ฌ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๋กœ์ปฌ ๋งˆ์Šคํ„ฐ ๋ถ„๊ธฐ์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๋Š” ui repo์—์„œ์ด ํˆด์ฒด์ธ์˜ ๋ชจ๋“  ๋ฌธ์ œ๋ฅผ ์ถ”์ ํ•˜๋ฏ€๋กœ ์ด๋ฆ„์„ ์ง€์ •ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.
    d. ์ด๋Ÿฌํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์›๋ณธ / ๋งˆ์Šคํ„ฐ ๋ถ„๊ธฐ์— ๋†“๊ณ  ํ‘ธ์‹œ๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค. ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ํŒŒ์ดํ”„ ๋ผ์ธ์— ์ž๋™์œผ๋กœ ๋นŒ๋“œ๋˜๊ณ  ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.
    ๋ณ€๊ฒฝ ์‚ฌํ•ญ ํ‘ธ์‹œ

  6. GitHub ๋ฌธ์ œ๋กœ ๊ฐ€์„œ ์ปค๋ฐ‹์— ๋Œ€ํ•œ ๋งํฌ๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์—ฌ ๋ฌธ์ œ๊ฐ€ ์—…๋ฐ์ดํŠธ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

8 ๋‹จ๊ณ„ : ์˜ค๋ฅ˜ ํ™•์ธํ•˜๊ธฐ

๋ฐฐํฌ ์ž‘์—…์ด ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค. ์ด ํŠœํ† ๋ฆฌ์–ผ์˜ 2 ๋‹จ๊ณ„์—์„œ ์ง€์ •ํ•œ ์Šฌ๋ž™ ์ฑ„๋„์— ์•Œ๋ฆผ์ด ๊ฒŒ์‹œ๋ฉ๋‹ˆ๋‹ค. PagerDuty ๊ฒฝ๊ณ ๋Š” PagerDuty๋ฅผ ํˆด ์ฒด์ธ์— ์ถ”๊ฐ€ ํ•  ๋•Œ ์ง€์ •ํ•œ ์ด๋ฉ”์ผ ์ฃผ์†Œ์™€ ์ „ํ™” ๋ฒˆํ˜ธ๋กœ ๋ฐœํ–‰๋ฉ๋‹ˆ๋‹ค.

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

9 ๋‹จ๊ณ„ : ๋ฌธ์ œ ํ•ด๊ฒฐ ๋ฐ ๋ฐฐํฌํ•˜๊ธฐ

๊ฒฝ๊ณ ๋ฅผ ๊ฒ€ํ† ํ•˜๊ณ  ๋ฌธ์ œ์ ์ด ์ด์ „ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์œผ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•œ ๊ฒƒ์„ ์ธ์‹ํ•˜๊ณ  ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๋˜๋Œ๋ ค ์„œ ๋ฌธ์ œ์ ์„ ์ฐพ์Šต๋‹ˆ๋‹ค.

  1. ํˆด์ฒด์ธ์˜ ๊ฐœ์š” ํŽ˜์ด์ง€๋กœ ๋Œ์•„๊ฐ€์„œ catalog-api-microservice์˜ ํŒŒ์ดํ”„ ๋ผ์ธ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  2. ๋ฐฐํฌ ์ž‘์—…์ด ํฌํ•จ ๋œ ๋‹จ๊ณ„์—์„œ ๋งˆ์ง€๋ง‰ ์ž…๋ ฅ์„ ํด๋ฆญํ•˜์—ฌ ์Šคํ…Œ์ด์ง€ ๊ธฐ๋ก์„ ๋ด…๋‹ˆ๋‹ค. ์‹คํŒจํ•œ ๋นŒ๋“œ์™€ ๊ด€๋ จ๋œ ์ปค๋ฐ‹์„ ๊ฒ€ํ† ํ•˜์—ฌ ์ƒˆ ๋ฉ”๋ชจ๋ฆฌ ์„ค์ •์ด ์œ ํšจํ•˜์ง€ ์•Š์€์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
  3. ํˆด์ฒด์ธ์˜ ๊ฐœ์š” ํŽ˜์ด์ง€์—์„œ Eclipse Orion Web IDE๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
    ์ฐธ๊ณ  :์ด ํŠœํ† ๋ฆฌ์–ผ์˜ ์ง€์‹œ ์‚ฌํ•ญ์€ Eclipse Orion Web IDE๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค. GitHub ํŽธ์ง‘๊ธฐ ๋˜๋Š” ์ข‹์•„ํ•˜๋Š” ํŽธ์ง‘๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์•ฑ์˜ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
  4. Git ์•„์ด์ฝ˜์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
    Git ์•„์ด์ฝ˜
  5. ํ™œ์„ฑ ๋ถ„๊ธฐ ์ฐฝ์˜ ๊ธฐ๋ก ์„น์…˜์—์„œ ํŠœํ† ๋ฆฌ์–ผ์˜ 7 ๋‹จ๊ณ„์—์„œ ๋ณ€๊ฒฝ ํ•œ ์ฝ”๋“œ ๋ณ€๊ฒฝ ๋‚ด์šฉ ์œ„๋กœ ๋งˆ์šฐ์Šค๋ฅผ ๊ฐ€์ ธ๊ฐ‘๋‹ˆ๋‹ค.
  6. ์ปค๋ฐ‹์„ ๋˜๋Œ๋ฆฌ๋ ค๋ฉด ๋ณ€๊ฒฝ ์‚ฌํ•ญ ๋˜๋Œ๋ฆฌ๊ธฐ ์•„์ด์ฝ˜์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
    ๋ณ€๊ฒฝ ์‚ฌํ•ญ ๋˜๋Œ๋ฆฌ๊ธฐ ์•„์ด์ฝ˜
  7. ํ‘ธ์‹œ๋ฅผ ํด๋ฆญํ•˜์—ฌ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ GitHub ๋ ˆํฌ๋กœ ํ‘ธ์‹œํ•˜๊ณ  ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ํŒŒ์ดํ”„ ๋ผ์ธ์— ์ž๋™์œผ๋กœ ๊ตฌ์ถ•ํ•˜๊ณ  ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค.
    ๋ณ€๊ฒฝ ์‚ฌํ•ญ ํ‘ธ์‹œ
  8. ํˆด์ฒด์ธ์˜ ๊ฐœ์š” ํŽ˜์ด์ง€๋กœ ๋Œ์•„๊ฐ€ catalog-api ๋งˆ์ดํฌ๋กœ ์„œ๋น„์Šค ์šฉ ํŒŒ์ดํ”„ ๋ผ์ธ์„ ํด๋ฆญํ•˜์—ฌ ์ปค๋ฐ‹์— ๋Œ€ํ•œ ์‘๋‹ต์œผ๋กœ ์Šคํ…Œ์ด์ง€๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ 3 ๊ฐœ์˜ ๊ตฌ์„ฑ๋œ ๋‹จ๊ณ„ (dev, test ๋ฐ prod) ์ „์ฒด์— ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.

10 ๋‹จ๊ณ„ : DevOps Insights ์ •๋ณด ํƒ์ƒ‰ํ•˜๊ธฐ

DevOps Insights ๋Œ€์‹œ ๋ณด๋“œ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๋ด…๋‹ˆ๋‹ค. ๊ฐ ํŽ˜์ด์ง€๋ฅผ๋ณด๊ณ  ๋นŒ๋“œ ๋ฐ ๋ฐฐํฌ์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์•Œ์•„๋ณด์‹ญ์‹œ์˜ค.

  1. ํˆด์ฒด์ธ ๊ฐœ์š” ํŽ˜์ด์ง€์—์„œ DevOps Insights๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  2. ๋นŒ๋“œ ํ™•์ธ ํŽ˜์ด์ง€์—์„œ ๋นŒ๋“œ ์ƒํƒœ ๋ฐ ํ•ด๋‹น ๋นŒ๋“œ์—์„œ ์‹คํ–‰ ๋œ ํ…Œ์ŠคํŠธ๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ๋นŒ๋“œ ๋ฒˆํ˜ธ๋ฅผ ํด๋ฆญํ•˜๋ฉด ํˆด์ฒด์ธ์œผ๋กœ ๋Œ์•„๊ฐˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    ๋นŒ๋“œ ํ™•์ธ ํŽ˜์ด์ง€
  3. ํƒ์ƒ‰์—์„œ ๋ฐฐํฌ ํ™•์ธ ํ•ญ๋ชฉ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค. ํ™˜๊ฒฝ ํ’€๋‹ค์šด ๋ฉ”๋‰ด๋ฅผ ํด๋ฆญํ•˜์—ฌ ๋ฐฐํฌ ๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ํ•ด๋‹น ํ™˜๊ฒฝ์—์„œ ์‹คํ–‰ ๋œ ํ…Œ์ŠคํŠธ ์‚ฌ๋ก€๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
    ํ™•์ธ ๋ฐฐํฌ ํŽ˜์ด์ง€
  4. ํƒ์ƒ‰์—์„œ ์ •์ฑ… ํ•ญ๋ชฉ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค. ์ •์ฑ… ๋ชฉ๋ก์„ ์ฐธ์กฐํ•ฉ๋‹ˆ๋‹ค.
    ์ •์ฑ… ํŽ˜์ด์ง€
  5. ์ •์ฑ…์„ ํด๋ฆญํ•˜๋ฉด ์ •์ฑ…์„ ๊ตฌ์„ฑํ•˜๋Š” ๊ทœ์น™์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    ์ •์ฑ… ํŽ˜์ด์ง€์˜ ๊ทœ์น™
  6. ๋‹จ์œ„ ํ…Œ์ŠคํŠธ ๊ทœ์น™์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
    ๋‹จ์œ„ ํ…Œ์ŠคํŠธ ๊ทœ์น™
  7. ์ฝ”๋“œ ์ปค๋ฒ„๋ฆฌ์ง€ ๊ทœ์น™์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
    ์ฝ”๋“œ ์ปค๋ฒ„๋ฆฌ์ง€ ๊ทœ์น™

DevOps Insights ์‚ฌ์šฉ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ Bluemix์˜ DevOps Insights ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•ฉ๋‹ˆ๋‹ค.

์š”์•ฝ

์ด ํŠœํ† ๋ฆฌ์–ผ์—์„œ๋Š” ๋„๊ตฌ ์ฒด์ธ์„ ๋งŒ๋“ค๊ณ  Sauce Labs, Delivery Pipeline, GitHub ๋ฐ Slack๊ณผ์˜ ํ†ตํ•ฉ์„ ๊ตฌ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. Eclipse Orion Web IDE ํ†ตํ•ฉ์—๋Š” ๊ตฌ์„ฑ์ด ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์„ธ ๊ฐœ์˜ ๋งˆ์ดํฌ๋กœ ์„œ๋น„์Šค๋ฅผ ์ž๋™์œผ๋กœ ๋ฐฐ์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค.

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

์ฐธ๊ณ  : ํˆด์ฒด์ธ์œผ๋กœ ํ•  ์ˆ˜์žˆ๋Š” ์ผ์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์•Œ์•„ ๋ณด๋ ค๋ฉด ๋‹ค์Œ ํŠœํ† ๋ฆฌ์–ผ์„ ์‚ฌ์šฉํ•ด ๋ณด์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

์›๋ฌธ

๋ณธ ํฌ์ŠคํŒ…์€ Create and use a microservices toolchain์„ ๋ฒˆ์—ญํ•œ ๋‚ด์šฉ์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.