CFn의 반환 값 (Ref, Fn::GetAtt 속성)을 조금 알았으므로 공유

3142 단어 CloudFormationAWS

CFn의 반환 값 (Ref, Fn :: GetAtt 속성) 설명



반환값이란, 지정되면 뭔가의 값을 돌려주는 값이라고 하는 이미지입니다.



자판기에서 버튼 누르면 지정한 것에 따라 음료를 제공해주는 느낌? 좋은 예가 떠오르지 않습니다 (웃음)

GetAtt는 리소스별로 정해진 물리 ID(*)를 당기는 느낌입니다.



그래서 참조를 보러 가지 않으면 모릅니다.
Fn::GetAtt 속성 참조입니다.

매개변수
logicalNameOfResource
필요한 속성을 포함하는 자원의 논리 이름(논리 ID라고도 함).

attributeName
필요한 값이 있는 자원별 속성의 이름입니다. 각 리소스 유형에 사용할 수 있는 속성에 대한 자세한 내용은 리소스 참조 페이지에 설명되어 있습니다.

CFn의 템플릿 중에서 결정한 자원명을 논리명이라고 합니다.
attributeName은 자원 고유의 속성명으로, 지정되면 물리 ID로서 돌려줍니다
(※)물리 ID란 리소스가 만들어졌을 때 AWS에 의해 할당된 ID를 말한다. 아래 이미지에서 말하면이 네트워크 인터페이스 ID


!Ref는 CFn 템플릿에서 결정한 리소스 이름의 물리적 ID를 반환합니다.



Ref 속성 참조입니다.

내장 함수 Ref는 지정된 매개 변수 또는 리소스의 값을 반환합니다.

매개 변수의 논리 이름을 지정하면 매개 변수의 값을 반환합니다.

자원의 논리명을 지정하면(자), 그것은 그 자원을 참조하기 위해서 통상 사용할 수 있는 값을 돌려줍니다 (물리 ID).

이상을 바탕으로 EIP를 연결할 때의 방법을 살펴 보겠습니다.
아래는 "AWS::EC2::EIP"참조의 인용입니다.
여기에 표시되는 것이 반환값(참조값)이 됩니다.
리소스(예: AWS::EC2::EIP)별로 결정됩니다. 다른 리소스에서! GetAtt로 지정되면 참조됩니다.

반환값

Ref는
Elastic IP 주소를 이 리소스의 논리 ID를 내장 Ref 함수에 전달하면 Ref는 다음을 반환합니다.

For more information about using the Ref function, see Ref.

Fn::GetAtt
Fn::GetAtt 내장 함수는 이 유형의 지정된 속성 값을 반환합니다. 다음은 사용 가능한 속성과 샘플 리턴값의 목록입니다.

Fn::GetAtt 내장 함수를 사용하는 방법에 대한 자세한 내용은 Fn::GetAtt를 참조하십시오.

AllocationId
Amazon VPC에서 사용하는 주소 할당을 나타내기 위해 AWS에서 할당한 ID입니다. 이 값은 VPC의 Elastic IP 주소에 대해서만 반환됩니다. 예를 들어 eipalloc-5723d13e를 지정합니다.

예)


Resources:
  ControlPortAddress:
    Type: AWS::EC2::EIP
    Properties:
      Domain: vpc      
  AssociateControlPort:
    Type: AWS::EC2::EIPAssociation
    Properties:
      AllocationId: !GetAtt ControlPortAddress.AllocationId (読み:論理IDのAllocationIdという戻り値を参照)
      NetworkInterfaceId: !Ref controlXface(読み:論理名(controlXface)で作成された物理ID(※)を値として利用する)

controlXface:(これが作られたときに物流IDが付与される)
    Type: AWS::EC2::NetworkInterface
    Properties:
      SubnetId: !Ref SubnetId
      Description: Interface for controlling traffic such as SSH
      GroupSet: 
      - !Ref SSHSecurityGroup
      SourceDestCheck: true
      Tags:
      - Key: Network
        Value: Control

참고
AWS::EC2::EIPAssociation
AWS::EC2::EIP
Ref
Fn::GetAtt

좋은 웹페이지 즐겨찾기