일관된 인프라를 유지하기 위해 CloudFormation 템플릿 태그를 리소스 태그와 일치시키고 싶습니다.
해결 방법
영향을 받는 스택에 드리프트가 있는지 확인
다음 단계를 완료하십시오.
- AWS Health Dashboard를 열어 영향을 받는 리소스 데이터를 가져옵니다.
- CloudFormation 스택에서 드리프트를 탐지하고 드리프트 결과를 검토합니다.
참고: 드리프트 탐지에 대한 자세한 내용은 리소스 유형 지원 및 개별 스택 리소스의 드리프트 탐지를 참조하십시오.
- 리소스의 드리프트 상태가 MODIFIED인 경우 리소스를 선택하고 드리프트 세부 정보 보기를 선택하여 차이점을 검토합니다.
드리프트 탐지를 지원하는 리소스의 리소스 태그 일치
드리프트 탐지를 지원하는 리소스의 경우 다음 시나리오에서 템플릿 태그를 리소스 태그와 일치시킬 수 있습니다.
- 리소스의 드리프트 상태가 MODIFIED이고 리소스가 드리프트 탐지를 지원합니다.
- 리소스에 REMOVE 차이 유형 상태 코드의 태그 변경 사항이 있습니다.
- 리소스에 REMOVE 레이블이 지정되지 않은 태그 변경 사항이 있으며 실제의 각 태그 키가 예상 내에 있습니다.
중요: 다음 단계는 다른 리소스에서 스택 수준 태그를 일시적으로 제거합니다. 서비스가 스택 수준 태그를 사용하는 경우 리소스의 태그를 수정하십시오.
리소스 태그를 일치시키려면 다음 단계를 완료하십시오.
- 원본 CloudFormation 템플릿의 복사본을 저장합니다.
- 복사한 CloudFormation 템플릿에서 REMOVE 레이블이 있는 리소스 수준 태그를 삭제합니다.
- 새 템플릿으로 스택을 업데이트한 다음, REMOVE 레이블이 있는 스택 수준 태그를 삭제합니다.
중요: 실패한 태그를 다시 적용해야 합니다.
- 원본 템플릿으로 다시 변경한 다음, 스택 수준 태그가 추가된 템플릿을 재배포합니다.
리소스의 태그 수정
다음과 같은 시나리오에서 리소스의 태그를 수정할 수 있습니다.
- 리소스에 REMOVE 레이블이 지정된 태그 변경 사항이 있습니다. 리소스의 태그 변경 사항은 예상 상태의 태그 키가 실제 상태가 아님을 보여줍니다.
- 리소스에 REMOVE 레이블이 지정되지 않은 태그 변경 사항이 있습니다. 태그 키는 예상 상태와 실제 상태 둘 다이지만 값이 서로 다릅니다.
드리프트 탐지 세부 정보를 기반으로 리소스에서 다음 작업을 수행하십시오.
- 예상 아래에 나열되어 있고 실제에서 누락된 각 태그 키 및 값을 추가합니다.
- 실제 아래에 나열되어 있고 예상 아래에 누락된 각 태그 키를 제거합니다.
- 예상 및 실제 아래에 나열되어 있고 값이 서로 다른 각 태그 키의 경우 태그를 예상으로 업데이트합니다.
리소스의 태그를 수정하려면 다음 단계를 완료하십시오.
- CloudFormation 콘솔을 엽니다.
- 탐색 창에서 스택을 선택한 다음, 해당 스택을 선택합니다.
- 리소스를 선택한 다음, 영향을 받는 리소스의 물리적 ID 링크를 선택합니다.
- 리소스의 태그 섹션에서 각 태그를 수동으로 추가, 제거 또는 업데이트합니다. 태그는 드리프트 세부 정보의 예상 아래에 나열된 상태와 일치해야 합니다.
- 저장을 선택합니다.
스택과 리소스가 일치하는지 확인하려면 드리프트 탐지 작업을 다시 수행하는 것이 좋습니다.
드리프트 탐지를 지원하지 않는 리소스의 리소스 태그 일치
참고: 다음 업데이트는 충분한 권한이 없을 때 적용에 실패한 태그를 다시 적용합니다.
리소스가 드리프트 탐지를 지원하지 않는 경우 CloudFormation 템플릿 복사본을 배포된 리소스와 비교하십시오.
리소스에 태그가 없지만 CloudFormation 템플릿에 태그가 있는 경우 다음 단계를 완료하십시오.
- CloudFormation 템플릿에서 모든 태그를 제거합니다.
- 복사한 CloudFormation 템플릿을 적용하여 스택을 업데이트합니다. 그런 다음, 스택 수준 태그를 제거합니다.
- 원본 CloudFormation 템플릿으로 다시 변경한 다음, 모든 스택 수준 태그가 다시 추가된 템플릿을 재배포합니다.
리소스의 태그가 스택의 태그와 일치하지 않는 경우 다음 단계를 완료하십시오.
- 스택 수준 태그를 제거하여 스택을 업데이트합니다.
- CloudFormation 템플릿에서 리소스의 태그와 일치하도록 태그를 수정합니다.
- 새 CloudFormation 템플릿으로 스택을 업데이트합니다. 스택 수준 태그를 다시 추가했는지 확인합니다.