기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
자습서: Amazon EKS 리소스에 단일 노드 작업 정의 생성
Amazon Elastic Kubernetes Service(Amazon EKS)에서 단일 노드 작업 정의를 생성하려면 다음 단계를 완료합니다.
Amazon EKS 리소스에 새 작업 정의를 생성하려면
-
https://console.aws.amazon.com/batch/
AWS Batch 콘솔을 엽니다. -
상단 탐색 모음에서 사용할 AWS 리전 를 선택합니다.
-
왼쪽 탐색 창에서 작업 정의를 선택합니다.
-
생성(Create)을 선택합니다.
-
오케스트레이션 유형으로는 Elastic Kubernetes Service(EKS)를 선택합니다.
-
이름(Name)에 고유한 작업 정의 이름을 입력합니다. 각 이름의 최대 길이는 128자입니다. 대문자 및 소문자, 숫자, 하이픈(-) 및 밑줄(_)을 포함할 수 있습니다.
-
(선택 사항) 실행 제한 시간에 제한 시간 값(초)을 입력합니다. 실행 제한 시간은 완료되지 않은 작업이 종료되기까지의 시간입니다. 시도가 제한 시간을 초과하면 중지되고 상태가
FAILED
(으)로 변경됩니다. 자세한 내용은 작업 제한 시간 단원을 참조하십시오. 최솟값은 60초입니다. -
(선택 사항) 예약 우선 순위를 켭니다. 0에서 100 사이의 예약 우선 순위 값을 입력합니다. 값이 높을수록 낮은 값보다 우선 순위가 높습니다.
-
(선택 사항) 태그를 확장한 다음, 태그 추가를 선택하여 리소스에 태그를 추가합니다.
-
다음 페이지를 선택합니다.
-
EKS pod 속성 섹션에서:
-
서비스 계정 이름에는 pod에서 실행되는 프로세스의 ID를 제공하는 계정을 입력합니다.
-
Kubernetes pod 네트워크 모델을 사용하려면 호스트 네트워크를 켜고 수신 연결을 위한 수신 포트를 엽니다. 발신 통신에만 이 설정을 끕니다.
-
DNS 정책에서 다음 중 하나를 선택합니다.
-
값 없음(null) - pod가 Kubernetes 환경의 DNS 설정을 무시합니다.
-
기본값 - pod가 실행 중인 노드의 이름 확인 구성을 상속합니다.
참고
DNS 정책이 지정되지 않은 경우 기본값은 기본 DNS 정책이 아닙니다. 대신 ClusterFirst가 사용됩니다.
-
ClusterFirst - 구성된 클러스터 도메인 접미사와 일치하지 않는 모든 DNS 쿼리가 노드에서 상속된 업스트림 이름 서버로 전달됩니다.
-
ClusterFirstWithHostNet – 호스트 네트워크가 켜져 있는 경우에 사용합니다.
-
-
(선택 사항) 포드 레이블에서는 포드 레이블 추가를 선택한 다음 이름-값 쌍을 입력합니다.
중요
포드 레이블의 접두사는
kubernetes.io/
,k8s.io/
또는batch.amazonaws.com/
을 포함할 수 없습니다. -
(선택 사항) 포드 주석에서 주석 추가를 선택한 다음 이름-값 페어를 입력합니다.
중요
포드 주석의 접두사에는
kubernetes.io/
,k8s.io/
또는가 포함될 수 없습니다batch.amazonaws.com/
. -
다음 페이지를 선택합니다.
-
컨테이너 구성 섹션에서:
-
이름에 컨테이너의 고유 이름을 입력합니다. 이름은 문자 또는 숫자로 시작되어야 하며 최대 63자여야 합니다. 소문자 및 대문자, 숫자, 하이픈(-)을 포함할 수 있습니다.
-
이미지에서 작업에 사용할 Docker 이미지를 선택합니다. 기본적으로 Docker Hub 레지스트리 내 이미지는 사용 가능합니다. 또한
(을)를 사용하여 다른 리포지토리를 지정할 수도 있습니다. 이름은 최대 255자입니다. 대문자와 소문자, 숫자, 하이픈(-), 밑줄(_), 콜론(:), 마침표(.), 슬래시(/) 및 숫자 기호(#)를 포함할 수 있습니다. 이 파라미터는 Docker 원격 APIrepository-url
/image
:tag
의 컨테이너 생성 섹션에 있는 Image
와 docker run의 IMAGE
파라미터로 매핑됩니다.참고
Docker 이미지 아키텍처는 예정된 컴퓨팅 리소스의 프로세서 아키텍처와 일치해야 합니다. 예를 들어, Arm 기반 Docker 이미지는 Arm 기반 컴퓨팅 리소스에서만 실행될 수 있습니다.
-
Amazon ECR Public 리포지토리에 있는 이미지는 전체
registry/repository[:tag]
또는registry/repository[@digest]
명명 규칙을 사용합니다(예:public.ecr.aws/
).registry_alias
/my-web-app
:latest
-
Amazon ECR 리포지토리에 있는 이미지는 전체
registry/repository[:tag]
명명 규칙을 사용합니다 (예:aws_account_id
.dkr.ecr.region
.amazonaws.com/
).my-web-app
:latest
-
Docker Hub의 공식 리포지토리 안의 이미지는 단일 이름을 사용합니다(예:
ubuntu
또는mongo
). -
Docker Hub 다른 리포지토리에 저장된 이미지는 조직 이름으로 한정됩니다(예:
amazon/amazon-ecs-agent
). -
다른 온라인 리포지토리 안의 이미지는 도메인 이름을 사용하여 추가로 한정됩니다(예:
quay.io/assemblyline/ubuntu
).
-
-
(선택 사항) 이미지 풀 정책에는 이미지를 가져오는 시기를 선택합니다.
-
(선택 사항) 명령에는 컨테이너에 전달할 Bash 또는 JSON 명령을 입력합니다.
-
(선택 사항) 인수에는 컨테이너로 전달할 인수를 입력합니다. 인수가 제공되지 않으면 컨테이너 이미지 명령이 사용됩니다.
-
-
(선택 사항) 작업 정의에 파라미터를 이름-값 매핑으로 추가하여 작업 정의 기본값을 재정의할 수 있습니다. 파라미터를 추가하려면
-
파라미터에 이름-값 쌍을 입력한 다음, 파라미터 추가를 선택합니다.
중요
파라미터 추가를 선택한 경우 하나 이상의 파라미터를 구성하거나 파라미터 제거를 선택해야 합니다.
-
-
환경 구성 섹션에서:
-
vCPU에서 컨테이너에 예약할 vCPU 수를 지정합니다. 이 파라미터는 Docker 원격 API(Docker Remote API)
의 컨테이너 생성(Create a container) 섹션에 있는 CpuShares
(와)과 docker run에 대한 --cpu-shares
옵션에 매핑됩니다. 각 vCPU는 1,024개의 CPU 공유와 동일합니다. vCPU를 최소 하나 이상 지정해야 합니다. -
메모리에는 컨테이너에 사용할 수 있는 메모리 한도를 입력합니다. 컨테이너가 여기에 지정된 메모리를 초과하려 하면 해당 컨테이너가 중지됩니다. 이 파라미터는 Docker 원격 API(Docker Remote API)
의 컨테이너 생성(Create a container) 섹션에 있는 Memory
(와)과 docker run에 대한 --memory
옵션에 매핑됩니다. 한 작업에 대해 메모리를 최소한 4MiB 지정해야 합니다.참고
리소스 사용률을 극대화하려면 특정 인스턴스 유형의 작업에 메모리 우선 순위를 지정합니다. 자세한 내용은 컴퓨팅 리소스 메모리 관리 단원을 참조하십시오.
-
-
(선택 사항) 환경 변수의 경우 환경 변수 추가를 선택하여 환경 변수를 이름-값 쌍으로 추가합니다. 이러한 변수는 컨테이너로 전달됩니다.
-
(선택 사항) 볼륨 마운트에서
-
볼륨 마운트 추가를 선택합니다.
-
이름을 입력한 다음, 볼륨이 마운트된 컨테이너의 마운트 경로를 입력합니다. SubPath를 입력하여 루트 대신 참조된 볼륨 내의 하위 경로를 지정합니다.
-
볼륨에 대한 쓰기 권한을 제거하려면 읽기 전용을 선택합니다.
-
볼륨 마운트 추가를 선택합니다.
-
-
(선택 사항) 사용자로 실행에 컨테이너 프로세스를 실행할 사용자 ID를 입력합니다.
참고
컨테이너를 실행하려면 이미지에 사용자 ID가 있어야 합니다.
-
(선택 사항) 그룹으로 실행에 컨테이너 프로세스 런타임을 실행할 그룹 ID를 입력합니다.
참고
컨테이너를 실행하려면 이미지에 그룹 ID가 있어야 합니다.
-
(선택 사항) 작업 컨테이너에 호스트 인스턴스에 대한 승격된 권한(
root
사용자와 비슷함)을 부여하려면 권한이 있음 슬라이더를 오른쪽으로 드래그합니다. 이 파라미터는 Docker 원격 API(Docker Remote API)의 컨테이너 생성(Create a container) 섹션에 있는 Privileged
(와)과 docker run에 대한 --privileged
옵션에 매핑됩니다. -
(선택 사항) 루트 파일 시스템에 대한 쓰기 액세스를 제거하려면 읽기 전용 루트 파일 시스템을 켭니다.
-
(선택 사항) 루트가 아닌 사용자로 pod에서 컨테이너를 실행하려면 루트가 아닌 상태로 실행을 켭니다.
참고
루트가 아닌 상태로 실행이 켜져 있는 경우, kubelet은 런타임 시 이미지의 유효성을 검사하여 이미지가 UID 0으로 실행되지 않는지 확인합니다.
-
다음 페이지를 선택합니다.
-
-
작업 정의 검토에서 구성 단계를 검토하십시오. 변경해야 하는 경우 편집을 선택합니다 작업을 마쳤으면 작업 정의 생성을 선택합니다.