Skip to main content

์กฐ์ง์—์„œ GitHub ํ˜ธ์ŠคํŠธํ˜• ์‹คํ–‰๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐœ์ธ ๋„คํŠธ์›Œํ‚น ์ •๋ณด

์กฐ์ง์ด Azure VNET(Virtual Network)์—์„œ GitHub ํ˜ธ์ŠคํŠธํ˜• ์‹คํ–‰๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ๊ฐœ์ธ ๋„คํŠธ์›Œํฌ ๊ตฌ์„ฑ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ˆ„๊ฐ€ ์ด ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‚˜์š”?

์—”ํ„ฐํ”„๋ผ์ด์ฆˆ์—์„œ ์กฐ์ง์˜ ์กฐ์ง ์†Œ์œ ์ž๋Š” ์กฐ์ง ์ˆ˜์ค€์—์„œ GitHub ํ˜ธ์ŠคํŠธํ˜• ์‹คํ–‰๊ธฐ์šฉ Azure ๊ฐœ์ธ ๋„คํŠธ์›Œํ‚น์„ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

GitHub ํ˜ธ์ŠคํŠธํ˜• ์‹คํ–‰๊ธฐ์— ๋Œ€ํ•œ Azure ๊ฐœ์ธ ๋„คํŠธ์›Œํ‚น ๊ตฌ์„ฑ

Azure VNET์—์„œ GitHub ํ˜ธ์ŠคํŠธํ˜• ์‹คํ–‰๊ธฐ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์‹คํ–‰๊ธฐ ๋„คํŠธ์›Œํ‚น ์ •์ฑ…์˜ ๋ชจ๋“  ๊ถŒํ•œ์„ ์ œ๊ณตํ•˜๋ฉด์„œ CI/CD์˜ GitHub๊ด€๋ฆฌ ์ธํ”„๋ผ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Azure VNET์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ Azure ๋ฌธ์„œ์˜ Azure Virtual Network๋ž€?์„ ์ฐธ์กฐํ•˜์„ธ์š”.

์—ฌ๋Ÿฌ VNET ์„œ๋ธŒ๋„ท์„ GitHub์— ์—ฐ๊ฒฐํ•˜๊ณ  ์‹คํ–‰๊ธฐ ๊ทธ๋ฃน์„ ํ†ตํ•ด ์‹คํ–‰๊ธฐ์— ๋Œ€ํ•œ ํ”„๋ผ์ด๋น— ๋ฆฌ์†Œ์Šค ์•ก์„ธ์Šค๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹คํ–‰๊ธฐ ๊ทธ๋ฃน์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋” ํฐ ์‹คํ–‰๊ธฐ ์•ก์„ธ์Šค ์ œ์–ด์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

Azure VNET ๋‚ด์—์„œ GitHub ํ˜ธ์ŠคํŠธ ์‹คํ–‰๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋‹ค์Œ ์ž‘์—…์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์ธํ„ฐ๋„ท ํฌํŠธ๋ฅผ ์—ด์ง€ ์•Š๊ณ  ์‹คํ–‰๊ธฐ๋ฅผ Azure VNET ๋‚ด์˜ ๋ฆฌ์†Œ์Šค์— ๋น„๊ณต๊ฐœ๋กœ ์—ฐ๊ฒฐํ•˜๋ฉฐ, ์—ฌ๊ธฐ์—๋Š” Azure VNET์—์„œ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋Š” ์˜จ-ํ”„๋ ˆ๋ฏธ์Šค ๋ฆฌ์†Œ์Šค๋„ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.
  • GitHub ํ˜ธ์ŠคํŠธ ์‹คํ–‰๊ธฐ์˜ ์•ก์„ธ์Šค๋ฅผ ๋น„๋กฏํ•ด, ์•„์›ƒ๋ฐ”์šด๋“œ ๋„คํŠธ์›Œํฌ ์ •์ฑ… ์™„์ „ ์ œ์–ด๊ฐ€ ๊ฐ€๋Šฅํ•œ ์—ฐ๊ฒฐ์„ ์ œํ•œํ•ฉ๋‹ˆ๋‹ค.
  • GitHub ํ˜ธ์ŠคํŠธ ์‹คํ–‰๊ธฐ ๋„คํŠธ์›Œํฌ ๋กœ๊ทธ๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ณ  ์‹คํ–‰๊ธฐ์™€์˜ ๋ชจ๋“  ์—ฐ๊ฒฐ์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

Azure VNET์—์„œ ๋” ํฐ ์‹คํ–‰๊ธฐ ์‚ฌ์šฉ ์ •๋ณด

Azure VNET์—์„œ๋Š” 2-64 vCPU Ubuntu ๋ฐ Windows ์‹คํ–‰๊ธฐ๊ฐ€ ์ง€์›๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์‹คํ–‰๊ธฐ ์œ ํ˜•์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋Œ€ํ˜• ์‹คํ–‰๊ธฐ์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

GitHub-ํ˜ธ์ŠคํŠธํ˜• ์‹คํ–‰๊ธฐ์šฉ ๊ฐœ์ธ ๋„คํŠธ์›Œํ‚น์€ ๋Œ€ํ˜• ์‹คํ–‰๊ธฐ์— ๊ณ ์ • IP ์ฃผ์†Œ๋ฅผ ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋Œ€ํ˜• ์‹คํ–‰๊ธฐ๋ฅผ ์œ„ํ•œ ๊ธฐ๋ณธ ๊ตฌ์„ฑ์ธ ๋™์  IP ์ฃผ์†Œ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋Œ€ํ˜• ์‹คํ–‰๊ธฐ์˜ ๋„คํŠธ์›Œํ‚น์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋Œ€ํ˜• ์‹คํ–‰๊ธฐ์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

๋„คํŠธ์›Œํฌ ํ†ต์‹  ์ •๋ณด

GitHub ๋„คํŠธ์›Œํฌ์™€ VNET ๊ฐ„์˜ ํ†ต์‹ ์„ ์šฉ์ดํ•˜๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด GitHub ํ˜ธ์ŠคํŠธ ์‹คํ–‰๊ธฐ์˜ NIC(๋„คํŠธ์›Œํฌ ์ธํ„ฐํŽ˜์ด์Šค ์นด๋“œ)๊ฐ€ Azure VNET์— ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.

NIC๋Š” VNET ๋‚ด์— ์žˆ์œผ๋ฏ€๋กœ GitHub๋Š” ์ธ๋ฐ”์šด๋“œ ์—ฐ๊ฒฐ์„ ์ฐจ๋‹จํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ Azure ๊ฐ€์ƒ ๋จธ์‹ ์€ ๋™์ผํ•œ VNET์˜ ์ธ๋ฐ”์šด๋“œ ์—ฐ๊ฒฐ์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ Microsoft Learn์˜ AllowVNetInBound๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”. ์‹คํ–‰๊ธฐ์—์„œ ๋ชจ๋“  ์ธ๋ฐ”์šด๋“œ ์—ฐ๊ฒฐ์„ ๋ช…์‹œ์ ์œผ๋กœ ์ฐจ๋‹จํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. GitHub๋Š” ์ด๋Ÿฌํ•œ ์ปดํ“จํ„ฐ์— ๋Œ€ํ•œ ์ธ๋ฐ”์šด๋“œ ์—ฐ๊ฒฐ์ด ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

NIC๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด Azure VM(๊ฐ€์ƒ ๋จธ์‹ )์—์„œ ์ธํ„ฐ๋„ท, Azure ๋ฐ ์˜จ-ํ”„๋ ˆ๋ฏธ์Šค ๋ฆฌ์†Œ์Šค์™€ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋ชจ๋“  ํ†ต์‹ ์ด ๋„คํŠธ์›Œํฌ ๊ฒฝ๊ณ„ ๋‚ด์—์„œ ๋น„๊ณต๊ฐœ๋กœ ์œ ์ง€๋˜๊ณ  VNET์— ์ ์šฉ๋œ ๋„คํŠธ์›Œํ‚น ์ •์ฑ…๋„ ์‹คํ–‰๊ธฐ์— ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋„คํŠธ์›Œํฌ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ Microsoft Learn์˜ ๋„คํŠธ์›Œํฌ ์ธํ„ฐํŽ˜์ด์Šค ์„ค์ • ๋ณ€๊ฒฝ์„ ์ฐธ์กฐํ•˜์„ธ์š”.

์ฐธ๊ณ  ํ•ญ๋ชฉ

2025๋…„ 11์›”๋ถ€ํ„ฐ GitHub Actions ์„œ๋น„์Šค์—์„œ ๋งŒ๋“  NIC๋Š” ๋” ์ด์ƒ Azure ๊ตฌ๋…์— ํ‘œ์‹œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์•ž์œผ๋กœ NIC๋Š” ์ด์ œ ์„œ๋น„์Šค ๊ตฌ๋…์— ํ”„๋กœ๋น„์ „๋˜๊ณ  ์„œ๋ธŒ๋„ท์—์„œ IP ์ฃผ์†Œ๊ฐ€ ํ• ๋‹น๋ฉ๋‹ˆ๋‹ค.

GitHub์™€ ํ”„๋ผ์ด๋น— ๋„คํŠธ์›Œํฌ ๊ฐ„์˜ ๋„คํŠธ์›Œํฌ ํ†ต์‹  ๋‹ค์ด์–ด๊ทธ๋žจ ๊ฐ ๋‹จ๊ณ„์—๋Š” ๋ฒˆํ˜ธ๊ฐ€ ๋งค๊ฒจ์ ธ ์žˆ์œผ๋ฉฐ, ์ด๋Š” ๋‹ค์ด์–ด๊ทธ๋žจ ์•„๋ž˜์— ๋‚˜์—ด๋œ ๋‹จ๊ณ„์— ํ•ด๋‹นํ•ฉ๋‹ˆ๋‹ค.

  1. GitHub Actions ์›Œํฌํ”Œ๋กœ๊ฐ€ ํŠธ๋ฆฌ๊ฑฐ๋ฉ๋‹ˆ๋‹ค.
  2. GitHub Actions ์„œ๋น„์Šค๋Š” ์‹คํ–‰๊ธฐ๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค.
  3. ์‹คํ–‰๊ธฐ ์„œ๋น„์Šค๋Š” GitHub ํ˜ธ์ŠคํŠธ ์‹คํ–‰๊ธฐ๊ธฐ์˜ NIC(๋„คํŠธ์›Œํฌ ์ธํ„ฐํŽ˜์ด์Šค ์นด๋“œ)๋ฅผ Azure VNET์— ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค.
  4. ์‹คํ–‰๊ธฐ ์—์ด์ „ํŠธ๊ฐ€ ์›Œํฌํ”Œ๋กœ ์ž‘์—…์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. GitHub Actions ์„œ๋น„์Šค๋Š” ์ž‘์—…์„ ํ์— ๋Œ€๊ธฐํ•ฉ๋‹ˆ๋‹ค.
  5. ์‹คํ–‰๊ธฐ๋Š” GitHub Actions ์„œ๋น„์Šค๋กœ ๋กœ๊ทธ๋ฅผ ๋‹ค์‹œ ๋ณด๋ƒ…๋‹ˆ๋‹ค.
  6. NIC๋Š” ์˜จ-ํ”„๋ ˆ๋ฏธ์Šค ๋ฆฌ์†Œ์Šค์— ์•ก์„ธ์Šคํ•ฉ๋‹ˆ๋‹ค.

์ง€์›๋˜๋Š” ์ง€์—ญ ์ •๋ณด

GitHub Actions ์„œ๋น„์Šค๋Š” Azure์—์„œ ์ œ๊ณตํ•˜๋Š” ๋ชจ๋“  ์ง€์—ญ์˜ ํ•˜์œ„ ์ง‘ํ•ฉ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. GitHub Actions ์„œ๋น„์Šค์™€ ์„œ๋ธŒ๋„ท ๊ฐ„์˜ ํ†ต์‹ ์„ ์šฉ์ดํ•˜๊ฒŒ ํ•˜๋ ค๋ฉด ์„œ๋ธŒ๋„ท์ด ์ง€์›๋˜๋Š” ๋‹ค์Œ ์ง€์—ญ ์ค‘ ํ•˜๋‚˜์— ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ  ํ•ญ๋ชฉ

GHE.com์—์„œ ๋ฐ์ดํ„ฐ ๋ณด์กด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ์ง€์›๋˜๋Š” ์ง€์—ญ์€ ๋‹ค๋ฆ…๋‹ˆ๋‹ค. GHE.com์˜ ๋„คํŠธ์›Œํฌ ์„ธ๋ถ€ ์ •๋ณด์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

๋‹ค์Œ ์ง€์—ญ์€ GitHub.com์—์„œ ์ง€์›๋ฉ๋‹ˆ๋‹ค.

  • AustraliaEast
  • BrazilSouth
  • CanadaCentral
  • CanadaEast
  • CentralUs
  • EastAsia
  • EastUs
  • EastUs2
  • FranceCentral
  • GermanyWestCentral
  • JapanWest
  • KoreaCentral
  • NorthCentralUs
  • NorthEurope
  • NorwayEast
  • SouthCentralUs
  • SoutheastAsia
  • SouthIndia
  • SwedenCentral
  • SwitzerlandNorth
  • UkSouth
  • UkWest
  • WestUs
  • WestUs2
  • WestUs3

Azure ํ”„๋ผ์ด๋น— ๋„คํŠธ์›Œํ‚น์€ ๋‹ค์Œ ์ง€์—ญ์—์„œ GPU ์‹คํ–‰๊ธฐ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

  • EastUs
  • NorthCentralUs
  • SouthCentralUs
  • WestUs

Azure ๊ฐœ์ธ ๋„คํŠธ์›Œํ‚น์€ ๋‹ค์Œ ์ง€์—ญ์—์„œ arm64 ์‹คํ–‰๊ธฐ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

  • CentralUs
  • EastUs
  • EastUs2
  • NorthCentralUs
  • SouthCentralUs
  • WestUs
  • WestUs2
  • WestUs3

์›ํ•˜๋Š” ์ง€์—ญ์ด ์ง€์›๋˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ์ด GitHub ์–‘์‹์—์„œ ์ƒˆ ์ง€์—ญ ๊ฐ€์šฉ์„ฑ์— ๋Œ€ํ•œ ์š”์ฒญ์„ ์ œ์ถœํ•˜์„ธ์š”. ๋˜ํ•œ ๊ธ€๋กœ๋ฒŒ ๊ฐ€์ƒ ๋„คํŠธ์›Œํฌ ํ”ผ์–ด๋ง์„ ์‚ฌ์šฉํ•˜์—ฌ Azure ์ง€์—ญ ๊ฐ„์— ๊ฐ€์ƒ ๋„คํŠธ์›Œํฌ๋ฅผ ์—ฐ๊ฒฐํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ Azure ์„ค๋ช…์„œ์˜ ๊ฐ€์ƒ ๋„คํŠธ์›Œํฌ ํ”ผ์–ด๋ง์„ ์ฐธ์กฐํ•˜์„ธ์š”.

GitHub Actions ์„œ๋น„์Šค ๊ถŒํ•œ ์ •๋ณด

NIC๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ๋ฐฐํฌํ•˜๊ณ  ์„œ๋ธŒ๋„ท์— NIC๋ฅผ ์กฐ์ธํ•˜๊ธฐ ์œ„ํ•ด GitHub Actions ์„œ๋น„์Šค๋Š” Azure ๊ตฌ๋…์—์„œ ๋‹ค์Œ Azure RBAC(์—ญํ•  ๊ธฐ๋ฐ˜ ์•ก์„ธ์Šค ์ œ์–ด) ๊ถŒํ•œ์„ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค. Azure ๋ฆฌ์†Œ์Šค์˜ ์„ธ๋ถ„ํ™”๋œ ์•ก์„ธ์Šค ๊ด€๋ฆฌ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ Azure ์„ค๋ช…์„œ์—์„œ Azure RBAC๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

  • GitHub.Network/operations/read
  • GitHub.Network/networkSettings/read
  • GitHub.Network/networkSettings/write
  • GitHub.Network/networkSettings/delete
  • GitHub.Network/RegisteredSubscriptions/read
  • Microsoft.Network/locations/operations/read
  • Microsoft.Network/locations/operationResults/read
  • Microsoft.Network/locations/usages/read
  • Microsoft.Network/networkInterfaces/read
  • Microsoft.Network/networkInterfaces/write
  • Microsoft.Network/networkInterfaces/delete
  • Microsoft.Network/networkInterfaces/join/action
  • Microsoft.Network/networkSecurityGroups/join/action
  • Microsoft.Network/networkSecurityGroups/read
  • Microsoft.Network/publicIpAddresses/read
  • Microsoft.Network/publicIpAddresses/write
  • Microsoft.Network/publicIPAddresses/join/action
  • Microsoft.Network/routeTables/join/action
  • Microsoft.Network/virtualNetworks/read
  • Microsoft.Network/virtualNetworks/subnets/join/action
  • Microsoft.Network/virtualNetworks/subnets/read
  • Microsoft.Network/virtualNetworks/subnets/write
  • Microsoft.Network/virtualNetworks/subnets/serviceAssociationLinks/delete
  • Microsoft.Network/virtualNetworks/subnets/serviceAssociationLinks/read
  • Microsoft.Network/virtualNetworks/subnets/serviceAssociationLinks/write
  • Microsoft.Network/virtualNetworks/subnets/serviceAssociationLinks/details/read
  • Microsoft.Network/virtualNetworks/subnets/serviceAssociationLinks/validate/action
  • Microsoft.Resources/subscriptions/resourceGroups/read
  • Microsoft.Resources/subscriptions/resourcegroups/deployments/read
  • Microsoft.Resources/subscriptions/resourcegroups/deployments/write
  • Microsoft.Resources/subscriptions/resourcegroups/deployments/operations/read
  • Microsoft.Resources/deployments/read
  • Microsoft.Resources/deployments/write
  • Microsoft.Resources/deployments/operationStatuses/read

๋‹ค์Œ ๊ถŒํ•œ์€ Azure ํ…Œ๋„ŒํŠธ์— ์žˆ๋Š” ๋‘ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์žˆ์Šต๋‹ˆ๋‹ค. Azure ํ”„๋ผ์ด๋น— ๋„คํŠธ์›Œํ‚น์„ ๊ตฌ์„ฑํ•œ ํ›„ Azure ํ…Œ๋„ŒํŠธ์— ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

  • GitHub CPS Network Service ID: 85c49807-809d-4249-86e7-192762525474
  • GitHub Actions API ID: 4435c199-c3da-46b9-a61d-76de3f2c9f82

VNET์˜ ๋„คํŠธ์›Œํฌ ์ •์ฑ… ์‚ฌ์šฉ

GitHub ํ˜ธ์ŠคํŠธ ์‹คํ–‰๊ธฐ NIC๊ฐ€ Azure VNET์— ๋ฐฐํฌ๋˜๋ฏ€๋กœ VNET์— ์ ์šฉ๋œ ๋„คํŠธ์›Œํ‚น ์ •์ฑ…๋„ ์‹คํ–‰๊ธฐ์— ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด VNET์ด Azure ExpressRoute๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์˜จ-ํ”„๋ ˆ๋ฏธ์Šค ๋ฆฌ์†Œ์Šค(์˜ˆ: Artifactory)์— ๋Œ€ํ•œ ์•ก์„ธ์Šค๋ฅผ ์ œ๊ณตํ•˜๋„๋ก ๊ตฌ์„ฑ๋˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ์•ก์„ธ์Šค๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด VPN ํ„ฐ๋„์— ์—ฐ๊ฒฐ๋œ ๊ฒฝ์šฐ, ํ•ด๋‹น ์•ก์„ธ์Šค ์ •์ฑ…๋„ ์‹คํ–‰๊ธฐ์—๋„ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ VNET์˜ NSG(๋„คํŠธ์›Œํฌ ๋ณด์•ˆ ๊ทธ๋ฃน)์— ์ ์šฉ๋˜๋Š” ๋ชจ๋“  ์•„์›ƒ๋ฐ”์šด๋“œ ๊ทœ์น™๋„ ์ ์šฉ๋˜๋ฏ€๋กœ ์‹คํ–‰๊ธฐ์—์„œ ์•„์›ƒ๋ฐ”์šด๋“œ ์•ก์„ธ์Šค๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

VNET์— ๋Œ€ํ•œ ๋„คํŠธ์›Œํฌ ๋กœ๊ทธ ๋ชจ๋‹ˆํ„ฐ๋ง์„ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •ํ•œ ๊ฒฝ์šฐ ์‹คํ–‰๊ธฐ ๋„คํŠธ์›Œํฌ ํŠธ๋ž˜ํ”ฝ์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

GitHub ํ˜ธ์ŠคํŒ… ์‹คํ–‰๊ธฐ๋Š” ๋„คํŠธ์›Œํฌ์—์„œ ์‚ฌ์šฉ ์ค‘์ธ ์•„์›ƒ๋ฐ”์šด๋“œ ์ œ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋„คํŠธ์›Œํฌ์—์„œ Azure์˜ ๊ธฐ๋ณธ ์•„์›ƒ๋ฐ”์šด๋“œ ์•ก์„ธ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ IP๋Š” ์˜ˆ์ธกํ•  ์ˆ˜ ์—†์œผ๋ฉฐ GitHub IP ํ—ˆ์šฉ ๋ชฉ๋ก์— ์ถ”๊ฐ€ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์•ˆ์ •์ ์ธ ์•„์›ƒ๋ฐ”์šด๋“œ IP ์‚ฌ์šฉ์— ๋Œ€ํ•œ ๊ถŒ์žฅ ์‚ฌํ•ญ์€ Azure ์„ค๋ช…์„œ์˜ ๊ธฐ๋ณธ ์•„์›ƒ๋ฐ”์šด๋“œ ์•ก์„ธ์Šค๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

Azure VNET์—์„œ GitHub ํ˜ธ์ŠคํŠธ ์‹คํ–‰๊ธฐ ์‚ฌ์šฉ

Azure VNET์—์„œ GitHub ํ˜ธ์ŠคํŠธํ˜• ์‹คํ–‰๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด Azure ๋ฆฌ์†Œ์Šค๋ฅผ ๊ตฌ์„ฑํ•œ ๋‹ค์Œ GitHub์—์„œ ๋„คํŠธ์›Œํ‚น ๊ตฌ์„ฑ์„ ๋งŒ๋“ค์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

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

Enterprise ์ˆ˜์ค€์—์„œ Azure ๊ฐœ์ธ ๋„คํŠธ์›Œํ‚น์„ ๊ตฌ์„ฑํ•˜๋Š” ์ ˆ์ฐจ๋Š” ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ์˜ GitHub ํ˜ธ์ŠคํŠธํ˜• ์‹คํ–‰๊ธฐ์— ๋Œ€ํ•œ ๊ฐœ์ธ ๋„คํŠธ์›Œํ‚น ๊ตฌ์„ฑ์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

์กฐ์ง ์ˆ˜์ค€์—์„œ Azure ๊ฐœ์ธ ๋„คํŠธ์›Œํ‚น์„ ๊ตฌ์„ฑํ•˜๋Š” ์ ˆ์ฐจ๋Š” ์กฐ์ง์—์„œ GitHub ํ˜ธ์ŠคํŠธํ˜• ์‹คํ–‰๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐœ์ธ ๋„คํŠธ์›Œํ‚น ๊ตฌ์„ฑ์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.