1. 개요
CLI로 일련의 작업을 수행하는 과정에서 인스턴스 프로파일을 생성하고 role을 추가한 뒤, 바로 후속 작업을 실행할 때 오류가 발생했다.
인스턴스 프로파일 자체는 정상적으로 생성되었고 role 추가 명령도 성공했지만, 이어지는 단계에서 해당 role이 아직 인식되지 않는 것처럼 동작했다.
2. 원인과 해결
- 인스턴스 프로파일에 role을 추가한 뒤 실제로 반영되기까지 약간의 시간이 걸린다.
- 즉시 다음 작업을 실행하면 IAM 변경 사항이 아직 전파되지 않아 실패할 수 있다.
- 후속 작업 전에 sleep 시간을 적용한 뒤 문제가 해결되었다.
- 테스트한 환경에서는 sleep 시간을 7초로 두었을 때 성공했다. 5초로는 간헐적으로 실패하는 경우가 있었다.
3. 보완 사항
이 문제는 AWS IAM 리소스의 전파 지연, 즉 eventual consistency와 관련된 상황으로 볼 수 있다. 따라서 단순히 고정된 sleep을 넣는 방식도 가능하지만, 자동화 스크립트에서는 재시도 로직을 함께 두는 편이 더 안전하다.
예를 들어 후속 작업이 실패했을 때 바로 종료하지 않고, 짧은 대기 후 몇 차례 재시도하도록 구성하면 환경에 따라 반영 시간이 조금 더 길어지는 경우에도 대응할 수 있다. 다만 이 글의 경우에는 단순 sleep 7초 적용만으로 문제가 해결되었다.