인스턴스 유형이 A 인 컨테이너 인스턴스로 구성된 ECS 클러스터가 있는데 그 인스턴스는 t2.small입니다. 클러스터는 여러 서비스를 실행하는 여러 시스템으로 구성됩니다. 이제, 나는 다른 서비스/태스크보다 훨씬 더 많은 CPU/메모리를 필요로하는 새로운 서비스/태스크 ("GreatRequirements"라고 부를 수 있음)를 갖게 될 것입니다. 나는 하나의 커다란 머신을 부팅 할 수 있기를 원한다. (클러스터를 "LargeMachine"이라 부름) 다른 태스크는 결코 배치되지 않는다. 그래서 클러스터의이 머신은 항상 나의 "GreatRequirements"서비스에 사용 가능하다.특정 컨테이너 인스턴스에서 작업 시작을 방지하는 방법
다른 서비스/작업을 "GreatRequirements"가 아닌 해당 컴퓨터에서 예약하지 못하게하는 방법이 있습니까? 그렇다면 다른 서비스/작업에 대해 palcement 제약 조건을 적용하는 방법이 있습니까? ECS 양식은 "LargeMachine"에 다른 서비스/작업을 배치하므로 소규모 서비스/작업으로 인해 "GreatRequirements"서비스가 작업을 시작할 수 없게되는 상황에 처하게됩니다. 왜냐하면 충분한 CPU/메모리.
감사합니다.
하지만 "LargeMachine"에서 다른 작업을 실행하도록 예약하지는 못하며, 해당 컴퓨터에서 사용 가능한 충분한 CPU/메모리가없는 경우가 발생할 수 있습니다. –
다른 작업을 막을 수있는 해결책 : 다른 모든 작업에 제약 조건 (예 : attribute : ecs.instance-type == t2)이있을 수 있습니다.작은 "을 사용하면 대형 시스템에서 실행되지 않거나 클러스터를 2 개의 클러스터 (보통 태스크 용과 GreatRequirements 용)로 나눌 수 있습니다. 새 클러스터에서는 대규모 시스템을 가지고 작업 (GreatRequirements)이 해당 시스템에서 실행되도록 예약합니다. – Gigapalmer
이 경우에는 생략해야하는 모든 다른 서비스/태스크에 대한 제약 조건을 설정해야합니다. 나는 모든 인스턴스에 대한 인스턴스 유형을 "GreatRequirements"로 서비스를 처리 할 수있는 유형으로 변경하는 것 이외에 실제로 좋은 해결책이 없다고 생각합니다. 서비스가 불충분하기 때문에 작업을 예약 할 수 없을 때 어떻게 든 감지합니다. cpu/memory에 저장하고 추가 인스턴스를이를 기반으로 클러스터에 확장 할 수 있습니다. 어쨌든 도움을 주셔서 감사합니다 Gigapalmer :-) –