.NET SDK를 사용하고 인스턴스를 생성 한 직후에 새 인스턴스에 태그를 지정하려고합니다. RunInstances 직후에 CreateTags를 사용합니다.AWS, EC2 - RunInstances 이후에 CreateTags
대개의 경우 작동하지만 대개 인스턴스 ID가 유효하지 않은 오류가 발생합니다 (나중에 콘솔을 체크인하거나 다시 시도하면 유효합니다).
나는 SQS, SDB 등으로 '궁극적으로 일관성이있다'는 것을 알고 있으며, SDK가 호출을 다시 시도 할 필요가 있습니다. 그러나 SDK를 사용하면 인스턴스를 생성하기위한 일반적인 호출을 통해 그것이 필요하다고 생각했다. 더 좋은 것은 그것이 좋은 일이라고 생각하지 않습니다. 특정 예외를 찾고 그것이 작동 할 때까지 거의 무한히 재 시도합니다.
인스턴스를 생성하고 태그를 지정하는 프로세스가 폴링 및 재 시도를위한 중복 중앙 집중식 시스템이있는 분산 된 워크 플로우에 입력되어야하는 경우 나는 그 상황이 좋지 않다고 생각합니다!
관련 문서에서 관련 항목을 찾을 수없는 것 같습니다. RunInstances를 호출하고 인스턴스 ID로 응답을 받으면 인스턴스 ID가 즉시 태그 지정에 유효해야합니다. 지금까지 가능한 솔루션에 대한
내 생각 : RunInstances (나쁜, 임의 지연)
- 고정 지연이 즉시 시도 다른 지연 5 초와 최대 다시 시도 'N'번
- 이렇게 연결된 API 호출을 처리하기 위해 분산 된 워크 플로를 만들면 신뢰할 수있는 EC2 인스턴스의 중앙 중복 팜이 필요합니다.
- 내가 부를 수있는 다른 설명 찾기 다른 API 메소드 또는 요청에 무엇인가 설정하여 전화를 걸어서 작동하게하십시오.
다른 누구도이 경험이 있거나 해당 분야에 대한 지식이 있습니까?
(난 아직 여기 AWS 커뮤니티 포럼에 스레드, 아무것도했습니다 : https://forums.aws.amazon.com/thread.jspa?threadID=80489&tstart=0)
확인 만하면됩니다. 즉, 인스턴스 ID로 즉시 호출이 반환되지만 인스턴스 ID가 유효하지 않고 쓸데없는 동안 잠시 동안 반환됩니다. (나는 인스턴스를 실행할 필요가 없다. 단지 태그를 달고 싶다.) –
얻는 InstanceID는 새로운 인스턴스에 할당 된 진짜 ID라는 의미에서 유효하다. 그러나 Xen Hipervisor는 비동기 적으로 VM을 구성하고 실행하도록 설정하므로 잠시 동안 ID가 주어지면 나머지 API가 관련되어 호출 될 때까지 인스턴스가 실제로 존재하지 않습니다 해당 ID를 사용하는 다른 메소드에 오류가 발생합니다. –
약간 혼란 스럽지만, 시스템은 인스턴스 ID * 어딘지 *를 기록해야합니다. 예를 들어, 사용할 AMI를 추적해야합니다. CreateTags는 인스턴스 ID별로 태그 정보를 저장하므로 태깅이 VM, 하이퍼 바이저 또는 기타의 상태와 관련이있는 이유를 상상할 수 없습니다. 이 모든 것을 인용 할만한 게 있다고 생각지 않는다. 나는 몇몇 문서를 찾고 싶었다. –