콘텐츠로 이동

RBLN NPU Operator 업그레이드

이 문서는 모든 RBLN 컴포넌트를 관리하는 오퍼레이터 차트를 새 버전으로 업그레이드하는 방법을 설명합니다. 드라이버 버전 롤아웃(RBLNDriver 라이프사이클)은 NPU 드라이버 업그레이드 워크플로우를 참고하세요.

업그레이드 수행

오퍼레이터 업그레이드는 다음 두 단계로 진행합니다.

  1. 변경된 CRD를 적용합니다(Helm은 업그레이드 시 CRD를 갱신하지 않고 최초 설치 시에만 설치합니다).
  2. helm upgrade를 실행합니다.

스키마가 변경되는 경우 CRD를 먼저 적용하세요

새 릴리스에 CRD 스키마 변경이 포함되어 있다면 helm upgrade(2단계)를 실행하기 전에 반드시 갱신된 CRD(1단계)를 먼저 적용해야 합니다. 그렇지 않으면 스키마 검증이 실패하거나 새 필드가 누락될 수 있습니다.

1. 변경된 CRD 적용

릴리스 태그를 고정한 뒤, 차트가 관리하는 두 CRD(RBLNClusterPolicy, RBLNDriver)를 적용합니다. CRD의 크기와 필드 소유권 제약 때문에 --server-side 옵션이 필요합니다.

1
2
3
4
5
$ kubectl apply --server-side --force-conflicts -f \
  https://raw.githubusercontent.com/RBLN-SW/rbln-npu-operator/v0.4.0/config/crd/bases/rebellions.ai_rblnclusterpolicies.yaml

$ kubectl apply --server-side --force-conflicts -f \
  https://raw.githubusercontent.com/RBLN-SW/rbln-npu-operator/v0.4.0/config/crd/bases/rebellions.ai_rblndrivers.yaml

CRD와 다음 단계의 차트 버전에는 동일한 태그를 사용하세요.

2. helm upgrade 실행

설치할 때 사용한 동일한 릴리스 이름과 네임스페이스에 대해 helm upgrade를 실행합니다. 재현 가능한 업그레이드를 위해 새 버전을 명시적으로 지정합니다.

1
2
3
4
$ helm upgrade rbln-npu-operator \
     oci://docker.io/rebellions/rbln-npu-operator-chart \
     --version ${RELEASE_TAG} \
     --namespace rbln-system

설치할 때 사용한 사용자 정의 Helm 값을 그대로 적용하려면 -f my-values.yaml을 전달하거나 설치 시 사용한 --set 오버라이드를 다시 지정합니다.

사용 가능한 버전 태그는 Docker Hub의 차트 페이지에서 확인할 수 있습니다.

관련 문서