IBM Maximo: Deploying Kafka after Maximo Manage

From Wiki

Kafka is an essential component of the IBM Maximo Application Suite (MAS), providing distributed messaging for applications such as IoT, Monitor, and Predict. The MAS CLI supports multiple Kafka providers, allowing flexibility in infrastructure selection.


The MAS CLI supports the following providers via the --kafka-provider parameter:

Provider Value Description
Strimzi strimzi Open-source Kafka operator for Kubernetes
Red Hat AMQ Streams redhat Red Hat version of Strimzi
IBM Event Streams ibm Managed Kafka on IBM Cloud
AWS MSK aws ExaAmazon Managed Streaming for Apache Kafkample

Procedure

1) Run MAS CLI (Linux/Mac)

podman run -it --rm -v $(pwd):/mnt/home:Z --pull always quay.io/ibmmas/cli:latest

for Mac add --arch arm64

2) Login no OpenShift

oc login --token=<your-token> --server=<your-server>

3) Export IBM Entitlement Key

export IBM_ENTITLEMENT_KEY="your-entitlement-key"

4) Check your storage classes

oc get storageclass

4) Create file /mnt/home/kafka-playbook-install.yml

---
- hosts: localhost
  any_errors_fatal: true
  vars:
    kafka_action: install
    kafka_storage_class: ocs-storagecluster-cephfs
    kafka_storage_size: 100Gi
    zookeeper_storage_class: ocs-storagecluster-cephfs
    zookeeper_storage_size: 10Gi

    # Generate a KafkaCfg template
    mas_instance_id: lab01
    mas_config_dir: /mnt/home/masconfigs
  roles:
    - ibm.mas_devops.kafka

Change your variables for your environment: kafka_storage_class, mas_instance_id, mas_config_dir.

5) Run ansible-playbook

ansible-playbook /mnt/home/kafka-playbook-install.yml

The ansible script will generate a file like: kafka-maskafka-strimzi-kafka.yml on /mnt/home/masconfigs. This file has Secrets and KafkaCfg, with certificates. To be used to configure MAS


Ver também