Install
Prerequisites Copied
The following must be installed before installing the Notifications App:
Install Copied
To install the Notifications app, you must first create a Helm values file with the appropriate configuration parameters for your environment.
Create a file, such as notifications.yaml
with content similar to the following:
ingress:
annotations:
kubernetes.io/ingress.class: "nginx"
nginx.org/mergeable-ingress-type: "minion"
Your ingress controller may require custom annotations on the ingress (this example is for ingress-nginx)
For advanced configuration options, see Advanced configuration.
Install using Helm:
helm install -f notifications.yaml obcerv-app-notifications \
itrs/obcerv-app-notifications \
--version 3.3.0 -n <namespace> --wait
Uninstall Copied
helm uninstall obcerv-app-notifications -n <namespace>
Upgrade Copied
To upgrade the app, first uninstall and then install it again using the new version.
Self-monitoring Copied
You can import this pre-configured dashboard to your Obcerv instance to monitor the health and general state of the app.
Advanced Configuration Copied
All the following installation parameters are optional. In most instances the defaults are sufficient, so you should not need to change anything.
notifier:
# Sets the maximum inbound gRPC message size in Mebibytes.
maxInboundGrpcMessageSizeMiB: 15
# Sets the housekeeping interval of the internal notification cache
# minimum: PT1S
# default: PT1H
entityHousekeepingInterval: PT1H
# Sets the housekeeping interval of the internal notification cache
# minimum: PT1S
# default: PT1H
notificationHousekeepingInterval: "PT1H"
# Sets the maximum amount of time to wait for Notification cache entries to be
# deleted from the Obcerv Platform.
# minimum: PT30S
# default: PT30S
notificationPruningTimeout: "PT30S"
# How long to wait for the Notifier daemon to shut down
#
# minimum: PT5S
# default: PT30S
shutdownTimeout: PT30S
# How long to wait for the Notifier to start up
#
# minimum: PT5S
# default: PT30S
readinessTimeout: PT30S
# How often to evaluate notifications. Should be short enough such that notifications are
# sent out as soon as their trigger conditions are met. Should be long enough to allow for
# evaluation to run in a timely manner.
#
# minimum: PT10S
# default: PT10S
pollInterval: PT10S
# Notifications are stored in chunks to optimise performance and reduce the number of
# round trips to the platform. This setting controls the maximum size of each chunk
# expressed in Kibibytes.
#
# minimum: 128
# maximum: 1024
# default: 1024
notificationCacheBufferSizeKiB: 1024
# Notification queue settings.
queue:
# Queue settings for Slack notifications
# The following queue settings are available for all
# notification integrations but their defaults may differ.
slack:
# Sets the maximum number of notifications that can be held in the queue.
# Any new notifications generated whilst the queue is full will be thrown away.
#
# minimum: 100
# default: 1000
capacity: 1000
# The number of queue consumer threads. Due to Slack's rate limting
# policies, having more than 1 thread is likely to be problematic, so
# it is recommended to keep this setting as is.
#
# minimum: 1
# default: 1
numThreads: 1
# Defines how long to wait for an acknowledgement that a notification has been
# sent.
#
# minimum: PT5S
# default: PT10S
consumerTimeout: PT10S
# How long to wait for the queue to gracefully shut down.
#
# minimum: PT5S
# default: PT30S
shutdownTimeout: PT30S