3 Customizing OSO

This chapter provides information about customizing Oracle Communications Cloud Native Core, Operations Services Overlay (OSO) deployment in a cloud native environment.

The OSO deployment is customized by overriding the default values of various configurable parameters in the <custom-value.yaml> files.

3.1 Naming Conventions and Limits

This section provides the naming conventions and limits for OSO containers and labels.

Naming Conventions and Limits for Containers

OSO supports customization of container names using custom prefix and suffix. Currently, the name field supports up to 63 characters (including the custom prefix, custom suffix, and default fixed name).

Note:

  • The maximum length of default fixed names is 17.
  • To avoid name truncation, limit the number of characters in the custom prefix and suffix to match the defined limit.
The following table displays the default fixed names of containers without prefix and suffix:

Table 3-1 Default Fixed Names of Containers

POD Name Fixed Container Name
Prometheus-server(prom-svr)
  • prom-svr-cm-r
  • prom-svr
Alertmanager(prom-alm)
  • prom-alm
  • prom-alm-cm-r
APM service(apm-svc) apm-svc
You can use the following values in the ocoso_csar_25_2_200_0_0_0_prom_custom_values.yaml, ocoso_csar_25_2_200_0_0_0_alm_custom_values.yaml, and ocoso_csar_25_2_200_0_0_0_apm_custom_values.yaml files to add the custom prefix and suffix to container names:
global:
# provide the prefix and suffix to be added to k8Resources
  k8Resource:
    container:
      prefix:
      suffix:

Naming Conventions and Limits for Labels

  1. OSO supports custom labels for Kubernetes resources. It provides three types of label definitions that must be configured in the ocoso_csar_25_2_200_0_0_0_prom_custom_values.yaml, ocoso_csar_25_2_200_0_0_0_alm_custom_values.yaml, and ocoso_csar_25_2_200_0_0_0_apm_custom_values.yaml files:
    1. Global Labels(allResources): These labels are attached to all the Kubernetes resources. This is depicted as TYPE1 in the following sample ocoso_csar_25_2_200_0_0_0_prom_custom_values.yaml file.
    2. LB and NON-LB TYPE label: These labels are attached to LoadBalancer and non-LoadBalancer type deployments, statefulsets, and services. This is depicted as TYPE2 in the following sample ocoso_csar_25_2_200_0_0_0_prom_custom_values.yaml file.
    3. Service specific label: These labels are attached to each service in their specific service-label metadata sections and can be used to uniquely label services, regardless of them being LoadBalancer or non-LoadBalancer.

      Note:

      Prometheus and Alertmanager have their own set of service-specific labels.
    You can use the following values in the ocoso_csar_25_2_200_0_0_0_prom_custom_values.yaml file to provide custom labels for Kubernetes resources:
    customExtension:
    # TYPE1 Label
        allResources:
          labels: {}
    # TYPE2 Labels  
        lbServices:
          labels: {}
     
        nonlbServices:
          labels: {}
     
        lbDeployments:
          labels: {}
     
        nonlbDeployments:
          labels: {}
     
        lbStatefulSets:
          labels: {}
    ..

    Note:

    You must be well aware of the naming guidelines while labeling the resources. For more information on Helm naming guidelines, see Helm Labels and Annotations.

3.2 OSO Configuration Parameters

Overview

This section provides the configuration parameters details that are used to install the OSO CSAR packages manually.

OSO CSAR is packaged with the following open source images:

OSO_ALERTMANAGER_IMAGE=occne.io/occne/alertmanager
OSO_PROMETHEUS_IMAGE=occne.io/occne/prometheus
OSO_CONFIGMAPRELOAD_IMAGE=occne.io/occne/configmapreload
OSO_HELM_TEST_IMAGE=occne.io/occne/oso_helm_test
OSO_ALERT_CONFIG_IMAGE=occne.io/occne/oso_alert_config
OSO_SNAPSHOT_IMAGE=occne.io/occne/oso_snapshot
OSO_APM_IMAGE=occne.io/occne/oso_apm_service

Prerequisites

  • Docker or Podman must be installed.
  • Helm repository must be set up and accessible.

3.2.1 Prometheus Configuration Parameters

This section provides the Prometheus configuration parameters details that are used to install the OSO CSAR packages manually.

Configure ocoso_csar_25_2_200_0_0_0_prom_custom_values.yaml with the specific values.

Table 3-2 OSO Prometheus Configuration Parameter

Parameter Description Details
nameOverride

This is an optional parameter.

Indicates the custom name override applied to all Kubernetes resources created by this Helm release.

Data Type: String

Default Value: NA

Range: NA

Placeholder: prom

helmtestimage

This is an optional parameter.

Indicates the repository URL of the Helm test image where it is located.

Example: occne.io/occne/oso_helm_test:25.2.200

Note: Configure this parameter only when Helm tests are required after installation or upgrade.

Data Type: String

Default Value: NA

Range: NA

Placeholder: HELM-TEST-IMAGE-REPO-ADDRESS

useasm

This is an optional parameter.

Indicates if the Aspen Service Mesh (ASM) environment is used or not in OSO deployment.

If this parameter is set as true, ASM is enabled for the OSO deployment.

If this parameter is set as false, ASM is disabled for the OSO deployment.

Example: useasm: true

Data Type: String

Default Value: NA

Range: true, false

Placeholder: USEASM

namespace

This is an optional parameter.

Indicates the namespace where OSO will be installed. This value is required in multiple places in the custom values.yaml file.

Example: namespace: ocnf

Data Type: String

Default Value: NA

Range: NA

Placeholder: NAMESPACE

clustername

This is an optional parameter.

Specifies the cluster name prefix appended to Alertmanager GUI URLs.

Note:
  • Comment out this parameter if cluster-specific URL prefixes are not required.
  • If you replace the cluster name, replace them in all the places where you have the placeholder as /CLUSTER-NAME.

Data Type: String

Default Value: NA

Range: NA

Placeholder: /CLUSTER-NAME

resources.limits.cpu

This is an optional parameter.

Specifies the maximum CPU resources allocated for Helm test operations.

Data Type: String

Default Value: 10m

Range: NA

Unit: millicores

resources.limits.memory

This is an optional parameter.

Specifies the maximum memory resources allocated for Helm test operations.

Data Type: String

Default Value: 32Mi

Range: NA

Unit: Mebibytes

resources.requests.cpu

This is an optional parameter.

Specifies the minimum CPU resources allocated for Helm test operations.

Data Type: String

Default Value: 10m

Range: NA

Unit: millicores

resources.requests.memory

This is an optional parameter.

Specifies the minimum memory resources allocated for Helm test operations.

Data Type: String

Default Value: 32Mi

Range: NA

Unit: Mebibytes

promsvcname

This is a mandatory parameter.

Specifies the Kubernetes Service name exposed for the Prometheus server.

Data Type: String

Default Value: NA

Range: NA

Placeholder: OSO-RELEASE-NAME-prom-svr

prometheushealthyurl

This is an optional parameter.

Specifies the HTTP path used to perform Prometheus health checks.

Data Type: String

Default Value: NA

Range: NA

Placeholder: /prometheus/-/healthy

prometheusreadyurl

This is an optional parameter.

Specifies the HTTP path used to check Prometheus readiness.

Data Type: String

Default Value: NA

Range: NA

Placeholder: /prometheus/-/ready

global_oso.k8Resource.container.prefix

This is an optional parameter.

Specifies the value that is prefixed to all the container names of OSO.

This value is used to prefix to all the container names of OSO.

Data Type: String

Default Value: NA

Range: NA

global_oso.k8Resource.container.suffix

This is an optional parameter.

Specifies the value that is suffixed to all the container names of OSO.

This value is used to suffix to all the container names of OSO.

Data Type: String

Default Value: NA

Range: NA

global_oso.serviceAccountNamePromSvr

This is an optional parameter.

Specifies the Kubernetes service account name used by the OSO Prometheus server pod.

Data Type: String

Default Value: ""

Range: NA

global_oso.customExtension.allResources.labels

This is an optional parameter.

Specifies the custom labels that should be added to all the OSO Kubernetes resources.

This can be used to add custom label(s) to all Kubernetes resources that are created by OSO helm chart.

Data Type: String

Default Value: {}

Range: NA

global_oso.customExtension.lbServices.labels

This is an optional parameter.

Specifies the custom labels required to be added to OSO services that are considered as load balancer type.

This can be used to add custom label(s) to all load balancer type services that are created by OSO helm chart.

Data Type: String

Default Value: {}

Range: NA

global_oso.customExtension.nonlbServices.labels

This is an optional parameter.

Specifies the custom labels to be added to OSO services that are considered as not load balancer type.

This can be used to add custom label(s) to all non-load balancer type services that is created by OSO helm chart.

Data Type: String

Default Value: {}

Range: NA

global_oso.customExtension.lbDeployments.labels

This is an optional parameter.

Specifies the custom labels to be added to OSO deployments that are associated to a service which is of load balancer type.

This can be used to add the custom label(s) to the deployments that will be created by OSO helm chart that are associated to a load balancer type service.

Data Type: String

Default Value: {}

Range: NA

global_oso.customExtension.nonlbDeployments.labels

This is an optional parameter.

Specifies the custom labels to be added to OSO deployments that are associated to a service which is not of load balancer type.

This can be used to add custom label(s) to all deployments that is created by OSO helm chart which are associated to a service which is not of load balancer type.

Data Type: String

Default Value: {}

Range: NA

global_oso.customExtension.lbStatefulSets.labels

This is an optional parameter.

Specifies custom labels applied to be added to StatefulSets that are exposed through load-balanced services.

Data Type: String

Default Value: {}

Range: NA

annotations

This is an optional parameter.

Specifies the custom annotations that should be added to all the OSO Kubernetes resources.

This can be used to add custom annotation(s) to all Kubernetes resources that are created by OSO helm chart.

annotations:
#       - sidecar.istio.io/inject: "false"

Data Type: String

Default Value: {}

Range: NA

rbac.create

This is a mandatory parameter.

Specifies if the default RBAC roles and role bindings are created for Prometheus in OSO deployments.

Data Type: String

Default Value: CREATE_DEFAULT_RBAC

Range: NA

podSecurityPolicy.enabled

This is an optional parameter.

Specifies if the pod security is enabled or not for Prometheus server in OSO deployments.

If the value is set as true, pod security is enabled.

If the value is set as false, pod security is disabled.

Data Type: Booelan

Default Value: false

Range: true, false

imagePullSecrets

This is an optional parameter.

Specifies the list of image pull secrets needed to pull the image from the repository.

Example: - name: "image-pull-secret"

Data Type: List

Default Value: []

Range: NA

serviceAccounts.server.create

This is an optional parameter.

Specifies whether a service account will be created for the Prometheus server. Enabling this provides a dedicated identity for Prometheus pods.

If the value is set as true, a service account is created for Prometheus server.

If the value is set as false, a service account is not created for Prometheus server.

Data Type: String

Default Value: NA

Range: NA

Placeholder: USE-DEFAULT-SVCACCOUNT-PROM

serviceAccounts.server.name

This is an optional parameter.

Specifies the service account name of the Prometheus server.

Data Type: String

Default Value: ""

Range: NA

serviceAccounts.server.annotations

This is an optional parameter.

Specifies the service account annotations that should be added to the Prometheus server.

Data Type: String

Default Value: {}

Range: NA

commonMetaLabels

This is an optional parameter.

Specifies all the additional labels that should be attached to all the resources.

Data Type: String

Default Value: {}

Range: NA

configmapReload.reloadUrl

This is an optional parameter.

Specifies the HTTP endpoint invoked by the configmapReload container to initiate a Prometheus configuration reload.

If this parameter is not configured, the default Prometheus reload endpoint is applied.

Data Type: String

Default Value: ""

Range: NA

configmapReload.prometheus.enabled

This is an optional parameter.

Specifies if the configmap-reload container is deployed or not.

If the value is true, configmap-reload container is deployed.

If the value is false, configmap-reload container is not deployed.

Note: Recommended value is true, as OSO can be installed even if the parameter is not configured.

Data Type: Boolean

Default Value: true

Range: true, false

configmapReload.prometheus.name

This is an optional parameter.

Specifies the configmap-reload container name.

Data Type: String

Default Value: NA

Range: NA

Placeholder: configmap-reload

configmapReload.prometheus.image.repository

This is an optional parameter.

Specifies the container image repository address for configmap-reload.

Data Type: String

Default Value: CONFIGMAP-RELOAD-REPO-ADDRESS

Range: NA

configmapReload.prometheus.image.tag

This is an optional parameter.

Specifies the tag of the configmap-reload image to be deployed.

Data Type: String

Default Value: 0.15.0

Range: NA

configmapReload.prometheus.image.digest

This is an optional parameter.

Specifies the image digest for pulling the configmap-reload container image. When a non-empty value is set, Kubernetes pulls the image by digest rather than by tag, overriding the tag value.

Data Type: String

Default Value: ""

Range: NA

configmapReload.prometheus.image.pullPolicy

This is an optional parameter.

Indicates the image pull policy for the configmap-reload container. This controls when Kubernetes pulls the image from the repository.

  • IfNotPresent—Pulls the image only once, and it doesn't try again.
  • Always—always pulls the image when the deployment is created.
  • Never—it doesn't pull the image when the deployment is created.

Data Type: String

Default Value: IfNotPresent

Range: Always, IfNotPresent, Never

configmapReload.prometheus.containerSecurityContext.capabilities.drop

This is an optional parameter.

Specifies the list of capabilities to be removed from the container to protect the system from having more privileges.

Note: Do not change the default value.

Data Type: List of string

Default Value: [ "KILL", "MKNOD", "SETUID", "SETGID", "NET_RAW" ]

Range: NA

configmapReload.prometheus.containerSecurityContext.runAsUser

This is an optional parameter.

Specifies the user ID under which the configmap-reload container runs.

Note: Do not change the default value.

Data Type: Integer

Default Value: 65534

Range: NA

configmapReload.prometheus.containerSecurityContext.runAsNonRoot

This is an optional parameter.

Specifies whether the container must run as a non-root user.

If the value is set as true, the container runs as a non-root user.

If the value is set as false, the container runs as a root user.

Data Type: Boolean

Default Value: true

Range: true, false

configmapReload.prometheus.containerSecurityContext.runAsGroup

This is an optional parameter.

Specifies the group ID under which the container process runs.

Note: Do not change the default value.

Data Type: Integer

Default Value: 65534

Range: NA

configmapReload.prometheus.containerSecurityContext.allowPrivilegeEscalation

This is an optional parameter.

Indicates whether the container can gain more privileges than its parent process.

If the value is set as true, it allows privilege escalation and does not provide an additional layer of security.

If the value is set as false, it blocks privilege escalation and provides an additional layer of security.

Data Type: Boolean

Default Value: false

Range: true, false

configmapReload.prometheus.resources.limits.cpu

This is an optional parameter.

Specifies the maximum amount of CPU allocated to the configmap-reload container.

Data Type: String

Default Value: 10m

Range: NA

Unit: millicores

configmapReload.prometheus.resources.limits.memory

This is an optional parameter.

Specifies the maximum amount of memory allocated to the configmap-reload container.

Data Type: String

Default Value: 32Mi

Range: NA

Unit: Mebibytes

configmapReload.prometheus.resources.limits.ephemeral-storage

This is an optional parameter.

Specifies the maximum ephemeral storage allocation for the configmap-reload container.

Data Type: String

Default Value: 1Gi

Range: NA

Unit: Gibibytes

configmapReload.prometheus.resources.requests.cpu

This is an optional parameter.

Specifies the minimum CPU allocated to the configmap-reload container.

Data Type: String

Default Value: 10m

Range: NA

Unit: millicores

configmapReload.prometheus.resources.requests.memory

This is an optional parameter.

Specifies the minimum amount of memory allocated to the configmap-reload container.

Data Type: String

Default Value: 32Mi

Range: NA

Unit: Mebibytes

configmapReload.prometheus.resources.requests.ephemeral-storage

This is an optional parameter.

Specifies the minimum ephemeral storage allocation for the configmap-reload container.

Data Type: String

Default Value: 1Gi

Range: NA

Unit: Gibibytes

server.name

This is an optional parameter.

Specifies the name assigned to the Prometheus server instance.

Data Type: String

Default Value: "svr"

Range: NA

server.releaseNamespace

This is an optional parameter.

Indicates whether release operations (like deletion or upgrades) will affect resources in the same namespace as the Helm release.

If the value is set as true, it restricts actions to the release namespace for better isolation.

If the value is set as false, it does not restrict actions to the release namespace for better isolation.

Data Type: Boolean

Default Value: false

Range: true, false

server.image.repository

This is an optional parameter.

Specifies the repository URI to pull the Prometheus server container image from.

Data Type: String

Default Value: "PROMETHEUS-REPO-ADDRESS"

Range: NA

server.image.tag

This is an optional parameter.

Indicates the specific image tag for the Prometheus server container.

Data Type: String

Default Value: 3.6.0

Range: NA

server.image.digest

This is an optional parameter.

Specifies the image digest for pulling the server image. When a non-empty value is set, Kubernetes pulls the image by digest rather than by tag, overriding the tag value.

Data Type: String

Default Value: ""

Range: NA

server.image.pullPolicy

This is an optional parameter.

Indicates the image pull policy for the Prometheus server. This controls when Kubernetes pulls the image from the repository.

  • IfNotPresent—Pulls the image only once, and it doesn't try again.
  • Always—always pulls the image when the deployment is created.
  • Never—it doesn't pull the image when the deployment is created.

Data Type: String

Default Value: IfNotPresent

Range: Always, IfNotPresent, Never

server.prefixURL

This is an optional parameter.

Specifies the path prefix under which Prometheus’s user interface and API are served.

Data Type: String

Default Value: /CLUSTER-NAME/prometheus

Range: NA

server.baseURL

This is an optional parameter.

Indicates the externally accessible full base URL for Prometheus, ensuring generated links are accurate when accessed remotely.

Data Type: String

Default Value: http://localhost/CLUSTER-NAME/prometheus

Range: NA

server.extraFlags

This is a conditional parameter.

Indicates that the web.enable-admin-api parameter controls access to the administrative HTTP API.

This parameter is disabled by default. Uncomment the web.enable-admin-api parameter to enable it.

If the parameter is enabled, it allows capturing snapshots in TSDB.

Data Type: String

Default Value: disabled

Range:disabled, enabled

server.global.scrape_interval

This is an optional parameter.

Indicates how frequently Prometheus scrapes all targets. Use a longer interval to reduce load or a shorter interval for more granular metrics.

Data Type: String

Default Value: 1m

Range:NA

Unit: minutes

server.global.scrape_timeout

This is an optional parameter.

Specifies the maximum duration Prometheus allows for a single scrape before timing out.

Data Type: String

Default Value: 10s

Range:NA

Unit: seconds

server.global.evaluation_interval

This is an optional parameter.

Indicates how frequently Prometheus evaluates alerting and recording rules.

Data Type: String

Default Value: 1m

Range:NA

Unit: minutes

server.remoteWrite[].url

This is a conditional parameter.

Indicates the remote write endpoint URL where Prometheus writes metrics for long-term storage or integration.

Data Type: String

Default Value: OSO_CORTEX_URL

Range:NA

server.remoteWrite[].remote_timeout

This is an optional parameter.

Specifies the timeout for remote write requests to the external endpoint.

Data Type: String

Default Value: OSO_REMOTE_WRITE_TIMEOUT

Range:NA

server.remoteWrite[].bearer_token

This is an optional parameter.

Specifies the authentication bearer token for secure communication with the remote write server.

Data Type: String

Default Value: BEARER_TOKEN

Range:NA

server.tsdb

This is an optional parameter.

Indicates Prometheus time series database (TSDB) configuration for advanced storage settings, such as out-of-order time windows or block compaction.

Data Type: Object

Default Value: {}

Range:NA

server.podDisruptionBudget.enabled

This is an optional parameter.

Specifies whether to create a PodDisruptionBudget for Prometheus server pods, which limits how many pods can be disrupted during maintenance or scaling.

If the value is true, pod disruption budget is created for Prometheus server pods.

If the value is false, pod disruption budget is not created for Prometheus server pods.

Data Type: Boolean

Default Value: false

Range:true, false

server.podDisruptionBudget.maxUnavailable

This is an optional parameter.

Specifies the maximum number of pods allowed to be unavailable during voluntary disruptions (such as node drains).

Data Type: Integer

Default Value: 1

Range:0, >0

server.persistentVolume.enabled

This is an optional parameter.

Indicates whether persistent storage is enabled for Prometheus data, ensuring metrics persist across pod restarts.

Data Type: Boolean

Default Value: true

Range:true, false

server.persistentVolume.accessModes

This is an optional parameter.

Specifies the access modes for the PersistentVolumeClaim (PVC).

Data Type: List

Default Value: ["ReadWriteOnce"]

Range:NA

server.persistentVolume.labels

This is an optional parameter.

Specifies the labels to be applied to the PersistentVolumeClaim.

Data Type: String

Default Value: {}

Range:NA

server.persistentVolume.annotations

This is an optional parameter.

Specifies the annotations to be added to the PersistentVolumeClaim.

Data Type: String

Default Value: {}

Range:NA

server.persistentVolume.existingClaim

This is a conditional parameter.

Indicates the name of an existing PersistentVolumeClaim.

Data Type: String

Default Value: ""

Range:NA

server.persistentVolume.mountPath

This is an optional parameter.

Specifies the file system path where the persistent volume is mounted inside the Prometheus container.

Data Type: String

Default Value: /data

Range:NA

server.persistentVolume.size

This is an optional parameter.

Indicates the storage size for the persistent volume claim, determining how much space is allocated for Prometheus data.

Data Type: String

Default Value: PROM-PV-SIZE

Range:NA

server.persistentVolume.storageClass

This is an optional parameter.

Specifies the storage class for the persistent volume, allowing control over the underlying storage backend.

Data Type: String

Default Value: PROM-STORAGE-CLASS

Range:NA

server.emptyDir.sizeLimit

This is an optional parameter.

Indicates the size limit for the ephemeral emptyDir storage if persistent volume is not used.

Data Type: String

Default Value: ""

Range:NA

server.podAnnotations

This is an optional parameter.

Specifies key-value annotations to apply to the Prometheus server pod metadata.

Data Type: String

Default Value: {}

Range:NA

server.podLabels

This is an optional parameter.

Specifies custom labels to apply to the Prometheus server pod.

Data Type: String

Default Value: {}

Range:NA

server.alertmanagers

This is an optional parameter.

Indicates the list of Alertmanager configuration objects.

Data Type: List

Default Value: []

Range:NA

server.alertmanagers[].kubernetes_sd_configs

This is an optional parameter.

Indicates the list of Kubernetes service discovery configurations to locate Alertmanager endpoints.

Data Type: List

Default Value: []

Range:NA

server.alertmanagers[].kubernetes_sd_configs[].namespaces

This is an optional parameter.

Specifies one or more namespaces in which to search for Alertmanager pods or services.

Data Type: List

Default Value: []

Range:NA

server.alertmanagers[].kubernetes_sd_configs[].names

This is an optional parameter.

Specifies resource names for filtered Alertmanager discovery within the given namespaces.

Data Type: List

Default Value: {}

Range:NA

server.alertmanagers[].kubernetes_sd_configs[].role

This is an optional parameter.

Indicates the Kubernetes resource type for discovery (for example, pod, service, endpoints).

Data Type: String

Default Value: pod

Range: pod, service, endpoints, node

server.alertmanagers[].path_prefix

This is an optional parameter.

Specifies the HTTP path prefix for Alertmanager requests.

Data Type: String

Default Value: CLUSTER-NAME/alertmanager

Range: NA

server.alertmanagers[].relabel_configs

This is an optional parameter.

Specifies the relabeling rules for Alertmanager target selection or endpoint label manipulation.

Data Type: List

Default Value: []

Range:NA

server.alertmanagers[].relabel_configs[].source_labels

This is an optional parameter.

Specifies the label keys used for matching and relabeling Alertmanager endpoints.

Data Type: List

Default Value: []

Range:NA

server.alertmanagers[].relabel_configs[].regex

This is an optional parameter.

Specifies the regular expression used to evaluate source label values during relabeling.

Data Type: String

Default Value: ""

Range:NA

server.alertmanagers[].relabel_configs[].action

This is an optional parameter.

Indicates the action taken by this relabeling rule (for example, keep, drop, replace, and so on).

Data Type: String

Default Value: keep

Range: keep, drop, replace, labelmap

server.replicaCount

This is an optional parameter.

Specifies the number of Prometheus server replicas for high availability.

Data Type: Integer

Default Value: 1

Range: 1 or >1

server.deploymentAnnotations

This is an optional parameter.

Specifies the annotations to be applied to the Prometheus server deployment.

Data Type: String

Default Value: {}

Range: NA

server.resources.limits.cpu

This is an optional parameter.

Specifies the maximum CPU the container can use, in Kubernetes resource format.

Data Type: String

Default Value: 2

Range: NA

server.resources.limits.memory

This is an optional parameter.

Specifies the maximum amount of memory the Prometheus server container can use.

Data Type: String

Default Value: 4Gi

Range: NA

Unit: Gibibytes

server.resources.limits.ephemeral-storage

This is an optional parameter.

Specifies the maximum amount of ephemeral storage for the Prometheus pod.

Data Type: String

Default Value: 12Gi

Range: NA

Unit: Gibibytes

server.resources.requests.cpu

This is an optional parameter.

Indicates the minimum CPU guaranteed to the Prometheus server pod.

Data Type: String

Default Value: 2

Range: NA

server.resources.requests.memory

This is an optional parameter.

Indicates the minimum memory reserved for the Prometheus server pod.

Data Type: String

Default Value: 4Gi

Range: NA

Unit: Gibibytes

server.resources.requests.ephemeral-storage

This is an optional parameter.

Specifies the minimum requested ephemeral storage for the Prometheus server pod.

Data Type: String

Default Value: 8Gi

Range: NA

Unit: Gibibytes

server.securityContext.runAsUser

This is an optional parameter.

Indicates the user ID for running the Prometheus server container process.

Data Type: Integer

Default Value: 65534

Range: NA

server.securityContext.runAsNonRoot

This is an optional parameter.

Specifies whether the Prometheus server container must run as a non-root user.

Data Type: Boolean

Default Value: true

Range: true, false

server.securityContext.runAsGroup

This is an optional parameter.

Indicates the group ID for the container process.

Data Type: Integer

Default Value: 65534

Range: NA

server.securityContext.fsGroup

This is an optional parameter.

Specifies a supplementary group ID for the volume mount.

Data Type: Integer

Default Value: 65534

Range: NA

server.containerSecurityContext.capabilities.drop

This is an optional parameter.

Specifies the set of capabilities to drop from the server container for reducing its privileges.

Data Type: List

Default Value: [ "KILL", "MKNOD", "SETUID", "SETGID", "NET_RAW" ]

Range: NA

server.containerSecurityContext.runAsUser

This is an optional parameter.

Indicates the user ID for the Prometheus container at runtime.

Data Type: Integer

Default Value: 65534

Range: NA

server.containerSecurityContext.runAsNonRoot

This is an optional parameter.

Indicates whether the container must run as a non-root user.

If the value is set as true, container runs as non-root user.

If the value is set as false, container runs as a root user.

Data Type: Boolean

Default Value: true

Range: true, false

server.containerSecurityContext.runAsGroup

This is an optional parameter.

Specifies the group ID for the container process at runtime.

Data Type: Integer

Default Value: 65534

Range: NA

server.containerSecurityContext.allowPrivilegeEscalation

This is an optional parameter.

Indicates whether the container can gain more privileges than its parent process.

If the value is set as true, container gains more privileges than its parent process.

If the value is set as false, container does not gain more privileges than its parent process.

Data Type: Boolean

Default Value: false

Range: true, false

server.service.enabled

This is an optional parameter.

Specifies whether a Kubernetes service is created to expose Prometheus server for network access.

If the value is set as true, Kubernetes service is created to expose Prometheus server for network access.

If the value is set as false, Kubernetes service is not created to expose Prometheus server for network access..

Data Type: Boolean

Default Value: true

Range: true, false

server.service.annotations

This is an optional parameter.

Specifies key-value annotations added to the Kubernetes service resource.

Data Type: String

Default Value: {}

Range: NA

server.service.labels

This is an optional parameter.

Specifies labels to be attached to the Kubernetes service resource.

Data Type: String

Default Value: {}

Range: NA

server.service.clusterIP

This is an optional parameter.

Indicates the cluster-internal IP address for the Kubernetes service. If the value is set as empty, Kubernetes automatically assigns an IP address.

Data Type: String

Default Value: ""

Range: NA

server.service.externalIPs

This is an optional parameter.

Specifies a list of external IP addresses for client access to Prometheus via the Kubernetes service.

Data Type: List

Default Value: []

Range: NA

server.service.loadBalancerIP

This is an optional parameter.

Indicates the static external IP to assign for LoadBalancer-type Services.

Data Type: String

Default Value: ""

Range: NA

server.service.loadBalancerSourceRanges

This is an optional parameter.

Specifies allowed CIDR ranges for connections to the Prometheus LoadBalancer service for network-level access control.

Data Type: List

Default Value: []

Range: NA

server.service.servicePort

This is an optional parameter.

Specifies the Service port that Prometheus is reachable on.

Data Type: Integer

Default Value: 80

Range: 1–65535

server.service.sessionAffinity

This is an optional parameter.

Indicates the session affinity mode for the Service (for example, None, ClientIP).

Data Type: String

Default Value: None

Range: ClientIP, None

server.service.type

This is an optional parameter.

Specifies the Kubernetes Service type (ClusterIP, NodePort, LoadBalancer) used to expose Prometheus server.

Data Type: String

Default Value: ClusterIP

Range: ClusterIP, NodePort, LoadBalancer

server.retention

This is an optional parameter.

Indicates the duration for which Prometheus retains metric data before deletion.

Data Type: String

Default Value: PROM-DATA-RETENTION-DAYS

Range: NA

server.retentionSize

This is a mandatory parameter.

Indicates the retention size for Prometheus persistence volume.

It should be 80% of the PV size (6.8GB).

Retention size will remain the same percentage of storage size in both snapshot enabled or disabled cases.
Example:
If PV = 8GB 
With Snapshot enabled:
PV size: 24GB
Without Snapshot enabled:
PV size: 8GB
Retention in both cases: 6.4GB
extraArgs:
    storage.tsdb.retention.size: 6.4GB 

Data Type: String

Default Value: 7.3 GB

Range: NA

Placeholder: "STORAGE_RETENTION_SIZE_PROM"

Unit: Gibibytes

serverFiles.prometheus.yml.rule_files

This is a mandatory parameter.

Specifies the list of Prometheus rule files to be loaded, including recording and alerting rules. All rule file names must be verified before upgrading to ensure consistency; they must match previous releases to guarantee rule preservation through upgrade.

Example:

serverFiles:
  prometheus.yml:
    rule_files:
      - /etc/config/recording_rules.yml
      - /etc/config/alerting_rules.yml
# All the Alert-rule names given below MUST be verified by the user before attempting UPGRADE.
# The names has to match N-1 Alert-rule names in order to guarantee their preservation through Upgrade.
      - /etc/config/alertscncc
      - /etc/config/alertscndbtier
      - /etc/config/alertsoccne-cndbtier
      - /etc/config/alertsscp
      - /etc/config/alertsnrf
      - /etc/config/alertspcf
      - /etc/config/alertsbsf
      - /etc/config/alertsudr
      - /etc/config/alertssepp
      - /etc/config/alertsnssf

Data Type: List

Default Value: See example.

Range: NA

serverFiles.prometheus.yml.scrape_configs[].job_name

This is a mandatory parameter.

Specifies the unique identifier for the scrape job.

Data Type: String

Default Value: oracle-cnc-pod

Range: NA

serverFiles.prometheus.yml.scrape_configs[].fallback_scrape_protocol

This is an optional parameter.

Indicates the fallback protocol Prometheus should use if the primary scrape attempt fails.

Data Type: String

Default Value: PrometheusText1.0.0

Range: NA

serverFiles.prometheus.yml.scrape_configs[].kubernetes_sd_configs[].role

This is a mandatory parameter.

Indicates the type of Kubernetes resource to discover for this scrape job. Common values include pod, service, endpoints, or node.

Data Type: String

Default Value: pod

Range: pod, service, endpoints, node

serverFiles.prometheus.yml.scrape_configs[].kubernetes_sd_configs[].namespaces

This is an optional parameter.

Specifies the namespaces that limit service discovery scope.

Data Type: Object

Default Value: NA

Range: NA

serverFiles.prometheus.yml.scrape_configs[].kubernetes_sd_configs[].namespaces.names

This is an optional parameter.

Specifies the list of namespace names where Prometheus should perform target discovery.

Data Type: List

Default Value: []

Range: NA

serverFiles.prometheus.yml.scrape_configs[].relabel_configs[].source_labels

This is an optional parameter.

Indicates the source label keys whose values will be used as input for the relabeling action.

Data Type: String

Default Value: NA

Range: NA

serverFiles.prometheus.yml.scrape_configs[].relabel_configs[].regex

This is an optional parameter.

Specifies a regular expression to apply to the concatenated values of the source_labels.

Data Type: String

Default Value: NA

Range: NA

serverFiles.prometheus.yml.scrape_configs[].relabel_configs[].action

This is an optional parameter.

Specifies the relabeling action (such as keep, drop, replace, labelmap).

Data Type: String

Default Value: NA

Range: keep, drop, replace, labelmap, labeldrop, labelkeep

serverFiles.prometheus.yml.scrape_configs[].relabel_configs[].target_label

This is a conditional parameter.

Indicates the label that will be set or replaced during relabeling.

Data Type: String

Default Value: NA

Range: NA

serverFiles.prometheus.yml.scrape_configs[].relabel_configs[].replacement

This is a conditional parameter.

Specifies the value to use as a replacement when the action is 'replace' for the serverFiles.prometheus.yml. scrape_configs[].relabel_configs[].action parameter.

Data Type: String

Default Value: NA

Range: NA

extraScrapeConfigs[].job_name

This is a mandatory parameter.

Specifies the unique identifier for the scrape job. Use this to define and differentiate between metric scrape targets for service, endpoints, or ingress monitoring.

Data Type: String

Default Value: NA

Range: NA

Example: oracle-cnc-service

extraScrapeConfigs[].fallback_scrape_protocol

This is an optional parameter.

Indicates the protocol Prometheus should use if the primary scrape attempt fails. Use this to ensure compatibility with metric endpoints using non-default protocols.

Data Type: String

Default Value: PrometheusText1.0.0

Range: NA

extraScrapeConfigs[].kubernetes_sd_configs

This is a mandatory parameter.

Specifies the list of Kubernetes service discovery configurations. Each configuration defines the Kubernetes resource type (role) to search for dynamic metric target endpoints.

Data Type: List of object

Default Value: NA

Range: List of Kubernetes SD config objects

extraScrapeConfigs[].kubernetes_sd_configs[].role

This is a mandatory parameter.

Indicates the Kubernetes resource type to discover for this scrape job. Accepted values are service, endpoints, or ingress as per your cluster monitoring needs.

Data Type: String

Default Value: NA

Range: service, endpoints, ingress, node, pod

extraScrapeConfigs[].kubernetes_sd_configs[].namespaces

This is an optional parameter.

Specifies the namespace limits for service discovery. Fill this object to restrict Prometheus scraping to specific namespaces and improve control, security, or scalability.

Data Type: Object

Default Value: NA

Range: NA

extraScrapeConfigs[].kubernetes_sd_configs[].namespaces.names

This is an optional parameter.

Specifies the explicit list of namespace names for resource discovery. This limits scraping to selected namespaces for the given role.

Data Type: List of String

Default Value: NA

Range: NA

extraScrapeConfigs[].relabel_configs[].source_labels

This is an optional parameter.

Indicates the Prometheus label keys, including standard and dynamically discovered Kubernetes annotations and labels, used as input to the relabeling action.

Data Type: List of String

Default Value: As provided in each rule

Range: NA

extraScrapeConfigs[].relabel_configs[].regex

This is an optional parameter.

Specifies a regular expression for matching the combined values of source_labels, enabling advanced filtering or transformation logic during target relabeling.

Data Type: String

Default Value: NA

Range: NA

extraScrapeConfigs[].relabel_configs[].action

This is an optional parameter.

Specifies the relabeling action to perform (such as keep, drop, replace, labelmap). Controls how discovered targets are processed or filtered according to matching conditions.

Data Type: String

Default Value: NA

Range: keep, drop, replace, labelmap, labeldrop, labelkeep, or any Prometheus-supported action

extraScrapeConfigs[].relabel_configs[].target_label

This is an optional parameter.

Indicates the Prometheus label that will be set or replaced as a result of a relabeling rule, such as metrics_path, address, or scheme, to correctly direct metric collection. Required for actions like 'replace'.

Data Type: String

Default Value: NA

Range: NA

extraScrapeConfigs[].relabel_configs[].replacement

This is an optional parameter.

Specifies the replacement value used during a 'replace' relabeling action. Enables transformation or normalization of target label values for consistent scraping.

Data Type: String

Default Value: NA

Range: NA

Example: $1:$2

alertmanager.enabled

This is an optional parameter.

Indicates whether the Alertmanager component is enabled and deployed as part of the monitoring stack.

If this vaue is set to true, OSO deploys Alertmanager for managing Prometheus alerts.

If the value is set as false, OSO does not deploy Alertmanager for managing Prometheus alerts.

Data Type: Boolean

Default Value: false

Range: true, false

kube-state-metrics.enabled

This is an optional parameter.

Indicates whether the kube-state-metrics exporter is enabled for cluster state monitoring. Set to true to deploy the component and provide Kubernetes object metrics to Prometheus.

If the value is set as true, kube-state-metrics exporter is enabled for cluster state monitoring.

If the value is set as false, kube-state-metrics exporter is disabled for cluster state monitoring.

Data Type: Boolean

Default Value: false

Range: true, false

prometheus-node-exporter.enabled

This is an optional parameter.

Indicates whether the Prometheus node exporter is enabled for collecting node-level hardware and OS metrics. Set to true to deploy it as a DaemonSet on all cluster nodes.

If the value is set as true, Prometheus node exporter is enabled for collecting node-level hardware and OS metrics.

If the value is set as false, Prometheus node exporter is disabled.

Data Type: Boolean

Default Value: false

Range: true, false

prometheus-pushgateway.enabled

This is an optional parameter.

Specifies whether the Prometheus Pushgateway service is enabled. Use this to enable collection of ephemeral or batch job metrics via push functionality, or disable if not needed for your monitoring scenario.

If the value is set as true, Prometheus Pushgateway service is enabled to collect the ephemeral or batch job metrics via push functionality.

If the value is set as false, Prometheus Pushgateway service is disabled and not required for monitoring scenario.

Data Type: Boolean

Default Value: false

Range: true, false

3.2.2 Alertmanager Configuration Parameters

This section provides the alertmanager configuration parameters details that are used to install the OSO CSAR packages manually.

Configure the ocoso_csar_25_2_200_0_0_0_alm_custom_values.yaml with the defined values.

Table 3-3 OSO Alertmanager Configuration Parameters

Parameter Description Details
helmtestimage

This is an optional parameter.

Indicates the repository URL of the Helm test image where it is located.

Example: occne.io/occne/oso_helm_test:25.2.200

Data Type: String

Default Value: NA

Range: NA

Placeholder: HELM-TEST-IMAGE-REPO-ADDRESS

useasm

This is an optional parameter.

Indicates if the Aspen Service Mesh (ASM) environment is used or not in OSO deployment.

If this parameter is set as true, ASM is enabled for the OSO deployment.

If this parameter is set as false, ASM is disabled for the OSO deployment.

Example: useasm: true

Data Type: String

Default Value: "false"

Range: "true", "false"

Placeholder: USEASM

namespace

This is an optional parameter.

Indicates the namespace where OSO will be installed. This value is required in multiple places in the custom values.yaml file.

Example: namespace: ocnf

Data Type: String

Default Value: NA

Range: NA

Placeholder: NAMESPACE

clustername

This is an optional parameter.

Specifies the prefix for GUI URLs and endpoints.

Note:
  • Comment out this parameter if cluster-specific URL prefixes are not required.
  • If you replace the cluster name, replace them in all the places where you have the placeholder as /CLUSTER-NAME.

Data Type: String

Default Value:NA

Range: NA

Placeholder: /CLUSTER-NAME

test.resources.limits.cpu

This is a conditional parameter.

Specifies the maximum CPU resources allocated for Helm test operations.

Note: If the helmtestimage is set, then set the following parameters:
  • test.resources.limits.cpu
  • test.resources.limits.memory
  • test.resources.requests.cpu
  • test.resources.requests.cpu

Data Type: String

Default Value: 10m

Range: NA

Unit: millicores

test.resources.limits.memory

This is a conditional parameter.

Specifies the maximum memory resources allocated for Helm test operations.

Note: If the helmtestimage is set, then set the following parameters:
  • test.resources.limits.cpu
  • test.resources.limits.memory
  • test.resources.requests.cpu
  • test.resources.requests.cpu

Data Type: String

Default Value: 32Mi

Range: NA

Unit: Mebibytes

test.resources.requests.cpu

This is a conditional parameter.

Specifies the minimum CPU resources allocated for Helm test operations.

Note: If the helmtestimage is set, then set the following parameters:
  • test.resources.limits.cpu
  • test.resources.limits.memory
  • test.resources.requests.cpu
  • test.resources.requests.cpu

Data Type: String

Default Value: 10m

Range: NA

Unit: millicores

test.resources.requests.memory

This is a conditional parameter.

Specifies the minimum memory resources allocated for Helm test operations.

Note: If the helmtestimage is set, then set the following parameters:
  • test.resources.limits.cpu
  • test.resources.limits.memory
  • test.resources.requests.cpu
  • test.resources.requests.cpu

Data Type: String

Default Value: 32Mi

Range: NA

Unit: Mebibytes

almsvcname

This is a mandatory parameter.

Specifies the name of the Alertmanager service resource.

Data Type: String

Default Value: NA

Range: NA

Placeholder: OSO-ALM-RELEASE-NAME-alm

global_oso.k8Resource.container.prefix

This is an optional parameter.

Specifies the value that is prefixed to all the container names of OSO.

This value is used to prefix to all the container names of OSO.

Data Type: String

Default Value: ""

Range: NA

global_oso.k8Resource.container.suffix

This is an optional parameter.

Specifies the value that is suffixed to all the container names of OSO.

This value is used to suffixed to all the container names of OSO.

Data Type: String

Default Value: ""

Range: NA

global_oso.serviceAccountNameAlertMgr

This is an optional parameter.

Specifies the ServiceAccount name to be used for Alertmanager.

Data Type: String

Default Value: ""

Range: NA

global_oso.customExtension.allResources.labels

This is an optional parameter.

Specifies the custom labels that should be added to all the OSO Kubernetes resources.

This can be used to add custom label(s) to all Kubernetes resources that are created by OSO helm chart.

Data Type: String

Default Value: {}

Range: NA

global_oso.customExtension.lbServices.labels

This is an optional parameter.

Specifies the custom labels required to be added to OSO services that are considered as load balancer type. This can be used to add custom label(s) to all load balancer type services that are created by OSO helm chart.

Data Type: String

Default Value: {}

Range: NA

global_oso.customExtension.nonlbServices.labels

This is an optional parameter.

Specifies the custom labels to be added to OSO services that are considered as not load balancer type. This can be used to add custom label(s) to all non-load balancer type services that is created by OSO helm chart.

Data Type: String

Default Value: {}

Range: NA

global_oso.customExtension.lbStatefulSets.labels

This is an optional parameter.

Specifies the custom labels to be added to OSO services that are considered as stateful sets with load balancers. This can be used to add custom label(s) to all stateful sets with load balancer services that is created by OSO helm chart.

Data Type: String

Default Value: {}

Range: NA

annotations

This is an optional parameter.

Specifies the annotations that should be added to all the OSO Kubernetes resources.

Data Type: String

Default Value: {}

Range: NA

replicaCount

This is a mandatory parameter.

Indicates the number of replica pods used for the OSO deployment.

Data Type: Integer

Default Value: 2

Range: 1 or greater

revisionHistoryLimit

This is an optional parameter.

Indicates the number of previous ReplicaSets to retain for rollback.

The default Kubernetes value is 10.

Data Type: Integer

Default Value: 10

Range: 0 or greater

image.repository

This is a mandatory parameter.

Specifies the container image repository for Alertmanager.

Data Type: String

Default Value: NA

Range: NA

Placeholder: ALERTMANAGER-REPO-ADDRESS

image.pullPolicy

This is an optional parameter.

Specifies the image pull policy for the alert configuration container image. The pull policy controls if and when images are refreshed from the repository.

  • IfNotPresent—Pulls the image only once, and it doesn't try again.
  • Always—always pulls the image when the deployment is created.
  • Never—it doesn't pull the image when the deployment is created.

Data Type: String

Default Value: IfNotPresent

Range: Always, IfNotPresent, Never

image.tag

This is a mandatory parameter.

Specifies the version tag for the Alertmanager image.

Note: Do not change the default value.

Data Type: String

Default Value: 0.28.0

Range: NA

baseURL

This is an optional parameter.

Specifies the full external URL at which Alertmanager is accessible.

Data Type: String

Default Value: http://localhost/CLUSTER-NAME/alertmanager

Range: NA

extraArgs.data.retention

This is an optional parameter.

Specifies retention time for Alertmanager data.

Data Type: String

Default Value: NA

Range: NA

Place holder: RETENTION-TIME-ALM

nameOverride

This is an optional parameter.

Specifies a custom name override for the Alertmanager release.

Data Type: String

Default Value: alm

Range: NA

fullnameOverride

This is an optional parameter.

Specifies the fully qualified name override for all resources.

Data Type: String

Default Value: ""

Range: NA

namespaceOverride

This is an optional parameter.

Specifies the namespace in which resources are deployed.

Data Type: String

Default Value: ""

Range: NA

automountServiceAccountToken

This is an optional parameter.

Specifies if pods should be auto-assigned the service account token.

If the value is set to true, the pods are auto-assigned with the service account token.

If the value is set to false, the pods are not assigned with the service account token.

Data Type: Boolean

Default Value: true

Range: true, false

serviceAccount.create

This is a mandatory parameter.

Specifies whether the service account is created automatically or not for the alert manager files.

If the value is set to true, it automatically creates a service account for the alert manager files.

If the value is set as false, create a service account manually for the alert manager files.

Data Type: Boolean

Default Value: true

Range: true, false

Placeholder: USE-DEFAULT-SVCACCOUNT-ALM

serviceAccount.annotations

This is an optional parameter.

Specifies the annotations to be added to the ServiceAccount.

Data Type: String

Default Value: {}

Range: NA

serviceAccount.name

This is an optional parameter.

Specifies the service account name for the alert manager deployment.

If the value of serviceAccount.create is set to true, it automatically generates a service account name for the alert manager files.

If the value of serviceAccount.create is set to false, it uses the default service account name, which is created already.

Data Type: String

Default Value: ""

Range: Any string

podSecurityContext.fsGroup

This is an optional parameter.

Specifies the filesystem group ID for Alertmanager pods.

Data Type: Integer

Default Value: 65534

Range: NA

securityContext.capabilities.drop

This is a mandatory parameter.

Specifies that some previleges are given to process but not with all the privileges of the root user.

If the value is set as ALL, all capabilities are dropped or no capabilities are given.

Data Type: List

Default Value: NA

Range: ["KILL", "MKNOD", "SETUID", "SETGID", "NET_RAW", "ALL"]

Place holder: ["KILL", "MKNOD", "SETUID", "SETGID", "NET_RAW"]

securityContext.runAsUser

This is a mandatory parameter.

Specifies the user ID to run the entrypoint of the container process.

Note: Do not change this value.

Data Type: Integer

Default Value: 65534

Range: NA

securityContext.runAsNonRoot

This is a mandatory parameter.

Indicates that the container must run as a non-root user.

If the value is set as true, the Kubelet validates the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does.

If the value is set as false, the validations are not performed.

Data Type: Boolean

Default Value: true

Range: true, false

securityContext.runAsGroup

This is a mandatory parameter.

Specifies the group user ID to run the entrypoint of the container process.

Note: Do not change this value.

Data Type: Integer

Default Value: 65534

Range: NA

securityContext.allowPrivilegeEscalation

This is a mandatory parameter.

Specifies if a process can gain more privileges than its parent process.

If this value is set as true, the process can gain more privileges than its parent process.

If this value is set as false, the process can't gain more privileges than its parent process.

Data Type: Boolean

Default Value: true

Range: true, false

service.annotations

This is an optional parameter.

Specifies the additional annotations for the Alertmanager service.

Data Type: String

Default Value: {}

Range: NA

service.labels

This is an optional parameter.

Specifies the additional labels for the Alertmanager service.

Data Type: String

Default Value: {}

Range: NA

service.type

This is an optional parameter.

Specifies the service type for exposing Alertmanager.

Data Type: String

Default Value: ClusterIP

Range: ClusterIP, NodePort, LoadBalancer, ExternalName

service.port

This is an optional parameter.

Specifies the port to expose on the Alertmanager service.

Data Type: Integer

Default Value: 80

Range: 1–65535

service.targetPort

This is an optional parameter.

Specifies the target container port for Alertmanager traffic.

Data Type: Integer

Default Value: 9093

Range: 1–65535

service.clusterPort

This is an optional parameter.

Specifies the port used for intra-cluster Alertmanager communication.

Data Type: Integer

Default Value: 9094

Range: 1–65535

service.loadBalancerIP

This is a conditional parameter.

Specifies a static external IP address to use for the LoadBalancer service type.

Note: If the value of service.type is set as LoadBalancer, then set the value for this parameter.

Data Type: String

Default Value: ""

Range: Any IPv4/IPv6 address

service.loadBalancerSourceRanges

This is an optional parameter.

Specifies the allowed IP source ranges for LoadBalancer access.

Data Type: List

Default Value: []

Range: NA

service.extraPorts

This is an optional parameter.

Specifies an extra list of additional ports exposed by the Alertmanager service.

Data Type: List

Default Value: []

Range: NA

service.ipDualStack.enabled

This is an optional parameter.

Specifies if IP dual-stack is enabled for the Alertmanager service.

If the value is set as true, dual stack is supported for Alertmanager.

If the value is set as false, dual stack support is unavailable for Alertmanager.

Data Type: String

Default Value:NA

Range: true, false

Placeholder: ENABLE_DUAL_STACK

service.ipDualStack.ipFamilies

This is an optional parameter.

Specifies the order of IP families (for example, IPv4, IPv6) for dual-stack networking.

Data Type: List

Default Value: ["IPv6","IPv4"]

Range: ["IPv6","IPv4"], ["IPv4","IPv6"]

service.ipDualStack.ipFamilyPolicy

This is an optional parameter.

Specifies the dual-stack policy for the Alertmanager service, such as "PreferDualStack".

Data Type: String

Default Value: PreferDualStack

Range: NA

resources.limits.cpu

This is an optional parameter.

Specifies the maximum CPU allocated for Alertmanager pods.

Data Type: String

Default Value: 500m

Range: NA

resources.limits.memory

This is an optional parameter.

Specifies the maximum memory available to Alertmanager pods.

Data Type: String

Default Value: 200Mi

Range: NA

resources.limits.ephemeral-storage

This is an optional parameter.

Specifies the maximum ephemeral storage allowed for Alertmanager pods to control disk usage.

Data Type: String

Default Value: 1Gi

Range: NA

resources.requests.cpu

This is an optional parameter.

Specifies the minimum CPU requested for Alertmanager pods.

Data Type: String

Default Value: 100m

Range: NA

resources.requests.memory

This is an optional parameter.

Specifies the minimum memory requested for Alertmanager pods, reserving required memory for stable operation.

Data Type: String

Default Value: 32Mi

Range: NA

resources.requests.ephemeral-storage

This is an optional parameter.

Specifies the minimum ephemeral storage requested for Alertmanager pods, reserving minimum disk space.

Data Type: String

Default Value: 1Gi

Range: NA

nodeSelector

This is an optional parameter.

Specifies node selector labels for scheduling Alertmanager pods on suitable nodes.

Data Type: String

Default Value: {}

Range: NA

statefulSet.annotations

This is an optional parameter.

Specifies annotations added to the Alertmanager StatefulSet resource.

Data Type: String

Default Value: {}

Range: NA

podAnnotations

This is an optional parameter.

Specifies additional pod-level annotations for Alertmanager pods.

Data Type: String

Default Value: {}

Range: NA

podLabels

This is an optional parameter.

Specifies additional labels for Alertmanager pods.

Data Type: String

Default Value: {}

Range: NA

podDisruptionBudget.minAvailable

This is an optional parameter.

Specifies the minimum number of Alertmanager pods that must be available during pod disruptions.

Data Type: Integer

Default Value: 1

Range: 0 or greater

command

This is an optional parameter.

Specifies custom command(s) for launching Alertmanager containers.

Data Type: List

Default Value: []

Range: NA

persistence.enabled

This is an optional parameter.

Specifies whether persistent storage is enabled for Alertmanager.

If the value is set as true, persistent storage is enabled for Alertmanager.

If the value is set as false, persistent storage is disabled for Alertmanager.

Data Type: Boolean

Default Value: true

Range: true, false

persistence.storageClass

This is an optional parameter.

Specifies the Kubernetes storage class used for persistent Alertmanager storage.

Data Type: String

Default Value: ALM-STORAGE-CLASS

Range: NA

persistence.accessModes

This is an optional parameter.

Specifies the access modes (for example, ReadWriteOnce) for persistent Alertmanager storage volumes.

Data Type: List

Default Value: [ReadWriteOnce]

Range: NA

persistence.size

This is a mandatory parameter.

Specifies the size for persistent storage to be provisioned for Alertmanager.

Example: 8Gi

Data Type: String

Default Value: ALM-PV-SIZE

Range: NA

config.enabled

This is a mandatory parameter.

Specifies whether Alertmanager configuration is active or inactive.

If the value is set as true, Alertmanager configuration is active.

If the value is set as false, Alertmanager configuration is inactive.

Data Type: Boolean

Default Value: true

Range: true, false

config.global

This is an optional parameter.

Specifies the global-level configuration settings for Alertmanager, such as SMTP or Slack integration.

Data Type: String

Default Value: {}

Range: NA

config.templates

This is an optional parameter.

Specifies file paths to Alertmanager template files, used for custom alert notifications.

Data Type: List

Default Value: ['/etc/alertmanager/*.tmpl']

Range: NA

config.receivers

This is an optional parameter.

Specifies the alert receivers for routing.

Data Type: List

Default Value: NA

Range: NA

config.route.group_wait

This is an optional parameter.

Specifies how long to wait to buffer alerts before sending a notification.

Data Type: String

Default Value: 10s

Range: NA

Unit: Seconds

config.route.group_interval

This is an optional parameter.

Specifies how often to send a notification for repeating alert groups.

Data Type: String

Default Value: 5m

Range: NA

Unit: Minutes

config.route.receiver

This is a mandatory parameter.

Specifies the default receiver to which alerts will be sent.

Data Type: String

Default Value: default-receiver

Range: NA

config.route.repeat_interval

This is an optional parameter.

Specifies the wait time duration to resend a notification about a given alert.

Data Type: String

Default Value: 3h

Range: NA

Unit: Hours

configmapReload.enabled

This is an optional parameter.

Specifies whether the configmap-reload deployment is enabled or disabled.

If the value is set as true, configmap-reload deployment is enabled.

If the value is set as false, configmap-reload deployment is disabled.

Data Type: Boolean

Default Value: true

Range: true, false

configmapReload.name

This is an optional parameter.

Specifies the configmap-reload container name.

Data Type: String

Default Value: configmap-reload

Range: NA

Placeholderconfigmap-reload

configmapReload.image.repository

This is an optional parameter.

Specifies the repository for the configmap-reload container image.

Data Type: String

Default Value: CONFIGMAP-RELOAD-REPO-ADDRESS

Range: NA

configmapReload.image.tag

This is an optional parameter.

Specifies the image tag for the configmap-reload container.

Data Type: String

Default Value: 0.15.0

Range: NA

configmapReload.image.pullPolicy

This is an optional parameter.

Specifies the image pull policy for the configmap-reload container image.

Data Type: String

Default Value: IfNotPresent

Range: IfNotPresent, Always, Never

configmapReload.resources.limits.cpu

This is an optional parameter.

Specifies the maximum CPU resources for configmap-reload. Limiting resource consumption is strongly recommended.

Data Type: String

Default Value: 400m

Range: NA

Unit: millicores

configmapReload.resources.limits.memory

This is an optional parameter.

Specifies the maximum memory allowed for the configmap-reload container.

Data Type: String

Default Value: 124Mi

Range: NA

Unit: Mebibytes

configmapReload.resources.limits.ephemeral-storage

This is an optional parameter.

Specifies the ephemeral storage limit for the configmap-reload container.

Data Type: String

Default Value: 1Gi

Range: NA

Unit: Gibibytes

configmapReload.resources.requests.cpu

This is an optional parameter.

Specifies the minimum CPU request for the configmap-reload container.

Data Type: String

Default Value: 400m

Range: NA

Unit: millicores

configmapReload.resources.requests.memory

This is an optional parameter.

Specifies the minimum memory request for the configmap-reload container.

Data Type: String

Default Value: 124Mi

Range: NA

Unit: Mebibytes

configmapReload.resources.requests.ephemeral-storage

This is an optional parameter.

Specifies the minimum ephemeral storage request for the configmap-reload container.

Data Type: String

Default Value: 1Gi

Range: NA

Unit: Gibibytes

configmapReload.securityContext.capabilities.drop

This is a mandatory parameter.

Specifies that some previleges are given to process but not with all the privileges of the root user in the configmap-reload container.

If the value is set as ALL, all capabilities are dropped or no capabilities are given.

Note: Do not change the default value.

Data Type: List

Default Value: ["KILL", "MKNOD", "SETUID", "SETGID", "NET_RAW"]

Range: ["KILL", "MKNOD", "SETUID", "SETGID", "NET_RAW", "ALL"]

configmapReload.securityContext.runAsUser

This is an optional parameter.

Specifies the user ID to run configmap-reload as, usually set to a non-root value.

Note: Do not change the default value.

Data Type: Integer

Default Value: 65534

Range: NA

configmapReload.securityContext.runAsNonRoot

This is a mandatory parameter.

Specifies if configmap-reload must run as a non-root user.

If the value is set as true, the Kubelet validates the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does.

If the value is set as false, the validations are not performed.

Data Type: Boolean

Default Value: true

Range: true, false

configmapReload.securityContext.runAsGroup

This is a mandatory parameter.

Specifies the group user ID to run the configmap-reload process in the container.

Note: Do not change this value.

Data Type: Integer

Default Value: 65534

Range: NA

configmapReload.securityContext.allowPrivilegeEscalation

This is a mandatory parameter.

Specifies if a process can gain more privileges than its parent process for the configmap-reload container.

If this value is set as true, the process can gain more privileges than its parent process for the configmap-reload container.

If this value is set as false, the process can't gain more privileges than its parent process for the configmap-reload container.

Data Type: Boolean

Default Value: false

Range: true, false

verticalPodAutoscaler.enabled

This is an optional parameter.

Specifies if vertical pod auto-scaling is enabled or not.

If the value is set as true, vertical pod auto-scaling is enabled.

If the value is set as false, vertical pod auto-scaling is disabled.

Data Type: Boolean

Default Value: false

Range: true, false

3.2.3 Alert Config Configuration Parameters

This section provides the alert config configuration parameters details that are used to install the OSO CSAR packages manually.

Configure the ocoso_csar_25_2_200_0_0_0_alr_config_custom_values.yaml with the defined values.

Table 3-4 OSO AlertConfig Configuration Parameters

Parameter Name Description Details
annotations

This is an optional parameter.

Specifies the custom annotations to be added to OSO deployments that are associated to disable the sidecar injections into OSO pods.

Note: This parameter is mandatory if ASM is enabled.

Example:
annotations:
    - sidecar.istio.io/inject: "false"

Data Type: String

Default Value: {}

Range: NA

config.weight

This is an optional parameter.

Specifies an operator-defined value to control alert prioritization or execution order for available deployments.

Data Type: String

Default Value: ""

Range: NA

containerSecurityContext.allowPrivilegeEscalation

This is a mandatory parameter.

This parameter controls whether a process can gain more privileges than its parent process.

If this value is set as true, the process can gain more privileges than its parent process.

If this value is set as false, the process can't gain more privileges than its parent process.

Specifies whether the container can gain additional privileges. Disabling privilege escalation increases the overall pod security.

Data Type: Boolean

Default Value: false

Range: true, false

containerSecurityContext.capabilities.drop

This is a mandatory parameter.

Indicates that some privileges are given to the process, but not with all the privileges of the root user. or

This attribute indicates when security context at the container level is enabled; this parameter can be used to drop all the default capabilities provided by the orchestration system.

Note: Do not change the default value.

Data Type: List

Default Value: ["KILL", "MKNOD", "SETUID", "SETGID", "NET_RAW"]

Range: List of capabilities

containerSecurityContext.fsGroup

This is a mandatory parameter.

Specifies the file system group ID for mounted volumes, providing group permissions to shared storage used by the container.

Note: Do not change the default value.

Data Type: Integer

Default Value: 65534

Range: NA

containerSecurityContext.runAsGroup

This is a mandatory parameter.

Specifies the group ID used by container processes to enforce security and resource access control.

Note: Do not change the default value.

Data Type: Integer

Default Value: 65534

Range: NA

containerSecurityContext.runAsNonRoot

This is a mandatory parameter.

Specifies that the container must run as a non-root user.

If the value is set as true, the Kubelet validates the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does.

If the value is set as false, the validations are not performed.

Data Type: Boolean

Default Value: false

Range: true, false

containerSecurityContext.runAsUser

This is a mandatory parameter.

Specifies the User Id (UID) to run the entrypoint of the container process.

Note: Do not change this value.

Data Type: Integer

Default Value: 65534

Range: NA

global_oso_alr_config.customExtension.allResources.annotations

This is an optional parameter.

Specifies the annotations to add to all created resources in the deployment.

Specifies the custom annotations that should be added to all the OSO deployments for alert configuration resources.

Data Type: String

Default Value: {}

Range: NA

global_oso_alr_config.customExtension.allResources.labels

This is an optional parameter.

Specifies the custom annotations that should be added to all the OSO deployments for alert configuration.

Data Type: String

Default Value: {}

Range: NA

hookJobResources.limits.cpu

This is an optional parameter.

Specifies the maximum CPU resource allocated to hook jobs, including the Helm test job.

Data Type: Integer

Default Value: 0.5

Range: NA

hookJobResources.limits.memory

This is an optional parameter.

Specifies the maximum memory allocated to hook jobs, including the helm test job.

Data Type: String

Default Value: 512Mi

Range: NA

Unit: Mebibytes

hookJobResources.requests.cpu

This is an optional parameter.

Specifies the amount of CPU that the system will guarantee for the hook job resource, and Kubernetes will use this value to decide on which node to place the pod.

Data Type: Integer

Default Value: 0.5

Range: NA

hookJobResources.requests.memory

This is an optional parameter.

Specifies the maximum memory for requests allocated to hook jobs, including the helm test job. The memory that the system will guarantee for the hook job resource, and Kubernetes will use this value to decide on which node to place the pod.

Data Type: String

Default Value: 512Mi

Range: NA

Unit: Mebibytes

image.pullPolicy

This is a mandatory parameter.

Specifies the image pull policy for the alert configuration container image. The pull policy controls if and when images are refreshed from the repository.

  • IfNotPresent—Pulls the image only once, and it doesn't try again.
  • Always—always pulls the image when the deployment is created.
  • Never—it doesn't pull the image when the deployment is created.

Data Type: String

Default Value: IfNotPresent

Range: Always, IfNotPresent, Never

image.repository

This is a mandatory parameter.

Specifies the container image repository URL of the oso-alr-config image where it is located.

Example: occne.io/occne/oso_alert_config

Data Type: String

Default Value: NA

Placeholder: OSO_ALERT_CONFIG_IMAGE

Range: NA

image.tag

This is a mandatory parameter.

Specifies the version tag for the alert configuration container image.

Example: 25.2.200

Data Type: String

Default Value: NA

Placeholder: OSO_VERSION_PLACEHOLDER

Range: NA

osoConfigMapName

This is a mandatory parameter.

Specifies the name of the OSO Prometheus ConfigMap which contains the alert configuration. Set this parameter to ensure Prometheus loads the correct alerting rules and settings.

Example: oso-prom-svr

Data Type: String

Default Value: NA

Placeholder: OSO-PROM-CONFIGMAP-NAME

Range: NA

serviceAccount.create

This is a mandatory parameter.

Specifies whether the service account is created automatically or not for the alert configuration files.

If the value is set as true, it automatically creates a service account for the alert configuration files.

If the value is set as false, create a service account manually for the alert configuration files.

Data Type: Boolean

Default Value: false

Range: true, false

serviceAccount.name

This is a mandatory parameter.

Specifies the service account name for the alert configuration deployment.

If the value of serviceAccount.create is set as true, it automatically generates a service account name for the alert configuration files.

If the value of serviceAccount.create is set as false, it uses the default service account name, which is created already.

Data Type: String

Default Value: NA

Range: NA

Placeholder: oso-config-serviceaccount

3.2.4 Alert Processing Microservice Configuration Parameters

This section provides the Alert Processing Microservice configuration parameters details that are used to install the OSO CSAR packages manually.

Configure ocoso_csar_25_2_200_0_0_0_apm_custom_values.yaml with the specific values.

Table 3-5 OSO Alert Processing Microservice Configuration Parameter

Parameter Name Description Details
useasm

This is an optional parameter.

Indicates if ASM feature is enabled or disabled.

If the value is set to true, ASM feature is enabled.

If the value is set to false, ASM feature is disabled.

Data Type: Boolean

Default Value: false

Placeholder: <USEASM>

Range: false, true

apmEnabled

This is an optional parameter.

Indicates if the Alert Processing Microservice (APM) feature is enabled or disabled.

If the value is set to true, APM feature is enabled.

If the value is set to false, APM feature is disabled.

Data Type: Boolean

Default Value: false

Placeholder: <BOOL-APM-ENABLED>

Range: false, true

namespace

This is a mandatory parameter.

Indicates the Kubernetes namespace where the service will be deployed.

Data Type: String

Default Value: oso

Placeholder: <NAMESPACE>

Range: NA

clustername

This is a mandatory parameter.

Indicates the cluster name prefix that appears in GUI URLs.

Comment this line if the prefix is not needed.

Data Type: String

Default Value: ""

Placeholder: <CLUSTER-NAME>

Range: NA

resources.requests.cpu

This is a mandatory parameter.

Indicates the minimum amount of CPU resources guaranteed for the APM container.

Data Type: String

Default Value: 2000m

Placeholder: <APM-CPU-REQUEST>

Range: NA

Unit: millicpu

resources.requests.memory

This is a mandatory parameter.

Indicates the minimum amount of memory resources guaranteed for the APM container.

Data Type: String

Default Value: 2Gi

Placeholder: <APM-MEMORY-REQUEST>

Range: NA

Unit: Gi (gibibytes)

resources.requests.ephemeral-storage

This is a mandatory parameter.

Indicates the minimum ephemeral storage allocated for the APM container.

Data Type: String

Default Value: 1Gi

Placeholder: <APM-EPHEMERAL-STORAGE-REQUEST>

Range: NA

Unit: Gi (gibibytes)

resources.limits.cpu

This is a mandatory parameter.

Indicates the maximum amount of CPU resources allowed for the APM container; used for burst scenarios.

Data Type: String

Default Value: 4000m

Placeholder: <APM-CPU-LIMIT>

Range: NA

Unit: millicpu

resources.limits.memory

This is a mandatory parameter.

Indicates the maximum amount of memory resources allowed for the APM container to prevent resource overuse.

Data Type: String

Default Value: 4Gi

Placeholder: <APM-MEMORY-LIMIT >

Range: NA

Unit: Gi (gibibytes)

resources.limits.ephemeral-storage

This is a mandatory parameter.

Indicates the maximum ephemeral storage allowed for APM container.

Data Type: String

Default Value: 4Gi

Placeholder: <APM-EPHEMERAL-STORAGE-LIMIT >

Range: NA

Unit: Gi (gibibytes)

fullnameOverride

This is a mandatory parameter.

Indicates the APM service name.

Note: This name should match with the <APM-SVC-NAME > in the Alertmanager custom values.yaml file.

Data Type: String

Default Value: oso-apm

Placeholder: <APM-SVC-NAME >

Range: NA

global_oso.k8Resource.container.prefix

This is an optional parameter.

Indicates the prefix to be added to container names in the OSO deployment.

Data Type: String

Default Value: NA

Range: NA

global_oso.k8Resource.container.suffix

This is an optional parameter.

Indicates the suffix to be added to container names in the OSO deployment.

Data Type: String

Default Value: NA

Range: NA

global_oso.serviceAccountNameAPM

This is an optional parameter.

Indicates the custom service account name for APM, if specified.

Data Type: String

Default Value: ""

Range: NA

global_oso.customExtension.allResources.labels

This is an optional parameter.

Indicates the key/value labels to be applied to all resources as defined by TYPE1 label.

Data Type: Key Value Pair

Default Value: {}

Range: Any key/value pairs

global_oso.customExtension.lbServices.labels

This is an optional parameter.

Indicates the key/value labels to be applied to load balancer services as defined by TYPE2 label.

Data Type: Key Value Pair

Default Value: {}

Range: Any key/value pairs

global_oso.customExtension.nonlbServices.labels

This is an optional parameter.

Indicates key/value labels to be applied to non-load balancer services as defined by TYPE2 label.

Data Type: Key Value Pair

Default Value: {}

Range: Any key/value pairs

global_oso.customExtension.lbDeployments.labels

This is an optional parameter.

Indicates key/value labels to be applied to load balancer deployments as defined by TYPE2 label.

Data Type: Key Value Pair

Default Value: {}

Range: Any key/value pairs

global_oso.customExtension.nonlbDeployments.labels

This is an optional parameter.

Indicates key/value labels to be applied to non-load balancer deployments as defined by TYPE2 label.

Data Type: Key Value Pair

Default Value: {}

Range: Any key/value pairs

annotations

This is an optional parameter.

Indicates custom annotations to be added to OSO pods.

Use this parameter to disable sidecar injections or similar.

Data Type: Key Value Pair

Default Value: {}

Range: Any key/value pairs

deploymentAnnotations

This is an optional parameter.

Indicates additional annotations for the deployment.

Data Type: Key Value Pair

Default Value: {}

Range: Any key/value pairs

replicaCount

This is a mandatory parameter.

Indicates the number of replica pods for the deployment.

Data Type: Integer

Default Value: 1

Range: 1 or more

podAnnotations

This is an optional parameter.

Indicates the additional annotations for pods.

Data Type: Key Value Pair

Default Value: {}

Range: Any key/value pairs

podLabels

This is an optional parameter.

Indicates the labels to be added to pods.

Data Type: Key Value Pair

Default Value: {}

Range: Any key/value pairs

revisionHistoryLimit

This is an optional parameter.

Indicates the number of previous ReplicaSets to retain for rollback.

The default Kubernetes value is 10.

Data Type: Integer

Default Value: 10

Range: NA

automountServiceAccountToken

This is an optional parameter.

Indicates whether the service account token should be automatically mounted or not.

If the value is set to true, the service account tokens are automatically mounted.

If the value is set to false, the service account tokens are not mounted automatically.

Data Type: Boolean

Default Value: true

Range: true, false

serviceAccount.create

This is a mandatory parameter.

Indicates whether a service account should be created or not for APM.

If the value is set to true, service account is created for APM.

If the value is set to false, service account is not created for APM.

Data Type: Booelan

Default Value: true

Placeholder: <USE-DEFAULT-SVCACCOUNT-APM>

Range: true, false

serviceAccount.annotations

This is an optional parameter.

Indicates the annotations to add to the service account.

Data Type: Key Value Pair

Default Value: {}

Range: Any key/value pairs

serviceAccount.name

This is an optional parameter.

Indicates the name of the service account to use.

If a name is not set and the value of serviceAccount.create is true, a name is generated automatically.

Data Type: String

Default Value: ""

Range: NA

nodeSelector

This is an optional parameter.

Indicates node selector labels for pod assignment.

Data Type: Key Value Pair

Default Value: {}

Range: Any key/value pairs

securityContext.capabilities.drop

This is a mandatory parameter.

Indicates the Linux capabilities to drop from the container for enhanced security.

Data Type: List of Strings

Default Value: ["KILL", "MKNOD", "SETUID", "SETGID", "NET_RAW"]

Range: NA

securityContext.runAsUser

This is a mandatory parameter.

Indicates the user ID the process runs as inside the container.

Data Type: Integer

Default Value: 65534

Range: 0 - 65535

securityContext.runAsNonRoot

This is a mandatory parameter.

Indicates whether the container must run as a non-root user or not.

If the value is set to true, the container runs as non-root user.

If the value is set to false, the container does not run as a non-root user.

Data Type: Boolean

Default Value: true

Range: true or false

securityContext.runAsGroup

This is a mandatory parameter.

Indicates the primary group ID the process runs as inside the container.

Data Type: Integer

Default Value: 65534

Range: 0 - 65535

securityContext.allowPrivilegeEscalation

This is a mandatory parameter.

Indicates whether privilege escalation is allowed inside the container or not.

If the value is set to true, privilege escalation is allowed inside the container.

If the value is set to false, privilege escalation is not allowed inside the container.

Data Type: Boolean

Default Value: false

Range: true or false

command

This is an optional parameter.

Indicates the custom commands to be run in the container on startup.

Data Type: List

Default Value: []

Range: Any list of command strings

env.severityList

This is a mandatory parameter.

Indicates the list of alert severities to be used in the environment configuration.

Data Type: String

Default Value: SEVERITYLIST

Range: minor, major, fatal,informational, warning, error, critical

env.kafkaIp

This is a conditional parameter.

Configure this parameter when apmenabled is set to true.

Indicates the external bootstrap service IP which maps to the Kafka brokers.

Internal bootstrap service IP if APM or OSO is deployed in the same cluster.

Data Type: String

Default Value: NA

Placeholder: KAFKAIP

Range: NA

env.kafkaPort

This is a conditional parameter.

Configure this parameter when apmenabled is set to true.

Indicates the external bootstrap service port which maps to the Kafka brokers.

Internal bootstrap service port if APM or OSO is deployed in the same cluster.

Data Type: String

Default Value: NA

Placeholder: KAFKAPORT

Range: NA

env.kafkaTopic

This is a conditional parameter.

Configure this parameter when apmenabled is set to true.

Indicates the Kafka topic to which APM will publish alert messages.

Data Type: String

Default Value: NA

Placeholder: KAFKATOPIC

Range: NA

env.kafkaGroupId

This is a conditional parameter.

Configure this parameter when apmenabled is set to true.

Indicates a name that the user provides.

Data Type: String

Default Value: NA

Placeholder: KAFKAGROUPID

Range: NA

env.kafkaBatchingLinger

This is an optional parameter.

Indicates the time that the Kafka producer waits before sending a batch, allowing more messages to be grouped together.

Note: Do not change the default value. This parameter influences internal batching, timeouts, and retry behaviors for the Kafka producer and APM’s messaging workflow. Adjust the value only if specifically required for Kafka performance tuning or troubleshooting purposes.

Data Type: String

Default Value: "50"

Range: NA

Unit: milliseconds

env.kafkaMaxBatchSize

This is an optional parameter.

Indicates the maximum number of messages in a batch to be included before the producer flushes the batch to Kafka.

Note: Do not change the default value. This parameter influences internal batching, timeouts, and retry behaviors for the Kafka producer and APM’s messaging workflow. Adjust the value only if specifically required for Kafka performance tuning or troubleshooting purposes.

Data Type: String

Default Value: "500"

Range: NA

env.kafkaDeliveryTimeout

This is an optional parameter.

Indicates the timeout for an individual Producer message write operation.

Note: Do not change the default value. This parameter influences internal batching, timeouts, and retry behaviors for the Kafka producer and APM’s messaging workflow. Adjust the value only if specifically required for Kafka performance tuning or troubleshooting purposes.

Data Type: String

Default Value: "60000"

Range: NA

Unit: milliseconds

env.kafkaRetryBackoff

This is an optional parameter.

Indicates the wait time before retrying a failed Kafka write operation.

Note: Do not change the default value. This parameter influences internal batching, timeouts, and retry behaviors for the Kafka producer and APM’s messaging workflow. Adjust the value only if specifically required for Kafka performance tuning or troubleshooting purposes.

Data Type: String

Default Value: "100"

Range: NA

Unit: milliseconds

env.kafkaRetryBackoffMax

This is an optional parameter.

Indicates the maximum wait time on successive retries for Kafka writes.

Note: Do not change the default value. This parameter influences internal batching, timeouts, and retry behaviors for the Kafka producer and APM’s messaging workflow. Adjust the value only if specifically required for Kafka performance tuning or troubleshooting purposes.

Data Type: String

Default Value: "1000"

Range: NA

Unit: milliseconds

env.kafkaCompressionType

This is an optional parameter.

Indicates the compression type (like none, gzip, and so on) used when sending messages to Kafka.

Note: Do not change the default value. This parameter influences internal batching, timeouts, and retry behaviors for the Kafka producer and APM’s messaging workflow. Adjust the value only if specifically required for Kafka performance tuning or troubleshooting purposes.

Data Type: String

Default Value: "none"

Range: none, gzip, and so on

env.kafkaRequestTimeout

This is an optional parameter.

Indicates the maximum time the producer waits for a server response for each request to Kafka.

Note: Do not change the default value. This parameter influences internal batching, timeouts, and retry behaviors for the Kafka producer and APM’s messaging workflow. Adjust the value only if specifically required for Kafka performance tuning or troubleshooting purposes.

Data Type: String

Default Value: "20000"

Range: NA

Unit: milliseconds

env.APMPollWait

This is an optional parameter.

Indicates the time that the APM waits between polling Kafka for delivery events.

Note: Do not change the default value. This parameter influences internal batching, timeouts, and retry behaviors for the Kafka producer and APM’s messaging workflow. Adjust the value only if specifically required for Kafka performance tuning or troubleshooting purposes.

Data Type: String

Default Value: "0.001"

Range: NA

Unit: seconds

env.APMMsgWriteTimeout

This is an optional parameter.

Indicates the maximum time to wait for Kafka message delivery acknowledgment per message.

Note: Do not change the default value. This parameter influences internal batching, timeouts, and retry behaviors for the Kafka producer and APM’s messaging workflow. Adjust the value only if specifically required for Kafka performance tuning or troubleshooting purposes.

Data Type: String

Default Value: "70"

Range: NA

Unit: seconds

image.repository

This is a mandatory parameter.

Indicates the repository location of the APM Docker image.

Data Type: String

Default Value: APM-REPO-ADDRESS

Range: Valid registry path

image.pullPolicy

This is a mandatory parameter.

Indicates the image pull policy for the Docker image.

Data Type: String

Default Value: IfNotPresent

Range: "Always", "IfNotPresent", or "Never"

image.tag

This is a mandatory parameter.

Indicates the image tag in docker repository.

Data Type: String

Default Value: 25.2.200

Placeholder: OSO_VERSION_PLACEHOLDER

Range: Any string value

imagePullSecrets

This is an optional parameter.

Indicates the list of image pull secrets needed to pull the image from the repository.

Data Type: List

Default Value: []

Range: List of secret objects

terminationGracePeriodSeconds

This is an optional parameter.

Indicates the duration in that Kubernetes waits before forcefully terminating the pod.

Data Type: Integer

Default Value: 40

Range: 0 or more

Unit: seconds

service.annotations

This is an optional parameter.

Indicates additional annotations to add to the service.

Data Type: Key Value Pair

Default Value: {}

Range: Any key/value pairs

service.labels

This is an optional parameter.

Indicates additional labels to add to the service.

Data Type: Key Value Pair

Default Value: {}

Range: Any key/value pairs

service.clusterIP

This is an optional parameter.

Indicates the cluster IP address for the service.

Data Type: String

Default Value: ""

Range: Valid IP as string or empty for auto-assignment

service.externalIPs

This is an optional parameter.

Indicates a list of external IPs for the service.

Data Type: List

Default Value: []

Range: List of valid IP addresses

service.loadBalancerIP

This is an optional parameter.

Indicates the load balancer IP address for the service.

Data Type: String

Default Value: ""

Range: Valid IP or empty

service.loadBalancerSourceRanges

This is an optional parameter.

Indicates the allowed source address ranges for service access via load balancer.

Data Type: List

Default Value: []

Range: List of valid IP addresses

service.ipDualStack.enabled

This is an optional parameter.

Indicates whether dual stack support is enabled for the service IP family.

if the value is set to true, dual stack support is enabled for the service IP family.

if the value is set to false, dual stack support is disabled for the service IP family.

Data Type: Boolean

Default Value: false

Placeholder:ENABLE_DUAL_STACK

Range: true, false

service.ipDualStack.ipFamilies

This is an optional parameter.

Indicates the IP families allowed for service assignment.

Data Type: List

Default Value: ["IPv6", "IPv4"]

Range: IPv4, IPv6

service.ipDualStack.ipFamilyPolicy

This is an optional parameter.

Indicates the policy for IP family assignment when dual stack is enabled.

  • If the value is set as "SingleStack", then OSO supports either IPv4 or IPv6.
  • If the value is set as "PreferDualStack", then OSO supports both IPv4 or IPv6.

    Note: When dual stack is supported, OSO prefers IPv6 over IPv4.

Data Type: String

Default Value: "PreferDualStack"

Range: "SingleStack", "PreferDualStack"

service.sessionAffinity

This is an optional parameter.

Indicates the session affinity to be used for the service.

Data Type: String

Default Value: None

Range: None

service.port

This is a mandatory parameter.

Indicates the main service port exposed by the APM service.

Data Type: Integer

Default Value: NA

Placeholder: APM-SVC-PORT

Range: NA

service.targetPort

This is a mandatory parameter.

Indicates the target port on the pod that receives the traffic.

Note: Do not change the default value.

Data Type: Integer

Default Value: 5000

Range: NA

service.extraPorts

This is an optional parameter.

Indicates a list of additional ports exposed on both services.

Note: Do not change the default value.

Data Type: List

Default Value: []

Range: NA

service.type

This is a mandatory parameter.

Indicates the service type for Kubernetes service configuration.

Data Type: String

Default Value: "ClusterIP"

Range: "ClusterIP", "NodePort", "LoadBalancer"