피드로 돌아가기
Dev.toInfrastructure
원문 읽기
Azure CLI와 Bash 기반 Resource Group 생성 자동화 및 환경 분리 설계
How to Automate Azure Resource Group Creation with a Bash Script
AI 요약
Context
매주 5개 이상의 프로젝트에 대해 수동으로 Resource Group을 생성하던 클라우드 관리자의 운영 오버헤드 발생. 단일 Resource Group 사용 시 환경 간 접근 제어, 비용 추적 및 Lifecycle 관리의 복잡성 증가라는 한계점 노출.
Technical Solution
- 환경별 독립적 제어를 위해 프로젝트당 4개(Dev, Test, UAT, Production)의 Resource Group을 생성하는 격리 구조 설계
- 하드코딩 배제를 통한 재사용성 확보를 위해 프로젝트 명칭을 입력받아 Prefix로 활용하는 Parameterization 적용
- 런타임 오류 방지를 위한 az account show 기반의 Guard Clause 도입으로 Azure 인증 상태 사전 검증
- 빈 입력값으로 인한 잘못된 리소스 생성 방지를 위한 Input Validation 로직 구현
- 확장성 개선을 위해 반복적인 리소스 생성 구문을 배열 기반의 Loop 구조로 전환하는 리팩토링 제안
- 리소스 식별 용이성을 위해 [Project]-[Resource Type]-[Environment] 규칙의 명명 체계 적용
실천 포인트
- 리소스 생성 전 인증 상태와 필수 입력값에 대한 Guard Clause를 배치했는가 - Dev와 Production 환경이 논리적/물리적으로 완전히 격리된 구조인가 - 리소스 명명 규칙에 프로젝트, 타입, 환경 정보가 포함되어 식별 가능한가 - 생성 스크립트와 쌍을 이루는 Teardown(삭제) 스크립트가 함께 준비되었는가