Q: AWS Batch란 무엇입니까?

AWS Batch는 개발자, 과학자 및 엔지니어가 AWS에서 수많은 배치 컴퓨팅 작업을 효율적으로 손쉽게 실행할 수 있게 해주는 배치 관리 기능 세트입니다. AWS Batch는 제출된 배치 작업의 볼륨과 특정 리소스 요건을 기준으로 최적의 컴퓨팅 리소스 수량 및 유형(CPU 또는 메모리 최적화 인스턴스 등)을 동적으로 프로비저닝합니다. AWS Batch에서는 작업 실행을 위한 배치 컴퓨팅 소프트웨어나 서버 클러스터를 설치하여 관리할 필요가 없으므로 결과 분석과 문제 해결에 집중할 수 있습니다. AWS Batch는 Amazon EC2스팟 인스턴스를 사용하여 배치 컴퓨팅 워크로드를 계획, 예약 및 실행합니다.

Q: 배치 컴퓨팅이란 무엇입니까?
배치 컴퓨팅은 수동 개입 없이 하나 이상의 컴퓨터에서 일련의 프로그램("작업")을 실행하는 것을 말합니다. 입력 파라미터는 스크립트, 명령줄 인수, 제어 파일 또는 작업 제어 언어를 통해 사전에 정의됩니다. 해당 배치 작업은 이전 작업의 완료 또는 특정 입력의 가용성에 따라 달라질 수 있으므로 여러 작업의 순서를 정하고 일정을 예약하는 것이 중요하며 대화형 처리와 호환되지 않습니다.

Q: 배치 컴퓨팅의 장점은 무엇입니까?

  • 배치 컴퓨팅은 작업을 처리하는 시점을 더 큰 용량 또는 더 저렴한 용량을 사용할 수 있는 기간으로 옮길 수 있습니다.
  • 이를 통해 빈번한 수동 개임과 감독이 필요한 유휴 컴퓨팅 리소스를 방지할 수 있습니다.
  • 또한, 컴퓨팅 리소스의 사용률이 높아짐에 따라 효율성이 증가합니다.
  • 작업의 우선순위를 지정할 수 있으므로 비즈니스 목표에 맞춰 리소스를 사용할 수 있습니다.

Q: AWS Batch를 사용해야 하는 이유는 무엇입니까?
AWS Batch는 작업 실행과 컴퓨팅 리소스 관리를 처리하므로 사용자는 인프라를 설정하고 관리하는 대신 애플리케이션 개발이나 결과 분석에 집중할 수 있습니다. 배치 워크로드를 AWS에서 실행하거나 AWS로의 이전을 고려하고 있다면 AWS Batch를 사용해야 합니다.

Q: AWS Batch가 최적화된 사용 사례에는 어떤 것이 있습니까?
AWS Batch는 여러 작업을 병렬로 실행하여 확장하는 배치 컴퓨팅과 애플리케이션에 최적화되어 있습니다. 딥 러닝, 게놈 분석, 금융 위험 모델, Monte Carlo 시뮬레이션, 애니메이션 렌더링, 미디어 트랜스코딩, 이미지 처리 및 엔지니어링 시뮬레이션은 모두 배치 컴퓨팅 애플리케이션의 좋은 예입니다.


Q: AWS Batch의 주요 기능은 무엇입니까?
AWS Batch는 컴퓨팅 환경과 작업 대기열을 관리하므로 사용자는 Amazon EC2 및 EC2 스팟 인스턴스를 사용하여 규모와 관계없이 수천 개의 작업을 손쉽게 실행할 수 있습니다. 배치 작업을 정의하고 대기열에 이를 제출하기만 하면 됩니다. 그러면 AWS Batch가 작업을 실행할 장소를 선택하고 필요한 경우 AWS 용량을 추가로 시작합니다. AWS Batch는 작업 진행 상황을 신중하게 모니터링하고, 용량이 더는 필요 없게 되면 AWS Batch가 이를 제거합니다. 또한, AWS Batch는 파이프라인 또는 워크플로의 일부로서 작업을 제출할 수 있는 기능을 제공하므로 작업을 제출하면서 작업 간에 존재하는 상호 종속성을 표시할 수 있습니다.

Q: AWS Batch에서는 어떤 유형의 배치 작업을 지원합니까?
AWS Batch에서는 Docker 컨테이너로 실행될 수 있는 모든 작업을 지원합니다. 작업이 자신의 메모리 요구 사항과 vCPU 개수를 지정합니다.  

Q: 컴퓨팅 리소스란 무엇입니까?
AWS Batch 컴퓨팅 리소스는 EC2 인스턴스입니다.

Q: 컴퓨팅 환경이란 무엇입니까?
AWS Batch 컴퓨팅 환경은 작업이 실행되는 컴퓨팅 리소스 모음입니다. AWS Batch는 AWS에서 프로비저닝하고 관리하는 관리형 컴퓨팅 환경과 고객이 관리하는 비관리형 컴퓨팅 환경이라는 두 가지 유형의 컴퓨팅 환경을 지원합니다. 비관리형 컴퓨팅 환경은 전용 호스트, 규모가 더 큰 스토리지 구성, Amazon EFS 등 특화된 리소스를 활용할 수 있는 메커니즘을 제공합니다.

Q:작업 정의란 무엇입니까?
작업 정의는 실행될 작업, 파라미터, 환경 변수, 컴퓨팅 요구 사항 및 작업 실행을 최적화하는 데 사용되는 기타 정보를 설명합니다. 작업 정의는 작업을 제출하기 전에 정의되고 다른 작업과 공유될 수 있습니다.

Q: Amazon ECS 에이전트라 무엇이고 AWS Batch에서 어떻게 이를 사용합니까?
AWS Batch는 Amazon ECS를 사용하여 컨테이너식 작업을 실행하므로 ECS 에이전트가 AWS Batch 컴퓨팅 환경 내 컴퓨팅 리소스에 설치되어 있어야 합니다. ECS 에이전트는 관리형 컴퓨팅 환경에 사전에 설치됩니다.

Q: AWS Batch는 어떻게 EC2 스팟 사용을 쉽게 해줍니까?
AWS Batch 컴퓨팅 환경은 EC2 스팟 인스턴스로 구성될 수 있습니다. 관리형 컴퓨팅 환경을 생성할 때 EC2 스팟을 사용하겠다고 지정하고 입찰할 온디맨드 가격의 백분율을 제공하기만 하면 나머지는 AWS Batch가 처리합니다. 비관리형 컴퓨팅 환경도 EC2 스팟 집합에서 시작하는 스팟 인스턴스를 비롯하여 사용자가 시작하는 스팟 인스턴스를 포함할 수 있습니다.


Q: Amazon Batch의 요금은 어떻게 됩니까?
AWS Batch에 대한 추가 비용은 없습니다. 배치 작업을 저장하고 실행하기 위해 생성한 AWS 리소스(예: EC2 인스턴스)에 대한 비용만 지불하면 됩니다.


Q: 시작하려면 어떻게 해야 합니까?
시작하려면 AWS 설명서에서 시작 안내서를 따라 하십시오.

Q: 시작하려면 무엇을 프로비저닝해야 합니까?
시작하기 위해 자체 컴퓨팅 리소스를 수동으로 시작할 필요는 없습니다. AWS Batch 웹 콘솔이 첫 번째 컴퓨팅 환경과 작업 대기열을 생성하는 프로세스를 안내하므로 이를 따라 첫 번째 작업을 제출하면 됩니다. 컴퓨팅 환경 내 리소스는 추가 작업이 준비되면 확장되고 실행할 수 있는 작업 수가 감소하면 축소됩니다.