-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
added x-metrics pod monitor #8
base: main
Are you sure you want to change the base?
Conversation
… namespace selectors for crossplane-system and upbound-system Signed-off-by: Christopher Haar <[email protected]>
feat(podmonitors): change pod monitors
moved patch for deterministic dashboard creation
xmetrics dashboard checkpoint checkin
Adding the usage did not let prometheus display the target. Still exploring other possible causes for the x-metrics podMonitor not showing up. |
/test-examples |
/test-examples |
/test-examples |
/test-examples |
Can you rebase this branch ? |
/test-examples |
- name: podMonitorXmetrics | ||
base: | ||
apiVersion: kubernetes.crossplane.io/v1alpha1 | ||
kind: Object | ||
metadata: | ||
labels: | ||
type: podMonitorXmetrics |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
X-metrics installs with a service, when a service exists, it is better to use a service monitor for Prometheus. The helm chart already supports service monitor, use helm values to enable it.
README.md
Outdated
**Warning** | ||
## Disclaimer: Management Cluster Resource Use | ||
Prometheus and Grafana may require significant cluster resources in relation | ||
to the amount of metrics scraped, processed and visualized. This may impact | ||
cluster operations. Consult the respective Prometheus Operator and | ||
Grafana documentation for set up guidance prior to using this configuration | ||
on mission critical Crossplane management clusters. | ||
|
||
**Warning** | ||
## Disclaimer: Metric Stability | ||
Crossplane has no concept of metric stability. This implies | ||
that metrics used in this configuration may be absent in future versions | ||
of Crossplane and / or its providers. | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These warning messages do not provide much direction and the language has negative connotation. Consider rewriting them. What is the goal of having them here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The goal is to guide users to keep their mission critical management clusters happily operational through proper Prometheus tuning. I'll come up with more positive wording.
README.md
Outdated
@@ -20,37 +34,32 @@ at the conclusion of the tests by default. | |||
|
|||
Apply the resource claim as follows to re-create | |||
the namespace, Prometheus, Grafana and dependencies for further |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why is the claim 're-creating' the ns, Prometheus, and Grafana?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How about we offer a make cluster so that the workflow does not duplicate the installation after Uptest cleaned up its test setup? Users who want to run make e2e could do it purposefully as a separate step with or without pre-existing cluster.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added a make cluster option.
exploration. | ||
exploration. Note that the xmetrics configuration examples | ||
rely on the CRDs to be installed through the oss composition | ||
first. | ||
``` | ||
kubectl apply -f examples/oss.yaml |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this claim installing x-metrics? If so, change the name. OSS is very generic, I would avoid using it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would you recommend to not use oss.yaml for the claim name, even though x-metrics, prometheus and grafana are open source?
If so, which name would resonate with you?
README.md
Outdated
To load dashboards that are part of this configuration repository, | ||
please apply the following dashboard resource claims. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To load dashboards that are part of this configuration repository, | |
please apply the following dashboard resource claims. | |
The following command will apply all the dashboard resource claims located in the `dashboards` folder. Each claim will create a respective Grafana dashboard. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updated.
README.md
Outdated
tail +2|\ | ||
grep prometheus-0) | ||
kubectl -n operators port-forward ${PROMETHEUS_POD_NAME} 9090 | ||
kubectl -n operators port-forward prometheus-oss-kube-prometheus-stack-prometheus-0 9090 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
kubectl -n operators port-forward prometheus-oss-kube-prometheus-stack-prometheus-0 9090 | |
kubectl -n operators port-forward svc/kube-prometheus-stack-prometheus 9090:9090 |
README.md
Outdated
tail +2|\ | ||
grep prometheus-0) | ||
kubectl -n operators port-forward ${PROMETHEUS_POD_NAME} 9090 | ||
kubectl -n operators port-forward prometheus-oss-kube-prometheus-stack-prometheus-0 9090 | ||
``` | ||
|
||
Use the following to forward localhost:3000 to the Grafana pod. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Use the following to forward localhost:3000 to the Grafana pod. | |
To access the Grafana dashboard, port-forward to the Grafana service on port 80. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updated
examples/xmetrics.yaml
Outdated
metadata: | ||
name: upbound-metric-sample | ||
spec: | ||
matchName: ".upbound.io" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This creates a lot of custom metrics, can you provide an example with a list of common families instead?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added more narrow scoped matches, e.g. ".s3.aws.upbound.io" or ".ec2.aws.upbound.io", etc.
--- | ||
apiVersion: metrics.crossplane.io/v1 | ||
kind: ClusterMetric | ||
metadata: | ||
name: clustermetric-sample | ||
spec: | ||
matchName: ".crossplane.io" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this for the community provider?
Crossplane has no concept of metric stability. This implies | ||
that metrics used in this configuration may be absent in future versions | ||
of Crossplane and / or its providers. | ||
|
||
## Purpose | ||
The goal for configuration-observability-oss is to complement | ||
other configurations such as configuration-caas. See the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is configuration-caas?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
configuration-caas is a plug and play configuration for cluster as a service.
Description of your changes
Added x-metrics pod monitor. Please review.
Fixes #
I have:
make reviewable
to ensure this PR is ready for review.backport release-x.y
labels to auto-backport this PR, as appropriate.How has this code been tested