Distribuzione Cloud-Nativa di Oracle BRM 12 con Minikube

Oracle BRM cloud nativo

Condividi su

24/02/2020

Indice dei contenuti

In uno dei nostri articoli precedenti abbiamo già presentato l'implementazione di Oracle BRM 12 Distribuzione nativa nel cloud versione a Oracle Cloud. Oracle Cloud è un ambiente cloud molto ben progettato, che è anche conveniente e in costante evoluzione. Tuttavia, se desidera distribuire Oracle BRM 12 su Oracle Cloud, deve utilizzare alcune funzioni e componenti non gratuiti di Oracle Cloud, che può testare gratuitamente solo per 30 giorni. Dopodiché dovrà passare all'account a pagamento se vuole continuare ad utilizzarlo.

Architettura di distribuzione nativa di Oracle BRM Cloud
Architettura di distribuzione cloud-nativa di Oracle BRM

Ha anche un'altra opzione se vuole provare Oracle BRM 12 Cloud Native Deployment. Può optare per una distribuzione on-premise e distribuire BRM sui suoi server locali. Lo scopo principale di questo articolo è mostrarle come può farlo. Questo articolo le mostrerà come creare ed eseguire un cluster Kubernetes locale utilizzando Minikube e come distribuire il BRM sui server locali. Oracle BRM 12 nel cluster appena creato e configurato. Tenga presente che Minikube è adatto solo per scopi di test e di sviluppo e non dovrebbe utilizzarlo in un ambiente di produzione. Diamo un'occhiata ai componenti specifici del nostro sistema che utilizzeremo e come installarli.

Informazioni su Oracle Linux 8

Baseremo la nostra soluzione su un sistema operativo Linux, vale a dire Oracle Linux versione 8. Questa distribuzione Linux è fornita da Oracle e disponibile gratuitamente. Si basa su Red Hat Enterprise Linux. Per questo sistema operativo può anche ottenere un supporto tecnico commerciale, se ne ha bisogno. Vale la pena ricordare che Oracle Cloud è alimentato principalmente da server Oracle Linux.

Utilizzeremo Oracle Linux versione 8 per lo scopo di questo articolo. Naturalmente può utilizzare anche altre distribuzioni Linux, ma le istruzioni per la preparazione dell'ambiente possono variare a seconda dei casi. Se desidera utilizzare Oracle Linux, può scaricarlo liberamente da Oracle Software Delivery Cloud o da molti siti mirror disponibili in tutto il mondo.

Può installare Oracle Linux direttamente sui suoi server o all'interno di una macchina virtuale. In quest'ultimo caso, il suo software di virtualizzazione deve supportare la virtualizzazione nidificata, se vuole seguire attentamente le istruzioni di questo articolo.

Dopo aver installato Oracle Linux, si assicuri di aggiornare i pacchetti software alle versioni più recenti prima di continuare:

sudo yum update

Poi installa alcuni altri pacchetti necessari:

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

Ora è pronto per iniziare a preparare il cluster Kubernetes. Per prima cosa installeremo Docker.

Installazione di Docker

Docker è un insieme di prodotti che consente di distribuire ed eseguire software containerizzato. I contenitori sono pacchetti software che raggruppano il proprio software, la configurazione e tutte le librerie necessarie in un unico pacchetto, chiamato contenitore.

Ecco le istruzioni per installare Docker su 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

Per abilitare Docker per l'utente corrente:

sudo usermod -aG docker

newgrp docker

Installazione di kubectl

Continueremo ora con l'installazione di kubectl, che è uno strumento a riga di comando che consente di controllare un cluster Kubernetes.

Scarichi l'ultima versione stabile di kubectl e la sposti in una cartella di sistema:

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

Può verificare se kubectl sta funzionando lanciando il seguente comando:

versione di kubectl

Riceverà un risultato simile a questo:

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

La connessione al server localhost:8080 è stata rifiutata - ha specificato l'host o la porta giusta?

Per ora può ignorare l'errore nell'ultima riga di input del comando.

Installazione di VirtualBox Oracle

VirtualBox è un prodotto di virtualizzazione fornito da Oracle e lo utilizzeremo come hypervisor per il nostro cluster Kubernetes minikube. Per installare VirtualBox sul nostro sistema, dobbiamo prima aggiungere un repository supplementare:

cd /etc/yum.repos.d/

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

Installare alcuni altri pacchetti necessari:

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

Ora è pronto per installare VirtualBox:

sudo yum install VirtualBox-6.1

A questo punto siamo pronti per installare Minikube.

Installazione di Minikube

Minikube è un cluster Kubernetes basato su Docker, adatto per scopi di test e sviluppo. Distribuiremo Oracle BRM 12 Cloud Native Deployment, che è la versione containerizzata di Oracle BRM sul cluster Kubernetes di Minikube.

Ora installi minikube:

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

sudo mkdir -p /usr/local/bin/

sudo installa minikube /usr/local/bin/

Ora possiamo avviare minikube che preparerà il suo ambiente e creerà una nuova macchina virtuale. I valori predefiniti di minikube per la dimensione del disco virtuale e la quantità di memoria per la macchina virtuale sono troppo bassi per Oracle BRM, quindi li aumenteremo esplicitamente (ovviamente deve avere abbastanza memoria fisica disponibile per questo, altrimenti potrebbe riscontrare vari problemi):

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

Può verificare se minikube è stato configurato con successo:

kubectl -n kube-system get pod

Otterrà un risultato come questo:

$ kubectl -n kube-system get pod

NOME STATO PRONTO RIAVVIA ETÀ

coredns-6955765f44-d8wj4 1/1 In esecuzione 0 7m54s

coredns-6955765f44-fd2lt 1/1 In esecuzione 0 7m54s

etcd-minikube 1/1 In esecuzione 0 7m46s

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

kube-controller-manager-minikube 1/1 In esecuzione 0 7m46s

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

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

storage-provisioner 1/1 In esecuzione 0 7m52s

Carica le variabili d'ambiente necessarie per lavorare con minikube e docker nel suo ambiente:

eval $(minikube docker-env)

Abbiamo bisogno di un componente aggiuntivo prima di distribuire BRM al nostro cluster appena creato: Helm.

Installazione di Helm

Helm è un gestore di pacchetti per Kubernetes. I diagrammi Helm sono utilizzati per gestire, installare e aggiornare il cluster Kubernetes. Oracle raggruppa i grafici Helm necessari per la distribuzione e la configurazione dell'implementazione Oracle BRM 12 nella versione Cloud Native Deployment di BRM.

Ora installiamo Helm:

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

chmod +x ./helm.sh

./get_helm.sh

Esegua la configurazione iniziale del timone:

helm init -storia-max 200

Ora il suo ambiente è pronto per iniziare la distribuzione di Oracle BRM 12. Ovviamente deve eseguire alcune fasi di preparazione sulla sua istanza di database Oracle, in modo che Oracle BRM possa utilizzarla. La spiegazione dettagliata di questi passaggi va oltre lo scopo di questo articolo, ma può trovare tutte le informazioni necessarie al riguardo nella documentazione di Oracle BRM o contattarci e saremo lieti di aiutarla.

Distribuzione di Oracle BRM 12 nel cluster Kubernetes

Per prima cosa, deve caricare tutte le immagini docker BRM fornite nel suo ambiente docker. Oracle le fornisce due diagrammi Helm - il primo (oc-cn-init-db-helm-chart) inizializza il suo schema DB per prepararlo per BRM, e l'altro (oc-cn-helm-chart) distribuisce vari componenti BRM che lei sceglie.

Deve iniziare distribuendo oc-cn-init-db-helm-chart. Per prima cosa deve caricare l'immagine Docker di init_db nel repository Docker:

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

Dopo che l'immagine è stata caricata con successo, estrarre oc-cn-init-db-helm-chart e copiare values.yaml in override-values.yaml. Quindi modifichi override-values.yaml secondo la documentazione di Oracle BRM 12 Cloud Native Deployment. Lasciare vuoto il valore "imageRepository". Nella sezione "wallet" imposti le credenziali per il portafoglio Oracle. Deve impostare le impostazioni di connessione al database in una sezione "db". Dopo aver configurato tutti i valori necessari nel file override-values.yaml, può distribuire l'immagine init_db al suo cluster Kubernetes utilizzando il grafico Helm:

helm installa oc-cn-init-db-helm-chart -nome initdb -valori oc-cn-init-db-helm- chart/override-values.yaml

Ora il timone distribuirà l'immagine di inizializzazione di BRM DB nel cluster Kubernetes e inizierà a preparare il database per BRM.
Può controllare lo stato della sua distribuzione con:

helm status initdb

Dopo un po' di tempo, il pod initdb finirà di preparare il suo database e potrà eliminare l'attuale distribuzione dell'immagine di initdb:

helm cancella initdb

Ora decomprima oc-cn-helm-chart.tgz e copia values.yaml in override-values.yaml. Ora modifichi i vari campi in override-values.yaml secondo le istruzioni contenute in Oracle BRM 12 Cloud Native Deployment. Può copiare alcuni campi (come le sezioni "wallet" e "db") dalla tabella init-db che ha utilizzato in precedenza.

Utilizzi il comando "docker load -input" per caricare tutte le immagini docker che desidera distribuire nel repository Docker.

Poi può distribuire il grafico di Helm:

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

Ora BRM si distribuirà nel cluster Kubernetes locale. Può trovare altri suggerimenti sul monitoraggio del cluster e sulla diagnosi dei problemi nel nostro precedente articolo.

Può anche monitorare il suo cluster Kubernetes con Kubernetes Dashboard:

cruscotto minikube

La dashboard verrà aperta in una nuova finestra del browser.

Dashboard Kubernetes

Conclusione

Questo articolo la guida attraverso le fasi principali della distribuzione di Oracle BRM Cloud Native Deployment in un cluster Kubernetes minikube locale. Può utilizzare questa distribuzione per scopi di test e sviluppo. Se ha bisogno di ulteriore aiuto con la distribuzione Oracle BRM a minikube, ha bisogno di suggerimenti o se sta cercando un fornitore di soluzioni affidabili per tutte le sue esigenze di fatturazione, non esiti a contattarci.

Immagine di Aleš Pristovnik
Aleš Pristovnik
Ales Pristovnik è il CEO di Tridens, un'azienda di software specializzata nella ricarica di veicoli elettrici, negli abbonamenti e nella fatturazione Oracle BRM. Ha una lunga esperienza nel settore IT, avendo lavorato per diverse grandi aziende. Ha una passione per la tecnologia e l'innovazione, e la sua attenzione attuale è rivolta allo sviluppo di soluzioni che migliorino la sicurezza e l'efficienza dell'industria automobilistica.

Ottenere notizie nella tua casella di posta!


    0 0 voti
    Valutazione dell'articolo
    Iscritti
    Notificami
    ospite

    2 Commenti
    Vecchi
    Più recenti Le più votate
    Feedback in linea
    Visualizza tutti i commenti