Amazon ECS용 AWS Fargate - Amazon Elastic Container Service

Amazon ECS용 AWS Fargate

AWS Fargate Fargate는 Amazon EC2 인스턴스의 서버나 클러스터를 관리할 필요 없이 컨테이너를 실행하기 위해 Amazon ECS에 사용할 수 있는 기술입니다. AWS Fargate를 사용하면 더 이상 컨테이너를 실행하기 위해 가상 머신의 클러스터를 프로비저닝, 구성 또는 조정할 필요가 없습니다. 따라서 서버 유형을 선택하거나, 클러스터를 조정할 시점을 결정하거나, 클러스터 패킹을 최적화할 필요가 없습니다.

Fargate 시작 유형을 사용하여 태스크와 서비스를 실행할 때는 애플리케이션을 컨테이너에 패키징하고, CPU 및 메모리 요구 사항을 지정한 다음, 네트워킹 및 IAM 정책을 정의하고, 애플리케이션을 시작합니다. 각 Fargate 태스크에는 자체 격리 경계가 있으며 다른 태스크와 기본 커널, CPU 리소스, 메모리 리소스 또는 탄력적 네트워크 인터페이스를 공유하지 않습니다. requiresCompatibilities 작업 정의 파라미터를 FARGATE로 설정하여 Fargate에 대한 작업 정의를 구성합니다. 자세한 내용은 시작 유형 단원을 참조하십시오.

Fargate는 Amazon Linux 2와 Microsoft Windows 2019 Server Full 및 Core 버전용 플랫폼 버전을 제공합니다. 달리 지정하지 않는 한 이 페이지의 정보는 모든 Fargate 플랫폼에 적용됩니다.

이 주제에서는 Fargate 태스크와 서비스의 다양한 구성 요소를 설명하고 Amazon ECS에 Fargate를 사용하기 위한 특수한 고려 사항을 살펴봅니다.

Fargate에서 Linux 컨테이너가 지원되는 리전에 대한 자세한 정보는 AWS Fargate의 Linux 컨테이너 섹션을 참조하세요.

Fargate에서 Windows 컨테이너가 지원되는 리전에 대한 자세한 정보는 AWS Fargate의 Windows 컨테이너 섹션을 참조하세요.

연습

콘솔을 사용하여 시작하는 방법은 다음을 참조하세요.

AWS CLI를 사용하여 시작하는 방법은 다음을 참조하세요.

용량 공급자

다음과 같은 용량 공급자를 사용할 수 있습니다.

  • Fargate

  • Fargate 스팟 - AWS Fargate 가격 대비 할인된 요금으로 중단 방지 Amazon ECS 작업을 실행합니다. Fargate 스팟은 여분의 컴퓨팅 용량에 대한 태스크를 실행합니다. AWS에 용량이 다시 필요한 경우 2분간 경고한 후에 태스크가 중단됩니다. 자세한 내용은 Fargate 시작 유형에 대한 Amazon ECS 클러스터 단원을 참조하십시오.

태스크 정의

Fargate 시작 유형을 사용하는 태스크는 사용 가능한 Amazon ECS 태스크 정의 파라미터 중 일부를 지원하지 않을 수 있습니다. 전혀 지원되지 않는 파라미터도 있고 Fargate 작업에 다르게 작동하는 파라미터도 있습니다. 자세한 내용은 태스크 CPU 및 메모리 단원을 참조하십시오.

플랫폼 버전

AWS Fargate 플랫폼 버전은 Fargate 태스크 인프라를 위한 특정 실행 시간 환경을 참조하는 데 사용합니다. 이것은 커널 버전과 컨테이너 실행 시간 버전의 조합입니다. 작업을 실행하거나 여러 개의 동일한 작업을 유지 관리하는 서비스를 생성할 플랫폼 버전을 선택합니다.

플랫폼 버전의 새 개정판은 커널 또는 운영 체제 업데이트, 새로운 기능, 버그 수정 또는 보안 업데이트처럼 런타임 환경이 개선됨에 따라 릴리스됩니다. Fargate 플랫폼 버전은 새 플랫폼 버전 개정판을 통해 업데이트됩니다. 각 작업은 해당 수명 주기 동안 하나의 플랫폼 버전 개정판에서 실행됩니다. 최신 플랫폼 버전 개정판을 사용하려면 새 작업을 시작해야 합니다. Fargate에서 실행되는 새 작업은 항상 플랫폼 버전의 최신 개정판에서 실행되므로 항상 안전하고 패치가 적용된 인프라에서 작업을 시작할 수 있습니다.

기존 플랫폼 버전에 영향을 미치는 보안 문제가 발견되면 AWS는 플랫폼 버전에 패치를 적용한 새 개정판을 만들고 취약한 개정판에서 실행 중인 작업을 중지합니다. 사용자에게 Fargate 작업이 만료 예정이라는 알림이 전송되는 경우도 있습니다. 자세한 내용은 Amazon ECS에서 AWS Fargate 작업 유지 관리 FAQ 단원을 참조하십시오.

자세한 내용은 Amazon ECS에 대한 Fargate 플랫폼 버전Fargate Windows 플랫폼 버전 변경 로그 단원을 참조하십시오.

서비스 로드 밸런싱

Elastic Load Balancing을 사용하여 서비스의 태스크 간에 트래픽을 고르게 분산하도록 AWS Fargate의 Amazon ECS 서비스를 구성할 수도 있습니다.

AWS Fargate의 Amazon ECS 서비스는 Application Load Balancer 및 Network Load Balancer 로드 밸런서 유형을 지원합니다. Application Load Balancer는 HTTP/HTTPS(또는 계층 7) 트래픽을 라우팅하는 데 사용합니다. Network Load Balancer는 TCP 또는 UDP(또는 계층 4) 트래픽을 라우팅하는 데 사용합니다. 자세한 내용은 로드 밸런싱을 사용하여 Amazon ECS 서비스 트래픽 분산 단원을 참조하십시오.

이러한 서비스에 대한 대상 그룹을 생성할 때 대상 유형을 instance가 아닌 ip로 선택해야 합니다. 이는 awsvpc 네트워크 모드를 사용하는 작업이 Amazon EC2 인스턴스가 아닌 탄력적 네트워크 인터페이스와 연결되기 때문입니다. 자세한 내용은 로드 밸런싱을 사용하여 Amazon ECS 서비스 트래픽 분산 단원을 참조하십시오.

Network Load Balancer를 사용하여 AWS Fargate 태스크의 Amazon ECS로 UDP 트래픽을 라우팅하는 것은 플랫폼 버전 1.4 이상을 사용할 때만 지원됩니다.

사용량 지표

CloudWatch 사용량 지표를 사용하여 계정의 리소스 사용량을 확인할 수 있습니다. 이러한 지표를 사용하여 CloudWatch 그래프 및 대시보드에서 현재 서비스 사용량을 시각화합니다.

AWS Fargate 사용량 지표는 AWS 서비스 할당량에 해당합니다. 사용량이 서비스 할당량에 가까워지면 경고하는 경보를 구성할 수 있습니다. AWS Fargate 서비스 할당량에 대한 자세한 정보는 AWS Fargate service quotas 섹션을 참조하세요.

AWS Fargate 사용량 지표에 대한 자세한 정보는 Amazon ECS AWS Fargate 사용 설명서AWS Fargate 사용량 지표를 참조하세요.