스팟 인스턴스의 Terminate 시 자동으로 ECS 클러스터에서 Deregister
이번에는 간단한 설명과 구체적인 대응을 쓰고 있습니다.
왜 대응이 필요한가?
스팟 인스턴스가 강제 Terminate 될 때 적절한 처리가 이루어지지 않으면 다음과 같은 이벤트가 발생합니다. 그래서 프로덕션에서 이용할 때는 대응은 거의 필수인가라고 생각합니다.
어떤 대응이 필요한가?
공식 문서에도 기재가 있습니다만, 기본적으로는 컨테이너 인스턴스 등록 취소 을 하는 것으로, 이하의 작업이 행해집니다.
또, 2분 있으면 충분할 것이라고 생각합니다만 ELB의 Draining의 허용 시간등도 맞추어 재검토하는 편이 좋을까 생각합니다.
단지, 스스로 설정하는 것은 귀찮아, 그래서 이번에는 CloudFormation 템플릿을 준비했습니다.
CloudFormation 템플릿
htps : // 기주 b. 이 m / ma ts16 / 에스 cs 포 t-에서 s s
기본적으로 여기 템플릿을 실행하면 OK입니다. (리전별로 설정되므로 ECS를 사용하는 리전에서 CFn을 실행하십시오)
기본적으로는 구성도대로입니다만 아래와 같은 일을 하고 있습니다.
안의 코드를 봐 주시면 알 수 있습니다만,
instance_id
로부터 cluster_name
와 container_instance_id
를 직접 참조할 수 있는 API가 없기 때문에, 약간 미묘한 쓰는 방법이 되고 있습니다.후기
이 게시물은 개인의 의견이며 소속 기업이나 단체는 관련이 없습니다. 약속입니다.
오랜만에 python 써 있었기 때문에 지적이나 기능 요망이 있으면, PullRequest나 Issue 받을 수 있으면이라고 생각합니다.
(SNS 끼우는 편이 좋다든가, Slack에 통지하고 싶은 등)
Reference
이 문제에 관하여(스팟 인스턴스의 Terminate 시 자동으로 ECS 클러스터에서 Deregister), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/mats16/items/d48afa30d8b6353e8766텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)