리소스 네이밍 컨벤션

김기수·2026년 4월 2일

1. 네이밍 컨벤션이 중요한 이유

  • 명확성: 이름만 보고도 해당 리소스의 역할과 환경(운영/개발 등)을 즉시 파악할 수 있습니다.
  • 일관성: 팀 단위 프로젝트에서 표준화된 방식을 유지하여 혼선을 방지합니다.
  • 효율성: 자동화 도구나 스크립트로 리소스를 관리할 때 규칙적인 이름이 필수적입니다.
  • 확장성: 인프라가 커져도 체계적인 관리가 가능합니다.

2. 일반적인 가이드라인

  • 설명적인 이름 사용: server1 대신 web-prod-server1처럼 구체적으로 지으세요.
  • 소문자 사용: 대소문자 구문으로 인한 문제를 방지하기 위해 가급적 소문자만 사용합니다.
  • 특수문자 제한: 공백이나 특수문자 대신 하이픈(-)이나 언더바(_)를 권장합니다.
  • 환경 정보 포함: 이름에 dev, test, prod 등을 넣어 배포 단계를 구분하세요.
  • 태그(Tag) 활용: 이름에 다 담지 못한 메타데이터는 AWS Tag 기능을 적극 활용합니다.

3. 주요 리소스별 권장 형식 (예시)

리소스 종류권장 형식 (Naming Format)예시 (Example)
EC2 인스턴스[프로젝트]-[환경]-[역할]-[순번]olive-prod-web-01
S3 버킷[프로젝트]-[환경]-[데이터타입]-[식별자]olive-prod-logs-backup
IAM 역할[역할타입]-[프로젝트]-[환경]admin-olive-prod
RDS 인스턴스[프로젝트]-[환경]-[DB엔진]-[순번]olive-prod-mysql-db01
Lambda[프로젝트]-[환경]-[기능명]olive-prod-process-upload
VPC / Subnet[프로젝트]-[환경]-vpc / -subnet-[존]olive-prod-vpc / olive-prod-subnet-a
Security Group[프로젝트]-[환경]-sg-[용도]olive-prod-sg-web
Load Balancer[프로젝트]-[환경]-elb-[용도]olive-prod-elb-web

4. 추가 팁

  • 문서화: 결정한 규칙을 팀원들과 공유할 수 있게 문서로 남기세요.
  • 자동화: 지금 공부 중이신 Terraform 같은 IaC 도구를 사용할 때 이 규칙을 변수(variable)화해서 적용하면 실수를 줄일 수 있습니다.
profile
엄청난 클라우드 고수

0개의 댓글