Mostrando las entradas con la etiqueta aks. Mostrar todas las entradas
Mostrando las entradas con la etiqueta aks. Mostrar todas las entradas

viernes, 20 de mayo de 2022

Deployar aplicación BWCE con Maven en Azure Kubernetes - Container Registry desde Jenkins

Cómo deployar aplicación BWCE con Maven en Azure Kubernetes - Container Registry desde Jenkins

Hola

Diferente al post anterior, en esta ocasión voy a describir cómo desplegar un servicio REST de TIBCO BusinessWorks Container Edition desde Jenkins usando el plugin de Maven. El deployment será en Azure Kubernetes con un Container registry también en Microsoft Azure.

Prerrequisitos


-Código fuente de la aplicación en un repositorio de git  
-Maven 3.8.5
-Jenkins instalado y configurado con Maven plugin y ruta de instalación de Maven
-Microsoft Azure CLI conectado a Microsoft Azure
-Docker (En este ejercicio no se requiere ya que no estoy creando ninguna imagen). Se da por entendido que la imagen ya existe en el Azure Container Registry

Procedimiento


1.- Agregar plugin de Maven: Maven Integration plugin

2.- Ir a Administrar Jenkins > Configuración de herramientas
  • En la sección Maven, clic en el botón Maven Installations
  • Ingresar un Nombre 
  • Ingresar la ruta de instalación de Maven (ej. /usr/local/Cellar/maven/3.8.5/libexec/)
3.- Desde Jenkins crear un proyecto de tipo Maven

En la configuración del proyecto, ingresar los siguiente información:

General
Github project: Liga al repositorio git donde se encuentra el código de la aplicación (ej. https://github.com/compensar/streaming/)

Source Code Management
Git > Repositories > Repository URL: Liga al repositorio git donde se encuentra el código de la aplicación (ej. https://github.com/compensar/streaming/)
Branches to build: Nombre del branch (ej. */master)

Build
Root POM: Path al archivo POM principal (ej. OrderMgmt.application.parent/pom.xml)
Goals and options: Maven goals a ejecutar (initialize com.tibco.plugins:bw6-maven-plugin:bwfabric8json fabric8:resource fabric8:apply -e -X)

4.- Guardar el proyecto

5.- Con esas configuraciones clic en Build Now para ejecutar el proyecto.


Les dejo un video de cómo hacerlo.




Espero les sirva.



miércoles, 18 de mayo de 2022

Desplegar aplicación BWCE con Maven en Azure Kubernetes - Container Registry desde TIBCO Business Studio

Cómo desplegar aplicación BWCE con Maven en Azure Kubernetes - Container Registry desde TIBCO Business Studio

Hola

En este post voy a describir cómo desplegar una servicio REST de TIBCO BusinessWorks Container Edition desde TIBCO Business Studio usando el plugin de Maven en Azure Kubernetes con un Container registry también en Microsoft Azure.

Prerrequisitos

-TIBCO BusinessWorks Container Edition 2.7.0 con Maven plugin.
-Microsoft Azure CLI conectado a Microsoft Azure
-Maven 3.8.5 (Si se quiere ejecutar fuera de TIBCO Business Studio)
-Docker (En este ejercicio no se requiere ya que no estoy creando ninguna imagen). Se da por entendido que la imagen ya existe en el Azure Container Registry

Procedimiento

Es necesario generar el archivo POM del proyecto para poder realizar un despliegue con Maven. 

1.- Clic derecho sobre la aplicación y seleccionar Generate POM for Application

Ingresar la información referente al proyecto.

  • Deploy options: Docker
  • Image name: Imagen de Docker (ej. miazureregistry.azurecr.io/imagename:tag)
  • BWCE image: Imagen base de Docker (ej. miazureregistry.azurecr.io/imagename:tag)
  • Run on Docker host. Ingresar puertos usados por la aplicación.
  • Select platform: Kubernetes/Openshift (Para un servicio de AKS)
  • Deployment name
  • Service name
  • Service Type
  • Container Port
Los siguientes archivos de propiedades son generados sobre la carpeta de la aplicación:
  • docker-dev.properties
  • docker-host-env-dev.properties
  • docker-host-env-prod.properties
  • docker-prod.properties
  • k8s-dev.properties
  • k8s-prod.properties
2.- Desde TIBCO Business Studio seleccionar Run > Run configurations

3.- Crear un Maven build configuration con los siguientes goals:

clean initialize com.tibco.plugins:bw6-maven-plugin:bwfabric8json fabric8:resource fabric8:apply -Ddocker.property.file=docker-dev.properties -Dk8s.property.file=k8s-dev.properties

Los goals arriba especificados van a realizar las siguientes tareas:

Clean: Borra los archivos, folders generados de una construcción anterior de recursos.
Initialize: Carga los valores especificados en los archivos de configuración (docker-dev.properties,
k8s-dev.properties)
com.tibco.plugins:bw6-maven-plugin:bwfabric8json:  Genera los templates .yml para el deployment
fabric8:resource: Crea los archivos yml para el deployment (target/classes/META-INF/fabric8/kubernetes/kubernetes.yml) 
fabric8:apply: Ejecuta el deployment en Kubernetes

Las properties se especifican en el formato -Dpropiedad:

-Ddocker.property.file=docker-dev.properties
-Dk8s.property.file=k8s-dev.properties
-e -X son parámetros para ver logs con detalles y errores

4.- Clic en Ejecutar

5.- Opcionalmente se puede ejecutar el despliegue fuera de TIBCO Business Studio teniendo instalado Maven.

Para esto, ir a la ruta donde se encuentra el archivo POM principal sobre la carpeta de aplicación.parent y ejecutar la misma linea de goals con el prefijo de Maven (mvn)

mvn clean initialize com.tibco.plugins:bw6-maven-plugin:bwfabric8json fabric8:resource fabric8:apply -Ddocker.property.file=docker-dev.properties -Dk8s.property.file=k8s-dev.properties


6.- Verificar que el despliegue haya sido exitoso en Azure Kubernetes

Les dejo un video de cómo realizar este procedimiento.



Espero les sirva