5장. 클러스터 확장
5.1. 클러스터 확장 관리 링크 복사링크가 클립보드에 복사되었습니다!
카탈로그가 클러스터에 추가되면 카탈로그에 게시된 확장 및 Operator의 버전, 패치 및 무선 업데이트에 액세스할 수 있습니다.
CR(사용자 정의 리소스)을 사용하여 CLI에서 선언적으로 확장을 관리할 수 있습니다.
OpenShift Container Platform 4.20의 경우 OLM v1에 대한 문서화된 절차는 CLI 기반 전용입니다. 또는 관리자는 YAML 가져오기 및 검색 페이지와 같은 일반 방법을 사용하여 웹 콘솔에서 관련 오브젝트를 생성하고 볼 수 있습니다. 그러나 기존 소프트웨어 카탈로그 및 설치된 Operator 페이지에는 OLM v1 구성 요소가 아직 표시되지 않습니다.
5.1.1. 지원되는 확장 링크 복사링크가 클립보드에 복사되었습니다!
현재 OLM(Operator Lifecycle Manager) v1에서는 다음 기준을 모두 충족하는 클러스터 확장 설치를 지원합니다.
-
확장에서는 OLM(Classic)에 도입된
registry+v1
번들 형식을 사용해야 합니다. 확장 기능은
AllNamespaces
설치 모드를 통한 설치를 지원해야 합니다.-
OpenShift Container Platform 4.20에서
SingleNamespace
및OwnNamespace
설치 모드를 기술 프리뷰 기능으로 사용할 수 있습니다.
-
OpenShift Container Platform 4.20에서
확장에서는 Webhook를 사용하지 않아야 합니다.
- OpenShift Container Platform 4.20에서 Webhook를 기술 프리뷰 기능으로 사용하는 확장을 설치할 수 있습니다.
확장자는 다음 파일 기반 카탈로그 속성을 사용하여 종속성을 선언해서는 안 됩니다.
-
olm.gvk.required
-
olm.package.required
-
olm.constraint
-
OLM v1은 설치하려는 확장이 이러한 제약 조건을 충족하는지 확인합니다. 설치하려는 확장이 이러한 제약 조건을 충족하지 않으면 클러스터 확장 상태에 오류 메시지가 출력됩니다.
특정 네임스페이스에 확장을 배포하고 Webhook를 사용하여 확장 기능을 설치하는 것은 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.
Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.
OLM(Operator Lifecycle Manager) v1은 OLM(Classic)에 도입된 OperatorConditions
API를 지원하지 않습니다.
확장 프로그램이 OperatorConditions
API만 사용하여 업데이트를 관리하는 경우 확장이 올바르게 설치되지 않을 수 있습니다. 이 API에 의존하는 대부분의 확장은 시작 시 실패하지만 조정 중에 일부 확장이 실패할 수 있습니다.
이 문제를 해결하려면 확장 기능을 특정 버전에 고정할 수 있습니다. 확장을 업데이트하려는 경우 확장 기능을 참조하여 확장 기능을 새 버전에 고정하는 것이 안전한지 확인합니다.
5.1.2. 카탈로그에서 설치할 Operator 찾기 링크 복사링크가 클립보드에 복사되었습니다!
클러스터에 카탈로그를 추가한 후 카탈로그를 쿼리하여 설치할 Operator 및 확장을 찾을 수 있습니다.
현재 OLM(Operator Lifecycle Manager) v1에서는 카탈로그에서 관리하는 클러스터 카탈로그에서 쿼리할 수 없습니다. OLM v1에서는 opm
및 jq
CLI 툴을 사용하여 카탈로그 레지스트리를 쿼리해야 합니다.
사전 요구 사항
- 클러스터에 카탈로그를 추가했습니다.
-
jq
CLI 툴을 설치했습니다. -
opm
CLI 툴을 설치했습니다.
프로세스
AllNamespaces
설치 모드를 지원하고 Webhook를 사용하지 않는 확장 목록을 반환하려면 다음 명령을 입력합니다.opm render <catalog_registry_url>:<tag> \ | jq -cs '[.[] | select(.schema == "olm.bundle" \ | jq -cs '[.[] | select(.schema == "olm.bundle" \ and (.properties[] | select(.type == "olm.csv.metadata").value.installModes[] \ and (.properties[] | select(.type == "olm.csv.metadata").value.installModes[] \ | select(.type == "AllNamespaces" and .supported == true)) \ | select(.type == "AllNamespaces" and .supported == true)) \ and .spec.webhookdefinitions == null) | .package] | unique[]' and .spec.webhookdefinitions == null) | .package] | unique[]'
$ opm render <catalog_registry_url>:<tag> \ | jq -cs '[.[] | select(.schema == "olm.bundle" \ and (.properties[] | select(.type == "olm.csv.metadata").value.installModes[] \ | select(.type == "AllNamespaces" and .supported == true)) \ and .spec.webhookdefinitions == null) | .package] | unique[]'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음과 같습니다.
catalog_registry_url
-
registry.redhat.io/redhat/redhat-operator-index
와 같은 카탈로그 레지스트리의 URL을 지정합니다. tag
v4.20
또는latest
와 같은 카탈로그의 태그 또는 버전을 지정합니다.예 5.1. 명령 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 5.2. 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
다음 명령을 실행하여 확장 메타데이터의 콘텐츠를 검사합니다.
opm render <catalog_registry_url>:<tag> \ | jq -s '.[] | select( .schema == "olm.package") \ | jq -s '.[] | select( .schema == "olm.package") \ | select( .name == "<package_name>")' | select( .name == "<package_name>")'
$ opm render <catalog_registry_url>:<tag> \ | jq -s '.[] | select( .schema == "olm.package") \ | select( .name == "<package_name>")'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 5.3. 명령 예
opm render \ registry.redhat.io/redhat/redhat-operator-index:v4.20 \ | jq -s '.[] | select( .schema == "olm.package") \ | select( .name == "openshift-pipelines-operator-rh")'
$ opm render \ registry.redhat.io/redhat/redhat-operator-index:v4.20 \ | jq -s '.[] | select( .schema == "olm.package") \ | select( .name == "openshift-pipelines-operator-rh")'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 5.4. 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.1.2.1. 공통 카탈로그 쿼리 링크 복사링크가 클립보드에 복사되었습니다!
opm
및 jq
CLI 툴을 사용하여 카탈로그를 쿼리할 수 있습니다. 다음 표에는 확장 라이프사이클을 설치, 업데이트 및 관리할 때 사용할 수 있는 일반적인 카탈로그 쿼리가 표시되어 있습니다.
명령 구문
opm render <catalog_registry_url>:<tag> | <jq_request>
$ opm render <catalog_registry_url>:<tag> | <jq_request>
다음과 같습니다.
catalog_registry_url
-
registry.redhat.io/redhat/redhat-operator-index
와 같은 카탈로그 레지스트리의 URL을 지정합니다. tag
-
v4.20
또는latest
와 같은 카탈로그의 태그 또는 버전을 지정합니다. jq_request
- 카탈로그에서 실행할 쿼리를 지정합니다.
예 5.5. 명령 예
쿼리 | 요청 |
---|---|
카탈로그에서 사용 가능한 패키지 |
opm render <catalog_registry_url>:<tag> \ | jq -s '.[] | select( .schema == "olm.package")' | jq -s '.[] | select( .schema == "olm.package")'
|
|
|
패키지 메타데이터 |
opm render <catalog_registry_url>:<tag> \ | jq -s '.[] | select( .schema == "olm.package") \ | jq -s '.[] | select( .schema == "olm.package") \ | select( .name == "<package_name>")' | select( .name == "<package_name>")'
|
패키지의 카탈로그 Blob |
opm render <catalog_registry_url>:<tag> \ | jq -s '.[] | select( .package == "<package_name>")' | jq -s '.[] | select( .package == "<package_name>")'
|
쿼리 | 요청 |
---|---|
패키지의 채널 |
opm render <catalog_registry_url>:<tag> \ | jq -s '.[] | select( .schema == "olm.channel" ) \ | jq -s '.[] | select( .schema == "olm.channel" ) \ | select( .package == "<package_name>") | .name' | select( .package == "<package_name>") | .name'
|
채널의 버전 |
opm render <catalog_registry_url>:<tag> \ | jq -s '.[] | select( .package == "<package_name>" ) \ | jq -s '.[] | select( .package == "<package_name>" ) \ | select( .schema == "olm.channel" ) \ | select( .schema == "olm.channel" ) \ | select( .name == "<channel_name>" ) .entries \ | select( .name == "<channel_name>" ) .entries \ | .[] | .name' | .[] | .name'
|
|
opm render <catalog_registry_url>:<tag> \ | jq -s '.[] | select( .schema == "olm.channel" ) \ | jq -s '.[] | select( .schema == "olm.channel" ) \ | select ( .name == "<channel_name>") \ | select ( .name == "<channel_name>") \ | select( .package == "<package_name>")' | select( .package == "<package_name>")'
|
쿼리 | 요청 |
---|---|
패키지의 번들 |
opm render <catalog_registry_url>:<tag> \ | jq -s '.[] | select( .schema == "olm.bundle" ) \ | jq -s '.[] | select( .schema == "olm.bundle" ) \ | select( .package == "<package_name>") | .name' | select( .package == "<package_name>") | .name'
|
|
opm render <catalog_registry_url>:<tag> \ | jq -s '.[] | select( .schema == "olm.bundle" ) \ | jq -s '.[] | select( .schema == "olm.bundle" ) \ | select ( .name == "<bundle_name>") \ | select ( .name == "<bundle_name>") \ | select( .package == "<package_name>")' | select( .package == "<package_name>")'
|
5.1.3. 클러스터 확장 권한 링크 복사링크가 클립보드에 복사되었습니다!
OLM(Operator Lifecycle Manager) Classic에서는 클러스터 관리자 권한이 있는 단일 서비스 계정에서 모든 클러스터 확장을 관리합니다.
OLM v1은 기본적으로 OLM(Classic)보다 더 안전하도록 설계되었습니다. OLM v1은 확장의 CR(사용자 정의 리소스)에 지정된 서비스 계정을 사용하여 클러스터 확장을 관리합니다. 클러스터 관리자는 각 클러스터 확장에 대한 서비스 계정을 생성할 수 있습니다. 결과적으로 관리자는 최소 권한 원칙을 따르고 해당 확장을 설치하고 관리할 역할 기반 액세스 제어(RBAC)만 할당할 수 있습니다.
클러스터 역할 또는 역할에 각 권한을 추가해야 합니다. 그런 다음 클러스터 역할 또는 역할을 클러스터 역할 바인딩 또는 역할 바인딩을 사용하여 서비스 계정에 바인딩해야 합니다.
RBAC의 범위를 클러스터 또는 네임스페이스로 지정할 수 있습니다. 클러스터 역할 및 클러스터 역할 바인딩을 사용하여 클러스터에 대한 권한 범위를 지정합니다. 역할 및 역할 바인딩을 사용하여 네임스페이스에 대한 권한 범위를 지정합니다. 클러스터 또는 네임스페이스에 대한 권한의 범위를 지정하는 것은 설치 및 관리할 확장의 설계에 따라 달라집니다.
다음 절차 및 가독성을 개선하기 위해 다음 예제 매니페스트에서는 클러스터에 범위가 지정된 권한을 사용합니다. 클러스터 대신 확장의 네임스페이스로 범위를 지정하여 일부 권한을 추가로 제한할 수 있습니다.
설치된 새 확장 버전에 추가 권한이 필요한 경우 클러스터 관리자가 해당 권한을 부여할 때까지 OLM v1이 업데이트 프로세스를 중지합니다.
5.1.3.1. 네임스페이스 생성 링크 복사링크가 클립보드에 복사되었습니다!
클러스터 확장을 설치하고 관리하기 위해 서비스 계정을 생성하기 전에 네임스페이스를 생성해야 합니다.
사전 요구 사항
-
cluster-admin
권한이 있는 계정을 사용하여 OpenShift Container Platform 클러스터에 액세스할 수 있습니다.
프로세스
다음 명령을 실행하여 설치할 확장의 서비스 계정에 대한 새 네임스페이스를 생성합니다.
oc adm new-project <new_namespace>
$ oc adm new-project <new_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.1.3.2. 확장에 대한 서비스 계정 생성 링크 복사링크가 클립보드에 복사되었습니다!
클러스터 확장을 설치, 관리 및 업데이트하려면 서비스 계정을 생성해야 합니다.
사전 요구 사항
-
cluster-admin
권한이 있는 계정을 사용하여 OpenShift Container Platform 클러스터에 액세스할 수 있습니다.
프로세스
다음 예와 유사한 서비스 계정을 생성합니다.
apiVersion: v1 kind: ServiceAccount metadata: name: <extension>-installer namespace: <namespace>
apiVersion: v1 kind: ServiceAccount metadata: name: <extension>-installer namespace: <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 5.6.
extension-service-account.yaml
파일의 예apiVersion: v1 kind: ServiceAccount metadata: name: pipelines-installer namespace: pipelines
apiVersion: v1 kind: ServiceAccount metadata: name: pipelines-installer namespace: pipelines
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 서비스 계정을 적용합니다.
oc apply -f extension-service-account.yaml
$ oc apply -f extension-service-account.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.1.3.3. 확장 번들 매니페스트 다운로드 링크 복사링크가 클립보드에 복사되었습니다!
opm
CLI 툴을 사용하여 설치하려는 확장의 번들 매니페스트를 다운로드합니다. 선택한 CLI 툴 또는 텍스트 편집기를 사용하여 매니페스트를 보고 확장을 설치하고 관리하는 데 필요한 권한을 찾습니다.
사전 요구 사항
-
cluster-admin
권한이 있는 계정을 사용하여 OpenShift Container Platform 클러스터에 액세스할 수 있습니다. - 어떤 확장을 설치할지 결정합니다.
-
opm
CLI 툴을 설치했습니다.
프로세스
다음 명령을 실행하여 설치할 확장의 사용 가능한 버전 및 이미지를 검사합니다.
opm render <registry_url>:<tag_or_version> | \ jq -cs '.[] | select( .schema == "olm.bundle" ) | \ select( .package == "<extension_name>") | \ {"name":.name, "image":.image}'
$ opm render <registry_url>:<tag_or_version> | \ jq -cs '.[] | select( .schema == "olm.bundle" ) | \ select( .package == "<extension_name>") | \ {"name":.name, "image":.image}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 5.7. 명령 예
opm render registry.redhat.io/redhat/redhat-operator-index:v4.20 | \ jq -cs '.[] | select( .schema == "olm.bundle" ) | \ select( .package == "openshift-pipelines-operator-rh") | \ {"name":.name, "image":.image}'
$ opm render registry.redhat.io/redhat/redhat-operator-index:v4.20 | \ jq -cs '.[] | select( .schema == "olm.bundle" ) | \ select( .package == "openshift-pipelines-operator-rh") | \ {"name":.name, "image":.image}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 5.8. 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 설치할 번들의 이미지를 추출하도록 디렉터리를 만듭니다.
mkdir <new_dir>
$ mkdir <new_dir>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 디렉터리로 변경합니다.
cd <new_dir>
$ cd <new_dir>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 설치하려는 버전의 이미지 참조를 찾아 다음 명령을 실행합니다.
oc image extract <full_path_to_registry_image>@sha256:<sha>
$ oc image extract <full_path_to_registry_image>@sha256:<sha>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 명령 예
oc image extract registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:f7b19ce26be742c4aaa458d37bc5ad373b5b29b20aaa7d308349687d3cbd8838
$ oc image extract registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:f7b19ce26be742c4aaa458d37bc5ad373b5b29b20aaa7d308349687d3cbd8838
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
매니페스트
디렉터리로 변경합니다.cd manifests
$ cd manifests
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 입력하여 매니페스트 디렉터리의 콘텐츠를 확인합니다. 출력에 확장을 설치, 관리 및 운영하는 데 필요한 리소스의 매니페스트가 나열됩니다.
tree
$ tree
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 5.9. 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
다음 단계
-
선호하는 CLI 도구 또는 텍스트 편집기를 사용하여
manifests
디렉터리에 있는 CSV(클러스터 서비스 버전) 파일의install.spec.clusterpermissions
스탠자의 내용을 확인합니다. 다음 예제에서는 Red Hat OpenShift Pipelines Operator의openshift-pipelines-operator-rh.clusterserviceversion.yaml
파일을 참조합니다. - 다음 절차에서 클러스터 역할 파일에 권한을 할당하는 동안 이 파일을 참조로 열어 둡니다.
5.1.3.4. 클러스터 확장을 설치하고 관리하는 데 필요한 권한 링크 복사링크가 클립보드에 복사되었습니다!
필요한 권한을 할당하려면 클러스터 확장의 번들 이미지에 포함된 매니페스트를 검사해야 합니다. 서비스 계정에는 다음 리소스를 생성하고 관리하기 위해 충분한 RBAC(역할 기반 액세스 제어)가 필요합니다.
특정 리소스 이름에 대한 최소 권한 및 범위 권한 원칙을 따릅니다.
- 승인 플러그인
-
OpenShift Container Platform 클러스터는
OwnerReferencesPermissionEnforcement
승인 플러그인을 사용하므로 클러스터 확장에는blockOwnerDeletion
및ownerReferences
종료자를 업데이트할 수 있는 권한이 있어야 합니다. - 확장 컨트롤러를 위한 클러스터 역할 및 클러스터 역할 바인딩
- 설치 서비스 계정이 확장 컨트롤러에 대한 클러스터 역할 및 클러스터 역할 바인딩을 생성하고 관리할 수 있도록 RBAC를 정의해야 합니다.
- CSV(클러스터 서비스 버전)
- 클러스터 확장의 CSV에 정의된 리소스에 대한 RBAC를 정의해야 합니다.
- 클러스터 범위 번들 리소스
-
번들에 포함된 클러스터 범위 리소스를 생성하고 관리하려면 RBAC를 정의해야 합니다. 클러스터 범위 리소스가
ClusterRole
과 같은 다른 리소스 유형과 일치하는 경우 resources 또는resourceNames
필드의 기존 규칙에 리소스를
추가할 수 있습니다. - CRD(사용자 정의 리소스 정의)
- 설치 서비스 계정이 확장에 대한 CRD를 생성하고 관리할 수 있도록 RBAC를 정의해야 합니다. 또한 확장 컨트롤러에 서비스 계정에 RBAC를 부여하여 해당 CRD를 관리해야 합니다.
- 배포
- 서비스 및 구성 맵과 같이 확장 컨트롤러에 필요한 배포를 생성하고 관리하려면 설치 서비스 계정에 대한 RBAC를 정의해야 합니다.
- 확장 권한
- CSV에 정의된 권한 및 클러스터 권한에 대한 RBAC를 포함해야 합니다. 설치 서비스 계정에는 이러한 권한을 실행하는 데 필요한 확장 컨트롤러에 이러한 권한을 부여할 수 있어야 합니다.
- 네임스페이스 범위 번들 리소스
- 네임스페이스 범위 번들 리소스에 대한 RBAC를 정의해야 합니다. 설치 서비스 계정에는 구성 맵 또는 서비스와 같은 리소스를 생성하고 관리할 수 있는 권한이 필요합니다.
- 역할 및 역할 바인딩
- CSV에 정의된 역할 또는 역할 바인딩에 대한 RBAC를 정의해야 합니다. 설치 서비스 계정에는 해당 역할 및 역할 바인딩을 생성하고 관리할 수 있는 권한이 필요합니다.
- Service accounts
- 설치 서비스 계정이 확장 컨트롤러의 서비스 계정을 생성하고 관리할 수 있도록 RBAC를 정의해야 합니다.
5.1.3.5. 확장에 대한 클러스터 역할 생성 링크 복사링크가 클립보드에 복사되었습니다!
설치하려는 확장의 필수 역할 기반 액세스 제어(RBAC)를 정의하려면 CSV(클러스터 서비스 버전)의 install.spec.clusterpermissions
스탠자와 확장의 매니페스트를 검토해야 합니다. CSV에서 새 매니페스트로 필요한 RBAC를 복사하여 클러스터 역할을 생성해야 합니다.
OLM v1에서 확장 설치 및 업데이트 프로세스를 테스트하려면 다음 클러스터 역할을 사용하여 클러스터 관리자 권한을 부여할 수 있습니다. 이 매니페스트는 테스트 목적으로만 사용됩니다. 프로덕션 클러스터에서는 사용해서는 안 됩니다.
다음 절차에서는 Red Hat OpenShift Pipelines Operator의 openshift-pipelines-operator-rh.clusterserviceversion.yaml
파일을 예로 사용합니다. 예제에는 OpenShift Pipelines Operator를 설치하고 관리하는 데 필요한 RBAC 발췌가 포함되어 있습니다. 전체 매니페스트는 "Red Hat OpenShift Pipelines Operator의 클러스터 역할 예"를 참조하십시오.
다음 절차 및 가독성을 개선하기 위해 다음 예제 매니페스트에서는 클러스터에 범위가 지정된 권한을 사용합니다. 클러스터 대신 확장의 네임스페이스로 범위를 지정하여 일부 권한을 추가로 제한할 수 있습니다.
사전 요구 사항
-
cluster-admin
권한이 있는 계정을 사용하여 OpenShift Container Platform 클러스터에 액세스할 수 있습니다. - 설치하려는 확장의 이미지 참조에 매니페스트를 다운로드했습니다.
프로세스
다음 예와 유사한 새 클러스터 역할 매니페스트를 생성합니다.
예
<extension>-cluster-role.yaml
파일apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: <extension>-installer-clusterrole
apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: <extension>-installer-clusterrole
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 예와 같이 확장에서 종료자를 업데이트할 수 있는 권한을 포함하도록 클러스터 역할 매니페스트를 편집합니다.
Example <extension>-cluster-role.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 확장의 CR(사용자 정의 리소스)의
metadata.name
필드의 값을 지정합니다.
확장의 CSV 파일에서
rules.resources
필드에서clusterrole
및clusterrolebindings
값을 검색합니다.다음 예와 유사하게 API 그룹, 리소스, 동사 및 리소스 이름을 매니페스트에 복사합니다.
클러스터 역할 매니페스트의 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
확장의 CSV 파일의
rules.resources
필드에서customresourcedefinitions
값을 검색합니다.다음 예와 유사하게 API 그룹, 리소스, 동사 및 리소스 이름을 매니페스트에 복사합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
rules.resources
사양에서permissions
및clusterPermissions
값을 사용하여 CSV 파일에서 스탠자를 검색합니다.다음 예와 유사하게 API 그룹, 리소스, 동사 및 리소스 이름을 매니페스트에 복사합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
install.spec.deployments
스탠자에서 CSV 파일에서 리소스를 검색합니다.다음 예와 유사하게 API 그룹, 리소스, 동사 및 리소스 이름을 매니페스트에 복사합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
확장의 CSV 파일에서
rules.resources
필드에서서비스
및configmaps
값을 검색합니다.다음 예와 유사하게 API 그룹, 리소스, 동사 및 리소스 이름을 매니페스트에 복사합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
다음 명령을 실행하여 클러스터에 클러스터 역할 매니페스트를 추가합니다.
oc apply -f <extension>-installer-clusterrole.yaml
$ oc apply -f <extension>-installer-clusterrole.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 명령 예
oc apply -f pipelines-installer-clusterrole.yaml
$ oc apply -f pipelines-installer-clusterrole.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.1.3.6. Red Hat OpenShift Pipelines Operator의 클러스터 역할의 예 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Pipelines Operator의 전체 클러스터 역할 매니페스트 예제는 다음 예제를 참조하십시오.
5.1.3.7. 확장에 대한 클러스터 역할 바인딩 생성 링크 복사링크가 클립보드에 복사되었습니다!
서비스 계정 및 클러스터 역할을 생성한 후 클러스터 역할을 클러스터 역할 바인딩 매니페스트와 서비스 계정에 바인딩해야 합니다.
사전 요구 사항
-
cluster-admin
권한이 있는 계정을 사용하여 OpenShift Container Platform 클러스터에 액세스할 수 있습니다. 설치하려는 확장에 다음 리소스를 생성하고 적용했습니다.
- 네임스페이스
- 서비스 계정
- 클러스터 역할
프로세스
다음 예와 같이 클러스터 역할을 서비스 계정에 바인딩할 클러스터 역할 바인딩을 생성합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 5.10.
pipelines-cluster-role-binding.yaml
파일의 예Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 클러스터 역할 바인딩을 적용합니다.
oc apply -f pipelines-cluster-role-binding.yaml
$ oc apply -f pipelines-cluster-role-binding.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.1.4. 모든 네임스페이스에 클러스터 확장 설치 링크 복사링크가 클립보드에 복사되었습니다!
CR(사용자 정의 리소스)을 생성하고 클러스터에 적용하여 카탈로그에서 확장을 설치할 수 있습니다. OLM(Operator Lifecycle Manager) v1은 클러스터 범위인 registry+v1
번들 형식의 OLM(Classic) Operator 설치를 지원합니다. 자세한 내용은 지원되는 확장 기능을 참조하십시오.
OpenShift Container Platform 4.20의 경우 OLM v1에 대한 문서화된 절차는 CLI 기반 전용입니다. 또는 관리자는 YAML 가져오기 및 검색 페이지와 같은 일반 방법을 사용하여 웹 콘솔에서 관련 오브젝트를 생성하고 볼 수 있습니다. 그러나 기존 소프트웨어 카탈로그 및 설치된 Operator 페이지에는 OLM v1 구성 요소가 아직 표시되지 않습니다.
사전 요구 사항
- 서비스 계정을 생성하고 설치하려는 확장을 설치, 업데이트 및 관리할 충분한 RBAC(역할 기반 액세스 제어)가 할당되었습니다. 자세한 내용은 "클러스터 확장 권한"을 참조하십시오.
프로세스
다음 예와 유사한 CR을 생성합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
파이프라인
또는my-extension
와 같이 번들을 설치할 네임스페이스를 지정합니다. 확장 기능은 여전히 클러스터 범위이며 다른 네임스페이스에 설치된 리소스가 포함될 수 있습니다.- 2
- 확장 기능을 설치, 업데이트 및 관리하기 위해 만든 서비스 계정의 이름을 지정합니다.
- 3
- 선택 사항:
pipelines-1.14
또는latest
와 같은 채널 이름을 배열로 지정합니다. - 4
- 선택 사항: 설치 또는 업데이트하려는 패키지의
1.14.0
,1.14.x
또는 >=1.16
과 같은 버전 범위를 지정합니다. 자세한 내용은 "대상 버전을 지정하는 CR(사용자 정의 리소스) 예" 및 "버전 범위에 대한 지원"을 참조하십시오. - 5
- 선택 사항: 업그레이드 제약 조건 정책을 지정합니다. 지정되지 않은 경우 기본 설정은
CatalogProvided
입니다.CatalogProvided
설정은 새 버전이 패키지 작성자가 설정한 업그레이드 제약 조건을 충족하는 경우에만 업데이트됩니다. 업데이트 또는 롤백을 강제 적용하려면 필드를SelfCertified
로 설정합니다. 자세한 내용은 "업데이트 또는 롤백 요청"을 참조하십시오.
pipelines-operator.yaml
CR의 예
다음 명령을 실행하여 클러스터에 CR을 적용합니다.
oc apply -f pipeline-operator.yaml
$ oc apply -f pipeline-operator.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
clusterextension.olm.operatorframework.io/pipelines-operator created
clusterextension.olm.operatorframework.io/pipelines-operator created
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
다음 명령을 실행하여 Operator 또는 확장의 CR을 YAML 형식으로 표시합니다.
oc get clusterextension pipelines-operator -o yaml
$ oc get clusterextension pipelines-operator -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 5.11. 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음과 같습니다.
spec.channel
- 확장의 CR에 정의된 채널을 표시합니다.
spec.version
- 확장의 CR에 정의된 버전 또는 버전 범위를 표시합니다.
status.conditions
- 확장의 상태 및 상태에 대한 정보를 표시합니다.
유형: 더 이상 사용되지 않음
다음 중 하나 이상이 더 이상 사용되지 않는지 여부를 표시합니다.
유형: PackageDeprecated
- 해결된 패키지가 더 이상 사용되지 않는지 여부를 표시합니다.
유형: ChannelDeprecated
- 해결된 채널이 더 이상 사용되지 않는지 여부를 표시합니다.
유형: BundleDeprecated
- 해결된 번들이 더 이상 사용되지 않는지 여부를 표시합니다.
status
필드의False
값은reason: 더 이상 사용되지 않는 조건이 더 이상
사용되지 않음을 나타냅니다.status
필드의True
값은reason: 더 이상 사용되지 않는 조건이 더 이상 사용되지
않음을 나타냅니다.installedBundle.name
- 설치된 번들의 이름을 표시합니다.
installedBundle.version
- 설치된 번들의 버전을 표시합니다.
5.1.5. 특정 네임스페이스에 클러스터 확장 배포 (기술 프리뷰) 링크 복사링크가 클립보드에 복사되었습니다!
설치 모드는 OLM(Operator Lifecycle Manager) Classic의 멀티 테넌시 기능입니다. OLM v1은 멀티 테넌시를 지원하지 않으며 AllNamespaces
설치 모드를 사용하여 기본적으로 클러스터 확장을 클러스터에 배포합니다.
그러나 일부 기존 클러스터 확장에서는 AllNamespaces
설치 모드를 지원하지 않습니다. OwnNamespace
또는 SingleNamespace
설치 모드를 registry+v1
Operator 번들의 기술 프리뷰 기능으로 사용하여 특정 네임스페이스에 확장을 배포할 수 있습니다.
MultiNamespace
설치 모드는 지원되지 않습니다. 따라서 클러스터에 동일한 Operator를 여러 번 설치할 수 없습니다.
특정 네임스페이스에 클러스터 확장 배포는 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.
Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.
자세한 내용은 "지원된 확장"을 참조하십시오.
사전 요구 사항
-
cluster-admin
권한이 있는 계정을 사용하여 OpenShift Container Platform 클러스터에 액세스 -
클러스터에서
TechPreviewNoUpgrade
기능 세트 활성화 -
OwnNamespace
또는SingleNamespace
설치 모드를 지원하는 Operator
프로세스
다음 예와 유사한 CR(사용자 정의 리소스)을 생성합니다.
예:
<cluster-extension-cr>.yaml
파일Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음과 같습니다.
네임스페이스
클러스터 확장을 배포할 네임스페이스를 지정합니다.
-
namespace
매개변수가 비어 있거나 주석이 없으면AllNamespaces
설치 모드를 사용하여 확장이 배포됩니다. -
namespace
매개변수가spec.namespace
필드에installed_namespace
매개변수와 동일한 값이면OwnNamespace
설치 모드를 사용하여 확장이 배포됩니다. -
namespace
매개변수가installed_namespace
매개변수와 다른 네임스페이스를 지정하면SingleNamespace
설치 모드를 사용하여 확장이 배포됩니다.
-
다음 명령을 실행하여 클러스터에 CR을 적용합니다.
oc apply -f <cluster_extension_cr>.yaml
$ oc apply -f <cluster_extension_cr>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.1.6. preflight 권한 검사 클러스터 확장 (기술 프리뷰) 링크 복사링크가 클립보드에 복사되었습니다!
확장을 설치하려고 하면 Operator 컨트롤러에서 설치 프로세스의 예행 실행을 수행합니다. 이 예행 실행에서는 지정된 서비스 계정에서 확장을 설치하는 데 필요한 모든 작업을 수행할 수 있는지 확인합니다. 여기에는 번들에 있는 모든 Kubernetes 오브젝트 생성 및 번들에서 정의한 역할 및 바인딩에 대한 RBAC(역할 기반 액세스 제어) 규칙이 포함됩니다.
클러스터 확장에 대한 사전 실행 권한 확인은 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.
Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.
서비스 계정에 필요한 RBAC 규칙이 없으면 실제 설치를 진행하기 전에 preflight 검사가 실패합니다. preflight 검사에 실패하면 Operator 컨트롤러에서 확장 상태 조건 및 Operator 컨트롤러의 로그에 오류를 보고합니다.
설치를 진행하려면 역할 및 바인딩을 업데이트하여 서비스 계정에 누락된 권한을 부여하고 변경 사항을 적용합니다. 오류가 없으면 Operator 컨트롤러에서 업데이트된 권한을 조정하고 설치를 완료합니다.
5.1.6.1. preflight 권한 확인의 보고서 예 링크 복사링크가 클립보드에 복사되었습니다!
다음 보고서는 서비스 계정에 다음과 같은 누락된 권한이 필요함을 나타냅니다.
-
전체 클러스터의 코어 API 그룹에서
서비스
리소스에 대한목록
및감시
작업을 수행하는 RBAC 규칙 -
pipelines
네임스페이스의apps
API 그룹에서배포
리소스에 대한생성
작업을 수행하는 RBAC 규칙
클러스터 확장의 상태 조건에서 preflight 권한 검사에서 보고서에 액세스할 수 있습니다. oc describe clusterextension
명령은 상태 조건을 포함하여 클러스터 확장에 대한 정보를 출력합니다.
명령 예
oc describe clusterextension <extension_name>
$ oc describe clusterextension <extension_name>
보고서 예
네임스페이스
-
네임스페이스 수준에서 필요한 RBAC 규칙의 범위(예:
pipelines
)를 지정합니다. 빈 네임스페이스 값""
은 클러스터의 권한 범위를 지정해야 함을 나타냅니다. APIGroups
필요한 권한이 적용되는 API 그룹의 이름을 지정합니다. API 그룹의 빈 값
[]
은 코어 API 그룹에 적용되는 권한을 나타냅니다. 예를 들어, 서비스, 비밀, 구성 맵은 모두 핵심 리소스입니다.리소스가 이름이 지정된 API 그룹에 속하는 경우 보고서에 대괄호 사이에 있는 이름이 나열됩니다. 예를 들어
APIGroups:[apps]
의 값은 확장이apps
API 그룹의 리소스에 대해 작동하는 RBAC 규칙이 필요함을 나타냅니다.Resources
- 권한이 필요한 리소스 유형을 지정합니다. 예를 들어 서비스, 시크릿 및 사용자 정의 리소스 정의는 일반적인 리소스 유형입니다.
verbs
- 서비스 계정에 수행할 권한이 필요한 작업 또는 동사 를 지정합니다. 보고서에 여러 동사가 나열되어 있는 경우 나열된 모든 동사에 RBAC 규칙이 필요합니다.
5.1.6.2. 일반적인 권한 오류 링크 복사링크가 클립보드에 복사되었습니다!
- 누락된 동사
- 서비스 계정에 필요한 작업을 수행할 수 있는 권한이 없습니다. 이 문제를 해결하려면 역할 및 바인딩을 업데이트하거나 생성하여 필요한 권한을 부여합니다. 역할 및 역할 바인딩은 네임스페이스에 대한 리소스 권한을 정의합니다. 클러스터 역할 및 클러스터 역할 바인딩은 클러스터에 대한 리소스 권한을 정의합니다.
- 권한 에스컬레이션
- 서비스 계정에는 확장에 필요한 역할 또는 클러스터 역할을 생성할 수 있는 권한이 없습니다. 이 경우 preflight 검사에서 동사를 누락된 것으로 보고하여 권한 상승을 방지합니다. 이 문제를 해결하려면 서비스 계정에 충분한 권한을 부여하여 역할을 생성할 수 있습니다.
- 역할 참조 누락
-
확장은 Operator 컨트롤러에서 찾을 수 없는 역할 또는 클러스터 역할을 참조합니다. 이런 일이 발생하면 사전 검사에서 누락된 역할이 나열되고
권한 평가 오류
가 보고됩니다. 이 문제를 해결하려면 역할 및 클러스터 역할을 생성하거나 업데이트하여 모든 역할 참조가 있는지 확인합니다.
5.1.7. 클러스터 확장 업데이트 링크 복사링크가 클립보드에 복사되었습니다!
CR(사용자 정의 리소스)을 수동으로 편집하고 변경 사항을 적용하여 클러스터 확장 또는 Operator를 업데이트할 수 있습니다.
사전 요구 사항
- Operator 또는 확장이 설치되어 있어야 합니다.
-
jq
CLI 툴을 설치했습니다. -
opm
CLI 툴을 설치했습니다.
프로세스
다음 단계를 완료하여 카탈로그 파일의 로컬 사본에서 채널 및 버전 정보에 대한 패키지를 검사합니다.
다음 명령을 실행하여 선택한 패키지에서 채널 목록을 가져옵니다.
opm render <catalog_registry_url>:<tag> \ | jq -s '.[] | select( .schema == "olm.channel" ) \ | jq -s '.[] | select( .schema == "olm.channel" ) \ | select( .package == "openshift-pipelines-operator-rh") | .name' | select( .package == "openshift-pipelines-operator-rh") | .name'
$ opm render <catalog_registry_url>:<tag> \ | jq -s '.[] | select( .schema == "olm.channel" ) \ | select( .package == "openshift-pipelines-operator-rh") | .name'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 5.12. 명령 예
opm render registry.redhat.io/redhat/redhat-operator-index:v4.20 \ | jq -s '.[] | select( .schema == "olm.channel" ) \ | select( .package == "openshift-pipelines-operator-rh") | .name'
$ opm render registry.redhat.io/redhat/redhat-operator-index:v4.20 \ | jq -s '.[] | select( .schema == "olm.channel" ) \ | select( .package == "openshift-pipelines-operator-rh") | .name'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 5.13. 출력 예
"latest" "pipelines-1.14" "pipelines-1.15" "pipelines-1.16" "pipelines-1.17"
"latest" "pipelines-1.14" "pipelines-1.15" "pipelines-1.16" "pipelines-1.17"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 채널에 게시된 버전 목록을 가져옵니다.
opm render <catalog_registry_url>:<tag> \ | jq -s '.[] | select( .package == "<package_name>" ) \ | jq -s '.[] | select( .package == "<package_name>" ) \ | select( .schema == "olm.channel" ) \ | select( .schema == "olm.channel" ) \ | select( .name == "<channel_name>" ) | .entries \ | select( .name == "<channel_name>" ) | .entries \ | .[] | .name' | .[] | .name'
$ opm render <catalog_registry_url>:<tag> \ | jq -s '.[] | select( .package == "<package_name>" ) \ | select( .schema == "olm.channel" ) \ | select( .name == "<channel_name>" ) | .entries \ | .[] | .name'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 5.14. 명령 예
opm render registry.redhat.io/redhat/redhat-operator-index:v4.20 \ | jq -s '.[] | select( .package == "openshift-pipelines-operator-rh" ) \ | select( .schema == "olm.channel" ) | select( .name == "latest" ) \ | .entries | .[] | .name'
$ opm render registry.redhat.io/redhat/redhat-operator-index:v4.20 \ | jq -s '.[] | select( .package == "openshift-pipelines-operator-rh" ) \ | select( .schema == "olm.channel" ) | select( .name == "latest" ) \ | .entries | .[] | .name'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 5.15. 출력 예
"openshift-pipelines-operator-rh.v1.15.0" "openshift-pipelines-operator-rh.v1.16.0" "openshift-pipelines-operator-rh.v1.17.0" "openshift-pipelines-operator-rh.v1.17.1"
"openshift-pipelines-operator-rh.v1.15.0" "openshift-pipelines-operator-rh.v1.16.0" "openshift-pipelines-operator-rh.v1.17.0" "openshift-pipelines-operator-rh.v1.17.1"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
다음 명령을 실행하여 Operator 또는 확장의 CR에 지정된 버전 또는 채널을 확인합니다.
oc get clusterextension <operator_name> -o yaml
$ oc get clusterextension <operator_name> -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 명령 예
oc get clusterextension pipelines-operator -o yaml
$ oc get clusterextension pipelines-operator -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 5.16. 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 방법 중 하나를 사용하여 CR을 편집합니다.
Operator 또는 확장을
1.15.0
과 같은 특정 버전으로 고정하려면 다음 예와 유사한 CR을 편집합니다.pipelines-operator.yaml
CR의 예Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
1.14.x
에서1.15.0
으로 버전을 업데이트
허용 가능한 업데이트 버전의 범위를 정의하려면 다음 예와 유사한 CR을 편집합니다.
버전 범위가 지정된 CR의 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 원하는 버전 범위가 버전
1.15
보다 크고1.17
보다 작도록 지정합니다. 자세한 내용은 "버전 범위 지원" 및 "버전 비교 문자열"을 참조하십시오.
채널에서 확인할 수 있는 최신 버전으로 업데이트하려면 다음 예제와 유사한 CR을 편집합니다.
지정된 채널이 있는 CR의 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 지정된 채널에서 확인할 수 있는 최신 릴리스를 설치합니다. 채널 업데이트가 자동으로 설치됩니다. 값을 배열로 입력합니다.
채널 및 버전 범위를 지정하려면 다음 예와 유사한 CR을 편집합니다.
지정된 채널 및 버전 범위가 있는 CR의 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 자세한 내용은 "대상 버전을 지정하는 CR(사용자 정의 리소스) 예"를 참조하십시오.
다음 명령을 실행하여 클러스터에 업데이트를 적용합니다.
oc apply -f pipelines-operator.yaml
$ oc apply -f pipelines-operator.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
clusterextension.olm.operatorframework.io/pipelines-operator configured
clusterextension.olm.operatorframework.io/pipelines-operator configured
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
다음 명령을 실행하여 채널 및 버전 업데이트가 적용되었는지 확인합니다.
oc get clusterextension pipelines-operator -o yaml
$ oc get clusterextension pipelines-operator -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 5.17. 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
문제 해결
더 이상 사용되지 않거나 존재하지 않는 대상 버전 또는 채널을 지정하는 경우 다음 명령을 실행하여 확장 상태를 확인할 수 있습니다.
oc get clusterextension <operator_name> -o yaml
$ oc get clusterextension <operator_name> -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 5.18. 존재하지 않는 버전의 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.1.8. Operator 삭제 링크 복사링크가 클립보드에 복사되었습니다!
ClusterExtension
CR(사용자 정의 리소스)을 삭제하여 Operator 및 해당 CRD(사용자 정의 리소스 정의)를 삭제할 수 있습니다.
사전 요구 사항
- 카탈로그가 설치되어 있어야 합니다.
- Operator가 설치되어 있어야 합니다.
프로세스
다음 명령을 실행하여 Operator 및 해당 CRD를 삭제합니다.
oc delete clusterextension <operator_name>
$ oc delete clusterextension <operator_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
clusterextension.olm.operatorframework.io "<operator_name>" deleted
clusterextension.olm.operatorframework.io "<operator_name>" deleted
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
다음 명령을 실행하여 Operator 및 해당 리소스가 삭제되었는지 확인합니다.
다음 명령을 실행하여 Operator가 삭제되었는지 확인합니다.
oc get clusterextensions
$ oc get clusterextensions
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
No resources found
No resources found
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 Operator의 시스템 네임스페이스가 삭제되었는지 확인합니다.
oc get ns <operator_name>-system
$ oc get ns <operator_name>-system
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Error from server (NotFound): namespaces "<operator_name>-system" not found
Error from server (NotFound): namespaces "<operator_name>-system" not found
Copy to Clipboard Copied! Toggle word wrap Toggle overflow