Oracle BRM 12 Implantação nativa na nuvem com o Minikube

Oracle BRM nativo da nuvem

Partilhar

24/02/2020

Índice

Num dos nossos artigos anteriores, já apresentámos a implementação de Oracle BRM 12 Implantação nativa na nuvem versão para o Oracle Cloud. O Oracle Cloud é um ambiente de nuvem muito bem projetado, que também é acessível e está em constante evolução. No entanto, se você quiser implantar o Oracle BRM 12 no Oracle Cloud, terá que usar alguns recursos e componentes não gratuitos do Oracle Cloud, que podem ser testados gratuitamente por apenas 30 dias. Depois disso, terá que atualizar para uma conta paga se quiser continuar a usá-lo.

Oracle BRM Arquitetura de implantação nativa da nuvem
Oracle BRM Arquitetura de implantação nativa da nuvem

Também tem outra opção se quiser testar o Oracle BRM 12 Cloud Native Deployment. Você pode optar por uma implantação no local e implantar o BRM nos seus servidores locais. O principal objetivo deste artigo é mostrar-lhe como pode conseguir isso. Este artigo mostrará como criar e executar um cluster local do Kubernetes usando o Minikube e como implantar Oracle BRM 12 no seu cluster recém-criado e configurado. Tenha em atenção que o Minikube é adequado apenas para fins de teste e desenvolvimento, pelo que não deve utilizá-lo num ambiente de produção. Vamos ver os componentes específicos do nosso sistema que vamos utilizar e como os instalar.

Acerca do Oracle Linux 8

Basearemos a nossa solução num sistema operativo Linux, nomeadamente o Oracle Linux versão 8. Esta distribuição Linux é fornecida pelo Oracle e está disponível gratuitamente. É baseada no Red Hat Enterprise Linux. Para este sistema operativo pode também obter um suporte técnico comercial, caso necessite. Também vale a pena mencionar que o Oracle Cloud é alimentado principalmente por servidores Oracle Linux.

Para efeitos deste artigo, vamos utilizar a versão 8 do Linux Oracle. É claro que pode usar também outras distribuições Linux, mas as instruções para preparar o seu ambiente podem variar de acordo com isso. Se quiser usar o Oracle Linux, pode baixá-lo livremente do Oracle Software Delivery Cloud ou de muitos sites espelho disponíveis em todo o mundo.

Você pode instalar o Oracle Linux diretamente nos seus servidores ou dentro de uma máquina virtual. Neste último caso, o seu software de virtualização tem de suportar virtualização aninhada se quiser seguir de perto as instruções deste artigo.

Depois de instalar o Oracle Linux, certifique-se de que actualiza os seus pacotes de software para as versões mais recentes antes de continuar:

sudo yum update

Em seguida, instale alguns outros pacotes necessários:

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

Agora está pronto para começar a preparar o seu cluster Kubernetes. Primeiro, vamos instalar o Docker.

Instalar o Docker

O Docker é um conjunto de produtos que lhe permite implementar e executar software em contentores. Os contentores são pacotes de software que agrupam o seu próprio software, a configuração e todas as bibliotecas necessárias num único pacote, denominado contentor.

Aqui estão as instruções para instalar o Docker no 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

Para ativar o Docker para o utilizador atual:

sudo usermod -aG docker

novo grupo docker

Instalando o kubectl

Vamos continuar agora com a instalação do kubectl, que é uma ferramenta de linha de comando que lhe permite controlar um cluster Kubernetes.

Transfira a versão estável mais recente do kubectl e mova-a para uma pasta do 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

Pode verificar se o kubectl está a funcionar emitindo o seguinte comando:

versão do kubectl

Receberá um resultado semelhante a este:

Versão do cliente: 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″}

A ligação ao servidor localhost:8080 foi recusada - especificou o anfitrião ou a porta correcta?

Para já, pode ignorar o erro na última linha de entrada do comando.

Instalação do VirtualBox Oracle

O VirtualBox é um produto de virtualização fornecido pelo Oracle e vamos usá-lo como um hipervisor para o nosso cluster Kubernetes minikube. Para instalar o VirtualBox no nosso sistema, temos de adicionar primeiro um repositório adicional:

cd /etc/yum.repos.d/

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

Instale alguns outros pacotes necessários:

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

Agora está pronto para instalar o VirtualBox:

sudo yum install VirtualBox-6.1

Neste ponto, estamos prontos para instalar o Minikube.

Instalar o Minikube

O Minikube é um cluster Kubernetes baseado em Docker, adequado para fins de teste e desenvolvimento. Implantaremos o Oracle BRM 12 Cloud Native Deployment, que é a versão em contêiner do Oracle BRM no cluster do Minikube Kubernetes.

Agora instale o 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/

Podemos agora iniciar o minikube que irá preparar o seu ambiente e criar uma nova máquina virtual. Os valores predefinidos do minikube para o tamanho do disco virtual e a quantidade de memória para a máquina virtual são demasiado baixos para o Oracle BRM, por isso vamos aumentá-los explicitamente (obviamente, tem de ter memória física suficiente disponível para isso, caso contrário pode ter vários problemas):

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

Pode verificar se o minikube foi configurado com sucesso:

kubectl -n kube-system get pod

Obterá um resultado como este:

$ kubectl -n kube-system get pod

NOME PRONTO ESTADO REINICIA IDADE

coredns-6955765f44-d8wj4 1/1 Em execução 0 7m54s

coredns-6955765f44-fd2lt 1/1 Em execução 0 7m54s

etcd-minikube 1/1 Em execução 0 7m46s

kube-apiserver-minikube 1/1 Em execução 0 7m46s

kube-controller-manager-minikube 1/1 Em execução 0 7m46s

kube-proxy-j575p 1/1 Em execução 0 7m54s

kube-scheduler-minikube 1/1 Em execução 0 7m46s

provisionador de armazenamento 1/1 Em execução 0 7m52s

Carregue as variáveis de ambiente necessárias para trabalhar com o minikube e o docker no seu ambiente:

eval $(minikube docker-env)

Precisamos de um componente adicional antes de implementarmos o BRM no nosso cluster recém-criado - o Helm.

Instalar o Helm

O Helm é um gestor de pacotes para o Kubernetes. Os gráficos do Helm são usados para gerenciar, instalar e atualizar o seu cluster do Kubernetes. O Oracle agrupa os gráficos Helm necessários para implantar e configurar a implantação do Oracle BRM 12 na sua versão Cloud Native Deployment do BRM.

Agora vamos instalar o Helm:

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

chmod +x ./helm.sh

./get_helm.sh

Efectue a configuração inicial do timão:

helm init -history-max 200

Agora o seu ambiente está pronto para iniciar a implantação do Oracle BRM 12. Obviamente você tem que realizar alguns passos de preparação na sua instância do Banco de Dados Oracle para que o Oracle BRM possa utilizá-lo. A explicação detalhada desses passos excede o escopo deste artigo, mas você pode encontrar todas as informações necessárias sobre isso na documentação do Oracle BRM ou entre em contato conosco e teremos prazer em ajudá-lo.

Implantação do Oracle BRM 12 no cluster Kubernetes

Primeiro, você tem que carregar todas as imagens docker BRM fornecidas para o seu ambiente docker. O Oracle fornece-lhe dois Helm charts - o primeiro (oc-cn-init-db-helm-chart) inicializa o seu esquema de BD para o preparar para o BRM, e o outro (oc-cn-helm-chart) implementa vários componentes BRM à sua escolha.

Tem de começar por implementar o oc-cn-init-db-helm-chart. Primeiro, tem de carregar a imagem Docker do init_db no repositório Docker:

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

Depois que a imagem for carregada com sucesso, extraia oc-cn-init-db-helm-chart e copie values.yaml para override-values.yaml. Em seguida, edite override-values.yaml de acordo com a documentação Oracle BRM 12 Cloud Native Deployment. Deixe o valor "imageRepository" em branco. Na secção "wallet", defina as credenciais para a carteira Oracle. Defina as configurações de conexão do banco de dados na seção "db". Depois de configurar todos os valores necessários no arquivo override-values.yaml, você pode implantar a imagem init_db no seu cluster Kubernetes usando o gráfico Helm:

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

Agora, o helm implantará a imagem de inicialização do BRM DB no cluster do Kubernetes e começará a preparar o seu banco de dados para o BRM.
Pode verificar o estado da sua implementação com:

helm status initdb

Após algum tempo, o pod initdb terminará de preparar a sua base de dados e pode eliminar a implementação atual da imagem initdb:

helm delete initdb

Agora descompacte oc-cn-helm-chart.tgz e copie values.yaml para override-values.yaml. Agora edite vários campos em override-values.yaml de acordo com as instruções encontradas em Oracle BRM 12 Cloud Native Deployment. Você pode copiar alguns campos (como as seções "wallet" e "db") do gráfico init-db que usou anteriormente.

Utilize o comando "docker load -input" para carregar todas as imagens docker que pretende implementar no repositório Docker.

Em seguida, pode implementar o Helm chart:

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

Agora o BRM será implantado no seu cluster Kubernetes local. Pode encontrar mais algumas dicas sobre como monitorizar o cluster e diagnosticar problemas no nosso artigo anterior.

Também pode monitorizar o seu cluster Kubernetes com o Kubernetes Dashboard:

painel de controlo do minikube

O painel de controlo será aberto numa nova janela do browser.

Painel de controlo do Kubernetes

Conclusão

Este artigo orienta-o nas principais etapas da implantação do Oracle BRM Cloud Native Deployment em um cluster minikube Kubernetes local. Pode usar essa implantação para fins de teste e desenvolvimento. Se precisar de ajuda adicional para implantar o Oracle BRM para o minikube, se precisar de sugestões ou se estiver à procura de um fornecedor de soluções fiável para todas as suas necessidades de faturação, não hesite em contactar-nos.

Imagem de Aleš Pristovnik
Pristovnik
Ales Pristovnik é o CEO da Tridens, uma empresa de software especializada em carregamento de veículos eléctricos, subscrição e facturação Oracle BRM. Tem uma longa história no sector das TI, tendo trabalhado para várias grandes empresas. Tem uma paixão pela tecnologia e pela inovação, e o seu foco actual é o desenvolvimento de soluções que melhorem a segurança e a eficiência da indústria automóvel.

Obter notícias na sua caixa de correio!


    0 0 votos
    Article Rating
    Subscreva
    Notificação de
    convidado

    2 Comentários
    Mais antigo
    Novidades Mais Votados
    Feedbacks em linha
    Ver todos os comentários