Oracle BRM 12 는 업계 최고의 엔터프라이즈 청구 및 수익 관리 시스템 중 하나이며, 다른 시스템이 충족하기 위해 노력하는 표준을 설정하고 있습니다. BRM은 수년, 심지어 수십 년의 역사를 가지고 있습니다(이전 버전인 Infranet 및 Portal과 함께). 2006년 Oracle가 Portal Software를 인수한 후, 새로운 서비스 팩과 새로운 소프트웨어 버전으로 정기적으로 새로운 기능을 도입하며 개발을 계속했습니다.
최근 Oracle BRM 12 Oracle BRM 클라우드 네이티브 배포를 출시하면서 완전히 새로운 장을 열고 새로운 주요 이정표에 도달했습니다. 이 릴리스를 통해 BRM을 Kubernetes 클라우드 환경에 네이티브 배포할 수 있게 됨에 따라 SaaS(서비스형 소프트웨어), PaaS(서비스형 플랫폼) 및 IaaS(서비스형 인프라) 솔루션에서 BRM을 사용하는 새로운 방법이 열렸습니다. 클라우드로 배포하면 확장성 및 안정성과 같은 기존 소프트웨어 배포 모델에 비해 몇 가지 이점을 얻을 수 있습니다. 새로운 클라우드 시스템에 배포하면 추가 하드웨어에 대한 대규모 자본 투자에 대한 걱정 없이 필요에 따라 하드웨어 리소스를 온디맨드 방식으로 BRM에 추가할 수 있습니다. 배포를 동적으로 확장하고 특정 BRM 서비스를 위해 다른 노드와 복제본을 추가하거나 더 이상 필요하지 않은 경우 제거할 수 있습니다. Kubernetes는 실행 중인 포드를 관리하고 모든 서비스가 가동 중인지 확인하므로 온프레미스 소프트웨어 배포에 비해 클라우드 배포에서 평균 이상의 가동 시간을 제공합니다.

현재 공식적으로 Oracle Cloud는 Oracle BRM Cloud Native 배포를 위해 지원되지만, 다른 클라우드 환경에도 BRM을 배포할 수 있습니다. 이 문서에서는 Oracle BRM를 Oracle Cloud에 배포하는 방법을 살펴보겠습니다.
목차
Oracle 클라우드 정보
Oracle Corporation은 글로벌 매니지드 데이터 센터 네트워크를 통해 서비스, 스토리지, 서버 등을 제공하는 클라우드 컴퓨팅 서비스(Oracle Cloud)를 제공하고 있습니다. 클라우드 환경을 설정할 때 사용할 관리형 데이터 센터를 선택할 수 있습니다. 일반적으로 지리적으로 가까운 곳을 선택하는 것이 좋습니다. Oracle Cloud의 일부 기본 기능(예: 자율 데이터베이스 및 가상 머신의 일부 필수 인스턴스 - 제한 사항 있음)은 Oracle Cloud의 무료 티어("항상 무료 대상")에 포함되어 있으며, 무제한으로 무료로 사용할 수 있습니다. 또한 30일 무료 평가판을 이용할 수 있으며, 이 기간 동안 Oracle Cloud가 제공하는 고급 기능과 가능성을 테스트해 볼 수 있습니다. 계정은 언제든지 유료 버전으로 업그레이드할 수 있습니다. Oracle Cloud는 사용하고자 하는 인프라와 서비스를 설정할 수 있는 편리한 비용 견적 계산기를 제공하며, 계산기는 선택한 설정에 대한 비용 견적을 반환합니다.
이제 테스트 목적으로 Oracle BRM 클라우드에서 Oracle 네이티브 클라우드 배포를 무료로 수행할 수 있는 방법을 살펴보겠습니다.
테스트 목적으로 Oracle BRM 12에서 Oracle 클라우드로 배포하기
먼저 Oracle 소프트웨어 제공 클라우드에서 올바른 버전의 BRM 소프트웨어를 가져와야 합니다. "Oracle 통신 청구 및 수익 관리 클라우드 네이티브 배포 옵션"을 검색하여 사용 가능한 최신 버전을 받습니다. 그런 다음 Oracle 클라우드 사용에 가입해야 합니다. 가입하고 계정을 설정하면 그림 1과 유사한 Oracle 클라우드 대시보드 화면이 표시됩니다.

보시다시피, 여기에는 "항상 무료 이용 가능" 옵션이 몇 가지 있습니다. 안타깝게도 Oracle BRM 클라우드 네이티브 배포 무료 티어로는 Oracle 클라우드를 테스트하기에 충분하지 않습니다. 좀 더 고급 기능을 사용해야 하지만 30일 동안 무료로 사용해 볼 수 있습니다.
Oracle BRM 서비스를 위한 데이터베이스 시스템 준비
먼저, BRM 배포를 위한 데이터베이스를 준비해야 합니다. 햄버거 버튼을 클릭하여 메인 메뉴를 연 다음, "데이터베이스" 섹션에서 "베어 메탈, 가상 머신 및 엑사데이터" 옵션을 선택합니다. 이제 "DB 시스템 생성" 버튼을 클릭합니다. 여기에서 그림 2와 같이 새 데이터베이스 인스턴스를 구성할 수 있습니다.

DB 시스템의 이름을 선택하고 선택한 관리형 데이터 센터의 어느 가용성 도메인에서 실행할 것인지 선택해야 합니다. "가상 머신" 모양 유형과 데이터베이스의 기본 모양을 선택합니다(테스트 목적으로 충분할 것입니다). 데이터베이스 소프트웨어 버전으로 "Enterprise Edition 고성능"을 선택합니다. '엔터프라이즈 에디션'을 선택하면 데이터베이스 인스턴스가 파티셔닝을 지원하지 않으므로 결과적으로 BRM 배포가 실패하게 됩니다. 그런 다음 다른 인스턴스 매개변수를 조정하고 액세스를 위해 SSH 공개 키를 업로드할 수도 있습니다. 다음 페이지에서 몇 가지 옵션을 더 구성하고 데이터베이스 인스턴스에 대한 관리자 자격 증명을 정의할 수 있습니다(필수이므로 기억해 두세요). 이제 설정을 확인하면 DB 시스템이 생성됩니다.
여기서 한 가지 중요한 참고 사항: 이 가용성 도메인에서 DB 시스템 생성에 대한 서비스 한도에 도달했다는 메시지가 표시되는 경우, 해당 옵션을 사용하려면 Oracle 지원팀에 대한 서비스 요청(SR)을 열어야 합니다. 메인 메뉴 -> 거버넌스 -> 제한, 할당량 및 사용량으로 이동합니다. 해당 페이지에서 서비스 한도 증가 요청 링크를 찾습니다. 서비스 요청을 개설한 후 요청이 승인되기까지 며칠이 소요될 수 있지만, 일반적으로 이러한 요청은 신속하게 해결됩니다.
이제 클라우드 네이티브 BRM을 위한 DB 시스템이 프로비저닝되어 실행 중이므로 DB 테이블스페이스와 스키마를 준비해야 합니다. 먼저, 새로 생성한 데이터베이스에 연결하도록 Oracle SQL Developer(또는 다른 클라이언트)를 구성해야 합니다.

이를 위한 한 가지 방법은 DB 시스템의 공인 IP 주소를 사용하는 것입니다. 공인 IP 주소는 DB 시스템 페이지의 노드 섹션에서 찾을 수 있습니다. 이 주소와 DB 시스템 페이지에 있는 기타 데이터를 사용하여 Oracle SQL 개발자 연결을 구성합니다. SYSDBA로 로그인하고 Oracle BRM 문서에 나와 있는 데이터베이스 준비 단계를 수행합니다.
Oracle BRM 서비스를 위한 쿠버네티스 클러스터 준비하기
이제 Oracle 클라우드에서 쿠버네티스 클러스터를 준비해야 합니다. 메인 메뉴 -> 개발자 서비스 -> 컨테이너 클러스터(OKE)를 엽니다. 클러스터 생성을 클릭하고 양식을 작성하여 새 클러스터를 생성합니다.

클러스터가 생성된 후에는 로컬 머신에 도커, kubectl, 헬름도 설치해야 합니다. 이러한 모든 구성 요소를 설치하는 방법은 해당 공식 웹사이트에서 확인할 수 있습니다. 그런 다음 Oracle Cloud에서 원격 컨테이너 클러스터를 관리할 수 있도록 로컬 환경을 구성해야 합니다. 다음 그림과 같이 "Kubeconfig에 액세스" 버튼을 클릭하면 그 방법에 대한 지침을 찾을 수 있습니다.

Oracle BRM 클라우드 네이티브 배포를 쿠버네티스 클러스터에 배포하기
설명서에 따라 데이터베이스가 구성되고 Kubernetes 클러스터가 생성되어 실행 중이면 BRM 배포를 진행할 수 있습니다. 먼저, 제공된 모든 도커 BRM 이미지를 도커 환경에 로드한 후 태그를 지정하고 Oracle Cloud의 원격 리포지토리에 푸시하여 헬름 차트를 배포할 때 이미지를 찾을 수 있도록 해야 합니다.
기본적으로 Oracle 웹 페이지의 지침을 따라야 합니다. 하지만 3단계에서 헬로월드 이미지를 가져오는 대신 tar 파일에서 Oracle BRM 이미지를 로드해야 합니다.
이미지가 로드되어 Oracle Cloud 인프라의 리포지토리에 푸시되면 헬름 차트를 배포할 준비가 된 것입니다.
Oracle BRM 클라우드 네이티브 배포 패키지는 두 개의 차트를 제공합니다:
- 필요한 모든 테이블, 인덱스, 뷰 등을 생성하고 BRM 서비스가 실행될 수 있도록 초기 기본 데이터를 데이터베이스에 로드하는 init_db 이미지를 배포하는 oc-cn-init-db-helm-chart를 배포합니다,
- BRM 클라우드 네이티브 서비스를 배포하는 oc-cn-helm-chart
BRM 서비스를 위한 데이터베이스를 준비하려면 먼저 oc-cn-init-db-helm-chart를 배포해야 합니다.
oc-cn-init-db-helm-chart의 압축이 풀린 폴더로 이동하여 values.yaml을 override-values.yaml에 복사합니다. 그런 다음 override-values.yaml 파일을 열고 Oracle BRM 클라우드 네이티브 배포 설명서에 있는 지침에 따라 필요한 모든 값을 구성합니다. 모든 비밀번호는 Base64 인코딩으로 입력해야 한다는 사실에 특히 주의하세요.
예를 들어 이미지를 찾을 수 있도록 Oracle 클라우드 인프라 레지스트리를 가리키도록 "imageRepository" 필드를 구성해야 합니다:
이미지 저장소: "eu-frankfurt-1.ocir.io/frm097gtmuzm/"
차트가 올바르게 배포되려면 "/"도 필요합니다. override-values.yaml 파일의 "db" 섹션에서 데이터베이스에 대한 액세스 데이터를 제공해야 합니다. 여기서 DB 호스트로 공인 IP를 사용할 필요는 없으며, 성능상의 이유로 사설 IP 주소나 DNS 이름을 사용하는 것이 훨씬 좋습니다.
헬름 차트에 대한 재정의 값을 구성한 후 다음 명령으로 배포할 수 있습니다:
헬름 설치 oc-cn-init-db-helm-chart -이름 initdb -값 oc-cn-init-db-helm-chart/override-values.yaml
이제 헬름이 BRM DB 초기화 이미지를 쿠버네티스 클러스터에 배포하고 BRM을 위한 데이터베이스 준비를 시작한다.
배포 상태를 확인할 수 있습니다:
헬름 상태 초기화
파드에 문제가 있는 경우 이러한 문제를 디버깅할 수 있는 여러 가지 기술이 있습니다. 한 가지 기본적인 접근 방식은 실패한 파드의 로그를 확인하는 것입니다:
kubectl 로그
또한 다른 명령으로 유용한 디버그 데이터를 제공할 수도 있습니다:
kubectl 설명 파드
데이터베이스가 초기화되면 배포를 위해 또 다른 차트인 oc-cn-helm-chart를 준비할 수 있습니다. 이 차트는 실제로 BRM을 클러스터에 배포합니다. oc-cn-init-db-helm-chart에서 oc-cn-helm-chart로 override-values.yaml 파일의 "db" 섹션을 복사할 수 있습니다. 그런 다음 oc-cn-init-db-helm-chart와 비슷한 방식으로 override-values.yaml에 필요한 다른 모든 값을 구성해야 합니다. 모든 키에 대한 설명은 Oracle BRM 클라우드 네이티브 배포 설명서에서 확인할 수 있습니다. 모든 비밀번호는 Base64로 인코딩해야 합니다. 모든 BRM 구성 요소를 배포하지 않으려면 차트 폴더 내의 템플릿 하위 디렉터리에서 특정 구성 요소의 파일을 제거하고 override-values.yaml 파일에서 관련 섹션을 제거하면 됩니다.
그런 다음 다음 명령을 사용하여 BRM을 배포할 수 있습니다:
헬름 설치 oc-cn-helm-chart -이름 occn-ps2 -이름공간 ocgbu -값 oc-cn-helm-chart/override-values.yaml
oc-cn-init-db-helm-chart와 다른 네임스페이스(이 예제에서는 "ocgbu")에 oc-cn-helm-chart를 배포해야 한다는 점에 유의하세요.
쿠버네티스 대시보드를 사용하여 쿠버네티스 배포를 모니터링하는 것이 유용하다. 쿠버네티스 대시보드는 기본적으로 배포되지 않으므로 다음 명령을 사용하여 클러스터에 배포할 수 있습니다:
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta6/aio/deploy/recommended.yaml
그런 다음 대시보드에 액세스하려면 프록시 서비스를 실행해야 합니다:
kubectl 프록시
이제 다음 주소를 사용하여 브라우저에서 Kubernetes 대시보드를 열 수 있습니다:
http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/#/login
그림 6에서 배포된 서비스의 Kubernetes 대시보드 표시를 볼 수 있습니다.

실행 중인 포드 중 하나에서 셸을 열 수도 있습니다. 이 방법은 내부 로그에 액세스하려는 경우와 같이 여러 가지 이유로 유용할 수 있습니다. 다음 명령어로 파드 내부의 셸을 열 수 있습니다:
kubectl exec -n -it - /bin/bash
로그는 일반적으로 pod의 /oms_logs 경로에서 찾을 수 있습니다.
Oracle BRM 클라우드 네이티브 배포를 Oracle 클라우드에 성공적으로 배포하셨습니다!
결론
이 문서에서는 Oracle BRM 클라우드 네이티브 배포를 Oracle 클라우드 인프라에 배포하는 데 필요한 모든 주요 단계를 설명합니다. 배포에 대한 추가 도움이 필요한 경우 오라클 BRM Oracle 클라우드로 배포하는 방법이나 제안이 필요하거나 모든 청구 요구 사항을 충족하는 신뢰할 수 있는 솔루션 제공업체를 찾고 있다면 언제든지 문의해 주세요. 하지만 Oracle BRM 클라우드 네이티브 배포를 Oracle Cloud에 배포하는 것만이 테스트할 수 있는 유일한 옵션은 아닙니다. 로컬 서버 환경에도 배포할 수 있습니다. 다음 글에서 그 방법을 살펴보도록 하겠습니다.