IBM Operational Decision Management (ODM) es una familia de productos que utilizan TI y usuarios comerciales para crear y administrar la lógica de decisiones comerciales que se utiliza a lo largo de sus organizaciones. Permite a las empresas responder a los datos en tiempo real con sistemas inteligentes y decisiones automatizadas.
La gestión de decisiones operativas consta de dos componentes clave:
Este proyecto implementa tecnologías de Kubernetes y Docker, para más detalle de la implementación seguir el link.
PRERREQUISITOS
Se requiere instalar y configurar las siguientes aplicaciones:
La instalación Comprende los siguientes componentes:
Para complementar la información pueden revisar ODM sobre AWS EKS
Abra la consola de IAM, Elija Roles y a continuación, Crear rol y luego seleccione EKS en la lista de servicios
Luego Seleccione para su caso de uso EKS - Cluster y continuación Siguiente:Permisos.
Seleccione Siguiente:etiquetas.
De manera opcional, añada metadatos al rol asociando etiquetas como pares de clave-valor y seleccione Siguiente:Revisar.
En nombre de rol (eks-pruebaODM-cluster), debe ser un nombre exclusivo para su rol y elija Crear rol.
Al crear un clúster de Amazon EKS, se deben especificar las subredes de la VPC que el clúster va a usar. Amazon EKS requiere subredes en al menos dos Zona de disponibilidad y recomienda una VPC con subredes públicas y privadas para que Kubernetes pueda crear balanceadores de carga públicos en las subredes públicas que equilibren la carga de tráfico con los pods que se ejecutan en los nodos de las subredes privadas.
Abra la consola AWS CloudFormation.
Asegure una región compatible con Amazon EKS y elija Crear stack, con nuevos recursos [estándar], y creamos el stack a partir de un template donde seleccionamos la ubicación del archivo con el template (eksODM-prueba-VPC.yaml), debemos asegurar que el template no cree NATGateway, ni Elastic IP y seleccionamos Siguiente.
Seleccionamos crear stack y esperamos que se cree el stack y la VPC.
Abra la consola de Amazon EKS, elija Crear cluster y en configurar clúster rellene los siguientes campos:
Para los campos de cifrado de secretos, se deben tener las siguientes consideraciones y posterior al diligenciamiento, seleccionamos Siguiente.
En la página Especificar red, seleccione valores para los siguientes campos:
Configurar el intervalo de direcciones IP del servicio Kubernetes (Opcional), especifique un valor en Service IPv4 range (Intervalo de IPv4 del servicio) si desea especificar el bloque de CIDR desde el que Kubernetes asigna direcciones IP del servicio.
En Acceso de punto de enlace del clúster, elija la opción público/privado y seleccione Siguiente:
Public and private (Público y/o privado): Permite el acceso público y privado al punto de enlace del servidor de la API Kubernetes de su clúster, De forma predeterminada, se permite el acceso desde cualquier dirección IP de origen.
En la página Configure logging (Configurar registro) puede elegir opcionalmente los tipos de registro que desea habilitar. De forma predeterminada, los tipos de registro están Disabled (Deshabilitados). Seleccione Next (Siguiente).
En la página revisar y crear, revise la información que ha introducido o seleccionado en las páginas anteriores y seleccione Crear.
El campo Status (Estado) muestra CREATING (CREANDO) hasta que termina el proceso de aprovisionamiento del clúster. Cuando se complete el aprovisionamiento del clúster (normalmente entre 10 y 15 minutos), observe los valores de API server endpoint (Punto de enlace del servidor de API) y Certificate authority (Autoridad de certificado). Se usarán en la configuración de kubectl.
Existen varios métodos para crear o actualizar su kubeconfig. en nuestro caso utilizaremos rápidamente un kubeconfig con el update-kubeconfig comando de la AWS CLI.
Ejecutar el comando, para la creación del kubeconfig
$aws eks --region us-east-1 update-kubeconfig --name cluster_EKS_ODM_prueba
Comprobar que el entorno esté configurado correctamente, obtenga la información del clúster ejecutando el siguiente comando:
$kubectl get svc
Para crear el compute, se puede utilizar Fargate – Linux o Managed nodes – Linux, para este caso utilizaremos la segunda opción. Para profundizar más en las posible opciones, podemos validar el link
Abra la consola de IAM, elija Rol y Crear rol, elija EC2 en la lista de Casos de uso comunes, y elija Siguiente:Permisos.
En el cuadro Políticas de filtro, escriba AmazonEKSWorkerNodePolicy y active la casilla de verificación situada a la izquierda de AmazonEKSWorkerNodePolicy, repita los pasos para la politica AmazonEKS_CNI_Policy y AmazonEC2ContainerRegistryReadOnly, poterior a esto seleccione Siguiente:Etiquetas.
De manera opcional, añada metadatos al rol asociando etiquetas como pares de clave-valor y seleccione Siguiente:Review.
Para crear su grupo de nodos administrados mediante la consola de administración de AWS, se debe asegurar que el estado del clúster creado previamente, se encuentre en estado ACTIVO, de lo contrario no puede crear un grupo de nodos administrados.
Abra la consola AWS EKS, elija el nombre del clúster en el que desea crear el grupo de nodos administrados y en la página del clúster, seleccione la pestaña Calcular y, a continuación, elija Agregar grupo de nodos.
En la página Configurar grupo de nodos rellene los parámetros en consecuencia y, a continuación, elija Siguiente.
En la página configurar compute y configuración de scaling, rellene los parámetros según corresponda y elija Next.
Para la configuración del compute del grupo de nodos, se debe tener en cuenta:
Parar la configuración de escalado del grupo de nodos, debe considerar:
En la página Especificar redes, diligencie los parámetros teniendo en cuenta cada parámetros y, a continuación, elija Next (Siguiente).
En la página Revisar y crear revise la configuración del grupo de nodos administrados y elija Crear.
Observe el estado de sus nodos y espere a que alcancen el Ready estado.
Para validar el estado de los nodos, ejecutar el comando.
$ kubectl get nodes --watch
Amazon ECR, puede usar los registros de para alojar sus imágenes de contenedor en una arquitectura escalable y de alta disponibilidad, lo que le permite implementar contenedores para sus aplicaciones con fiabilidad.
$ aws ecr get-login-password --region us-east-1 | docker login --username AWS --password-stdin <AWS-AccountId>.dkr.ecr.us-east-1.amazonaws.com
Puede administrarrepositorios ECR que consten de imágenes de Docker, para lo cual se debe utilizar el comando en realcion y el parámetro (--repository-name), donde se debe enviar por cada imagen a utilizar (odm-decisioncenter, odm-decisionrunner, odm-decisionserverruntime, odm-decisionserverconsole y dbserver)
$ aws ecr create-repository --repository-name <Ingresar nombre de cada imagen> --image-scanning-configuration scanOnPush=true --region us-east-1
Descargue uno o más paquetes (archivos .tgz) de IBM Passport Advantage, para ver la lista completa de imágenes de instalación de eAssembly.
Compruebe que puede ejecutar un comando de Docker, de lo contrario asegure la descarga e instalación.
$ docker ps
Utilizar el comando para cargar las imágenes, con el parámetro (--input), donde se debe ingresar el nombre de cada imagen.
$ docker load --input [Ingrese el nombre de cada una de las imágenes descargadas y descomprimida en formato tar.gz]
Se debe etiquetar las imágenes en el registro ECR creado previamente, utilizando el comando en relación y modificando el parámetro (--repository-name), donde se debe enviar por cada imagen a utilizar (odm-decisioncenter, odm-decisionrunner, odm-decisionserverruntime, odm-decisionserverconsole y dbserver)
.
$ docker tag odm-decisioncenter:8.10.3.0-amd64 <AWS-AccountId>.dkr.ecr.us-east-1.amazonaws.com/<Ingresar nombre del tag de cada imagen>:8.10.3.0-amd64
Utilizar el siguiente comando para generar un secreto de pull para las imágenes.
$ kubectl create secret docker-registry ecrodm --docker-server=<AWS-AccountId>.dkr.ecr.us-east-1.amazonaws.com --docker-username=AWS --docker-password=$(aws ecr get-login-password --region us-east-1)
Se debe cargar las imágenes en el registro ECR creado previamente, utilizando el comando en relación y teniendo en cuenta cada uno de los tag configurados en cada imagen.
$ docker push <AWS-AccountId>.dkr.ecr.eu-west-3.amazonaws.com/<Ingresar nombre del tag de cada imagen>:8.10.3.0-amd64
En una nueva lección estaremos realizando la Instalación y configuración ODM 8.10.3 - AWS EKS