2.11. 할당량 제한을 사용하여 작업 실행
Red Hat build of Kueue가 활성화된 상태에서 Kubernetes 작업을 실행하여 정의된 할당량 제한 내에서 리소스 할당을 관리할 수 있습니다. 이를 통해 예측 가능한 리소스 가용성, 클러스터 안정성 및 최적화된 성능을 보장할 수 있습니다.
2.11.1. 사용 가능한 로컬 대기열 식별 링크 복사링크가 클립보드에 복사되었습니다!
작업을 큐에 제출하려면 먼저 로컬 대기열의 이름을 찾아야 합니다.
사전 요구 사항
- 클러스터 관리자가 OpenShift Container Platform 클러스터에 Red Hat build of Kue를 설치 및 구성했습니다.
-
클러스터 관리자가
kue-batch-user-role 클러스터 역할을할당했습니다. -
OpenShift CLI(
oc)가 설치되어 있습니다.
프로세스
다음 명령을 실행하여 네임스페이스에서 사용 가능한 로컬 대기열을 나열합니다.
$ oc -n <namespace> get localqueues출력 예
NAME CLUSTERQUEUE PENDING WORKLOADS user-queue cluster-queue 3
2.11.2. Red Hat build of Kueue로 실행할 작업 정의 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat build of Kueue를 사용하여 실행할 작업을 정의하는 경우 다음 기준을 충족해야 합니다.
-
kue.x-k8s.io/queue-name레이블을 사용하여 작업을 제출할 로컬 큐를 지정합니다. - 각 작업 Pod에 대한 리소스 요청을 포함합니다.
Red Hat build of Kueue는 작업을 일시 중단한 다음, 리소스를 사용할 수 있을 때 시작됩니다. Red Hat build of Kueue는 작업과 일치하는 이름으로 Workload 오브젝트로 표시되는 해당 워크로드를 생성합니다.
사전 요구 사항
- 클러스터 관리자가 OpenShift Container Platform 클러스터에 Red Hat build of Kue를 설치 및 구성했습니다.
-
클러스터 관리자가
kue-batch-user-role 클러스터 역할을할당했습니다. -
OpenShift CLI(
oc)가 설치되어 있습니다. - 작업을 제출할 로컬 대기열의 이름을 확인했습니다.
프로세스
Job오브젝트를 생성합니다.작업 예
apiVersion: batch/v1 kind: Job1 metadata: generateName: sample-job-2 namespace: my-namespace labels: kueue.x-k8s.io/queue-name: user-queue3 spec: parallelism: 3 completions: 3 template: spec: containers: - name: dummy-job image: registry.k8s.io/e2e-test-images/agnhost:2.53 args: ["entrypoint-tester", "hello", "world"] resources:4 requests: cpu: 1 memory: "200Mi" restartPolicy: Never다음 명령을 실행하여 작업을 실행합니다.
$ oc create -f <filename>.yaml
검증
다음 명령을 실행하고 출력을 관찰하여 Pod가 생성한 작업에 대해 실행 중인지 확인합니다.
$ oc get job <job-name>출력 예
NAME STATUS COMPLETIONS DURATION AGE sample-job-sk42x Suspended 0/1 2m12s다음 명령을 실행하고 출력을 관찰하여 작업의 네임스페이스에 워크로드가 생성되었는지 확인합니다.
$ oc -n <namespace> get workloads출력 예
NAME QUEUE RESERVED IN ADMITTED FINISHED AGE job-sample-job-sk42x-77c03 user-queue 3m8s