Updating Observability with Custom Non-Root User ID and Group ID
If observability is enabled, update the observability Helm release files with the
selected runAsUser, runAsGroup, and
fsGroup values. You can use non-root user ID and group ID that are
different from the Siebel non-root user ID and group ID or the same values as the Siebel
non-root user ID and group ID.
If Prometheus uses a local-storage persistent volume, ensure that the local storage
directory is owned by
<observability_run_as_user>:<observability_fs_group> before you
reconcile the Helm release changes:
sudo chown -R <observability_run_as_user>:<observability_fs_group> <local_storage_directory_path>
To update Observability with custom non-root user ID and group ID:
- Update the Prometheus Helm release as follows:
- Open the Prometheus Helm release
file:
vi /home/opc/siebel/<ENV_ID>/<env_namespace>-cloud-manager/flux-crm/apps/base/siebel_observability/prometheus.yaml - Under
spec.values, add thesecurityContextsection:apiVersion: helm.toolkit.fluxcd.io/v2 kind: HelmRelease metadata: name: prometheus namespace: <env_namespace> spec: releaseName: prometheus chart: spec: chart: ./prometheus sourceRef: kind: GitRepository name: <flux_helm_repo_name> namespace: <flux_helm_repo_namespace> interval: 10m install: timeout: 120m remediation: retries: 3 remediateLastFailure: true upgrade: timeout: 120m remediation: retries: 3 remediateLastFailure: true strategy: rollback uninstall: timeout: 30m values: alerting: <true_or_false> clusterDns: svc.cluster.local dbMonitoring: <true_or_false> configmap_reload: image: imagePullPolicy: Always registry: <user_registry_url> repository: <registry_prefix>/<env_namespace>/cm/configmap-reload tag: <configmap_reload_tag> securityContext: runAsGroup: <observability_run_as_group> runAsUser: <observability_run_as_user> fsGroup: <observability_fs_group>
- Open the Prometheus Helm release
file:
- Update the Prometheus Alertmanager Helm release as follows:
- Open the Prometheus Alertmanager Helm release
file:
vi /home/opc/siebel/<ENV_ID>/<env_namespace>-cloud-manager/flux-crm/apps/base/siebel_observability/prometheus_alertmanager.yaml - Under
spec.values, add thesecurityContextsection:apiVersion: helm.toolkit.fluxcd.io/v2 kind: HelmRelease metadata: name: prometheus-alertmanager namespace: <env_namespace> spec: releaseName: prometheus-alertmanager chart: spec: chart: ./prometheus-alert-manager sourceRef: kind: GitRepository name: <flux_helm_repo_name> namespace: <flux_helm_repo_namespace> interval: 5m install: timeout: 120m upgrade: timeout: 120m remediation: retries: 3 remediateLastFailure: true strategy: rollback uninstall: timeout: 30m values: alertmanager: image: registry: <user_registry_url> repository: <registry_prefix>/<env_namespace>/cm/alertmanager tag: <alertmanager_tag> pullPolicy: Always securityContext: runAsGroup: <observability_run_as_group> runAsUser: <observability_run_as_user> fsGroup: <observability_fs_group>
- Open the Prometheus Alertmanager Helm release
file:
- Update the Prometheus Adapter Helm release as follows:
- Open the Prometheus Adapter Helm release
file:
vi /home/opc/siebel/<ENV_ID>/<env_namespace>-cloud-manager/flux-crm/apps/base/siebel_observability/prometheus_adapter.yaml - Under
spec.values, add thepodSecurityContextsection:apiVersion: helm.toolkit.fluxcd.io/v2 kind: HelmRelease metadata: name: prometheus-adapter namespace: <env_namespace> spec: releaseName: prometheus-adapter chart: spec: chart: ./prometheus-adapter sourceRef: kind: GitRepository name: <flux_helm_repo_name> namespace: <flux_helm_repo_namespace> interval: 5m dependsOn: - name: prometheus install: timeout: 120m upgrade: timeout: 120m remediation: retries: 3 remediateLastFailure: true strategy: rollback uninstall: timeout: 30m values: prometheus_adapter: image: imagePullPolicy: Always registry: <user_registry_url> repository: <registry_prefix>/<env_namespace>/cm/prometheus-adapter tag: <prometheus_adapter_tag> podSecurityContext: runAsUser: <observability_run_as_user> runAsGroup: <observability_run_as_group> fsGroup: <observability_fs_group>
- Open the Prometheus Adapter Helm release
file:
- Update the Kube State Metrics Helm release as follows:
- Open the Kube State Metrics Helm release
file:
vi /home/opc/siebel/<ENV_ID>/<env_namespace>-cloud-manager/flux-crm/apps/base/siebel_observability/prometheus_kube_state_metrics.yaml - Under
spec.values, add thesecurityContextsection:apiVersion: helm.toolkit.fluxcd.io/v2 kind: HelmRelease metadata: name: kube-state-metrics namespace: <env_namespace> spec: releaseName: kube-state-metrics chart: spec: chart: ./kube-state-metrics sourceRef: kind: GitRepository name: <flux_helm_repo_name> namespace: <flux_helm_repo_namespace> interval: 5m install: timeout: 120m upgrade: timeout: 120m remediation: retries: 3 remediateLastFailure: true strategy: rollback uninstall: timeout: 30m values: kube_state_metrics: image: registry: <user_registry_url> repository: <registry_prefix>/<env_namespace>/cm/kube-state-metrics tag: <kube_state_metrics_tag> pullPolicy: Always securityContext: runAsGroup: <observability_run_as_group> runAsUser: <observability_run_as_user> fsGroup: <observability_fs_group>
- Open the Kube State Metrics Helm release
file:
- Update the Node Exporter Helm release as follows:
- Open the Node Exporter Helm release
file:
vi /home/opc/siebel/<ENV_ID>/<env_namespace>-cloud-manager/flux-crm/apps/base/siebel_observability/prometheus_node_exporter.yaml - Under
spec.values, add thesecurityContextsection:apiVersion: helm.toolkit.fluxcd.io/v2 kind: HelmRelease metadata: name: node-exporter namespace: <env_namespace> spec: releaseName: node-exporter chart: spec: chart: ./node-exporter sourceRef: kind: GitRepository name: <flux_helm_repo_name> namespace: <flux_helm_repo_namespace> interval: 5m install: timeout: 120m upgrade: timeout: 120m remediation: retries: 3 remediateLastFailure: true strategy: rollback uninstall: timeout: 30m values: node_exporter: image: registry: <user_registry_url> repository: <registry_prefix>/<env_namespace>/cm/node-exporter tag: <node_exporter_tag> pullPolicy: Always securityContext: runAsGroup: <observability_run_as_group> runAsUser: <observability_run_as_user> fsGroup: <observability_fs_group>
- Open the Node Exporter Helm release
file:
In the above examples:
<observability_run_as_user>specifies the user ID under which the observability component container processes run.<observability_run_as_group>specifies the group ID under which the observability container processes run.<observability_fs_group>specifies the file system group ID used for access to shared volumes.