클라우드(AWS)/SOA-C02

[AWS] CloudFormation "DependsOn" 속성이란? 쉽게 정리

찌르비 2025. 1. 15. 21:08
반응형

 

CloudFormation DependsOn 속성

DependsOn attribute

DependsOn은 CloudFormation에서 사용되는 속성이다.

CloudFormation로 특정 리소스를 만들려고 할 때, 다른 리소스가 생성된 후에 생성되도록 순서를 보장하는데 사용한다. 

  1. 순서 보장
  2. 의존 관계 관리

 

DependsOn 사용 예시)
RDS 생성 완료 후EC2가 생성되도록 설정

MyEC2Instance 리소스는 MyDBInstance 리소스가 완전히 생성된 후에만 생성된다.

Resources:
  # RDS MySQL 데이터베이스 인스턴스 생성
  MyDBInstance:
    Type: AWS::RDS::DBInstance
    Properties:
      DBInstanceClass: db.t2.micro             # RDS 인스턴스 클래스 (소규모 데이터베이스에 적합)
      Engine: MySQL                            # 데이터베이스 엔진 유형
      MasterUsername: admin                    # DB 관리자 계정 이름
      MasterUserPassword: password123          # DB 관리자 계정 비밀번호
      DBInstanceIdentifier: my-db-instance     # RDS 인스턴스 식별자 (고유 이름)

  # EC2 인스턴스 생성
  MyEC2Instance:
    Type: AWS::EC2::Instance
    Properties:
      InstanceType: t2.micro                   # EC2 인스턴스 유형 (저비용 옵션)
      ImageId: ami-0c55b159cbfafe1f0           # AMI ID (Amazon Linux 2)
      KeyName: my-key-pair                     # EC2 인스턴스에 사용할 SSH 키 페어 이름
    DependsOn: MyDBInstance                    # RDS 생성 완료 후에 EC2 인스턴스가 생성되도록 설정

 

 

 


🤔 문제

한 회사가 AWS CloudFormation 템플릿을 사용하여 Amazon EC2 인스턴스와 Amazon RDS DB 인스턴스를 프로비저닝하고 있습니다.
SysOps 관리자는 DB 인스턴스가 EC2 인스턴스가 시작되기 전에 생성되도록 템플릿을 업데이트해야 합니다.
이 요구 사항을 충족하려면 SysOps 관리자가 무엇을 해야 합니까?

 

  1. 템플릿에 대기 조건(wait condition)을 추가합니다. EC2 인스턴스 사용자 데이터 스크립트를 업데이트하여 EC2 인스턴스가 시작된 후 신호를 보냅니다.
  2. EC2 인스턴스 리소스에 DependsOn 속성을 추가하고, RDS 리소스의 논리 이름을 제공합니다.
  3. 템플릿의 리소스 순서를 변경하여 RDS 리소스가 EC2 인스턴스 리소스 앞에 나열되도록 합니다.
  4. 여러 템플릿을 생성합니다. AWS CloudFormation StackSets를 사용하여 첫 번째 스택이 완료된 후 두 번째 스택이 생성되도록 대기합니다.

정답

더보기

정답. 2번

반응형