IBM MQ Click here for latest

Scale applications based on IBM MQ Queue

Availability: v2.0+ Maintainer: Community

Warning

You are currently viewing v2.3 of the documentation and it is not the latest. For the most recent documentation, kindly click here.

Trigger Specification

This specification describes the ibmmq trigger for IBM MQ Queue.

triggers: - type: ibmmq  metadata:  host: <ibm-host> # REQUIRED - IBM MQ Queue Manager Admin REST Endpoint  queueManager: <queue-manager> # REQUIRED - Your queue manager  queueName: <queue-name> # REQUIRED - Your queue name  tlsDisabled: <TLS enabled/disabled> # OPTIONAL - Set 'true' to disable TLS. Default: false  queueDepth: <queue-depth> # OPTIONAL - Queue depth target for HPA. Default: 5 messages  usernameFromEnv: <admin-user> # Optional: Provide admin username from env instead of as a secret  passwordFromEnv: <admin-password> # Optional: Provide admin password from env instead of as a secret 

Parameter list:

  • host - IBM MQ Queue Manager Admin REST Endpoint. Example URI endpoint structure on IBM cloud https://example.mq.appdomain.cloud/ibmmq/rest/v2/admin/action/qmgr/QM/mqsc.
  • queueManager - Name of the queue manager from which messages will be consumed.
  • queueName - Name of the Queue within the Queue Manager defined from which messages will be consumed.
  • tlsDisabled - Can be set to ’true’ to disable TLS. (Values: true, false , Default: false, Optional)
  • queueDepth - Queue depth Target for HPA. (Default: 5, Optional)
  • usernameFromEnv - Provide admin username from env instead of as a secret. (Optional)
  • passwordFromEnv - Provide admin password from env instead of as a secret. (Optional)

Authentication Parameters

TriggerAuthentication CRD is used to connect and authenticate to IBM MQ:

Password Authentication:

  • ADMIN_USER - The admin REST endpoint username for your MQ Queue Manager.
  • ADMIN_PASSWORD - The admin REST endpoint API key for your MQ Queue Manager.
  • usernameFromEnv - Provide admin username from env instead of as a secret. (Optional)
  • passwordFromEnv - Provide admin password from env instead of as a secret. (Optional)

Example

apiVersion: v1 kind: Secret metadata:  name: keda-ibmmq-secret data:  ADMIN_USER: <encoded-username> # REQUIRED - Admin Username  ADMIN_PASSWORD: <encoded-password> # REQUIRED - Admin Password --- apiVersion: keda.sh/v1alpha1 kind: ScaledObject metadata:  name: ibmmq-scaledobject  namespace: default  labels:  deploymentName: ibmmq-deployment spec:  scaleTargetRef:  name: ibmmq-deployment  pollingInterval: 5 # OPTIONAL - Default: 30 seconds  cooldownPeriod: 30 # OPTIONAL - Default: 300 seconds  maxReplicaCount: 18 # OPTIONAL - Default: 100  triggers:  - type: ibmmq  metadata:  host: <ibm-host> # REQUIRED - IBM MQ Queue Manager Admin REST Endpoint  queueManager: <queue-manager> # REQUIRED - Your queue manager  queueName: <queue-name> # REQUIRED - Your queue name  tlsDisabled: <TLS enabled/disabled> # OPTIONAL - Set 'true' to disable TLS. Default: false  queueDepth: <queue-depth> # OPTIONAL - Queue depth target for HPA. Default: 5 messages  usernameFromEnv: <admin-user> # Optional: Provide admin username from env instead of as a secret  passwordFromEnv: <admin-password> # Optional: Provide admin password from env instead of as a secret  authenticationRef:  name: keda-ibmmq-trigger-auth --- apiVersion: keda.sh/v1alpha1 kind: TriggerAuthentication metadata:  name: keda-ibmmq-trigger-auth  namespace: default spec:  secretTargetRef:  - parameter: username  name: keda-ibmmq-secret  key: ADMIN_USER  - parameter: password  name: keda-ibmmq-secret  key: ADMIN_PASSWORD