웹 콘솔

OpenShift Container Platform 4.6

OpenShift Container Platform에서 웹 콘솔 시작하기

초록

이 문서는 OpenShift Container Platform 웹 콘솔 액세스 및 사용자 지정에 대한 정보를 제공합니다.

1장. 웹 콘솔 개요

Red Hat OpenShift Container Platform 웹 콘솔은 그래픽 사용자 인터페이스를 제공하여 프로젝트 데이터를 시각화하고 관리, 관리 및 문제 해결 작업을 수행할 수 있습니다. 웹 콘솔은 openshift-console 프로젝트의 컨트롤 플레인 노드에서 Pod로 실행됩니다. console-operator Pod에서 관리합니다. AdministratorDeveloper 모드 둘 다 지원됩니다.

AdministratorDeveloper 모드 둘 다 OpenShift Container Platform에 대한 퀵 스타트 튜토리얼을 생성할 수 있습니다. 퀵 스타트는 사용자 작업에 대한 가이드 튜토리얼이며 애플리케이션, Operator 또는 기타 제품 오퍼링을 사용하는 데 유용합니다.

1.1. 웹 콘솔의 관리자 화면 정보

관리자 화면을 사용하면 클러스터 인벤토리, 용량, 일반 및 특정 사용 정보, 중요한 이벤트 스트림을 볼 수 있으므로 계획 및 문제 해결 작업을 단순화할 수 있습니다. 프로젝트 관리자와 클러스터 관리자는 모두 관리자 화면을 볼 수 있습니다.

클러스터 관리자는 OpenShift Container Platform 4.7 이상에서 웹 터미널 Operator를 사용하여 포함된 명령줄 터미널 인스턴스를 열 수도 있습니다.

참고

표시되는 기본 웹 콘솔 모드 정보는 사용자의 역할에 따라 다르게 표시됩니다. 사용자가 관리자로 인식되면 기본적으로 Administrator 관점이 표시됩니다.

관리자 관점은 다음과 같은 관리자의 유스 케이스에 특정한 워크 플로우를 제공합니다.

  • 워크로드, 스토리지, 네트워킹 및 클러스터 설정을 관리합니다.
  • Operator Hub를 사용하여 Operator를 설치 및 관리합니다.
  • 역할 및 역할 바인딩을 통해 사용자가 로그인하고 사용자 액세스 권한을 관리할 수 있는 ID 공급자를 추가합니다.
  • 클러스터 업데이트, 부분적인 클러스터 업데이트, 클러스터 Operator, CRD(사용자 정의 리소스 정의), 역할 바인딩 및 리소스 할당량과 같은 다양한 고급 설정을 보고 관리합니다.
  • 지표, 경고 및 모니터링 대시보드와 같은 모니터링 기능에 액세스 및 관리합니다.
  • 클러스터에 대한 로깅, 지표 및 높은 상태 정보를 보고 관리합니다.
  • OpenShift Container Platform의 관리자 관점과 관련된 애플리케이션, 구성 요소 및 서비스와 시각적으로 상호 작용합니다.

추가 리소스

웹 터미널 Operator에 대한 자세한 내용은 웹 콘솔 의 웹 터미널 정보를 참조하십시오.

1.1.1. 관리자 관점 액세스

OpenShift Container Platform 웹 콘솔의 관리자 관점은 관리자의 유스 케이스에 특정한 워크 플로우를 제공합니다. 다음과 같이 웹 콘솔에서 관리자 화면에 액세스할 수 있습니다.

프로세스

  • 로그인 인증 정보를 사용하여 OpenShift Container Platform 웹 콘솔에 로그인하여 관리자 화면에 액세스합니다.

1.2. 웹 콘솔의 Developer 모드 정보

개발자 관점은 애플리케이션, 서비스 및 데이터베이스를 배포하는 몇 가지 기본 제공 방법을 제공합니다. 개발자 관점에서 다음을 수행할 수 있습니다.

  • 구성 요소에서 롤링의 실시간 시각화를 보고 롤아웃을 다시 생성합니다.
  • 애플리케이션 상태, 리소스 사용률, 프로젝트 이벤트 스트리밍, 할당량 소비를 확인합니다.
  • 프로젝트를 다른 사람과 공유합니다.
  • 프로젝트에 대한 Prometheus Query Language(PromQL) 쿼리를 실행하고 플롯에서 시각화된 지표를 검사하여 애플리케이션의 문제를 해결합니다. 지표는 클러스터 상태 및 모니터링 중인 모든 사용자 정의 워크로드에 대한 정보를 제공합니다.

클러스터 관리자는 OpenShift Container Platform 4.7 이상의 웹 콘솔에서 포함된 명령줄 터미널 인스턴스를 열 수도 있습니다.

참고

표시되는 기본 웹 콘솔 모드 정보는 사용자의 역할에 따라 다르게 표시됩니다. 사용자가 Developer로 인식되면 기본적으로 Developer 모드 정보가 표시됩니다.

Developer 모드는 다음과 같은 개발자의 유스 케이스에 특정한 워크 플로우를 제공합니다.

  • 기존 코드베이스, 이미지 및 컨테이너 파일을 가져와 OpenShift Container Platform에서 애플리케이션을 생성하고 배포합니다.
  • 프로젝트에서 관련 애플리케이션, 구성 요소 및 서비스와 시각적으로 상호 작용하고 배포 및 빌드 상태를 모니터링합니다.
  • 애플리케이션에서 구성 요소를 그룹화하고 애플리케이션 내부 및 애플리케이션간에 구성 요소를 연결합니다.
  • Serverless 기능 (기술 프리뷰)을 통합합니다.
  • Eclipse Che를 사용하여 애플리케이션 코드를 편집할 수 있는 작업 공간을 만듭니다.

1.2.1. Developer 모드 액세스

OpenShift Container Platform 웹 콘솔의 Developer 모드는 개발자의 유스 케이스에 특정한 워크 플로우를 제공합니다.

다음과 같이 웹 콘솔에서 Developer 모드에 액세스할 수 있습니다.

전제 조건

Developer 모드에 액세스하려면 웹 콘솔에 로그인해야 합니다. OpenShift Container Platform 웹 콘솔의 기본 보기는 개발자 화면입니다.

프로세스

  1. 모드 전환 기능을 사용하여 Developer 모드로 전환하십시오. 클러스터의 모든 프로젝트 목록과 함께 Topology 뷰가 표시됩니다.

    그림 1.1. Developer 모드

    odc Developer 모드
  2. 목록에서 기존 프로젝트를 선택하거나 Project 드롭 다운 목록을 사용하여 새 프로젝트를 만듭니다.

프로젝트에 워크로드 또는 애플리케이션이없는 경우 Topology 뷰에는 애플리케이션을 작성하는 데 사용 가능한 옵션이 표시됩니다. 기존 워크로드가있는 경우 Topology 뷰는 워크로드 노드를 그래픽으로 표시합니다.

2장. 웹 콘솔에 액세스

OpenShift Container Platform 웹 콘솔은 웹 브라우저에서 액세스할 수 있는 사용자 인터페이스입니다. 개발자는 웹 콘솔을 사용하여 프로젝트의 내용을 시각적으로 탐색 및 관리할 수 있습니다.

2.1. 전제 조건

2.2. 웹 콘솔 이해 및 액세스

웹 콘솔은 마스터에서 Pod로 실행됩니다. Pod에서는 웹 콘솔을 실행하는 데 필요한 정적 환경을 제공합니다. openshift-install create cluster를 사용하여 OpenShift Container Platform이 성공적으로 설치되면 설치 프로그램의 CLI 출력에서 웹 콘솔 URL 및 설치된 클러스터의 로그인 인증 정보를 확인할 수 있습니다. 예를 들면 다음과 같습니다.

출력 예

INFO Install complete!
INFO Run 'export KUBECONFIG=<your working directory>/auth/kubeconfig' to manage the cluster with 'oc', the OpenShift CLI.
INFO The cluster is ready when 'oc login -u kubeadmin -p <provided>' succeeds (wait a few minutes).
INFO Access the OpenShift web-console here: https://console-openshift-console.apps.demo1.openshift4-beta-abcorp.com
INFO Login to the console with user: kubeadmin, password: <provided>

이러한 세부 사항을 사용하여 로그인하고 웹 콘솔에 로그인하고 액세스하십시오.

설치하지 않은 기존 클러스터의 경우 oc whoami --show-console을 사용하여 웹 콘솔 URL을 확인할 수 있습니다.

3장. OpenShift Container Platform 대시 보드를 사용하여 클러스터 정보 검색

OpenShift Container Platform 대시 보드에는 클러스터에 대한 고급 정보가 포함되어 있으며 OpenShift Container Platform 웹 콘솔에서 HomeDashboardsOverview를 통해 액세스합니다.

OpenShift Container Platform 대시 보드는 별도의 대시 보드 카드에 표시되는 다양한 클러스터 정보를 제공합니다.

3.1. OpenShift Container Platform 대시 보드 페이지 정보

OpenShift Container Platform 대시 보드는 다음 카드로 구성됩니다.

  • Details는 클러스터 정보에 대한 간략한 개요를 표시합니다.

    상태에는 ok, error, warning, progressunknown이 포함되어 있습니다. 리소스는 사용자 정의 상태 이름을 추가 할 수 있습니다.

    • 클러스터 ID
    • 공급자
    • 버전
  • Cluster Inventory는 리소스 수 및 관련 상태를 정보를 표시합니다. 이러한 정보는 문제 해결에 개입이 필요한 경우 매우 유용하며 다음과 같은 관련 정보가 포함되어 있습니다.

    • 노드 수
    • Pod 수
    • 영구 스토리지 볼륨 요청
    • 상태에 따라 나열되는 클러스터의 베어 메탈 호스트 (metal3 환경에서만 사용 가능)
  • Cluster Capacity 차트는 관리자가 클러스터에 추가 리소스가 필요한 시기를 파악하는 데 도움이 됩니다. 이 차트에는 내부 링과 외부링이 포함되어 있으며 내부 링은 현재 소비를 표시하는 외부 링은 다음 정보를 포함하여 리소스에 설정된 임계 값을 표시합니다.

    • CPU 시간
    • 메모리 할당
    • 소비된 스토리지
    • 소비된 네트워크 리소스
  • Cluster Utilization은 관리자가 리소스의 높은 소비 규모 및 빈도를 이해하는데 도움이 되도록 지정된 기간 동안 다양한 리소스의 용량을 표시합니다.
  • Events는 Pod 생성 또는 다른 호스트로의 가상 머신 마이그레이션과 같은 클러스터의 최근 활동과 관련된 메시지를 표시합니다.
  • Top Consumers 관리자가 클러스터 리소스가 소비되는 방식을 이해하는 데 도움이 됩니다. 리소스를 클릭하면 지정된 클러스터 리소스 (CPU, 메모리 또는 스토리지)를 가장 많이 소비하는 pod 및 노드가 나열된 자세한 정보가 있는 페이지로 이동합니다.

4장. OpenShift Container Platform에서 웹 콘솔 구성

OpenShift Container Platform 웹 콘솔을 변경하여 로그 아웃 리디렉션 URL을 설정하거나 콘솔을 비활성화할 수 있습니다.

4.1. 전제 조건

  • OpenShift Container Platform 클러스터를 배포합니다.

4.2. 웹 콘솔 구성

console.config.openshift.io 리소스를 편집하여 웹 콘솔을 설정할 수 있습니다.

  • console.config.openshift.io 리소스를 편집합니다.

    $ oc edit console.config.openshift.io cluster

    다음 예제는 콘솔의 리소스 정의입니다.

    apiVersion: config.openshift.io/v1
    kind: Console
    metadata:
      name: cluster
    spec:
      authentication:
        logoutRedirect: "" 1
    status:
      consoleURL: "" 2
    1
    사용자가 웹 콘솔에서 로그 아웃할 때 로드할 페이지의 URL을 지정합니다. 값을 지정하지 않으면 사용자는 웹 콘솔의 로그인 페이지로 돌아갑니다. logoutRedirect URL을 지정하면 사용자가 아이덴티티 공급자를 통해 단일 로그 아웃 (SLO)을 수행하여 단일 사인온 세션을 삭제할 수 있습니다.
    2
    웹 콘솔 URL입니다. 사용자 정의 값으로 업데이트하려면 웹 콘솔 URL 사용자 정의를 참조하십시오.

5장. OpenShift Container Platform에서 웹 콘솔 사용자 정의

OpenShift Container Platform 웹 콘솔을 사용자 정의하여 사용자 정의 로고, 제품 이름, 링크, 알림 및 명령 줄 다운로드를 설정할 수 있습니다. 이는 웹 콘솔을 특정 기업 또는 정부의 요구 사항에 맞게 조정해야하는 경우 특히 유용합니다.

5.1. 사용자 정의 로고 및 제품 이름 추가

사용자 정의 로고 또는 사용자 정의 제품 이름을 추가하여 사용자 정의 브랜딩을 만들 수 있습니다. 이 설정은 서로 독립적이므로 모두 또는 하나씩 따로 설정할 수 있습니다.

전제 조건

  • 클러스터 관리자 권한이 있어야합니다.
  • 사용할 로고 파일을 만듭니다. 로고는 GIF, JPG, PNG 또는 SVG를 포함한 일반적인 이미지 형식의 파일 일 수 있으며 max-height 60px로 제한됩니다.

프로세스

  1. openshift-config 네임 스페이스의 로고 파일을 설정 맵으로 가져옵니다.

    $ oc create configmap console-custom-logo --from-file /path/to/console-custom-logo.png -n openshift-config
    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: console-custom-logo
      namespace: openshift-config
    data:
      console-custom-logo.png: <base64-encoded_logo> ... 1
    1
    유효한 base64 인코딩 로고를 제공합니다.
  2. customLogoFilecustomProductName을 포함하도록 웹 콘솔의 Operator 설정을 편집합니다.

    $ oc edit consoles.operator.openshift.io cluster
    apiVersion: operator.openshift.io/v1
    kind: Console
    metadata:
      name: cluster
    spec:
      customization:
        customLogoFile:
          key: console-custom-logo.png
          name: console-custom-logo
        customProductName: My Console

    Operator 설정이 업데이트되면 사용자 정의 로고 설정 맵을 콘솔 네임 스페이스에 동기화하고 이를 콘솔 pod에 마운트한 후 다시 배포합니다.

  3. 성공적으로 실행되었는지 확인합니다. 문제가 있는 경우 콘솔 클러스터 Operator는 Degraded 상태를 보고하고 콘솔 Operator 설정도 CustomLogoDegraded 상태를 KeyOrFilenameInvalid 또는 NoImageProvided와 같은 이유와 함께 보고합니다.

    clusteroperator를 확인하려면 다음을 실행합니다.

    $ oc get clusteroperator console -o yaml

    콘솔 Operator 설정을 확인하려면 다음을 실행합니다.

    $ oc get consoles.operator.openshift.io -o yaml

5.3. 사용자 정의 웹 콘솔 URL

웹 콘솔 URL, consoleURL을 사용자 정의 값으로 업데이트할 수 있습니다.

절차

  1. consoles.operator.openshift.io 사용자 정의 리소스에서 설치 중에 기본적으로 생성된 클러스터 인스턴스를 변경합니다.

    $ oc patch consoles.operator.openshift.io cluster --patch '{"spec":{"route":{"hostname":"console.example.com"}}}' --type=merge
    apiVersion: operator.openshift.io/v1
    kind: Console
    metadata:
      name: cluster
    spec:
      route:
        hostname: 'console.example.com'
  2. 사용자 정의 인증서를 지정하는 경우 키와 인증서가 있는 openshift-config 네임스페이스에 시크릿을 생성해야 합니다. 예를 들면 다음과 같습니다.

    $ oc create secret tls console-tls --key=key.pem --cert=cert.pem -n openshift-config
    apiVersion: v1
    kind: Secret
    metadata:
      name: console-tls
      namespace: openshift-config
    type: kubernetes.io/tls
    data:
      tls.crt: >-
            <base64-encoded_cert> ... 1
      tls.key: >-
            <base64-encoded_key> ... 2
    1
    유효한 TLS 인증서를 제공합니다.
    2
    유효한 TLS 키를 제공합니다.

    그런 다음 웹 콘솔의 Operator 구성을 편집합니다.

    $ oc edit consoles.operator.openshift.io cluster

    구성 리소스에 다음 스탠자를 추가합니다.

    spec:
      route:
        hostname: console.example.com
        secret:
          name: console-tls

5.4. 로그인 페이지 사용자 정의

사용자 정의 로그인 페이지를 사용하여 서비스 약관 정보를 작성하십시오. 사용자 정의 로그인 페이지는 GitHub 또는 Google과 같은 타사 로그인 공급자를 사용하는 경우에도 사용자가 신뢰하는 브랜드 페이지를 표시하고 사용자를 인증 공급자로 리디렉션하는데 유용할 수 있습니다. 인증 프로세스 중에 사용자 정의 오류 페이지를 렌더링할 수도 있습니다.

참고

오류 템플릿 사용자 지정은 요청 헤더 및 OIDC 기반 IDP와 같이 리디렉션을 사용하는 ID 프로바이더(IDP)로 제한됩니다. LDAP 및 HTPasswd와 같은 직접 암호 인증을 사용하는 IDP에는 영향을 미치지 않습니다.

사전 요구 사항

  • 클러스터 관리자 권한이 있어야합니다.

프로세스

  1. 다음 명령을 실행하여 수정할 수 있는 템플릿을 만듭니다.

    $ oc adm create-login-template > login.html
    $ oc adm create-provider-selection-template > providers.html
    $ oc adm create-error-template > errors.html
  2. 시크릿을 사용하여 해당 정보를 만듭니다:

    $ oc create secret generic login-template --from-file=login.html -n openshift-config
    $ oc create secret generic providers-template --from-file=providers.html -n openshift-config
    $ oc create secret generic error-template --from-file=errors.html -n openshift-config
  3. 다음을 실행합니다.

    $ oc edit oauths cluster
  4. 사양을 업데이트합니다.

    spec:
      templates:
        error:
            name: error-template
        login:
            name: login-template
        providerSelection:
            name: providers-template

    oc explain oauths.spec.templates을 실행하여 옵션을 파악합니다.

5.6. 사용자 정의 알림 배너 만들기

전제 조건

  • 클러스터 관리자 권한이 있어야합니다.

프로세스

  1. AdministrationCustom Resource Definitions에서 ConsoleNotification을 클릭합니다.
  2. Instances 탭을 선택합니다.
  3. Create Console Notification을 클릭하고 파일을 편집합니다.

    apiVersion: console.openshift.io/v1
    kind: ConsoleNotification
    metadata:
      name: example
    spec:
      text: This is an example notification message with an optional link.
      location: BannerTop 1
      link:
        href: 'https://www.example.com'
        text: Optional link text
      color: '#fff'
      backgroundColor: '#0088ce'
    1
    유효한 위치 설정은 BannerTop, BannerBottomBannerTopBottom 입니다.
  4. Create(만들기 )를 클릭하여 변경 사항을 적용합니다.

5.7. CLI 다운로드 사용자 정의

파일 패키지 또는 패키지를 제공하는 외부 페이지를 직접 지정할 수있는 사용자 정의 링크 텍스트 및 URL을 사용하여 CLI를 다운로드하기 위한 링크를 설정할 수 있습니다.

전제 조건

  • 클러스터 관리자 권한이 있어야합니다.

프로세스

  1. AdministrationCustom Resource Definitions로 이동합니다.
  2. CRD (Custom Resource Definitions) 목록에서 ConsoleCLIDownload를 선택합니다.
  3. YAML 탭을 클릭한 후 편집합니다.

    apiVersion: console.openshift.io/v1
    kind: ConsoleCLIDownload
    metadata:
      name: example-cli-download-links-for-foo
    spec:
      description: |
        This is an example of download links for foo
      displayName: example-foo
      links:
      - href: 'https://www.example.com/public/foo.tar'
        text: foo for linux
      - href: 'https://www.example.com/public/foo.mac.zip'
        text: foo for mac
      - href: 'https://www.example.com/public/foo.win.zip'
        text: foo for windows
  4. Save 버튼을 클릭합니다.

5.8. Kubernetes 리소스에 YAML 예제 추가

언제든지 Kubernetes 리소스에 YAML 예제를 동적으로 추가할 수 있습니다.

전제 조건

  • 클러스터 관리자 권한이 있어야합니다.

프로세스

  1. AdministrationCustom Resource Definitions에서 ConsoleYAMLSample을 클릭합니다.
  2. YAML을 클릭하고 파일을 편집합니다.

    apiVersion: console.openshift.io/v1
    kind: ConsoleYAMLSample
    metadata:
      name: example
    spec:
      targetResource:
        apiVersion: batch/v1
        kind: Job
      title: Example Job
      description: An example Job YAML sample
      yaml: |
        apiVersion: batch/v1
        kind: Job
        metadata:
          name: countdown
        spec:
          template:
            metadata:
              name: countdown
            spec:
              containers:
              - name: counter
                image: centos:7
                command:
                - "bin/bash"
                - "-c"
                - "for i in 9 8 7 6 5 4 3 2 1 ; do echo $i ; done"
              restartPolicy: Never

    spec.snippet을 사용하여 YAML 샘플이 전체 YAML 리소스 정의가 아니라 사용자 커서에서 기존 YAML 문서에 삽입할 수 있는 조각을 보여줍니다.

  3. Save를 클릭합니다.

6장. 웹 콘솔의 웹 터미널 정보

OpenShift 웹 콘솔에서 내장된 명령행 터미널 인스턴스를 시작할 수 있습니다. 웹 터미널을 사용하려면 Web Terminal Operator를 설치해야 합니다.

참고

클러스터 관리자는 OpenShift Container Platform 4.7 이상에서 웹 터미널에 액세스할 수 있습니다.

이 터미널 인스턴스는 oc,kubectl,odo,kn,tkn,helm,kubens,subctl, kubectx 와 같은 클러스터와 상호 작용하기 위한 일반적인 CLI 툴로 사전 설치되어 있습니다. 또한 작업 중인 프로젝트의 컨텍스트도 포함되어 있으며 인증 정보를 사용하여 자동으로 로그인됩니다.

중요

웹 터미널은 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.

Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 https://access.redhat.com/support/offerings/techpreview/를 참조하십시오.

6.1. 웹 터미널 설치

OpenShift Container Platform OperatorHub에 나열된 Web Terminal Operator를 사용하여 웹 터미널을 설치할 수 있습니다. Web Terminal Operator를 설치하면 DevWorkspace CRD와 같은 명령행 구성에 필요한 사용자 정의 리소스 정의(CRD)가 자동으로 설치됩니다. 웹 콘솔은 웹 터미널을 열 때 필요한 리소스를 생성합니다.

사전 요구 사항

  • cluster-admin 권한이 있는 계정을 사용하여 OpenShift Container Platform 클러스터에 액세스할 수 있습니다.

절차

  1. 웹 콘솔의 Administrator 모드에서 Operator → OperatorHub로 이동합니다.
  2. Filter by keyword 상자를 사용하여 카탈로그에서 Web Terminal Operator를 검색한 다음 Web Terminal 타일을 클릭합니다.
  3. Web Terminal 페이지에서 Operator에 대한 간략한 설명을 확인하고Install을 클릭합니다.
  4. Install Operator 페이지에서 모든 필드의 기본값을 유지합니다.

    • Update Channel 메뉴의 alpha 옵션으로 Web Terminal Operator의 최신 릴리스버전을 설치할 수 있습니다.
    • Installation Mode 메뉴의 All namespaces on the cluster를 사용하면 Operator가 클러스터의 모든 네임스페이스를 모니터링하고 사용할 수 있습니다.
    • Installed Namespace 메뉴의 openshift-operators 옵션은 기본 openshift-operators 네임스페이스에 Operator를 설치합니다.
    • Approval Strategy 메뉴의 Automatic 옵션은 Operator에 향후 지원되는 업그레이드가 OLM(Operator Lifecycle Manager)에 의해 자동으로 처리됩니다.
  5. 설치를 클릭합니다.
  6. Installed Operators 페이지에서 View Operator를 클릭하여 Operator가 Installed Operators 페이지에 나열되어 있는지 확인합니다.
  7. Operator가 설치되면 페이지를 새로고침하여 콘솔 오른쪽에 있는 명령행 터미널 아이콘을 확인합니다.

6.2. 웹 터미널 사용

Web Terminal Operator가 설치되면 다음과 같이 웹 터미널을 사용할 수 있습니다.

  1. 웹 터미널을 시작하려면 콘솔 오른쪽에 있는 명령행 터미널 아이콘( odc wto icon )을 클릭합니다. 명령줄 터미널 창에 웹 터미널 인스턴스가 표시됩니다. 이 인스턴스는 사용자의 인증 정보를 사용하여 자동으로 로그인됩니다.
  2. 프로젝트 드롭다운 목록에서 DevWorkspace CR을 생성해야 하는 프로젝트를 선택합니다. 기본적으로 현재 프로젝트는 선택됩니다.

    참고
    • DevWorkspace CR은 아직 존재하지 않는 경우에만 생성됩니다.
    • openshift-terminal 프로젝트는 클러스터 관리자에게 사용되는 기본 프로젝트입니다. 다른 프로젝트를 선택할 수 있는 옵션이 없습니다.
  3. Start를 클릭하여 선택한 프로젝트를 사용하여 웹 터미널을 초기화합니다.

웹 터미널이 초기화된 후 oc,kubectl,odo,kn,tkn,helm,kubens,subctl, kubectx 와 같은 사전 설치된 CLI 툴을 사용할 수 있습니다.

6.3. 웹 터미널 설치 제거

웹 터미널 설치 제거는 2단계로 수행됩니다.

  1. Operator를 설치할 때 기본적으로 추가된 구성 요소 및 사용자 정의 리소스(CR)를 삭제합니다.
  2. Web Terminal Operator를 설치 제거합니다.

Web Terminal Operator를 설치 제거해도 Operator가 설치될 때 생성된 CRD(사용자 정의 리소스 정의) 또는 관리 리소스 정의는 제거되지 않습니다. 이러한 구성 요소는 보안 목적으로 수동으로 설치 제거해야 합니다. 이러한 구성 요소를 제거하면 Operator가 제거될 때 터미널이 유휴 상태가 되지 않도록하여 클러스터 리소스를 절약할 수 있습니다.

사전 요구 사항

  • cluster-admin 권한이 있는 계정을 사용하여 OpenShift Container Platform 클러스터에 액세스할 수 있습니다.

6.3.1. 웹 터미널 구성 요소 및 사용자 정의 리소스 삭제

CLI를 사용하여 Web Terminal Operator를 설치하는 동안 생성된 CR을 삭제합니다.

절차

  1. 다음 명령을 실행하여 배포와 같은 관련 Kubernetes 개체와 함께 모든 DevWorkspace CR이 제거되었는지 확인합니다.

    $ oc delete devworkspaces.workspace.devfile.io --all-namespaces --all --wait
    $ oc delete workspaceroutings.controller.devfile.io --all-namespaces --all --wait
    $ oc delete components.controller.devfile.io --all-namespaces --all --wait
    주의

    이 단계가 완료되지 않으면 종료자가 Operator를 완전히 제거할 수 없습니다.

  2. 다음 명령을 실행하여 CRD를 제거합니다.

    $ oc delete customresourcedefinitions.apiextensions.k8s.io workspaceroutings.controller.devfile.io
    $ oc delete customresourcedefinitions.apiextensions.k8s.io components.controller.devfile.io
    $ oc delete customresourcedefinitions.apiextensions.k8s.io devworkspaces.workspace.devfile.io
  3. DevWorkspace-Webhook-Server 배포를 제거합니다.

    $ oc delete deployment/devworkspace-webhook-server -n openshift-operators
    참고

    이 단계를 실행하고 다음 단계를 실행할 때는 oc exec 명령을 사용하여 컨테이너에서 명령을 실행할 수 없습니다. 웹 후크를 제거한 후에는 oc exec 명령을 다시 사용할 수 있습니다.

  4. 다음 명령을 실행하여 연결 서비스, 시크릿 및 구성 맵을 제거합니다.

    $ oc delete all --selector app.kubernetes.io/part-of=devworkspace-operator,app.kubernetes.io/name=devworkspace-webhook-server
    $ oc delete serviceaccounts devworkspace-webhook-server -n openshift-operators
    $ oc delete configmap devworkspace-controller -n openshift-operators
    $ oc delete clusterrole devworkspace-webhook-server
    $ oc delete clusterrolebinding devworkspace-webhook-server
  5. 다음 명령을 실행하여 웹 후크 구성 변경 또는 검증을 제거합니다.

    $ oc delete mutatingwebhookconfigurations controller.devfile.io
    $ oc delete validatingwebhookconfigurations controller.devfile.io

6.3.2. 웹 콘솔을 사용하여 Operator 설치 제거

절차

  1. 웹 콘솔의 Administrator 모드에서 Operator → Installed Operators로 이동합니다.
  2. 필터 목록을 스크롤하거나 Filter by name 상자에서 키워드를 입력하여 Web Terminal Operator를 찾습니다.
  3. Web Terminal Operator의 Options 메뉴 kebab 를 클릭하고 Uninstall Operator를 선택합니다.
  4. Uninstall Operator 확인 대화 상자에서 Uninstall을 클릭하여 클러스터에서 Operator, Operator 배포 및 pod를 제거합니다. Operator는 실행을 중지하고 더 이상 업데이트가 수신되지 않습니다.

7장. OpenShift Container Platform에서 웹 콘솔 비활성화

OpenShift Container Platform 웹 콘솔을 비활성화할 수 있습니다.

7.1. 전제 조건

  • OpenShift Container Platform 클러스터를 배포합니다.

7.2. 웹 콘솔 비활성화

console.operator.openshift.io 리소스를 편집하여 웹 콘솔을 비활성화할 수 있습니다.

  • console.operator.openshift.io 리소스를 편집합니다.

    $ oc edit consoles.operator.openshift.io cluster

    다음 예제는 리소스에서 수정할 수 있는 매개 변수를 표시합니다.

    apiVersion: config.openshift.io/v1
    kind: Console
    metadata:
      name: cluster
    spec:
      managementState: Removed 1
    1
    웹 콘솔을 비활성화하려면 managementState 매개 변수 값을 Removed로 설정합니다. 이 매개 변수의 다른 유효한 값은 Managed (클러스터 제어 하에서 콘솔을 활성화) 및 Unmanaged (사용자가 웹 콘솔 관리를 제어하고 있음)입니다.