4장. JWS Operator


4.1. JBoss Web Server Operator

4.1.1. OpenShift Operators

Operator 프레임워크는 Operator라는 Kubernetes 네이티브 애플리케이션을 효과적이고 자동화된 확장 방식으로 관리하는 툴킷입니다. Operator를 사용하면 Kubernetes에서 복잡한 상태 저장 애플리케이션을 쉽게 관리할 수 있습니다. 모든 Operator는 Operator SDK, Operator Lifecycle Manager 및 OperatorHub.io의 세 가지 주요 구성 요소를 기반으로 합니다. 이러한 툴을 사용하면 자체 운영자를 개발하고 Kubernetes 클러스터에서 사용하는 운영자를 관리하고 커뮤니티에서 생성하는 Operator를 검색하거나 공유할 수 있습니다.

Red Hat JBoss Web Server 프로젝트는 OpenShift 이미지를 관리하는 Operator를 제공합니다. 이 섹션에서는 JWS용 OpenShift Operator를 빌드, 테스트 및 패키징하는 방법에 대해 설명합니다.

클러스터 설정에 대한 자세한 내용은 Openshift Documentation 하위 섹션 '설치'를 참조하십시오.

또한 JWS Operator는 JWS-on-OpenShift 설정과 다른 환경 변수를 사용합니다. 이러한 매개 변수의 전체 목록은 여기에서 확인할 수 있습니다.

중요

현재 '세션 클러스터링 사용' 기능은 완전히 지원되지 않습니다.

이 가이드에서는 JWS Operator의 설치, 배포 및 삭제에 대해 자세히 설명합니다. 더 빠르지만 덜 자세한 내용은 빠른 시작 가이드를 참조하십시오.

중요

현재 JWS 5.4 이미지만 지원합니다. 5.4 이상의 이미지는 지원되지 않습니다.

4.1.2. JWS Operator 설치

이 섹션에서는 OpenShift Container Platform에 JWS Operator의 설치에 대해 설명합니다.

4.1.2.1. 사전 요구 사항

  • 클러스터 관리자 권한이 있는 계정을 사용하는 OpenShift Container Platform 클러스터 (웹 콘솔만 해당)
  • Operator 설치 권한이 있는 계정을 사용하는 OpenShift Container Platform 클러스터
  • 로컬 시스템(CLI 전용)에 oc 툴 설치

4.1.2.2. JWS Operator 설치 - 웹 콘솔

  1. 왼쪽 메뉴에 있는 'Operators' 탭으로 이동합니다.
  2. 그러면 OpenShift OperatorHub가 열립니다. 여기에서 JWS를 검색하고 'JWS Operator'를 선택합니다.
  3. 새 메뉴가 표시됩니다 - 원하는 용량 수준을 선택한 다음 상단에서 '설치'를 클릭하여 Operator를 설치합니다.
  4. 이제 Operator 설치를 설정할 수 있습니다. 다음 3가지 옵션을 지정합니다.

    • 설치 모드: 설치할 클러스터의 특정 네임스페이스를 지정합니다. 이 값을 지정하지 않으면 기본적으로 Operator가 클러스터의 모든 네임스페이스에 설치됩니다.
    • 업데이트 채널: JWS Operator는 현재 하나의 채널을 통해서만 사용할 수 있습니다.
    • 승인 전략: 자동 또는 수동 업데이트를 선택할 수 있습니다. 설치된 Operator에 대해 자동 업데이트를 선택하는 경우 해당 Operator의 새 버전이 사용 가능하면 Operator Lifecycle Manager (OLM)는 개입없이 Operator의 실행중인 인스턴스를 자동으로 업그레이드합니다. 수동 업데이트를 선택하면 최신 버전의 Operator가 사용 가능할 때 OLM이 업데이트 요청을 작성합니다. 클러스터 관리자는 Operator를 새 버전으로 업데이트하려면 OLM 업데이트 요청을 수동으로 승인해야 합니다.
  5. 하단에서 '설치'를 클릭합니다. 수동 승인 전략을 선택한 경우 설치가 완료되기 전에 설치 계획을 승인해야 합니다. 이제 JWS Operator가 'Operators' 탭의 '설치된 Operator' 섹션에 표시됩니다.

4.1.2.3. JWS Operator 설치 - 명령줄 인터페이스

  1. 다음 명령을 사용하여 JWS Operator를 검사하여 지원되는 installMode 및 사용 가능한 채널을 확인합니다.

    $   oc get packagemanifests -n openshift-marketplace | grep jws
        jws-operator    Red Hat Operators   16h
    Copy to Clipboard Toggle word wrap
    $   oc describe packagemanifests jws-operator -n openshift-marketplace | grep "Catalog Source"
        Catalog Source:     redhat-operators
    Copy to Clipboard Toggle word wrap
  2. OperatorGroup은 OperatorGroup과 동일한 네임 스페이스에 있는 모든 Operator에 대해 필요한 RBAC 액세스를 생성하는 대상 네임 스페이스를 선택하는 OLM 리소스입니다.

    Operator를 구독하는 네임스페이스에 Operator의 InstallMode(AllNamespaces 또는 SingleNamespace 모드)와 일치하는 OperatorGroup이 있어야 합니다. 설치하려는 Operator에서 AllNamespaces를 사용하는 경우 openshift-operators 네임스페이스에 적절한 OperatorGroup이 이미 있습니다.

    그러나 Operator에서 SingleNamespace 모드를 사용하는 경우 해당 네임스페이스에서 정확히 하나의 OperatorGroup을 생성해야 합니다. 실제 OperatorGroups 목록을 확인하려면 다음 명령을 사용합니다.

    $ oc get operatorgroups -n <project_name>
    Copy to Clipboard Toggle word wrap

    OperatorGroup 목록의 출력 예:

    NAME       AGE
    mygroup    17h
    Copy to Clipboard Toggle word wrap
    참고

    이 프로세스의 웹 콘솔 버전에서는 SingleNamespace 모드를 선택할 때 자동으로 OperatorGroup 및 Subscription 개체 생성을 자동으로 처리합니다.

    • OperatorGroup 오브젝트 YAML 파일을 생성합니다. 예를 들면 다음과 같습니다.

      OperatorGroupExample.yaml:

      apiVersion: operators.coreos.com/v1
      kind: OperatorGroup
      metadata:
        name: <operatorgroup_name>
        namespace: <project_name>
      spec:
        targetNamespaces:
        - <project_name>
      Copy to Clipboard Toggle word wrap

      <project_name>은 Operator를 설치하는 프로젝트의 네임스페이스입니다(oc project -q). <operatorgroup_name>은 OperatorGroup의 이름입니다.

    • 다음 명령을 사용하여 OperatorGroup 오브젝트를 생성합니다.

      $   oc apply -f OperatorGroupExample.yaml
      Copy to Clipboard Toggle word wrap
  3. 서브스크립션 오브젝트 YAML 파일(예: jws-operator-sub.yaml )을 생성합니다. 다음과 같이 다음과 같이 Subscription 오브젝트 YAML 파일을 구성합니다.

    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
        name: jws-operator
        namespace: <project_name>
    spec:
        channel: alpha
        name: jws-operator
        source: redhat-operators
        sourceNamespace: openshift-marketplace
    Copy to Clipboard Toggle word wrap

    <project_name>은 operator를 설치하는 프로젝트의 네임스페이스입니다(oc project -q). 모든 네임스페이스에 설치할 프로젝트의 네임스페이스는 openshift-operators를 사용합니다.

    소스는 카탈로그 소스 입니다. 이는 이 섹션의 1단계에서 실행한 $ oc describe packagemanifests jws-operator -n openshift-marketplace | grep "Catalog Source:" 명령의 값입니다. 값은 redhat-operators 여야 합니다.

  4. 다음 명령을 사용하여 YAML 파일에서 Subscription 오브젝트를 생성합니다.

    $   oc apply -f jws-operator-sub.yaml
    Copy to Clipboard Toggle word wrap

    설치가 완료되었는지 확인하려면 다음 명령을 실행합니다.

    $   oc get csv -n <project_name>
    Copy to Clipboard Toggle word wrap
    Expand
    NAMEDISPLAYVERSION단계 교체

    jws-operator.V1.0.0

    JBoss Web Server Operator

    1.0.0

    succeeded

4.1.3. 기존 JWS 이미지 배포

  1. 다음 명령을 사용하여 Operator가 설치되었는지 확인합니다.

    $   oc get deployment.apps/jws-operator
        NAME       	READY 	UP-TO-DATE   AVAILABLE   AGE
        jws-operator   1/1   	1        	1        15h
    Copy to Clipboard Toggle word wrap

    또는 더 자세한 출력이 필요한 경우:

    $   oc describe deployment.apps/jws-operator
    Copy to Clipboard Toggle word wrap
  2. 이미지를 준비하고 원하는 위치로 푸시합니다. 이 예에서는 quay.io/<USERNAME>/tomcat-demo:latest로 푸시됩니다.
  3. 사용자 지정 리소스 WebServer .yaml 파일을 만듭니다. 이 예에서는 CloudEvent _cr.yaml 이라는 파일이 사용됩니다. 파일은 다음 형식을 따라야 합니다.

    apiVersion: web.servers.org/v1alpha1
    kind: WebServer
    metadata:
        name: example-image-webserver
    spec:
        # Add fields here
        applicationName: jws-app
        replicas: 2
    webImage:
       applicationImage: quay.io/<USERNAME>/tomcat-demo:latest
    Copy to Clipboard Toggle word wrap
  4. 다음 명령을 사용하여 생성한 디렉터리에서 해당 항목을 배포합니다.

    $   oc apply -f webservers_cr.yaml
        webserver/example-image-webserver created
    Copy to Clipboard Toggle word wrap
    참고

    Operator가 경로를 자동으로 생성합니다. 다음 명령을 사용하여 경로를 확인할 수 있습니다.

    $   oc get routes
    Copy to Clipboard Toggle word wrap

    경로에 대한 자세한 내용은 OpenShift 설명서를참조하십시오.

  5. 4단계에서 생성한 웹 서버를 삭제해야 하는 경우:

    $   oc delete webserver example-image-webserver
    Copy to Clipboard Toggle word wrap

    또는

    $   oc delete -f webservers_cr.yaml
    Copy to Clipboard Toggle word wrap

4.1.4. 클러스터에서 Operator 삭제

4.1.4.1. 사전 요구 사항

  • 관리자 권한이 있는 OpenShift Container Platform 클러스터 (ECDHE, 다음 지침에 따라 이 요구 사항을 우회할 수 있습니다)
  • 로컬 시스템(CLI 전용)에 oc 툴 설치

4.1.4.2. 클러스터에서 Operator 삭제 - 웹 콘솔

  1. 왼쪽 메뉴에서 'Operators' '설치된 Operator'를 클릭합니다.
  2. 'Operator Details' 아래에서 '작업' 메뉴를 선택하고 '설치 중 Operator'를 클릭합니다.
  3. 이 옵션을 선택하면 Operator, Operator 배포 및 Pod가 제거됩니다. Operator를 제거해도 CRD 또는 CR을 포함한 사용자 정의 리소스 정의 또는 사용자 정의 리소스는 제거되지 않습니다. Operator가 클러스터에 애플리케이션을 배포하거나 클러스터 외부 리소스를 구성한 경우 이러한 리소스는 계속 실행되고 수동으로 정리해야 합니다.

4.1.4.3. 클러스터에서 Operator 삭제 - 명령줄 인터페이스

  1. 다음 명령을 사용하여 currentCSV 필드에서 구독한 Operator의 현재 버전을 확인합니다.

    $   oc get subscription jws-operator -n <project_name> -o yaml | grep currentCSV
        f:currentCSV: {}
        currentCSV: jws-operator.v1.0.0
    Copy to Clipboard Toggle word wrap
    참고

    위의 명령에서 &lt ;project_name& gt;은 Operator를 설치한 프로젝트의 네임스페이스를 나타냅니다. Operator가 모든 네임스페이스에 설치된 경우 < project_name> 대신 openshift-operators 를 사용합니다.

  2. 다음 명령을 사용하여 Operator의 서브스크립션을 삭제합니다.

    $   oc delete subscription jws-operator -n <project_name>
    Copy to Clipboard Toggle word wrap
    참고

    위의 명령에서 &lt ;project_name& gt;은 Operator를 설치한 프로젝트의 네임스페이스를 나타냅니다. Operator가 모든 네임스페이스에 설치된 경우 < project_name> 대신 openshift-operators 를 사용합니다.

  3. 다음 명령을 사용하여 이전 단계의 currentCSV 값을 사용하여 대상 네임스페이스에서 Operator의 CSV를 삭제합니다.

    $   oc delete clusterserviceversion <currentCSV> -n <project_name>
    Copy to Clipboard Toggle word wrap

    여기서 <currentCSV >은 1단계에서 얻은 값입니다.

    $   oc delete clusterserviceversion jws-operator.v1.0.0
        clusterserviceversion.operators.coreos.com "jws-operator.v1.0.0" deleted
    Copy to Clipboard Toggle word wrap
    참고

    위의 명령에서 &lt ;project_name& gt;은 Operator를 설치한 프로젝트의 네임스페이스를 나타냅니다. Operator가 모든 네임스페이스에 설치된 경우 < project_name> 대신 openshift-operators 를 사용합니다.

4.1.5. 추가 리소스

Operator에 대한 자세한 내용은 공식 OpenShift 문서를 참조하십시오.

Operator란 무엇인가?

OpenShift Container Platform

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

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

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

Red Hat 소개

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

Theme

© 2025 Red Hat