SAP Integration Suite comes with
SAP Event Mesh
, que es un intermediario para el manejo de notificaciones de eventos que permite a las aplicaciones activar y reaccionar a eventos comerciales asíncronos.
Sin embargo, puede ser que necesites utilizar diferentes intermediarios de eventos en tu entorno.
Microsoft Cloud Azure contiene el servicio Event Hubs, que es un servicio de ingestión simple, confiable y escalable para transmitir millones de eventos por segundo desde cualquier fuente a sus canalizaciones que reaccionan a eventos comerciales.
En esta publicación de blog veremos cómo enviar eventos desde Cloud Integration a Event Hubs y cómo consumirlos. Event Hubs permiten esto mediante los protocolos AMQP, Apache Kafka y HTTP. Cada uno de estos necesita diferentes configuraciones e incluso credenciales diferentes en Event Hubs. Más información sobre los protocolos admitidos se puede encontrar en
Intercambio de eventos entre consumidores y productores
.
Puedes obtener una cuenta gratuita de Azure en la siguiente URL
https://azure.microsoft.com/en-us/free/
, que es suficiente para probar los siguientes escenarios.
Enviando eventos a través del Adaptador AMQP
Para enviar eventos a Azure Event Hubs con el adaptador AMQP de Cloud Integration, necesitas un espacio de nombres y un centro de eventos. Como espacio de nombres puedes usar cualquier nivel de precios, incluso básico (más información sobre los niveles de precios de Azure Event Hubs en
Precios de Event Hubs
).
En el siguiente sitio
Crea un centro de eventos usando el portal de Azure
, encontrarás cómo crear un Grupo de Recursos, un Espacio de Nombres y un Centro de Eventos.
Espacio de Nombres del Centro de Eventos
Para obtener las credenciales, debes ir al espacio de nombres a las políticas de acceso compartido. Allí puedes usar la existente o crear una adicional. En la política, copia la cadena de conexión primaria o la clave secundaria.
Políticas de Acceso Compartido
Tomando, por ejemplo, la siguiente cadena de conexión, obtienes el usuario (SharedAccessKeyName) y la contraseña (SharedAccessKey) de la siguiente manera:
-
Endpoint=sb://nsehamqp.servicebus.windows.net/;SharedAccessKeyName=
RootManageSharedAccessKey
;SharedAccessKey=
**********************************************
-
Usuario:
RootManageSharedAccessKey
-
Contraseña:
**********************************************
Con esta información, puedes crear un artefacto de Credenciales de Usuario en Material de Seguridad en Cloud Integration.
Credenciales de Usuario
A continuación, viene el flujo de integración para enviar los eventos desde Cloud Integration a Azure Event Hubs. Por simplicidad, te muestro un flujo de integración simple activado por un temporizador y donde se codifica un payload de ejemplo como un json en un modificador de contenido. También se establece un encabezado Content-Type = application/json en el modificador de contenido.
En el adaptador AMQP debes establecer como Host el nombre de host que ves en la descripción general del espacio de nombres (también se encuentra en la cadena de conexión). El puerto debe ser 5671, la Conexión con TLS --> true y la Autenticación --> SASL. Como Nombre de Credencial, usa el creado anteriormente.
Flujo de Integración
Como Tipo de Destino selecciona Cola y da el nombre del centro de eventos como Nombre de Destino (también encontrado en la descripción general del espacio de nombres).
Pedro Pascal
Se unió el 07/03/2018