Deploying the Probe for Prometheus Integration

IBM® Netcool®/OMNIbus Probe for Prometheus creates the webhook endpoints to receive notification in the form of HTTP POST requests from Prometheus Alert Manager.

Note: The IBM Netcool Operations Insight® Event Integrations Operator must be deployed before deploying this integration. See Installing the IBM Netcool Operations Insight Event Integrations Operator.

To deploy a new instance of the probe, review the custom resource YAML template supplied with the operator package, update the parameters if required, and save the configurable parameters in a file, for example probes_v1beta1_prometheusprobe.yaml.

Then deploy the custom resource using the updated file:

kubectl apply -f probes_v1beta1_prometheusprobe.yaml --namespace <NAMESPACE>
Note: If you are installing using the CLI, you can get the custom resource Yaml file from the ibm-netcool-integrations/inventory/netcoolIntegrationsOperatorSetup/files/op-cli/deploy/crs directory in our CASE archive. If you are installing using the Operator Lifecycle Manager (OLM) Web console, the custom resource is provided in the YAML view.

The following table describes the configurable parameters for this probe and lists their default values.

Configurable parameters

Parameter name Description
spec.license.accept The license state of the image being deployed. Enter true to install and use the image. The default value is false.
spec.version

Probe application version. Accepted versions are 4.7.0, 4.8.0 or 4.9.0. The default value is 4.9.0.

spec.helmValues.image.useDefaultOperandImages

Use default operand images. If true, the operator will use default images for the operands ignoring the image settings in the custom resource YAML file. The operator will perform an upgrade with the latest images from the operator. If false, the operator will use the images specified in the custom resource YAML file to deploy the operand. This should be set to false if you are pulling from a private repository and no image mirroring is configured in the cluster.

The default is true.

spec.helmValues.image.repository

Probe image repository. Update this repository name to pull from a private image repository. The default value is cp.icr.io/cp/noi-int/netcool-probe-messagebus, and the image name must not be changed.

spec.helmValues.image.tag

The probe image tag. The default value is 25.0.0-amd64.

spec.helmValues.image.digest

The digest to identify the probe image. If unspecified, the image tag is used. The default value is sha256:7d524c2bebd30640bbbc2ed89367800b65b6cfdc2c53a1e5785577284af36956.

spec.helmValues.image.testRepository

Utility image repository. Update this repository name to pull from a private image repository. The default is cp.icr.io/cp/noi-int/netcool-integration-util, and the image name must not be changed.

spec.helmValues.image.testImageDigest

Digest to identify the probe image. If unspecified, the image tag is used. The default value is sha256:97beb12f8660cdc2392507e9e0d42c026b7ff41f3a5c811785621af8a3906e0a.

spec.helmValues.image.testImageTag

Utility image tag. The default is 3.21.6-amd64.

spec.helmValues.image.pullPolicy

The image pull policy. The default value is IfNotPresent.

spec.helmValues.global.image.secretName

The name of the secret containing the docker config to pull the image from a private repository. Leave this parameter blank if the probe image already exists in the local image repository or the Service Account has a been assigned with an Image Pull Secret. The default value is nil.

spec.helmValues.global.image.useTag

Configures pods to pull images using tags or digests. Set this property to false to use digest to identify the container images. Set this property to true to use tags instead of digests to identify the container images. Default value is false.

spec.helmValues.global.serviceAccountName

Name of the service account to be used by the pods. If the Cluster Administrator has already created a service account in the namespace, specify the name of the service account here. If left blank, the probe will automatically create a new service account in the namespace when it is deployed. This new service account will be removed from the namespace when the probe is removed. The default is nil.

spec.helmValues.global.enableNetworkPolicy

Enables NetworkPolicy to allow traffic from and to the pod.

The default is true.

spec.helmValues.netcool.connectionMode

The connection mode to use when connecting to the Netcool/OMNIbus ObjectServer. Refer to Securing probe and ObjectServer communications for more details. Note: Refer to the limitations section for more details on available connection modes for your environment. The default is default.

spec.helmValues.netcool.primaryServer The primary Netcool/OMNIbus server to connect to. This is usually set to NCOMS or AGG_P. The default value is nil.
spec.helmValues.netcool.primaryHost The host of the primary Netcool/OMNIbus server. Specify the ObjectServer hostname or IP address. The default value is nil
spec.helmValues.netcool.primaryPort The port of the primary Netcool/OMNIbus server. The default value is 4100.
spec.helmValues.netcool.backupServer

The backup Netcool/OMNIbus server to connect to. If the backupServer, backupHost and backupPort parameters are defined in addition to the primaryServer, primaryHost, and primaryPort parameters, the probe will be configured to connect to a virtual object server pair called `AGG_V`. If no backup ObjectServer is configured, only the primary server parameters will be used.

The default value is nil.

spec.helmValues.netcool.backupHost The host of the backup Netcool/OMNIbus server. Specify the ObjectServer hostname or IP address. The default value is nil
spec.helmValues.netcool.backupPort The port of the backup Netcool/OMNIbus server. The default value is nil.
spec.helmValues.netcool.secretName

This is a pre-created secret for AuthOnly, SSLOnly or SSLAndAuth connection mode. Certain fields are required depending on the connection modes. The default is nil.

spec.helmValues.probe.messageLevel

The probe log message level. The default value is warn.

spec.helmValues.probe.setUIDandGID

When set to true, the operator will specify the UID and GID values for the netcool user else the netcool user will not be assigned any UID or GID by the operator. Default value is true.

spec.helmValues.probe.sslServerCommonName

Set this parameter to a comma-separated list of acceptable SSL common names for when connecting to the ObjectServer using SSL. This should be set when the CommonName field of the received certificate does not match the name specified by the primaryServer property. When a backupServer is specified, the probe creates an ObjectServer pair with the name AGG_V. Set this parameter if the CommonName of the certificate does not match AGG_V. The default is nil.

spec.helmValues.probe.locale

Probe environment locale setting. Used as the LC_ALL environment variable. Default value is en_US.utf8

spec.helmValues.probe.enableTransportDebugLog

Set to true to enable common Transport Module debug logging for troubleshooting purposes. Default value is false.

spec.helmValues.prometheusProbe.replicaCount The number of deployment replicas of the Prometheus Probe. This will be ignored if prometheusProbe.autoscaling.enabled=true and will use the minReplicas as the replicaCount. The default value is 1.
spec.helmValues.prometheusProbe.ingress.enabled Set this parameter to true to enable Ingress. The default value is false.
spec.helmValues.prometheusProbe.ingress.host Sets the virtual host name for the same IP address. The value must have the Ingress controller default domain as a suffix. Default value is nil.
spec.helmValues.prometheusProbe.ingress.tlsEnabled

Enables the TLS Webhook for secure connectivity on the ingress route. Default value is false.

spec.helmValues.prometheusProbe.autoscaling.enabled Set this parameter to false to disable auto-scaling. The default value is true.
spec.helmValues.prometheusProbe.autoscaling.minReplicas The minimum number of probe replicas. The default value is 1.
spec.helmValues.prometheusProbe.autoscaling.maxReplicas The maximum number of probe replicas. The default value is 3.
spec.helmValues.prometheusProbe.autoscaling.cpuUtil The target percentage CPU utilization. For example, enter 60 for 60% target utilization. The default value is 60.
spec.helmValues.prometheusProbe.poddisruptionbudget.enabled Set this parameter to true to enable Pod Disruption Budget to maintain high availability during a node maintenance. Administrator role or higher is required to enable Pod Disruption Budget on clusters with Role Based Access Control. The default value is false.
spec.helmValues.prometheusProbe.poddisruptionbudget.minAvailable The minimum number of available pods during node drain. This can be set to a number or a percentage, for example: 1 or 10%. Caution: Setting this parameter to 100%, or to the number of replicas, may block node drains entirely. The default value is 1.
spec.helmValues.resources.limits.cpu The container CPU limit. The default value is 500m.

spec.helmValues.resources.limits.memory

Use this parameter to specify the memory resource limits.

The default value is 512Mi

spec.helmValues.resources.limits.ephemeral-storage

Ephemeral storage limits.

The default value is 500Mi

spec.helmValues.resources.requests.cpu

Use this parameter to specify the CPU resource requests.

The default value is 1000m

spec.helmValues.resources.requests.memory

Use this parameter to specify the memory resource requests.

The default value is 128Mi

spec.helmValues.resources.requests.ephemeral-storage

Ephemeral storage requests.

The default value is 100Mi

spec.helmValues.arch

Use this parameter to specify the worker node architecture. This is fixed to amd64.