Oracle BRM 12 Wdrożenie natywne w chmurze z Minikube

Oracle BRM natywny dla chmury

Podsumuj za pomocą

Podsumuj za pomocą

ChatGPT

Gemini

Claude

Grok

Zakłopotanie

Udostępnij na

24/02/2020

Spis treści

W jednym z naszych poprzednich artykułów przedstawiliśmy już wdrożenie Oracle BRM 12 Wdrożenie natywne w chmurze do Oracle Cloud. Oracle Cloud to bardzo dobrze zaprojektowane środowisko chmurowe, które jest również przystępne cenowo i stale się rozwija. Jeśli jednak chcą Państwo wdrożyć Oracle BRM 12 do Oracle Cloud, muszą Państwo skorzystać z niektórych bezpłatnych funkcji i komponentów Oracle Cloud, które można przetestować za darmo tylko przez 30 dni. Po upływie tego czasu należy uaktualnić konto do płatnego, jeśli chcą Państwo nadal z niego korzystać.

Architektura natywnego wdrożenia w chmurze Oracle BRM
Architektura wdrożenia natywnego dla chmury Oracle BRM

Mają Państwo również inną opcję, jeśli chcą przetestować Oracle BRM 12 Cloud Native Deployment. Mogą Państwo zdecydować się na wdrożenie lokalne i wdrożyć BRM na swoich lokalnych serwerach. Głównym celem tego artykułu jest pokazanie Państwu, jak można to osiągnąć. W tym artykule dowiedzą się Państwo, jak utworzyć i uruchomić lokalny klaster Kubernetes przy użyciu Minikube oraz jak wdrożyć BRM w chmurze. Oracle BRM 12 do nowo utworzonego i skonfigurowanego klastra. Proszę pamiętać, że Minikube nadaje się tylko do celów testowych i rozwojowych i nie należy go używać w środowisku produkcyjnym. Przyjrzyjmy się konkretnym komponentom naszego systemu, z których będziemy korzystać i jak je zainstalować.

Informacje o Oracle Linux 8

Oprzemy nasze rozwiązanie na systemie operacyjnym Linux, a mianowicie Oracle Linux w wersji 8. Ta dystrybucja Linuksa jest dostarczana przez Oracle i dostępna za darmo. Jest ona oparta na Red Hat Enterprise Linux. Dla tego systemu operacyjnego można również uzyskać komercyjne wsparcie techniczne, jeśli jest ono potrzebne. Warto również wspomnieć, że Oracle Cloud jest zasilany głównie przez serwery Oracle Linux.

Na potrzeby tego artykułu użyjemy Oracle Linux w wersji 8. Oczywiście mogą Państwo korzystać również z innych dystrybucji Linuksa, ale instrukcje dotyczące przygotowania środowiska mogą się różnić w zależności od tego. Jeśli chcą Państwo korzystać z Oracle Linux, można go pobrać bezpłatnie z Oracle Software Delivery Cloud lub z wielu witryn lustrzanych dostępnych na całym świecie.

Mogą Państwo zainstalować Oracle Linux bezpośrednio na swoich serwerach lub wewnątrz maszyny wirtualnej. W tym drugim przypadku oprogramowanie do wirtualizacji musi obsługiwać wirtualizację zagnieżdżoną, jeśli chcą Państwo ściśle przestrzegać instrukcji zawartych w tym artykule.

Po zainstalowaniu Oracle Linux proszę upewnić się, że pakiety oprogramowania zostały zaktualizowane do najnowszych wersji przed kontynuowaniem:

sudo yum update

Następnie proszę zainstalować inne wymagane pakiety:

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

Teraz mogą Państwo rozpocząć przygotowywanie klastra Kubernetes. Najpierw zainstalujemy Dockera.

Instalacja Dockera

Docker to zestaw produktów umożliwiających wdrażanie i uruchamianie oprogramowania w kontenerach. Kontenery to pakiety oprogramowania, które łączą własne oprogramowanie, konfigurację i wszystkie potrzebne biblioteki w jeden pakiet, zwany kontenerem.

Poniżej znajdują się instrukcje dotyczące instalacji Docker na Oracle Linux 8:

sudo curl https://download.docker.com/linux/centos/docker-ce.repo -o /etc/yum.repos.d/docker-ce.repo

sudo yum makecache

sudo yum remove podman-manpages

sudo dnf -y install docker-ce -nobest

systemctl start docker

systemctl enable docker

systemctl status docker

Aby włączyć Docker dla bieżącego użytkownika:

sudo usermod -aG docker

newgrp docker

Instalacja kubectl

Kontynuujemy teraz instalację kubectl, który jest narzędziem wiersza poleceń, które pozwala kontrolować klaster Kubernetes.

Proszę pobrać najnowszą stabilną wersję kubectl i przenieść ją do folderu systemowego:

curl -LO https://storage.googleapis.com/kubernetes-release/release/`curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt`/bin/linux/amd64/kubectl

chmod +x ./kubectl

sudo mv ./kubectl /usr/local/bin/kubectl

Mogą Państwo sprawdzić, czy kubectl działa, wydając następujące polecenie:

wersja kubectl

Otrzymają Państwo wynik podobny do tego:

Wersja klienta: version.Info{Major: "1″, Minor: "17″, GitVersion: "v1.17.3″, GitCommit: "06ad960bfd03b39c8310aaf92d1e7c12ce618213″, GitTreeState: "clean", BuildDate: "2020-02-11T18:14:22Z", GoVersion: "go1.13.6″, Compiler: "gc", Platform: "linux/amd64″}.

Połączenie z serwerem localhost:8080 zostało odrzucone - czy podali Państwo właściwy host lub port?

Na razie mogą Państwo zignorować błąd w ostatnim wierszu polecenia.

Instalacja Oracle VirtualBox

VirtualBox to produkt do wirtualizacji dostarczany przez Oracle, którego użyjemy jako hiperwizora dla naszego klastra Kubernetes Minikube. Aby zainstalować VirtualBox w naszym systemie, musimy najpierw dodać dodatkowe repozytorium:

cd /etc/yum.repos.d/

sudo wget http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo

Proszę zainstalować inne potrzebne pakiety:

sudo yum install binutils gcc make patch libgomp glibc-headers glibc-devel kernel-headers kernel-devel elfutils-libelf-devel

Teraz mogą Państwo zainstalować VirtualBox:

sudo yum install VirtualBox-6.1

W tym momencie jesteśmy gotowi do zainstalowania Minikube.

Instalacja Minikube

Minikube to oparty na Dockerze klaster Kubernetes, który nadaje się do celów testowych i deweloperskich. Wdrożymy Oracle BRM 12 Cloud Native Deployment, który jest skonteneryzowaną wersją Oracle BRM do klastra Kubernetes Minikube.

Proszę zainstalować minikube:

curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 && chmod +x minikube

sudo mkdir -p /usr/local/bin/

sudo install minikube /usr/local/bin/

Możemy teraz uruchomić minikube, który przygotuje swoje środowisko i utworzy nową maszynę wirtualną. Domyślne wartości minikube dla rozmiaru wirtualnego dysku i ilości pamięci dla wirtualnej maszyny są zbyt niskie dla Oracle BRM, dlatego wyraźnie je podniesiemy (oczywiście muszą Państwo mieć wystarczającą ilość dostępnej pamięci fizycznej, w przeciwnym razie mogą wystąpić różne problemy):

minikube start -disk-size='800g' -memory='8192m'

Mogą Państwo sprawdzić, czy minikube został pomyślnie skonfigurowany:

kubectl -n kube-system get pod

Otrzymają Państwo następujące dane wyjściowe:

$ kubectl -n kube-system get pod

NAZWA STATUS GOTOWY RESTARTY WIEK

coredns-6955765f44-d8wj4 1/1 Running 0 7m54s

coredns-6955765f44-fd2lt 1/1 Running 0 7m54s

etcd-minikube 1/1 Running 0 7m46s

kube-apiserver-minikube 1/1 Running 0 7m46s

kube-controller-manager-minikube 1/1 Running 0 7m46s

kube-proxy-j575p 1/1 Running 0 7m54s

kube-scheduler-minikube 1/1 Running 0 7m46s

storage-provisioner 1/1 Running 0 7m52s

Proszę załadować zmienne środowiskowe potrzebne do pracy z minikube i docker w Państwa środowisku:

eval $(minikube docker-env)

Potrzebujemy dodatkowego komponentu przed wdrożeniem BRM do naszego nowo utworzonego klastra - Helm.

Instalacja Sternika

Helm to menedżer pakietów dla Kubernetes. Wykresy Helm służą do zarządzania, instalowania i aktualizowania klastra Kubernetes. Oracle zawiera wykresy Helm potrzebne do wdrożenia i konfiguracji wdrożenia Oracle BRM 12 w wersji Cloud Native Deployment BRM.

Teraz proszę zainstalować Helm:

curl -LO https://git.io/get_helm.sh

chmod +x ./helm.sh

./get_helm.sh

Proszę przeprowadzić wstępną konfigurację steru:

helm init -history-max 200

Teraz Państwa środowisko jest gotowe do rozpoczęcia wdrażania Oracle BRM 12. Oczywiście muszą Państwo wykonać pewne kroki przygotowawcze na instancji bazy danych Oracle, aby Oracle BRM mógł z niej korzystać. Szczegółowe wyjaśnienie tych kroków wykracza poza zakres tego artykułu, ale wszystkie niezbędne informacje na ten temat można znaleźć w dokumentacji Oracle BRM lub skontaktować się z nami, a chętnie Państwu pomożemy.

Wdrożenie Oracle BRM 12 do klastra Kubernetes

Najpierw należy załadować wszystkie dostarczone obrazy docker BRM do środowiska docker. Oracle zapewnia dwa wykresy Helm - pierwszy (oc-cn-init-db-helm-chart) inicjalizuje schemat DB, aby przygotować go do BRM, a drugi (oc-cn-helm-chart) wdraża różne wybrane przez Państwa komponenty BRM.

Proszę zacząć od wdrożenia oc-cn-init-db-helm-chart. Najpierw należy załadować obraz init_db Docker do repozytorium Docker:

docker load -input oc-cn-brm-init-db-12.0.0.2.0.tar

Po pomyślnym załadowaniu obrazu, proszę wyodrębnić oc-cn-init-db-helm-chart i skopiować values.yaml do override-values.yaml. Następnie proszę edytować plik override-values.yaml zgodnie z dokumentacją Oracle BRM 12 Cloud Native Deployment. Proszę pozostawić wartość "imageRepository" pustą. W sekcji "wallet" proszę ustawić poświadczenia dla portfela Oracle. W sekcji "db" należy skonfigurować ustawienia połączenia z bazą danych. Po skonfigurowaniu wszystkich niezbędnych wartości w pliku override-values.yaml, można wdrożyć obraz init_db do klastra Kubernetes za pomocą wykresu Helm:

helm install oc-cn-init-db-helm-chart -name initdb -values oc-cn-init-db-helm- chart/override-values.yaml

Teraz sternik wdroży obraz inicjalizacyjny BRM DB do klastra Kubernetes i rozpocznie przygotowywanie bazy danych dla BRM.
Stan wdrożenia można sprawdzić za pomocą:

helm status initdb

Po chwili initdb pod zakończy przygotowywanie bazy danych i będzie można usunąć bieżące wdrożenie obrazu initdb:

helm delete initdb

Proszę rozpakować oc-cn-helm-chart.tgz i skopiować values.yaml do override-values.yaml. Teraz proszę edytować różne pola w pliku override-values.yaml zgodnie z instrukcjami zawartymi w Oracle BRM 12 Cloud Native Deployment. Mogą Państwo skopiować niektóre pola (takie jak sekcje "wallet" i "db") z wykresu init-db, którego używali Państwo wcześniej.

Proszę użyć polecenia "docker load -input", aby załadować wszystkie obrazy docker, które chcą Państwo wdrożyć do repozytorium Docker.

Następnie można wdrożyć wykres Helm:

helm install oc-cn-helm-chart -name occn-ps2 -namespace ocgbu -values oc-cn-helm-chart/override-values.yaml

Teraz BRM zostanie wdrożony w Państwa lokalnym klastrze Kubernetes. Więcej wskazówek na temat monitorowania klastra i diagnozowania problemów znajdą Państwo w naszym poprzednim artykule.

Mogą Państwo również monitorować swój klaster Kubernetes za pomocą Kubernetes Dashboard:

minikube dashboard

Dashboard zostanie otwarty w nowym oknie przeglądarki.

Pulpit nawigacyjny Kubernetes

Wnioski

Niniejszy artykuł poprowadzi Państwa przez główne etapy wdrażania natywnego środowiska Oracle BRM Cloud Native Deployment w lokalnym klastrze minikube Kubernetes. Wdrożenia tego można używać do celów testowych i deweloperskich. Jeśli potrzebują Państwo dodatkowej pomocy przy wdrażaniu Oracle BRM do minikube, potrzebują sugestii lub szukają Państwo niezawodnego dostawcy rozwiązań dla wszystkich swoich potrzeb związanych z rozliczeniami, prosimy o kontakt z nami.

Zdjęcie Aleš Pristovnik
Aleš Pristovnik
Ales Pristovnik jest dyrektorem generalnym Tridens, firmy programistycznej specjalizującej się w ładowaniu pojazdów elektrycznych, subskrypcji i rozliczeniach Oracle BRM. Ma długą historię w branży IT, pracował dla kilku dużych firm. Jego pasją jest technologia i innowacje, a obecnie koncentruje się na opracowywaniu rozwiązań, które poprawią bezpieczeństwo i wydajność branży motoryzacyjnej.

Get wiadomości w skrzynce odbiorczej!


    0 0 głosy
    Ocena artykułu
    Subskrybuj
    Powiadom o
    gość

    2 Komentarze
    Najstarsze
    Najnowsze Najwięcej głosów
    Opinie w linii
    Zobacz wszystkie komentarze