Nota:
- Este tutorial requiere acceso a Oracle Cloud. Para registrarse en una cuenta gratuita, consulte Introducción a Oracle Cloud Infrastructure Free Tier.
- Utiliza valores de ejemplo para las credenciales, el arrendamiento y los compartimentos de Oracle Cloud Infrastructure. Al finalizar el laboratorio, sustituya estos valores por otros específicos de su entorno en la nube.
Despliegue de Oracle FLEXCUBE en OKE
Introducción
Oracle FLEXCUBE Universal Banking requiere que se realicen varios pasos antes de activar y ejecutar un entorno. Al ser una aplicación Java Enterprise Edition (JEE), incluye una base de software mínima que se va a instalar, como el servidor de aplicaciones y bases de datos. Para este ejemplo, Oracle WebLogic y Oracle Database se utilizan como parte de la pila técnica. Para activar un sistema completo y en ejecución, un despliegue estándar seguiría estos pasos:
1. Install Oracle Database
2. Install Oracle Weblogic Fusion Middleware Infrastructure
3. Install Oracle FLEXCUBE database artifacts
4. Install Oracle FLEXCUBE application server artifacts
5. Configure initial setup
6. Tune database
7. Tune application
8. Personalize as per business needs
Un instalador de aplicaciones realiza los pasos iniciales. El proceso se puede repetir, pero también requiere tiempo, lo que significa que, en función de la complejidad del entorno que se va a crear, puede tardar varios días en desplegar el sistema. Una forma de mejorar este proceso es automatizar la mayor parte de él y ahí es donde las estrategias de contenedorización pueden beneficiar a este tipo de arquitecturas.
Los primeros 7 pasos mencionados anteriormente se pueden automatizar por completo mediante contenedores, como imágenes de Docker y una combinación de herramientas para mantenerlas y gestionarlas. Los datos configurados en la base de datos se convierten en un artefacto inicial replicable y la capa de aplicación se transforma en una imagen ya ajustada y almacenada como copia maestra. A continuación, Oracle Cloud Infrastructure (OCI) proporciona elementos para replicar en cualquier momento, un entorno completo basado en esa copia maestra del sistema.
Nota:
¿Podemos desplegar la base de datos o almacenes de datos potencialmente diferentes en contenedores independientes?
Potencialmente sí, pero para este tutorial hemos decidido mantenerlo como un despliegue de base de datos en la nube normal con todos los almacenes de datos en el mismo esquema y conservar cualquier práctica común existente a nivel de base de datos.
La intención de este tutorial no es transformar la arquitectura en una arquitectura basada en microservicios porque eso requeriría otros cambios estructurales que no forman parte del ámbito. Puede obtener más información sobre la base de datos Oracle en Docker en: Oracle GitHub.
Objetivos
- Despliegue rápidamente una imagen de FLEXCUBE manualmente
- Crear una imagen de FLEXCUBE de contenedor
- Cree una versión DevOps y despliegue FLEXCUBE dentro de un cluster de Kubernetes
Requisitos
- Un cluster de OKE con un nodo de trabajador con al menos:
- 8 OCPU
- 64 GB de RAM
- Acceso
kubectlal cluster de OKE para operaciones locales - Una copia de seguridad de la base de datos FLEXCUBE en la base de datos OCI (DBaaS)
- La VCN de OKE necesita acceder a DBaaS
- Permiso y uso limitado para crear:
- Equilibrios de Carga
- Almacenamiento de volumen en bloque
- Configuración de JDBC para la copia de seguridad de FLEXCUBE:
- nombre de usuario
- contraseña
- Punto final de Oracle Database (IP/puerto)
- Conocimiento de:
- WebLogic Uso de herramientas y administración: uso de
setWLSEnv.sh - Administración básica de Kubernetes
- Operación de Visual Builder o Jenkins
- Administración y configuración de FLEXCUBE
- WebLogic Uso de herramientas y administración: uso de
Nota:
Para crear un cluster de OKE en su inquilino de OCI, consulte: Crear el cluster de OKE.
Si ya ha creado el cluster de OKE, verifique si ha configurado el acceso al cluster como se describe en el tema Descargar el archivo Kubeconfig.
Para obtener instrucciones sobre la instalación de kubectl, consulte: Install kubectl
Tarea 1: Creación de un servidor de administración WebLogic
Comencemos con un POD de servidor de administración WebLogic simple en el cluster de Kubernetes.
-
En el archivo weblogic.zip, puede encontrar:
- LÉAME: Algunos enlaces que le ayudarán a crear el cluster de OKE si aún no se ha creado
- secret.sh: script bash que ayuda a crear el secreto para acceder al repositorio de imágenes de Oracle para utilizar la imagen WebLogic
- weblogic.yaml: archivo YAML para crear una instancia de WebLogic y puertos de servicio para acceder al servidor de administración
Nota: Debe asignar el repositorio de imágenes de Oracle y definir las credenciales (usuario/contraseña) para obtener la imagen WebLogic. Para obtener más información, consulte: Repositorio de imágenes de Oracle
-
Con sus credenciales en el repositorio de imágenes de Oracle (conexión/contraseña), debe editar la secuencia de comandos secret.sh y agregar sus credenciales al archivo. Ejecute este comando para proporcionar el secreto en el cluster de OKE. No puede desplegar el contenedor WebLogic sin este paso.
sh secret.sh -
Ahora, podemos continuar con el despliegue de WebLogic. Puede ajustar muchos parámetros, pero para esta prueba, mantenga el puerto 7001 y las credenciales para conectarse en el servidor de administración WebLogic.
weblogic.yaml
apiVersion: apps/v1 kind: Deployment metadata: name: weblogic-deployment spec: replicas: 1 selector: matchLabels: app: weblogic template: metadata: labels: app: weblogic spec: containers: - name: weblogic image: container-registry.oracle.com/middleware/weblogic:12.2.1.4 env: - name: DOMAIN_NAME value: "myDomain" - name: ADMIN_NAME value: "myadmin" - name: ADMIN_LISTEN_PORT value: "7001" - name: ADMIN_HOST value: "AdminContainer" - name: ADMINISTRATION_PORT_ENABLED value: "false" - name: ADMINISTRATION_PORT value: "9005" - name: MANAGED_SERVER_PORT value: "8001" - name: MANAGED_SERVER_NAME_BASE value: "MS" - name: CONFIGURED_MANAGED_SERVER_COUNT value: "2" - name: CLUSTER_NAME value: "cluster1" - name: CLUSTER_TYPE value: "DYNAMIC" - name: PRODUCTION_MODE value: "dev" - name: DOMAIN_HOST_VOLUME value: "/app/domains" - name: PROPERTIES_FILE_DIR value: "/u01/oracle/properties" - name: PROPERTIES_FILE value: "/u01/oracle/properties/domain.properties" command: [ "/bin/bash", "-c", "--" ] args: [ "mkdir /u01/oracle/properties; cd /u01/oracle/properties; echo 'username=weblogic' > domain.properties; echo 'password=weblogic123' >> domain.properties; cd /u01/oracle; ./createAndStartEmptyDomain.sh; while true; do sleep 30; done;" ] ports: - name: port9005 containerPort: 9005 imagePullSecrets: - name: oracledockersecret --- apiVersion: v1 kind: Service metadata: name: weblogic-service labels: app: weblogic spec: selector: app: weblogic ports: - port: 7001 targetPort: 7001 name: adminserver - port: 8001 targetPort: 8001 name: managedserver - port: 9005 targetPort: 9005 name: adminport type: LoadBalancer -
En el terminal, puede ejecutar el archivo
weblogic.yamlpara desplegar el servidor de administración.kubectl apply -f weblogic.yaml -
Puede ver el puerto de servicios y equilibradores de carga para acceder al servidor de administración. Ejecute este comando:
kubectl get svc -
Se muestran los siguientes detalles:

-
Tenga en cuenta un valor pendiente en weblogic-service. Significa que un equilibrador de carga no está listo con una IP pública. Espere un minuto y, a continuación, puede repetir el comando kubectl para ver la IP pública.
-
Con una dirección IP pública, abra la siguiente URL en el explorador:
http://<Public IP>:7001/console -
Ahora puede ver el servidor de administración. El usuario y la contraseña, tal y como se definen en el archivo YAML, son:
usuario: contraseña de WebLogic: weblogic123

Tarea 2: obtener la contraseña de la base de datos en formato AES256
Compruebe la copia de seguridad de la base de datos FLEXCUBE y obtenga la contraseña de la base de datos en formato AES256.
-
Recuerde que necesita Oracle Database en OCI DBaaS y restaurar la copia de seguridad de FLEXCUBE. Después de comprobar la restauración de una copia de seguridad de base de datos FLEXCUBE válida, necesita esta información para acceder al contenido de la base de datos FLEXCUBE:
- Punto final (IP/puerto)
- Nombre de usuario
- Contraseña
-
No puede utilizar la contraseña en formato de texto; debe convertir la contraseña en un formato AES256. La forma más sencilla de convertir la contraseña en formato AES256 es mediante la herramienta WebLogic:
setWLSEnv.sh -
Puede encontrar este script bash de herramienta en la ruta de acceso WebLogic:
./oracle/wlserver/server/bin -
Para convertir la contraseña, debe ejecutar estos comandos de la siguiente forma:
cd ./oracle/wlserver/server/bin . ./setWLSEnv.sh java -Dweblogic.RootDirectory=../user_projects/domains/integrated weblogic.security.Encrypt <Database Password> -
Después de la ejecución de setWLSEnv.sh, obtiene una contraseña en formato AES256 como este ejemplo:
{AES256}7kfaltdnEBjKNq.......RIU0IcLOynq1ee8Ib8= -
Vamos a utilizar el POD del servidor de administración WebLogic más reciente para ejecutar este comando.
kubectl exec -it $(kubectl get pod -l app=weblogic -o jsonpath="{.items[0].metadata.name}") -- /bin/bash -
Espere hasta que pueda entrar dentro del contenedor del servidor WebLogic. Ejecute la siguiente secuencia de comandos:
cd /u01/oracle/wlserver/server/bin . ./setWLSEnv.sh java -Dweblogic.RootDirectory=/u01/oracle/user_projects/domains/myDomain weblogic.security.Encrypt <Database Password> -
Sustituya
por el texto Contraseña. -
Puede ver la contraseña {AES256}. Guarde esta información para los siguientes pasos.
-
Ejecute este comando para salir del contenedor:
exit. -
Ahora puede suprimir el servidor de administración WebLogic. Debe suprimirlo debido a FLEXCUBE, también utilizará el puerto 7001.
kubectl delete -f weblogic.yaml
Tarea 3: Ejecución de un despliegue manual con kubectl
Puede implementar FLEXCUBE (fcubs) en el cluster de OKE con el comando kubectl. Se puede realizar en el equipo local si ha configurado el acceso al cluster de OKE para la herramienta de comandos kubectl.
Entendamos el archivo integrated145.yaml
El archivo yaml contiene algunos parámetros importantes para crear el pod: incluye el nombre de despliegue, reconoce la IP/nombre de host interno, donde seleccionar la imagen de WebLogic, la conexión jdbc y el acceso a la base de datos cifrada.

En el mismo archivo yaml, también se define el tamaño esperado por el pod, considerando el número de recursos necesarios y hasta el límite que puede crecer en caso de aumento del consumo.

Los puertos que se van a exponer también se definen en el archivo yaml, lo que permite una seguridad personalizada. El usuario de negocio, la consola WebLogic, el administrador, los servicios web los desarrolladores, etc., pueden acceder a la aplicación.

Nota: En este escenario, hemos creado todos los servicios en el mismo POD. Para escalar, tenemos que escalar todo. Una buena forma de romper un monolito sería instanciar diferentes pods utilizando diferentes puertos expuestos en diferentes servidores WebLogic. Por lo tanto, los pods se pueden escalar de forma independiente.
Por ejemplo, un POD de servicios web muy utilizado en integraciones podría requerir y utilizar 10 núcleos y escalar siempre que sea necesario, mientras que la aplicación (desplegada en el otro pod) solo necesitará 2 núcleos y tendrá un comportamiento más "constante".
Este es el archivo integrated145.yaml:
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: flexcubeclaim
spec:
accessModes:
- ReadWriteOnce
storageClassName: oci-bv
resources:
requests:
storage: 500Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: integrated145-deployment
spec:
replicas: 1
selector:
matchLabels:
app: integrated145
template:
metadata:
labels:
app: integrated145
spec:
hostname: integrated145
hostAliases:
- ip: "127.0.0.1"
hostnames:
- "fcubs.oracle.com"
containers:
- name: integrated145
image: gru.ocir.io/idvkxij5qkne/oraclefmw-infra:12.2.1.4.0_jdk8u281_pt34080315_apr22
command: [ "/bin/sh", "-c"]
args:
[ "sleep 180; su - gsh ; cd /; yum -y install wget; wget https://objectstorage.us-ashburn-1.oraclecloud.com/p/dX80UuetlAvWOEbvQNMBv47H3ZPR-zZHJJmTsu_GQ66icfgFaPSSu_97j8q3Fyrp/n/idcci5ks1puo/b/flexcubeBucketNewVersion/o/initializeConfig.sh; yum -y install unzip; sh initializeConfig.sh jdbc:oracle:thin:@x.x.x.x:1521/prodpdb.sub0xxxxxxxxx0.arspvcn.oraclevcn.com {AES256}AgWyiXhc7aM112gNRUwBIWf5QpTpWMlI537LrIfPWjCcmwNCsynBxxg99; while true; do sleep 30; done;" ]
ports:
- name: port7001
containerPort: 7001
- name: port7002
containerPort: 7002
- name: port7003
containerPort: 7003
- name: port7004
containerPort: 7004
- name: port7005
containerPort: 7005
- name: port7006
containerPort: 7006
- name: port7007
containerPort: 7007
- name: port7008
containerPort: 7008
- name: port7009
containerPort: 7009
- name: port7010
containerPort: 7010
- name: port7011
containerPort: 7011
- name: port7012
containerPort: 7012
- name: port7013
containerPort: 7013
- name: port7014
containerPort: 7014
- name: port7015
containerPort: 7015
- name: port7016
containerPort: 7016
- name: port7017
containerPort: 7017
- name: port7018
containerPort: 7018
- name: port7019
containerPort: 7019
- name: port7020
containerPort: 7020
- name: port5556
containerPort: 5556
# livenessProbe:
# httpGet:
# path: /console
# port: 7001
# initialDelaySeconds: 3000
# timeoutSeconds: 30
# periodSeconds: 300
# failureThreshold: 3
volumeMounts:
- name: data
mountPath: /scratch/gsh/kernel145
readOnly: false
resources:
requests:
cpu: "5"
memory: "36Gi"
#ephemeral-storage: "500Gi"
limits:
cpu: "8"
memory: "64Gi"
#ephemeral-storage: "500Gi"
# restartPolicy: Always
volumes:
- name: data
persistentVolumeClaim:
claimName: flexcubeclaim
imagePullSecrets:
- name: ocirsecret
---
apiVersion: v1
kind: Service
metadata:
name: integrated145-service
labels:
app: integrated145
# annotations:
# service.beta.kubernetes.io/oci-load-balancer-internal: "true"
# service.beta.kubernetes.io/oci-load-balancer-shape: "100Mbps"
# service.beta.kubernetes.io/oci-load-balancer-subnet1: "ocid1.subnet.oc1.sa-saopaulo-1.aaaaaaa.........................zjyrza"
spec:
selector:
app: integrated145
ports:
- port: 7004
targetPort: 7004
type: LoadBalancer
---
apiVersion: v1
kind: Service
metadata:
name: integrated145-service-weblogic
labels:
app: integrated145
# annotations:
# service.beta.kubernetes.io/oci-load-balancer-internal: "true"
# service.beta.kubernetes.io/oci-load-balancer-shape: "100Mbps"
# service.beta.kubernetes.io/oci-load-balancer-subnet1: "ocid1.subnet.oc1.sa-saopaulo-1.aaaaaaa.........................zjyrza"
spec:
selector:
app: integrated145
ports:
- port: 7001
targetPort: 7001
type: LoadBalancer
---
apiVersion: v1
kind: Service
metadata:
name: or Jenkins
labels:
app: integrated145
# annotations:
# service.beta.kubernetes.io/oci-load-balancer-internal: "true"
# service.beta.kubernetes.io/oci-load-balancer-shape: "100Mbps"
# service.beta.kubernetes.io/oci-load-balancer-subnet1: "ocid1.subnet.oc1.sa-saopaulo-1.aaaaaaa.........................zjyrza"
spec:
selector:
app: integrated145
ports:
- port: 7005
targetPort: 7005
type: LoadBalancer
---
apiVersion: v1
kind: Service
metadata:
name: integrated145-webservices2
labels:
app: integrated145
# annotations:
# service.beta.kubernetes.io/oci-load-balancer-internal: "true"
# service.beta.kubernetes.io/oci-load-balancer-shape: "100Mbps"
# service.beta.kubernetes.io/oci-load-balancer-subnet1: "ocid1.subnet.oc1.sa-saopaulo-1.aaaaaaa.........................zjyrza"
spec:
selector:
app: integrated145
ports:
- port: 7009
targetPort: 7009
type: LoadBalancer
Nota: Resiliencia: el despliegue de FLEXCUBE es resiliente; por lo tanto, si WebLogic o FLEXCUBE cae, el cluster de Kubernetes se cargará y se volverá a ejecutar. El responsable de esto es el liveprobe dentro del archivo integrated145.yaml. Elimine el comentario de las siguientes líneas si desea activar una protección en el contenedor.
# livenessProbe: # httpGet: # path: /console # port: 7001 # initialDelaySeconds: 3000 # timeoutSeconds: 30 # periodSeconds: 300 # failureThreshold: 3 . . . # restartPolicy: Always
Entendamos algunos archivos de script
Algunos archivos son necesarios para:
- Despliegue de la estructura FLEXCUBE dentro de la imagen de Fusion
- Configuración de Orígenes de Datos JDBC para Acceder a la Base de Datos FLEXCUBE
- Configuración de otros parámetros necesarios para que FLEXCUBE esté activo y en ejecución
FLEXCUBE-Package.zip
Este paquete es un archivo zip. Contiene todos los scripts necesarios para configurar y ejecutar la instancia de FLEXCUBE. El contenido de este paquete está en la carpeta scripts.zip. Este paquete contiene:
-
initializeConfig.sh: archivo principal que ejecuta el resto de secuencias de comandos para configurar y ejecutar FLEXCUBE
-
domainsDetails.properties: archivo base que cambiará la secuencia de comandos
initializeConfig.sh -
config.xml: archivo base que cambiará la secuencia de comandos
initializeConfig.sh -
flexcube.sh: secuencia de comandos para descargar la estructura FLEXCUBE v14.5 dentro del POD
-
JDBCReplace.sh: script para sustituir todos los orígenes de datos JDBC por el punto final de la base de datos FLEXCUBE (IP/Puerto), nombre de usuario y contraseña de la base de datos de Flexcube (formato AES256)
-
JDBCList: archivo que contiene todos los archivos XML relacionados con los orígenes de datos de la aplicación. Lo utilizará JDBCReplace.sh
-
ExecuteWebLogic.sh: script para ejecutar el servidor de dominios WebLogic, el gestor de nodos e iniciar aplicaciones (con StartApps.sh y StartApps.py)
-
StartApps.sh: secuencia de comandos para ejecutar la secuencia de comandos WLST
StartApps.py -
StartApps.py: secuencia de comandos que ejecuta las aplicaciones FLEXCUBE
Nota: La carpeta extra-scripts.zip contiene algunos scripts más que serán útiles para tareas adicionales. No es una parte del núcleo de este tutorial.
Preparar el archivo YAML
En este paso, debe configurar el archivo integrated145.yaml. Este archivo YAML es responsable de desplegar la aplicación, el acceso a la aplicación a través de un equilibrador de carga y crear un almacenamiento para la persistencia. La configuración es básicamente para colocar la información de la base de datos en el archivo YAML.
-
Busque esta línea en el archivo integrated145.yaml:

-
Desplácese y busque la siguiente línea:
sh initializeConfig.sh jdbc:oracle:thin:@x.x.x.x:1521/prodpdb.sub0xxxxxxxxx0.arspvcn.oraclevcn.com -
Cambie x.x.x.x:1521/prodpdb.sub0xxxxxxxxx0.arspvcn.oraclevcn.com con el punto final DBaaS.
-
Desplácese y busque la siguiente línea:
{AES256}AgWyiXhc7aM112gNRUwBIWf5QpTpWMlI537LrIfPWjCcmwNCsynBxxg99 -
Cambie el valor {AES256} con la contraseña generada en el paso anterior.
Ejecute el archivo integrated145.yaml
-
Después de configurar todo, ejecute el archivo YAML:
kubectl apply -f integrated145.yaml -
El proceso de creación de la estructura FLEXCUBE, configuración y activación del servidor y la aplicación UP podría tardar aproximadamente 15 minutos. Después de esto, ejecute el siguiente comando para ver el puerto de servicios y equilibradores de carga:
kubectl get svcPuede ver las IP públicas de los equilibradores de carga en el momento de la creación. Espere hasta que todas las IP públicas estén visibles.
NAME TYPE IP DE CLUSTER ID EXTERNO PUERTOS AGE integrated145-service LoadBalancer 10.x.x.x 210.x.x.x 7004:30868/TCP 200d integrated145-service-weblogic LoadBalancer 10.x.x.x 210.x.x.x 7001:32071/TCP 200d integrated145-webservices LoadBalancer 10.x.x.x 210.x.x.x 7005:30415/TCP 200d integrated145-webservices2 LoadBalancer 10.x.x.x 210.x.x.x 7009:30759/TCP 200d Nota: En el archivo
integrated145.yaml, puede ver en la sección Servicio, se comentan las anotaciones. Esta anotación crea el equilibrador de carga en modo privado y la aplicación será más segura, pero debe crear un bastión para acceder a estas aplicaciones.# annotations: # service.beta.kubernetes.io/oci-load-balancer-internal: "true" # service.beta.kubernetes.io/oci-load-balancer-shape: "100Mbps" # service.beta.kubernetes.io/oci-load-balancer-subnet1: "ocid1.subnet.oc1.sa-saopaulo-1.aaaaaa.............jyrza"-
Sustituya subnet1 por su OCID de subred privada. Si decide utilizar FLEXCUBE en una subred privada, cree una máquina virtual informática como bastión.
-
Puede establecer un túnel SSH para acceder a sus puntos finales de la siguiente manera:
ssh -i PrivateKey.pem -L 7001:<integrated145-service-weblogic Private IP>:7001 opc@<Bastion Public IP>ssh -i PrivateKey.pem -L 7004:<integrated145-service Private IP>:7004 opc@<Bastion Public IP>ssh -i PrivateKey.pem -L 7005:<integrated145-webservices Private IP>:7004 opc@<Bastion Public IP>Y acceda con su navegador local utilizando las siguientes URL:
-
http://localhost:7001/console
-
https://localhost:7004/FCJNeoWeb
-
¿http://localhost:7005/FCUBSAccService/FCUBSAccService? WSDL
-
-
-
Una vez que las IP estén visibles, puede probar la aplicación. Abra el explorador y escriba:
-
Para el servidor de administración WebLogic:
http://<integrated145-service-weblogic IP>:7001/console -
Para el servicio REST:
https://<integrated145-service IP>:7004/FCJNeoWeb -
Para el servicio SOAP:
http://<integrated145-webservices>:7005/FCUBSAccService/FCUBSAccService?WSDLhttp://<integrated145-webservices>:7009
-
Aplicación FLEXCUBE en el puerto 7004

Servicio SOAP en el puerto 7005

Tarea 4: Automatización del despliegue de FLEXCUBE
Vamos a realizar esta tarea con Visual Builder Studio. Esta herramienta forma parte de OCI y es similar a Jenkins. Por lo tanto, si utiliza Jenkins, puede configurar la integración y el despliegue continuos con ajustes menores.
-
Cree su cita para el proyecto FLEXCUBE Git. Debe configurar el proyecto FLEXCUBE Git en la configuración de Visual Builder Studio (o Jenkins).

-
Cree dos variables en el pipeline.
-
JDBCString: contiene la cadena JDBC. Ejemplo:jdbc:oracle:thin:@x.x.x.x:1521/prodpdb.sub0xxxxxxxxx0.arspvcn.oraclevcn.com -
JDBCPassword: contiene un formato de contraseña AES256. Ejemplo:{AES256}AgWyiXhc7aM112gNRUwBIWf5QpTpWMlI537LrIfPWjCcmwNCsynBxxg99
En Visual Builder, puede crear las variables siguientes:

-
-
Cree los dos pasos siguientes en el pipeline: Paso de CLI de OCI: necesario para crear la conexión con el inquilino del cluster de OKE y Paso de shell de UNIX: necesario para ejecutar el proceso de despliegue.
-
En Configuración de trabajo en Visual Builder Studio, haga clic en Agregar nuevo y seleccione OCICli. Debe colocar los parámetros de OCI para autorizar que Visual Builder Studio funcione con su arrendamiento y cluster de OKE.
- OCID de usuario
- Huella: configure el acceso a la CLI de OCI y cargue una clave pública
- OCID de arrendamiento
- Clave privada: el par de claves privadas de la clave pública cargada en la huella digital
- Región: región del cluster de OKE
- Frase de contraseña: si tiene una contraseña en su clave privada
-
Haga clic en Agregar nuevo y seleccione Shell UNIX. Agregue este script en el cuadro:
# Prepare for kubectl from OCI CLI mkdir -p $HOME/.kube oci ce cluster create-kubeconfig --cluster-id <OCID of your OKE Cluster> --file $HOME/.kube/config --region us-ashburn-1 --token-version 2.0.0 export KUBECONFIG=$HOME/.kube/config # Set Variables export JDBCString=$JDBCString export JDBCPassword=$JDBCPassword # setup the JDBC variables in integrated145-devops.yaml sed -i "s~--JDBCString--~$JDBCString~g" ./files/scripts/integrated145-devops.yaml sed -i "s~--JDBCPassword--~$JDBCPassword~g" ./files/scripts/integrated145-devops.yaml # Deploy integrated145 kubectl config view kubectl replace -f ./files/scripts/integrated145-devops.yaml --forceNota: Obtenga el OCID de OKE en su inquilino y agregue la línea "oci ce cluster...". El archivo integrated145-devops.yaml es similar al archivo integrated145.yaml, pero está preparado para CI/CD.
En Visual Builder Studio, se muestran los siguientes detalles:

-
-
Inicie el pipeline y espere a que se realice el despliegue. Puede mostrar los servicios disponibles con el siguiente comando:
kubectl get svcNAME TYPE IP DE CLUSTER ID EXTERNO PUERTOS AGE integrated145-service LoadBalancer 10.x.x.x 210.x.x.x 7004:30868/TCP 200d integrated145-service-weblogic LoadBalancer 10.x.x.x 210.x.x.x 7001:32071/TCP 200d integrated145-webservices LoadBalancer 10.x.x.x 210.x.x.x 7005:30415/TCP 200d integrated145-webservices2 LoadBalancer 10.x.x.x 210.x.x.x 7009:30759/TCP 200d
Tarea 5: Actualizar tablas de base de datos para configurar la instancia de FLEXCUBE
-
Una vez que FLEXCUBE se ha activado en el cluster de Kubernetes y necesita integrarse con otras aplicaciones FSGBU, debe realizar algunos UPDATE en la base de datos. Debe cambiar las siguientes tablas para que apunten a los puntos finales correctos de la instancia de FLEXCUBE:
TableName Cambiar PMTM_EXT_NOTIF_SYSTEM REST_URL CSTM_PROP_MASTER SERVICE_URL IFTM_EXT_PAYSYS_DETAIL WSDL_URLS para OBLM IFTM_EXTERNAL_SERVICE_DETAILS REST_IP PMTM_EXTERNAL_ACC_SYSTEM RS_URL para OBVAM PMTM_ECA_SYSTEM RS_URL para OBVAM STTM_HOST_DSN Contiene detalles del esquema que se utilizan solo para REPORTS y se pueden ignorar -
Si cambia el nombre de host de la configuración, también debe actualizar el nombre de host del contenedor para las siguientes tablas:
TableName CSTM_EXTERNAL_SERVER_DETAILS PMTM_EXCHANGE_RATE_SYSTEM PMTM_FILE_ENV_SYSTEM PMTM_QUEUE_PROFILE PMTM_SANCTION_SYSTEM PROPIEDADES IFTM_TF_EXT_SERVICE_DETAILS GETH_BLOCK_EXT_SYS_DETAIL GETM_BLOCK_EXT_SYS_DETAIL CSTB_NGUI_REGISTRY IFTM_TF_EXT_PAYSYS_DETAIL IFTM_TR_EXT_SERVICE_DETAILS OLTM_INTEGRATION_DETAILS IFTM_TR_EXT_PAYSYS_DETAIL IFTM_INTEGRATION_DETAILS IFTM_TF_EXT_SERVICE_DETAILS
Tarea 6: Supresión del despliegue de FLEXCUBE
-
Para suprimir el despliegue, ejecute este comando en el terminal:
kubectl delete -f integrated145.yaml
Enlaces relacionados
Confirmaciones
- Autores: Cristiano Hoshikawa (ingeniero de la solución LAD A-Team), Eduardo Farah (asesor principal maestro de ventas y arquitecto bancario)
Más recursos de aprendizaje
Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de aprendizaje gratuito en el canal YouTube de Oracle Learning. Además, visite education.oracle.com/learning-explorer para convertirse en un explorador de Oracle Learning.
Para obtener documentación sobre los productos, visite Oracle Help Center.
Deploy Oracle FLEXCUBE on OKE
F77599-01
February 2023
Copyright © 2023, Oracle and/or its affiliates.