Skip to content

Commit

Permalink
OBSDOCS-1550: Add assembly for 'Configuring user workload monitoring'…
Browse files Browse the repository at this point in the history
… section
  • Loading branch information
eromanova97 committed Dec 18, 2024
1 parent 0f93cce commit f6b3beb
Show file tree
Hide file tree
Showing 9 changed files with 190 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ By controlling placement and distribution of monitoring components, you can opti
If you move monitoring components by using node selector constraints, be aware that other constraints to control pod scheduling might exist for a cluster:

* Topology spread constraints might be in place to control pod placement.
* Hard anti-affinity rules are in place for Prometheus, Thanos Querier, Alertmanager, and other monitoring components to ensure that multiple pods for these components are always spread across different nodes and are therefore always highly available.
* Hard anti-affinity rules are in place for Prometheus, Alertmanager, and other monitoring components to ensure that multiple pods for these components are always spread across different nodes and are therefore always highly available.

When scheduling pods onto nodes, the pod scheduler tries to satisfy all existing constraints when determining pod placement.
That is, all constraints compound when the pod scheduler determines which pods will be placed on which nodes.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@ toc::[]

The {product-title} installation program provides only a low number of configuration options before installation. Configuring most {product-title} framework components, including the cluster monitoring stack, happens after the installation.

This section explains which monitoring components can be configured and how to prepare to configure the monitoring stack.
This section explains which monitoring components can be configured and how to prepare for configuring the monitoring stack.

[IMPORTANT]
====
* Not all configuration parameters for the monitoring stack are exposed.
Only the parameters and fields listed in the xref:../../../observability/monitoring/config-map-reference-for-the-cluster-monitoring-operator.adoc#cluster-monitoring-operator-configuration-reference[Config map reference for the {cmo-full}] are supported for configuration.
* The monitoring stack imposes additional resource requirements. Consult the computing resources recommendations in xref:../../../scalability_and_performance/recommended-performance-scale-practices/recommended-infrastructure-practices.adoc#scaling-cluster-monitoring-operator[Scaling the {cmo-full}] and verify that you have sufficient resources.
* The monitoring stack imposes additional resource requirements. Consult the computing resources recommendations in xref:../../../scalability_and_performance/recommended-performance-scale-practices/recommended-infrastructure-practices.adoc#scaling-cluster-monitoring-operator_recommended-infrastructure-practices[Scaling the {cmo-full}] and verify that you have sufficient resources.
====

// Configurable monitoring components
Expand All @@ -25,7 +25,7 @@ include::modules/monitoring-configurable-monitoring-components.adoc[leveloffset=
[id="preparing-to-configure-the-monitoring-stack_{context}"]
== Preparing to configure the monitoring stack

You can configure the core platform monitoring by creating and updating the `cluster-monitoring-config` config map. This config map configures the {cmo-first}, which in turn configures the components of the default monitoring stack.
You can configure core platform monitoring by creating and updating the `cluster-monitoring-config` config map. This config map configures the {cmo-first}, which in turn configures the components of the default monitoring stack.

include::modules/monitoring-creating-cluster-monitoring-configmap.adoc[leveloffset=+2]

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -312,8 +312,8 @@ include::modules/monitoring-choosing-a-metrics-collection-profile.adoc[leveloffs
* See xref:../../nodes/clusters/nodes-cluster-enabling-features.adoc[Enabling features using feature gates] for steps to enable Technology Preview features.
endif::openshift-dedicated,openshift-rosa[]

// Managing scrape and evaluation intervals and enforced limits for user-defined projects
include::modules/monitoring-limiting-scrape-samples-in-user-defined-projects.adoc[leveloffset=+1]
// Controlling the impact of unbound metrics attributes in user-defined projects
include::modules/monitoring-controlling-the-impact-of-unbound-attributes-in-user-defined-projects.adoc[leveloffset=+1]
include::modules/monitoring-setting-scrape-and-evaluation-intervals-limits-for-user-defined-projects.adoc[leveloffset=+2]
ifndef::openshift-dedicated,openshift-rosa[]
include::modules/monitoring-creating-scrape-sample-alerts.adoc[leveloffset=+2]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,47 @@ include::_attributes/common-attributes.adoc[]

toc::[]

TBD
This section explains which user-defined monitoring components can be configured, how to enable monitoring for user-defined projects, and how to prepare for configuring the user-defined monitoring stack.

[IMPORTANT]
====
* Not all configuration parameters for the monitoring stack are exposed.
Only the parameters and fields listed in the xref:../../../observability/monitoring/config-map-reference-for-the-cluster-monitoring-operator.adoc#cluster-monitoring-operator-configuration-reference[Config map reference for the {cmo-full}] are supported for configuration.
* The monitoring stack imposes additional resource requirements. Consult the computing resources recommendations in xref:../../../scalability_and_performance/recommended-performance-scale-practices/recommended-infrastructure-practices.adoc#scaling-cluster-monitoring-operator_recommended-infrastructure-practices[Scaling the {cmo-full}] and verify that you have sufficient resources.
====

// Configurable monitoring components
include::modules/monitoring-configurable-monitoring-components.adoc[leveloffset=+1,tags=**;!CPM;UWM]

// Enabling monitoring for user-defined projects
[id="enabling-monitoring-for-user-defined-projects-uwm_{context}"]
== Enabling monitoring for user-defined projects

In {product-title}, you can enable monitoring for user-defined projects in addition to the default platform monitoring. You can monitor your own projects in {product-title} without the need for an additional monitoring solution. Using this feature centralizes monitoring for core platform components and user-defined projects.

include::snippets/monitoring-custom-prometheus-note.adoc[]

include::modules/monitoring-enabling-monitoring-for-user-defined-projects.adoc[leveloffset=+2]

[role="_additional-resources"]
.Additional resources

* TBD

// Granting users permissions for monitoring for user-defined projects
include::modules/monitoring-granting-users-permission-to-monitor-user-defined-projects.adoc[leveloffset=+1]

[role="_additional-resources"]
.Additional resources
* TBD

include::modules/monitoring-granting-user-permissions-using-the-web-console.adoc[leveloffset=+2]
include::modules/monitoring-granting-user-permissions-using-the-cli.adoc[leveloffset=+2]
include::modules/monitoring-granting-users-permission-to-configure-monitoring-for-user-defined-projects.adoc[leveloffset=+2]

// Excluding a user-defined project from monitoring
include::modules/monitoring-excluding-a-user-defined-project-from-monitoring.adoc[leveloffset=+1]

// Disabling monitoring for user-defined projects
include::modules/monitoring-disabling-monitoring-for-user-defined-projects.adoc[leveloffset=+1]
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,21 @@ include::_attributes/common-attributes.adoc[]

toc::[]

TBD
You can configure a local or external Alertmanager instance to route alerts from Prometheus to endpoint receivers. You can also attach custom labels to all time series and alerts to add useful metadata information.

//Configuring external Alertmanager instances
include::modules/monitoring-configuring-external-alertmanagers.adoc[leveloffset=1,tags=**;!CPM;UWM]

//Configuring secrets for Alertmanager
include::modules/monitoring-configuring-secrets-for-alertmanager.adoc[leveloffset=1]

include::modules/monitoring-adding-a-secret-to-the-alertmanager-configuration.adoc[leveloffset=2,tags=**;!CPM;UWM]

//Attaching additional labels to your time series and alerts
include::modules/monitoring-attaching-additional-labels-to-your-time-series-and-alerts.adoc[leveloffset=+1,tags=**;!CPM;UWM]

[role="_additional-resources"]
.Additional resources

* TBD
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,45 @@ include::_attributes/common-attributes.adoc[]

toc::[]

TBD
Configure the collection of metrics to monitor how cluster components and your own workloads are performing.

You can send ingested metrics to remote systems for long-term storage and add cluster ID labels to the metrics to identify the data coming from different clusters.

// Configuring remote write storage
include::modules/monitoring-configuring-remote-write-storage.adoc[leveloffset=+1,tags=**;!CPM;UWM]

include::modules/monitoring-supported-remote-write-authentication-settings.adoc[leveloffset=+2]

include::modules/monitoring-example-remote-write-authentication-settings.adoc[leveloffset=+2,tags=**;!CPM;UWM]

include::modules/monitoring-example-remote-write-queue-configuration.adoc[leveloffset=+2,tags=**;!CPM;UWM]

[role="_additional-resources"]
.Additional resources

* TBD
// Adding cluster ID labels to metrics
include::modules/monitoring-adding-cluster-id-labels-to-metrics.adoc[leveloffset=+1]

include::modules/monitoring-creating-cluster-id-labels-for-metrics.adoc[leveloffset=+2,tags=**;!CPM;UWM]

[role="_additional-resources"]
.Additional resources

* TBD
// Setting up metrics collection for user-defined projects

include::modules/monitoring-setting-up-metrics-collection-for-user-defined-projects.adoc[leveloffset=+1]

include::modules/monitoring-deploying-a-sample-service.adoc[leveloffset=+2]

include::modules/monitoring-specifying-how-a-service-is-monitored.adoc[leveloffset=+2]

include::modules/monitoring-example-service-endpoint-authentication-settings.adoc[leveloffset=+2]

[role="_additional-resources"]
.Additional resources

* TBD
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,60 @@ include::_attributes/common-attributes.adoc[]

toc::[]

TBD
You can configure the monitoring stack to optimize the performance and scale of your clusters. The following documentation provides information about how to distribute the monitoring components and control the impact of the monitoring stack on CPU and memory resources.

// Using node selectors to move monitoring components

include::modules/monitoring-using-node-selectors-to-move-monitoring-components.adoc[leveloffset=+1]]

[role="_additional-resources"]
.Additional resources

* TBD
include::modules/monitoring-moving-monitoring-components-to-different-nodes.adoc[leveloffset=+2,tags=**;!CPM;UWM]

[role="_additional-resources"]
.Additional resources

* TBD
include::modules/monitoring-assigning-tolerations-to-monitoring-components.adoc[leveloffset=+1,tags=**;!CPM;UWM]

[role="_additional-resources"]
.Additional resources

* TBD
[id="managing-cpu-and-memory-resources-for-monitoring-components_{context}"]
== Managing CPU and memory resources for monitoring components

You can ensure that the containers that run monitoring components have enough CPU and memory resources by specifying values for resource limits and requests for those components.

You can configure these limits and requests for monitoring components that monitor user-defined projects in the `openshift-user-workload-monitoring` namespace.

include::modules/monitoring-about-specifying-limits-and-requests-for-monitoring-components.adoc[leveloffset=+2,tags=**;!CPM;UWM]

include::modules/monitoring-specifying-limits-and-requests-for-monitoring-components.adoc[leveloffset=+2,tags=**;!CPM;UWM]

// Controlling the impact of unbound metrics attributes in user-defined projects
include::modules/monitoring-controlling-the-impact-of-unbound-attributes-in-user-defined-projects.adoc[leveloffset=+1]
include::modules/monitoring-setting-scrape-and-evaluation-intervals-limits-for-user-defined-projects.adoc[leveloffset=+2]
ifndef::openshift-dedicated,openshift-rosa[]
include::modules/monitoring-creating-scrape-sample-alerts.adoc[leveloffset=+2]

[role="_additional-resources"]
.Additional resources

* TBD
endif::openshift-dedicated,openshift-rosa[]

// Using topology spread constraints for monitoring components
include::modules/monitoring-using-pod-topology-spread-constraints-for-monitoring.adoc[leveloffset=1]

[role="_additional-resources"]
.Additional resources

* TBD

include::modules/monitoring-configuring-pod-topology-spread-constraints.adoc[leveloffset=2,tags=**;!CPM;UWM]
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,41 @@ include::_attributes/common-attributes.adoc[]

toc::[]

TBD
Store and record your metrics and alerting data, configure logs to specify which activities are recorded, control how long Prometheus retains stored data, and set the maximum amount of disk space for the data. These actions help you protect your data and use them for troubleshooting.

// Configuring persistent storage
include::modules/monitoring-configuring-persistent-storage.adoc[leveloffset=+1]

include::modules/monitoring-configuring-a-persistent-volume-claim.adoc[leveloffset=+2,tags=**;!CPM;UWM]

[role="_additional-resources"]
.Additional resources

* TBD
include::modules/monitoring-resizing-a-persistent-volume.adoc[leveloffset=+2,tags=**;!CPM;UWM]

[role="_additional-resources"]
.Additional resources

* TBD
// Modifying the retention time and size for Prometheus metrics data

include::modules/monitoring-modifying-retention-time-and-size-for-prometheus-metrics-data.adoc[leveloffset=+1,tags=**;!CPM;UWM]

include::modules/monitoring-modifying-the-retention-time-for-thanos-ruler-metrics-data.adoc[leveloffset=+2]

// Setting log levels for monitoring components
include::modules/monitoring-setting-log-levels-for-monitoring-components.adoc[leveloffset=+1,tags=**;!CPM;UWM]

// Enabling the query log file for Prometheus
include::modules/monitoring-setting-query-log-file-for-prometheus.adoc[leveloffset=+1,tags=**;!CPM;UWM]

[role="_additional-resources"]
.Additional resources

* TBD

0 comments on commit f6b3beb

Please sign in to comment.