7.3. 클러스터에 플러그인 배포

OpenShift Container Platform 클러스터에 플러그인을 배포할 수 있습니다.

7.3.1. Docker를 사용하여 이미지 빌드

클러스터에 플러그인을 배포하려면 이미지를 빌드하고 이미지 레지스트리로 푸시해야 합니다.

절차

  1. 다음 명령으로 이미지를 빌드합니다.

    $ docker build -t quay.io/my-repositroy/my-plugin:latest .
  2. 선택 사항: 이미지를 테스트하려면 다음 명령을 실행합니다.

    $ docker run -it --rm -d -p 9001:80 quay.io/my-repository/my-plugin:latest
  3. 다음 명령을 실행하여 이미지를 푸시합니다.

    $ docker push quay.io/my-repository/my-plugin:latest

7.3.2. 클러스터에 플러그인 배포

변경 사항으로 이미지를 푸시한 후 클러스터에 플러그인을 배포할 수 있습니다.

절차

  1. 플러그인 이름을 사용하여 클러스터에 플러그인을 배포하려면 Helm 릴리스 이름으로 -n 명령줄 옵션에 지정된 기존 네임스페이스 또는 기존 네임스페이스에 Helm 차트를 설치합니다. 다음 명령을 사용하여 plugin.image 매개변수 내에 이미지 위치를 제공합니다.

    $ helm upgrade -i  my-plugin charts/openshift-console-plugin -n my-plugin-namespace --create-namespace --set plugin.image=my-plugin-image-location

    다음과 같습니다.

    n <my-plugin-namespace>
    플러그인을 배포할 기존 네임스페이스를 지정합니다.
    --create-namespace
    선택 사항: 새 네임스페이스에 배포하는 경우 이 매개변수를 사용합니다.
    --set plugin.image=my-plugin-image-location
    plugin.image 매개변수 내의 이미지 위치를 지정합니다.
  2. 선택 사항: charts/openshift-console-plugin/values.yaml 파일에서 지원되는 매개변수 세트를 사용하여 추가 매개변수를 지정할 수 있습니다.
plugin:
  name: ""
  description: ""
  image: ""
  imagePullPolicy: IfNotPresent
  replicas: 2
  port: 9443
  securityContext:
    enabled: true
  podSecurityContext:
    enabled: true
    runAsNonRoot: true
    seccompProfile:
      type: RuntimeDefault
  containerSecurityContext:
    enabled: true
    allowPrivilegeEscalation: false
    capabilities:
      drop:
        - ALL
  resources:
    requests:
      cpu: 10m
      memory: 50Mi
  basePath: /
  certificateSecretName: ""
  serviceAccount:
    create: true
    annotations: {}
    name: ""
  patcherServiceAccount:
    create: true
    annotations: {}
    name: ""
  jobs:
    patchConsoles:
      enabled: true
      image: "registry.redhat.io/openshift4/ose-tools-rhel8@sha256:e44074f21e0cca6464e50cb6ff934747e0bd11162ea01d522433a1a1ae116103"
      podSecurityContext:
        enabled: true
        runAsNonRoot: true
        seccompProfile:
          type: RuntimeDefault
      containerSecurityContext:
        enabled: true
        allowPrivilegeEscalation: false
        capabilities:
          drop:
            - ALL
      resources:
        requests:
          cpu: 10m
          memory: 50Mi

검증

개요 페이지에서 활성화된 플러그인 목록을 확인하거나 AdministrationCluster SettingsConfigurationConsole operator.openshift.ioConsole 플러그인에서 이동하여 확인할 수 있습니다.

참고

새 플러그인 구성이 표시되는 데 몇 분 정도 걸릴 수 있습니다. 플러그인이 표시되지 않는 경우 플러그인이 최근에 활성화된 경우 브라우저를 새로 고쳐야 할 수 있습니다. 런타임 시 오류가 발생하면 브라우저 개발자 도구의 JS 콘솔을 확인하여 플러그인 코드의 오류를 확인합니다.

7.3.3. 브라우저에서 플러그인 비활성화

콘솔 사용자는 disable-plugins 쿼리 매개변수를 사용하여 일반적으로 런타임 시 로드되는 특정 또는 모든 동적 플러그인을 비활성화할 수 있습니다.

절차

  • 특정 플러그인을 비활성화하려면 플러그인 이름의 쉼표로 구분된 목록에서 비활성화하려는 플러그인을 제거합니다.
  • 모든 플러그인을 비활성화하려면 disable-plugins 쿼리 매개변수에 빈 문자열을 남겨 둡니다.
참고

클러스터 관리자는 웹 콘솔의 클러스터 설정 페이지에서 플러그인을 비활성화할 수 있습니다.