마켓플레이스 스택을 사용하여 OKE용 Oracle WebLogic Server 배포

Oracle Cloud Infrastructure에서 프로비저닝된 Kubernetes 클러스터에서 Oracle WebLogic Server 도메인을 빠르게 배포하고 CI/CD 파이프라인 작업에 대해 구성된 Jenkins 컨트롤러를 사용하여 WebLogic Server 수명 주기 관리 작업을 지원합니다.

Oracle Cloud Marketplace를 통해 Oracle Cloud Infrastructure Kubernetes Engine(OKE)용 애플리케이션 세트로 Oracle WebLogic Server를 제공하면 Oracle Oracle WebLogic Server for OKE를 쉽고 빠르게 구성할 수 있습니다. OKE용으로 구성된 Jenkins 컨트롤러와 WebLogic Server 수명 주기 관리 작업을 지원하기 위한 CI/CD(지속적 통합 및 연속 전달) 파이프라인 작업을 통해 OKE에서 몇 분 내에 WebLogic Server 구성을 생성합니다.

Oracle Cloud Marketplace를 사용하여 Oracle WebLogic Server for OKE를 프로비저닝하는 방법은 다음과 같습니다.

  • 자동화, 이식성 및 여러 도메인을 사용자 정의할 수 있는 기능 간의 균형
  • Jenkins를 사용한 CI/CD 파이프라인을 사용한 수명 주기 관리 작업
  • UCM(Universal Credits Model) 또는 BYOL(Bring Your Own License)을 통한 유연한 라이선스

구조

OCI용 Oracle WebLogic Server는 기본 인프라와 완전히 통합됩니다. 이 통합을 통해 WebLogic 클러스터를 쉽게 프로비저닝하고, 필요한 인프라를 생성 및 구성하고, 로드 밸런서 및 파일 스토리지와 같은 필수 서비스를 제공할 수 있습니다.

아키텍처는 하나의 가용성 도메인과 지역별 서브넷이 있는 지역을 사용합니다. 동일한 참조 아키텍처를 여러 가용성 도메인이 있는 지역에서 사용할 수 있습니다. 가용성 도메인 수에 관계없이, 배포에는 지역별 서브넷을 사용하는 것이 좋습니다.

프로비저닝 시 이 참조 아키텍처에는 다음이 포함됩니다.

  • 2개의 노드 풀이 있는 전용 서브넷에 배포된 OCI Kubernetes Engine(OKE) 클러스터
  • POD 간에 공유되는 파일 스토리지 서비스
  • 다음 영역에 쉽게 액세스할 수 있도록 전용(private) 서브넷에 배치된 관리 호스트:
    • OCI Kubernetes Engine 클러스터
    • Oracle WebLogic Server 도메인에 대한 로그
    • Jenkins 홈 구성
    • 도메인 관리를 위한 도우미 스크립트
    • 파일 스토리지 서비스
  • 프라이빗 서브넷에 배치된 리소스에 액세스하기 위해 퍼블릭 서브넷에 배치된 배스천 호스트입니다.
  • Jenkins 콘솔 및 Oracle WebLogic Server 관리 콘솔에 액세스할 수 있는 프라이빗 로드 밸런서
  • Oracle WebLogic Server 클러스터에 액세스하는 공용 로드 밸런서

다음 다이어그램은 이 참조 아키텍처를 보여 줍니다.



wls-oke-마켓플레이스-oracle.zip

이 아키텍처의 구성 요소는 다음과 같습니다.

  • 지역

    Oracle Cloud Infrastructure 리전은 하나 이상의 데이터 센터, 호스팅 가용성 도메인을 포함하는 지역화된 지리적 영역입니다. 지역은 다른 지역과 독립적이며, 먼 거리가 그들을 분리 할 수 있습니다 (국가 또는 대륙에 걸쳐).

  • 가용성 도메인

    가용성 도메인은 한 지역 내의 독립형 독립 데이터 센터입니다. 각 가용성 도메인의 물리적 리소스는 결함 허용을 제공하는 다른 가용성 도메인의 리소스와 격리됩니다. 가용성 도메인은 전원 또는 냉각과 같은 인프라 또는 내부 가용성 도메인 네트워크를 공유하지 않습니다. 따라서 한 가용성 도메인의 장애가 해당 영역의 다른 가용성 도메인에 영향을 미치지 않아야 합니다.

  • VCN(가상 클라우드 네트워크) 및 서브넷

    VCN은 Oracle Cloud Infrastructure 지역에서 설정한 맞춤형 소프트웨어 정의 네트워크입니다. 기존의 데이터 센터 네트워크와 마찬가지로 VCN을 통해 네트워크 환경을 제어할 수 있습니다. VCN에는 VCN 생성 후 변경할 수 있는 겹치지 않는 CIDR 블록이 여러 개 있을 수 있습니다. VCN을 서브넷으로 분할할 수 있습니다. 서브넷은 지역 또는 가용성 도메인으로 범위가 지정될 수 있습니다. 각 서브넷은 VCN의 다른 서브넷과 겹치지 않는 연속적인 주소 범위로 구성됩니다. 생성 후 서브넷의 크기를 변경할 수 있습니다. 서브넷은 공용 또는 전용일 수 있습니다.

  • 서비스 게이트웨이

    서비스 게이트웨이는 VCN에서 Oracle Cloud Infrastructure Object Storage와 같은 다른 서비스로의 액세스를 제공합니다. VCN에서 Oracle 서비스로의 트래픽은 Oracle 네트워크 패브릭을 통해 이동하며 인터넷을 순회하지 않습니다.

  • 로드 밸런서

    Oracle Cloud Infrastructure Load Balancing은 단일 시작점에서 여러 서버로 트래픽을 자동으로 배포합니다.

  • 파일 스토리지

    Oracle Cloud Infrastructure File Storage는 지속성, 확장성, 보안성을 갖춘 엔터프라이즈급 네트워크 파일 시스템을 제공합니다. VCN의 베어메탈, 가상 머신 또는 컨테이너 인스턴스에서 OCI File Storage에 연결할 수 있습니다. Oracle Cloud Infrastructure FastConnect 및 IPSec VPN을 사용하여 VCN 외부에서 OCI File Storage에 액세스할 수도 있습니다.

  • Kubernetes Engine

    Oracle Cloud Infrastructure Kubernetes Engine(OCI Kubernetes Engine 또는 OKE)는 컨테이너화된 애플리케이션을 클라우드에 배치하는 데 사용할 수 있는 확장 가능한 전담 관리 서비스입니다. 애플리케이션에 필요한 컴퓨트 리소스를 지정하면 Kubernetes Engine이 기존 테넌시의 Oracle Cloud Infrastructure에서 프로비저닝합니다. OKE는 Kubernetes를 사용하여 호스트 클러스터 전반에서 컨테이너화된 애플리케이션의 배포, 확장 및 관리를 자동화합니다.

  • Oracle Cloud Infrastructure Registry

    Oracle Cloud Infrastructure Registry는 개발-운영 워크플로우를 간소화할 수 있는 Oracle 관리 서비스입니다. 레지스트리를 사용하면 Docker 이미지와 같은 개발 아티팩트를 쉽게 저장, 공유 및 관리할 수 있습니다.

  • WebLogic 도메인

    WebLogic 도메인은 관련 응용 프로그램 및 리소스 그룹이며 이를 실행하는 데 필요한 구성 정보입니다. 도메인은 하나의 관리 서버와 Java 응용 프로그램 배치를 호스트하기 위한 하나 이상의 관리 서버로 구성됩니다. 관리 서버 인스턴스는 클러스터화되거나, 클러스터화되지 않거나, 클러스터화된 인스턴스와 클러스터화되지 않은 인스턴스의 조합일 수 있습니다. 도메인의 모든 클러스터는 동일한 관리 서버를 사용합니다.

  • WebLogic 클러스터 구성요소

    클러스터의 구성 요소는 Failover 및 로드 밸런싱 옵션을 활용할 수 있습니다. 다음 유형의 객체를 Oracle WebLogic Server 배포에서 클러스터화할 수 있습니다.

    • 서블릿
    • JSP(JavaServer Pages)
    • EJB(Enterprise Java Bean)
    • RMI(원격 메소드 호출) 객체
    • JMS(Java Messaging Service) 대상
    • JDBC(Java 데이터베이스 접속) 접속
  • Oracle WebLogic Server Kubernetes 운영자

    Oracle WebLogic Server for OKE 도메인에는 오픈 소스 Oracle WebLogic Server Kubernetes Operator가 포함되어 있습니다. Kubernetes 환경에서 도메인 관리를 지원하는 몇 가지 주요 기능이 있습니다. WebLogic 서버 도메인은 Kubernetes 구성 파일에서 사용자정의 리소스로 모델링됩니다. 운영자는 이 구성과 Kubernetes API를 사용하여 프로비저닝, 서버 시작 또는 중지, 패치 적용, 확장 및 보안과 같은 WebLogic 서버 작업을 자동화합니다.

  • Jenkins

    Oracle WebLogic Server for OKE는 Jenkins를 사용하여 Oracle WebLogic Server 도메인에 대한 사용자정의 이미지 생성을 자동화하고 이러한 이미지를 Kubernetes 클러스터에 배치합니다. Jenkins는 CI/CD(지속적인 통합 및 지속적인 제공)를 기반으로 개발 워크플로우를 용이하게 하는 오픈 소스 자동화 엔진입니다. 소스 제어 시스템에서 파일 체크아웃, 코드 컴파일 또는 스크립트 실행과 같은 일련의 단계를 수행하는 프로젝트를 생성합니다. 파이프라인은 응용 프로그램 작성, 테스트 및 배치와 같은 복잡한 작업을 여러 단계로 구성하는 프로젝트 유형입니다.

권장사항

다음 권장 사항을 시작점으로 사용합니다. 요구 사항은 다를 수 있습니다.

  • VCN

    VCN을 생성할 때 VCN의 서브넷에 연결하려는 리소스 수에 따라 필요한 CIDR 블록 수와 각 블록의 크기를 결정합니다. 표준 전용 IP 주소 공간 내에 있는 CIDR 블록을 사용합니다.

    프라이빗 접속을 설정하려는 다른 네트워크(Oracle Cloud Infrastructure, 온프레미스 데이터 센터 또는 다른 클라우드 제공자)와 겹치지 않는 CIDR 블록을 선택합니다.

    VCN을 생성한 후 해당 CIDR 블록을 변경, 추가 및 제거할 수 있습니다.

    이 아키텍처에서 Oracle WebLogic Server for OKEOracle Cloud Infrastructure에서 Oracle WebLogic Server, Kubernetes 및 로드 밸런서를 지원하기 위해 VCN(가상 클라우드 네트워크) 및 서브넷을 생성합니다. 하지만 원하는 경우 기존 VCN 및 기존 서브넷을 사용할 수도 있습니다. Oracle WebLogic Server for OKE는 관리 호스트 컴퓨트 인스턴스, Kubernetes 구성요소 및 파일 스토리지에 대한 전용 서브넷을 생성합니다. 공용 로드 밸런서 및 배스천 컴퓨트 인스턴스에 대한 공용 서브넷을 생성합니다. 기존 서브넷을 사용할 때는 동일한 구조를 따르는 것이 좋습니다.

  • 로드 밸런서

    도메인을 생성하면 Oracle WebLogic Server for OKEOracle Cloud Infrastructure에서 다음 로드 밸런서를 생성하고 구성합니다.

    • 공용 로드 밸런서는 도메인의 관리 서버 간에 트래픽을 분산합니다.
    • 전용 로드 밸런서는 Oracle WebLogic Server 관리 콘솔 및 Jenkins 콘솔에 대한 액세스를 제공합니다.

    로드 밸런서는 기본 및 대기 인스턴스로 구성되어 있지만 단일 IP 주소에서 액세스할 수 있습니다. 기본 인스턴스가 실패하면 트래픽이 자동으로 대기 인스턴스로 라우팅됩니다.

    전용 로드 밸런서에는 공용 IP 주소가 할당되지 않으며 Oracle Cloud Infrastructure 외부에서 액세스할 수 없습니다. 배스천 컴퓨트 인스턴스를 사용하여 도메인의 전용 로드 밸런서에 접근할 수 있습니다.

    Oracle WebLogic Server for OKE는 또한 Kubernetes 클러스터에 Nginx 수신 컨트롤러를 생성합니다. Nginx는 Kubernetes 클러스터 내의 POD에 대한 트래픽 플로우를 제어하는 오픈 소스 역 프록시 서비스입니다.

  • WebLogic 도메인

    도메인을 생성하는 동안 관리 컴퓨트 인스턴스는 새 Kubernetes 클러스터를 구성하고 도메인에 대한 POD를 배치하는 데도 사용됩니다. 기본적으로 이 아키텍처는 클러스터화된 도메인을 프로비전합니다. 프로비전 후 클러스터화되지 않도록 도메인을 사용자정의할 수 있습니다.

    Oracle WebLogic Server for OKE로 생성된 도메인은 노드 관리자를 사용하지 않습니다. Oracle WebLogic Server Kubernetes Operator는 서버 상태 모니터링 및 수명 주기 작업을 수행합니다.

    Oracle WebLogic Server for OKE는 관리 컴퓨트 인스턴스에 Helm 클라이언트를 설치하고 Helm을 사용하여 Oracle WebLogic Server Kubernetes Operator에 대한 차트를 설치합니다. Helm은 Kubernetes용 패키지 관리자로, Kubernetes 클러스터를 위한 Kubernetes 애플리케이션, 도구 및 서비스를 빠르게 설치 및 관리하는 데 사용할 수 있습니다. Helm을 사용하여 Kubernetes 클러스터에 설치된 애플리케이션에는 Jenkins CI, Nginx, WebLogic Kubernetes Operator가 포함됩니다.

    Oracle WebLogic Server for OKE는 Kubernetes 클러스터에 운영자를 설치 및 구성합니다. 관리 컴퓨트 인스턴스에서 연산자를 kubectl와 함께 사용할 수 있습니다.

    Oracle WebLogic Server for OKE는 Jenkins를 사용하여 WebLogic 서버 도메인에 대한 사용자정의 이미지 생성 및 이러한 이미지를 Kubernetes 클러스터에 배치하는 작업을 자동화합니다.

  • OCI Kubernetes 엔진

    Oracle WebLogic Server for OKE를 사용하여 도메인을 만들면 WebLogic 노드 풀과 WebLogic가 아닌 노드 풀의 두 노드 풀이 자동으로 프로비저닝됩니다. 기본적으로 각 노드 풀은 하나의 워커 노드로 생성됩니다. 그러나 프로비저닝 중에 각 노드 풀에서 원하는 작업자 노드 수를 지정할 수 있습니다.

    다음 포드는 아키텍처의 일부로 Kubernetes 클러스터에 배포됩니다.

    • WebLogic 노드 풀:
      • 도메인 관리 서버를 실행하는 Pod입니다.
      • 도메인에서 각 관리 서버를 실행하는 POD
      • Jenkins 에이전트를 실행하는 Pod입니다.
    • 비WebLogic 노드 풀:
      • Jenkins 컨트롤러를 실행하는 Pod입니다.
      • Nginx 수신 컨트롤러를 실행하는 포드

    도메인을 생성할 때 Oracle WebLogic Server for OKE는 도메인에 대한 POD를 프로비전하는 데 사용되는 레지스트리에 기본 이미지를 푸시합니다. 관리 컴퓨트 인스턴스에서 이 기본 이미지를 업데이트한 후 Kubernetes를 사용하여 해당 변경사항을 적용할 수 있습니다.

    Oracle WebLogic Server for OKE는 Kubernetes 클러스터의 POD에서 Jenkins 기본 서버를 프로비전합니다. 또한 Jenkins는 Kubernetes 플러그인을 사용하도록 구성됩니다. 작업을 실행하거나 일정을 잡으면 Jenkins 서버가 Kubernetes 클러스터에 다른 Pod를 생성하고, 이 에이전트 Pod가 작업을 실행합니다.

고려사항

이 참조 아키텍처를 배치할 때는 다음 사항을 고려하십시오.

  • 저장 영역

    도메인의 파일은 Kubernetes 클러스터의 각 포드 내에 로컬로 저장되지만, OKE용 Oracle WebLogic Server는 또한 Oracle Cloud Infrastructure File Storage를 사용하여 특정 관리 사용 사례를 지원합니다. Oracle WebLogic Server for OKE는 파일 시스템을 지정된 가용성 도메인의 마운트 대상으로 내보냅니다. 이 가용성 도메인은 도메인의 컴퓨트 인스턴스에 사용되는 가용성 도메인과 다를 수 있습니다.

    이 아키텍처는 데이터베이스가 필요하지 않은 기본 Oracle WebLogic Server 도메인 구성을 생성합니다. Oracle Application Development Framework(ADF)를 사용하여 애플리케이션을 구축하려는 경우 Oracle WebLogic Server for OCI를 사용하여 JRF(Java 필요 파일)가 사용으로 설정된 도메인을 생성할 수도 있습니다. JRF 사용 도메인을 프로비저닝하는 데 필요한 기존 Oracle Autonomous Transaction Processing 데이터베이스 또는 Oracle Cloud Infrastructure Database 시스템을 사용하는 것이 좋습니다.

  • 보안

    OKE용 Oracle WebLogic Server에서 도메인을 프로비전하려면 Oracle Cloud Infrastructure Vault에 하나 이상의 암호가 필요합니다. 각 암호는 하나의 암호만 저장합니다. 비밀번호는 Oracle WebLogic Server 클러스터를 생성할 때 필요합니다. 이 아키텍처는 여러 테넌트가 있는 HSM(하드웨어 보안 모듈) 파티션에서 호스팅되는 표준 볼트를 사용하며 비용 효율적인 키 기반 메트릭을 청구 목적으로 사용합니다. 가상 개인 자격 증명 모음은 HSM에 전용 파티션을 할당하여 격리 및 성능을 향상시킵니다. 각 저장소 유형에는 Oracle Cloud Infrastructure 테넌시에서 별도의 서비스 제한이 있습니다.

  • 관리 효율성

    Oracle WebLogic Server for OKEOracle Cloud Marketplace에서 애플리케이션 모음으로 액세스됩니다.

    Oracle Cloud MarketplaceOracle Cloud Infrastructure 콘솔에서 사용할 수 있는 온라인 스토어입니다. Oracle Cloud Marketplace에서 OKE용 Oracle WebLogic Server 애플리케이션을 실행하면 기본 정보를 묻는 메시지가 표시되고 리소스 관리자로 이동하여 Oracle WebLogic Server 도메인의 구성을 완료하고 클라우드 리소스를 지원하도록 지시합니다. 리소스 관리자는 Terraform을 사용하여 관련 클라우드 리소스 모음을 스택이라는 단일 단위로 프로비저닝, 업데이트 및 삭제하는 Oracle Cloud Infrastructure 서비스입니다.

    기능 및 라이센스 요구사항을 충족하는 OKE용 Oracle WebLogic Server 애플리케이션을 선택합니다.

  • 비용

    다음은 Oracle WebLogic Server for Oracle Cloud Infrastructure Kubernetes Engine에서 Oracle WebLogic Server 온프레미스 소프트웨어와 완벽하게 호환되는 BYOL(Bring Your Own License) 및 UCM(Universal Credits) 에디션 목록입니다.

    • OKE용 Oracle WebLogic Server Enterprise Edition(UCM)
    • OKE용 Oracle WebLogic Suite(UCM)
    • OKE용 Oracle WebLogic Server Enterprise Edition(BYOL)
    • OKE용 Oracle WebLogic Suite(BYOL)

배치

이 참조 아키텍처를 배포하기 위한 다양한 라이센스 옵션을 갖춘 Terraform 스택은 Oracle Cloud Marketplace에서 사용할 수 있습니다.

적합한 스택을 배치하려면 Oracle WebLogic Server for OKE 시작하기를 참조하십시오.

로그 변경

이 로그는 중요한 변경 사항을 나열합니다.