5.6.4. 최신 Operator SDK 버전을 위한 프로젝트 업데이트


OpenShift Container Platform 4.16은 Operator SDK 1.36.1을 지원합니다. 워크스테이션에 1.31.0 CLI가 이미 설치되어 있는 경우 최신 버전을 설치하여 CLI를 1.36.1으로 업데이트할 수 있습니다.

중요

Operator 프로젝트의 관련 스캐폴딩 및 테스트 툴을 포함한 Red Hat 지원 버전의 Operator SDK CLI 툴은 더 이상 사용되지 않으며 향후 OpenShift Container Platform 릴리스에서 제거될 예정입니다. Red Hat은 현재 릴리스 라이프사이클 동안 이 기능에 대한 버그 수정 및 지원을 제공하지만 이 기능은 더 이상 개선 사항을 받지 않으며 향후 OpenShift Container Platform 릴리스에서 제거됩니다.

새 Operator 프로젝트를 생성하는 데 Red Hat 지원 버전의 Operator SDK는 권장되지 않습니다. 기존 Operator 프로젝트가 있는 Operator 작성자는 OpenShift Container Platform 4.16과 함께 릴리스된 Operator SDK CLI 툴 버전을 사용하여 프로젝트를 유지 관리하고 최신 버전의 OpenShift Container Platform을 대상으로 하는 Operator 릴리스를 생성할 수 있습니다.

Operator 프로젝트의 다음과 같은 관련 기본 이미지는 더 이상 사용되지 않습니다. 이러한 기본 이미지의 런타임 기능 및 구성 API는 버그 수정 및 CVE 문제를 해결하는 데 계속 지원됩니다.

  • Ansible 기반 Operator 프로젝트의 기본 이미지
  • Helm 기반 Operator 프로젝트의 기본 이미지

OpenShift Container Platform에서 더 이상 사용되지 않거나 삭제된 주요 기능의 최신 목록은 OpenShift Container Platform 릴리스 노트에서 더 이상 사용되지 않고 삭제된 기능 섹션을 참조하십시오.

지원되지 않는 커뮤니티 유지 관리 버전에 대한 자세한 내용은 Operator SDK(Operator Framework) 를 참조하십시오.

그러나 기존 Operator 프로젝트에서 Operator SDK 1.36.1과의 호환성을 유지하려면 1.31.0 이후의 중단된 변경 사항에 대한 업데이트 단계가 필요합니다. 1.31.0을 사용하여 이전에 생성되거나 유지 관리되는 Operator 프로젝트에서 업데이트 단계를 수동으로 수행해야 합니다.

5.6.4.1. Operator SDK 1.36.1에 대한 Java 기반 Operator 프로젝트 업데이트

다음 절차에서는 1.36.1과의 호환성을 위해 기존 Java 기반 Operator 프로젝트를 업데이트합니다.

사전 요구 사항

  • Operator SDK 1.36.1 설치
  • Operator SDK 1.31.0을 사용하여 생성되거나 유지 관리되는 Operator 프로젝트

프로세스

  1. 다음 예와 같이 Operator 프로젝트의 Makefile을 편집하여 Operator SDK 버전을 v1.36.1-ocp 로 업데이트합니다.

    Makefile의 예

    # Set the Operator SDK version to use. By default, what is installed on the system is used.
    # This is useful for CI or a project to utilize a specific version of the operator-sdk toolkit.
    OPERATOR_SDK_VERSION ?= v1.36.1-ocp

  2. RHEL(Red Hat Enterprise Linux) 9 기반 이미지를 사용하도록 kube-rbac-proxy 컨테이너를 업데이트합니다.

    1. 다음 파일에서 kube-rbac-proxy 컨테이너 항목을 찾습니다.

      • config/default/manager_auth_proxy_patch.yaml
      • Operator 프로젝트의 bundle/manifests/<operator_name>.clusterserviceversion.yaml (예: 튜토리얼의 memcached-operator.clusterserviceversion.yaml )
    2. ose-kube-rbac-proxy에서 ose-kube-rbac-proxy -rhel9 로 가져오기 사양의 이미지 이름을 업데이트하고 태그를 v4.16 으로 업데이트합니다.

      v4.16 이미지 태그가 있는 ose-kube-rbac-proxy-rhel9 풀 사양의 예

      # ...
            containers:
            - name: kube-rbac-proxy
              image: registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9:v4.16
      # ...

  3. kustomize/v2 플러그인은 이제 안정적인 상태이며 go/v4,ansible/v1,helm/v1, hybrid/v1-alpha 플러그인을 사용할 때 플러그인 체인에 사용되는 기본 버전입니다. 이 기본 스캐폴드에 대한 자세한 내용은 Kubebuilder 설명서의 Kustomize v2 를 참조하십시오.
  4. Operator 프로젝트에서 다중 플랫폼 또는 다중 아키텍처, 빌드를 사용하는 경우 기존 docker-buildx 대상을 프로젝트 Makefile의 다음 정의로 교체합니다.

    Makefile의 예

    docker-buildx:
    ## Build and push the Docker image for the manager for multi-platform support
    	- docker buildx create --name project-v3-builder
    	docker buildx use project-v3-builder
    	- docker buildx build --push --platform=$(PLATFORMS) --tag ${IMG} -f Dockerfile .
    	- docker buildx rm project-v3-builder

  5. 1.29를 사용하려면 Operator 프로젝트의 Kubernetes 버전을 업그레이드해야 합니다. 프로젝트 구조, Makefile 및 go.mod 파일을 다음과 같이 변경해야 합니다.

    중요

    Go/v3 플러그인은 Kubebuilder에서 더 이상 사용되지 않으므로 Operator SDK도 향후 릴리스에서 go/v4 로 마이그레이션되고 있습니다.

    1. go.mod 파일을 업데이트하여 종속 항목을 업그레이드합니다.

      k8s.io/api v0.29.2
      k8s.io/apimachinery v0.29.2
      k8s.io/client-go v0.29.2
      sigs.k8s.io/controller-runtime v0.17.3
    2. 다음 명령을 실행하여 업그레이드된 종속 항목을 다운로드합니다.

      $ go mod tidy
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 문서 정보

Legal Notice

Theme

© 2026 Red Hat
맨 위로 이동