IBM Maximo: Deploying Kafka after Maximo Manage
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) 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 you mas_instance_id and mas_config_dir.
5) Run ansible-playbook
ansible-playbook /mnt/home/kafka-playbook-install.yml