# DRA를 사용하여 워크로드에 디바이스 할당하기

LLMS index: [llms.txt](/llms.txt)

---

<div class="feature-state-notice feature-stable" title="Feature Gate: DynamicResourceAllocation">
              <span class="feature-state-name">기능 상태:</span> 
              <code>Kubernetes v1.35 [stable]</code>(enabled by default)</div>


<!-- overview -->

이 페이지는 _동적 리소스 할당(DRA)_ 을 사용하여
파드에 디바이스를 할당하는 방법을 보여준다. 이 지침은 워크로드
운영자를 대상으로 한다. 이 페이지를 읽기 전에, DRA의 동작 방식과
<a class='glossary-tooltip' title='Describes the resources that a workload needs, such as devices. ResourceClaims can request devices from DeviceClasses.' data-bs-toggle='tooltip' data-bs-placement='top' href='/ko/docs/concepts/scheduling-eviction/dynamic-resource-allocation/#resourceclaims-templates' target='_blank' aria-label='리소스클레임(ResourceClaim)'>리소스클레임(ResourceClaim)</a> 및
<a class='glossary-tooltip' title='Defines a template for Kubernetes to create ResourceClaims. Used to provide per-Pod or per-PodGroup access to separate, similar resources.' data-bs-toggle='tooltip' data-bs-placement='top' href='/ko/docs/concepts/scheduling-eviction/dynamic-resource-allocation/#resourceclaims-templates' target='_blank' aria-label='리소스클레임템플릿(ResourceClaimTemplate)'>리소스클레임템플릿(ResourceClaimTemplate)</a>과
같은 DRA 용어를 숙지한다.
자세한 정보는
[동적 리소스 할당(DRA)](/docs/concepts/scheduling-eviction/dynamic-resource-allocation/)을 참고한다.

<!-- body -->

## DRA를 사용한 디바이스 할당에 대하여 {#about-device-allocation-dra}

워크로드 운영자는 리소스클레임 또는 리소스클레임템플릿을 생성하여
워크로드에 대한 디바이스를 _클레임_ 할 수 있다. 워크로드를 배포하면,
쿠버네티스와 디바이스 드라이버가 사용 가능한 디바이스를 찾아 파드에 할당하고,
해당 디바이스에 접근할 수 있는 노드에 파드를 배치한다.

<!-- prerequisites -->

## 시작하기 전에

<p>쿠버네티스 클러스터가 필요하고, kubectl 커맨드-라인 툴이 클러스터와
통신할 수 있도록 설정되어 있어야 한다. 이 튜토리얼은 컨트롤 플레인 호스트가 아닌 노드가 적어도 2개 포함된 클러스터에서 실행하는 것을 추천한다. 만약, 아직 클러스터를 가지고
있지 않다면,
<a href="/ko/docs/tasks/tools/#minikube">minikube</a>를 사용해서 생성하거나
다음 쿠버네티스 플레이그라운드 중 하나를 사용할 수 있다.</p>
<ul>
<li><a href="https://labs.iximiuz.com/playgrounds?category=kubernetes&filter=all">iximiuz Labs</a></li>
<li><a href="https://killercoda.com/playgrounds/scenario/kubernetes">Killercoda</a></li>
<li><a href="https://kodekloud.com/public-playgrounds">KodeKloud</a></li>
</ul>
 
 
 쿠버네티스 서버의 버전은 다음과 같거나 더 높아야 함. 버전: v1.34.
  <p>버전 확인을 위해서, 다음 커맨드를 실행  <code>kubectl version</code>.</p>


* 클러스터 관리자가 DRA를 설정하고, 디바이스를 연결하며, 드라이버를 설치했는지
  확인한다. 자세한 정보는
  [클러스터에서 DRA 설정하기](/docs/tasks/configure-pod-container/assign-resources/set-up-dra-cluster)를 참고한다.

<!-- steps -->

## 클레임할 디바이스 확인하기 {#identify-devices}

클러스터 관리자 또는 디바이스 드라이버가 디바이스 카테고리를 정의하는
_<a class='glossary-tooltip' title='A category of devices in the cluster. Users can claim specific devices in a DeviceClass.' data-bs-toggle='tooltip' data-bs-placement='top' href='/ko/docs/concepts/scheduling-eviction/dynamic-resource-allocation/#deviceclass' target='_blank' aria-label='DeviceClass'>DeviceClass</a>_ 를
생성한다. <a class='glossary-tooltip' title='An expression language that&#39;s designed to be safe for executing user code.' data-bs-toggle='tooltip' data-bs-placement='top' href='https://cel.dev' target='_blank' aria-label='Common Expression Language'>Common Expression Language</a>을 사용하여
특정 디바이스 속성을 필터링함으로써 디바이스를 클레임할 수 있다.

클러스터에 있는 DeviceClass 목록을 조회한다.

```shell
kubectl get deviceclasses
```
출력은 다음과 유사하다.

```
NAME                 AGE
driver.example.com   16m
```
권한 오류가 발생하면, DeviceClass를 조회할 수 있는 접근 권한이 없을 수 있다.
사용 가능한 디바이스 속성에 대해서는 클러스터 관리자 또는 드라이버 제공자에게
확인한다.

## 리소스 클레임하기 {#claim-resources}

<a class='glossary-tooltip' title='Describes the resources that a workload needs, such as devices. ResourceClaims can request devices from DeviceClasses.' data-bs-toggle='tooltip' data-bs-placement='top' href='/ko/docs/concepts/scheduling-eviction/dynamic-resource-allocation/#resourceclaims-templates' target='_blank' aria-label='리소스클레임(ResourceClaim)'>리소스클레임(ResourceClaim)</a>을 사용하여
DeviceClass에서 리소스를 요청할 수 있다.
리소스클레임을 생성하려면, 다음 중 하나를 수행한다.

* 여러 파드가 동일한 디바이스에 대한 접근을 공유하도록 하거나,
  파드의 수명을 넘어 클레임이 존재하도록 하려면
  리소스클레임을 수동으로 생성한다.
* 쿠버네티스가 파드별 리소스클레임을 생성하고 관리하도록 하려면
  <a class='glossary-tooltip' title='Defines a template for Kubernetes to create ResourceClaims. Used to provide per-Pod or per-PodGroup access to separate, similar resources.' data-bs-toggle='tooltip' data-bs-placement='top' href='/ko/docs/concepts/scheduling-eviction/dynamic-resource-allocation/#resourceclaims-templates' target='_blank' aria-label='리소스클레임템플릿(ResourceClaimTemplate)'>리소스클레임템플릿(ResourceClaimTemplate)</a>을
  사용한다. 모든 파드가 유사한 구성의 별도 디바이스에
  접근하도록 하려면 리소스클레임템플릿을 생성한다. 예를 들어,
  [병렬 실행](/docs/concepts/workloads/controllers/job/#parallel-jobs)을
  사용하는 잡(Job)에서 파드에 대한 동시 디바이스
  접근이 필요할 수 있다.

파드에서 특정 리소스클레임을 직접 참조하는 경우, 해당 리소스클레임이
클러스터에 이미 존재해야 한다. 참조된 리소스클레임이 존재하지 않으면,
리소스클레임이 생성될 때까지 파드는 보류(pending) 상태로 유지된다.
파드에서 자동 생성된 리소스클레임을 참조할 수 있지만,
자동 생성된 리소스클레임은 생성을 트리거한 파드의
수명에 바인딩되므로 권장되지 않는다.

리소스를 클레임하는 워크로드를 생성하려면, 다음 옵션 중 하나를 선택한다.

<ul class="nav nav-tabs" id="tabs-claim-resources" role="tablist"><li class="nav-item"><a data-bs-toggle="tab" class="nav-link active" href="#tabs-claim-resources-0" role="tab" aria-controls="tabs-claim-resources-0" aria-selected="true">ResourceClaimTemplate</a></li>
	  
		<li class="nav-item"><a data-bs-toggle="tab" class="nav-link" href="#tabs-claim-resources-1" role="tab" aria-controls="tabs-claim-resources-1">ResourceClaim</a></li></ul>

<div class="tab-content" id="tabs-claim-resources-content"><div class="tab-body tab-pane fadeshow active"
        id="tabs-claim-resources-0" role="tabpanel" aria-labelledby="tabs-claim-resources-0-tab" tabindex="claim-resources"><p>다음 예시 매니페스트를 확인한다.</p>
<div class="highlight code-sample">
    <div class="copy-code-icon">
    <a href="https://raw.githubusercontent.com/kubernetes/website/main/content/en/examples/dra/resourceclaimtemplate.yaml" download="dra/resourceclaimtemplate.yaml"><code>dra/resourceclaimtemplate.yaml</code>
    </a><img src="/images/copycode.svg" class="icon-copycode" onclick="copyCode('dra-resourceclaimtemplate-yaml')" title="Copy dra/resourceclaimtemplate.yaml to clipboard"></img></div>
    <div class="includecode" id="dra-resourceclaimtemplate-yaml"><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-yaml" data-lang="yaml"><span class="line"><span class="cl"><span class="nt">apiVersion</span><span class="p">:</span><span class="w"> </span><span class="l">resource.k8s.io/v1</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="nt">kind</span><span class="p">:</span><span class="w"> </span><span class="l">ResourceClaimTemplate</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="nt">metadata</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">  </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">example-resource-claim-template</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="nt">spec</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">  </span><span class="nt">spec</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span><span class="nt">devices</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">      </span><span class="nt">requests</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">      </span>- <span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">gpu-claim</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="nt">exactly</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">          </span><span class="nt">deviceClassName</span><span class="p">:</span><span class="w"> </span><span class="l">example-device-class</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">          </span><span class="nt">selectors</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">            </span>- <span class="nt">cel</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">                </span><span class="nt">expression</span><span class="p">:</span><span class="w"> </span><span class="p">|-</span><span class="sd">
</span></span></span><span class="line"><span class="cl"><span class="sd">                  device.attributes[&#34;driver.example.com&#34;].type == &#34;gpu&#34; &amp;&amp;
</span></span></span><span class="line"><span class="cl"><span class="sd">                  device.capacity[&#34;driver.example.com&#34;].memory == quantity(&#34;64Gi&#34;)</span><span class="w">
</span></span></span></code></pre></div></div>
</div>
<p>이 매니페스트는 <code>example-device-class</code> DeviceClass에서 다음 두 파라미터에
모두 일치하는 디바이스를 요청하는 리소스클레임템플릿을 생성한다.</p>
<ul>
<li><code>driver.example.com/type</code> 속성의 값이
<code>gpu</code>인 디바이스.</li>
<li>용량이 <code>64Gi</code>인 디바이스.</li>
</ul>
<p>리소스클레임템플릿을 생성하려면, 다음 명령을 실행한다.</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">kubectl apply -f https://k8s.io/examples/dra/resourceclaimtemplate.yaml
</span></span></code></pre></div></div><div class="tab-body tab-pane fade"
        id="tabs-claim-resources-1" role="tabpanel" aria-labelledby="tabs-claim-resources-1-tab" tabindex="claim-resources"><p>다음 예시 매니페스트를 확인한다.</p>
<div class="highlight code-sample">
    <div class="copy-code-icon">
    <a href="https://raw.githubusercontent.com/kubernetes/website/main/content/en/examples/dra/resourceclaim.yaml" download="dra/resourceclaim.yaml"><code>dra/resourceclaim.yaml</code>
    </a><img src="/images/copycode.svg" class="icon-copycode" onclick="copyCode('dra-resourceclaim-yaml')" title="Copy dra/resourceclaim.yaml to clipboard"></img></div>
    <div class="includecode" id="dra-resourceclaim-yaml"><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-yaml" data-lang="yaml"><span class="line"><span class="cl"><span class="nt">apiVersion</span><span class="p">:</span><span class="w"> </span><span class="l">resource.k8s.io/v1</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="nt">kind</span><span class="p">:</span><span class="w"> </span><span class="l">ResourceClaim</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="nt">metadata</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">  </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">example-resource-claim</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="nt">spec</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">  </span><span class="nt">devices</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span><span class="nt">requests</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span>- <span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">single-gpu-claim</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">      </span><span class="nt">exactly</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="nt">deviceClassName</span><span class="p">:</span><span class="w"> </span><span class="l">example-device-class</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="nt">allocationMode</span><span class="p">:</span><span class="w"> </span><span class="l">All</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="nt">selectors</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">        </span>- <span class="nt">cel</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">            </span><span class="nt">expression</span><span class="p">:</span><span class="w"> </span><span class="p">|-</span><span class="sd">
</span></span></span><span class="line"><span class="cl"><span class="sd">              device.attributes[&#34;driver.example.com&#34;].type == &#34;gpu&#34; &amp;&amp;
</span></span></span><span class="line"><span class="cl"><span class="sd">              device.capacity[&#34;driver.example.com&#34;].memory == quantity(&#34;64Gi&#34;)</span><span class="w">
</span></span></span></code></pre></div></div>
</div>
<p>이 매니페스트는 <code>example-device-class</code> DeviceClass에서 다음 두 파라미터에
모두 일치하는 디바이스를 요청하는 리소스클레임을 생성한다.</p>
<ul>
<li><code>driver.example.com/type</code> 속성의 값이
<code>gpu</code>인 디바이스.</li>
<li>용량이 <code>64Gi</code>인 디바이스.</li>
</ul>
<p>리소스클레임을 생성하려면, 다음 명령을 실행한다.</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">kubectl apply -f https://k8s.io/examples/dra/resourceclaim.yaml
</span></span></code></pre></div></div></div>


## DRA를 사용하여 워크로드에서 디바이스 요청하기 {#request-devices-workloads}

디바이스 할당을 요청하려면, 파드 스펙의 `resourceClaims` 필드에
리소스클레임 또는 리소스클레임템플릿을 지정한다. 그런 다음, 해당 파드의
컨테이너에서 `resources.claims` 필드에 특정 클레임을 이름으로 요청한다.
`resourceClaims` 필드에 여러 항목을 지정하고 서로 다른 컨테이너에서
특정 클레임을 사용할 수 있다.

1. 다음 예시 잡을 확인한다.

   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   <div class="highlight code-sample">
       <div class="copy-code-icon">
       <a href="https://raw.githubusercontent.com/kubernetes/website/main/content/en/examples/dra/dra-example-job.yaml" download="dra/dra-example-job.yaml"><code>dra/dra-example-job.yaml</code>
       </a><img src="/images/copycode.svg" class="icon-copycode" onclick="copyCode('dra-dra-example-job-yaml')" title="Copy dra/dra-example-job.yaml to clipboard"></img></div>
       <div class="includecode" id="dra-dra-example-job-yaml"><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-yaml" data-lang="yaml"><span class="line"><span class="cl"><span class="nt">apiVersion</span><span class="p">:</span><span class="w"> </span><span class="l">batch/v1</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="nt">kind</span><span class="p">:</span><span class="w"> </span><span class="l">Job</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="nt">metadata</span><span class="p">:</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">  </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">example-dra-job</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="nt">spec</span><span class="p">:</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">  </span><span class="nt">completions</span><span class="p">:</span><span class="w"> </span><span class="m">10</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">  </span><span class="nt">parallelism</span><span class="p">:</span><span class="w"> </span><span class="m">2</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">  </span><span class="nt">template</span><span class="p">:</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">    </span><span class="nt">spec</span><span class="p">:</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">      </span><span class="nt">restartPolicy</span><span class="p">:</span><span class="w"> </span><span class="l">Never</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">      </span><span class="nt">containers</span><span class="p">:</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">      </span>- <span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">container0</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="nt">image</span><span class="p">:</span><span class="w"> </span><span class="l">ubuntu:24.04</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="nt">command</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="s2">&#34;sleep&#34;</span><span class="p">,</span><span class="w"> </span><span class="s2">&#34;9999&#34;</span><span class="p">]</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="nt">resources</span><span class="p">:</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">          </span><span class="nt">claims</span><span class="p">:</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">          </span>- <span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">separate-gpu-claim</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">      </span>- <span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">container1</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="nt">image</span><span class="p">:</span><span class="w"> </span><span class="l">ubuntu:24.04</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="nt">command</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="s2">&#34;sleep&#34;</span><span class="p">,</span><span class="w"> </span><span class="s2">&#34;9999&#34;</span><span class="p">]</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="nt">resources</span><span class="p">:</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">          </span><span class="nt">claims</span><span class="p">:</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">          </span>- <span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">shared-gpu-claim</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">      </span>- <span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">container2</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="nt">image</span><span class="p">:</span><span class="w"> </span><span class="l">ubuntu:24.04</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="nt">command</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="s2">&#34;sleep&#34;</span><span class="p">,</span><span class="w"> </span><span class="s2">&#34;9999&#34;</span><span class="p">]</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="nt">resources</span><span class="p">:</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">          </span><span class="nt">claims</span><span class="p">:</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">          </span>- <span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">shared-gpu-claim</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">      </span><span class="nt">resourceClaims</span><span class="p">:</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">      </span>- <span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">separate-gpu-claim</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="nt">resourceClaimTemplateName</span><span class="p">:</span><span class="w"> </span><span class="l">example-resource-claim-template</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">      </span>- <span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">shared-gpu-claim</span><span class="w">
   </span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="nt">resourceClaimName</span><span class="p">:</span><span class="w"> </span><span class="l">example-resource-claim</span><span class="w">
   </span></span></span></code></pre></div></div>
   </div>

   이 잡의 각 파드는 다음 속성을 가진다.

   * `separate-gpu-claim`이라는 리소스클레임템플릿과
     `shared-gpu-claim`이라는 리소스클레임을 컨테이너에서 사용할 수 있도록 한다.
   * 다음 컨테이너를 실행한다.
       * `container0`은 `separate-gpu-claim`
         리소스클레임템플릿의 디바이스를 요청한다.
       * `container1`과 `container2`는 `shared-gpu-claim`
         리소스클레임의 디바이스에 대한 접근을 공유한다.

1. 잡을 생성한다.

   ```shell
   kubectl apply -f https://k8s.io/examples/dra/dra-example-job.yaml
   ```

다음 문제 해결 단계를 시도한다.

1. 워크로드가 예상대로 시작되지 않으면, 잡에서
   파드로, 파드에서 리소스클레임으로 단계적으로 확인하여
   각 레벨에서 `kubectl describe`로 오브젝트를 확인한다. 워크로드가
   시작되지 않는 이유를 설명할 수 있는 상태 필드나
   이벤트가 있는지 확인한다.
1. 파드 생성 시 `must specify one of: resourceClaimName,
   resourceClaimTemplateName` 오류가 발생하면, `pod.spec.resourceClaims`의
   모든 항목에 해당 필드 중 정확히 하나가 설정되어 있는지 확인한다.
   설정되어 있다면, 쿠버네티스 1.32 미만의 API를 기반으로 빌드된
   변형(mutating) 파드 웹훅이 클러스터에 설치되어 있을 수 있다.
   클러스터 관리자에게 확인한다.

## 정리 {#clean-up}

이 작업에서 생성한 쿠버네티스 오브젝트를 삭제하려면, 다음 단계를
수행한다.

1.  예시 잡을 삭제한다.

    ```shell
    kubectl delete -f https://k8s.io/examples/dra/dra-example-job.yaml
    ```

1.  리소스 클레임을 삭제하려면, 다음 명령 중 하나를 실행한다.

    * 리소스클레임템플릿을 삭제한다.

      ```shell
      kubectl delete -f https://k8s.io/examples/dra/resourceclaimtemplate.yaml
      ```
    * 리소스클레임을 삭제한다.

      ```shell
      kubectl delete -f https://k8s.io/examples/dra/resourceclaim.yaml
      ```

## 다음 내용

* [DRA에 대해 더 알아보기](/docs/concepts/scheduling-eviction/dynamic-resource-allocation)
