argoproj / argo-rollouts

Progressive Delivery for Kubernetes
https://argo-rollouts.readthedocs.io/
Apache License 2.0
2.67k stars 839 forks source link

GCP cloud monitoring ( stackdriver ) and GCP managed Prometheus support for Argo Rollouts Analysis Template #3352

Open nithin-john-porter opened 7 months ago

nithin-john-porter commented 7 months ago

Summary

What change needs making?

Support GCP cloud monitoring ( stackdriver ) and GCP managed Prometheus support for analysistemplate . Since rollouts has support for cloud watch it seems reasonable to support metrics explorer from GCP.

And for GCP managed Prometheus i can see theres no way for passing authentication.

Use Cases

The requirement is to use gcp monitoring for analysis template for auto rollback while doing canary deployment. If not supported any workarounds?


Message from the maintainers:

Impacted by this bug? Give it a 👍. We prioritize the issues with the most 👍.

zachaller commented 7 months ago

stackdriver would probably be implemented as a new plugin under argoproj-labs, as for auth for prometheus on gcp I would be open to a PR to add support there.

nithin-john-porter commented 7 months ago

ok thanks @zachaller , when we can expect this features to be live . in the meantime do you have any solution for taking metrics from cloud monitoring?

zachaller commented 7 months ago

Would probably need to be picked up by someone that has GCP access as I do not have access to GCP. I also am not have a lot of experiance with GCP so not sure of any work around on getting rollouts to query for metrics there without having argo rollouts have a provider. If your open to contributing those feature would be willing to help point you in the right directions etc or if someone else picks up these features.

ehorning commented 4 weeks ago

The easiest way to do this is via the prometheus frontend image referenced here: https://cloud.google.com/stackdriver/docs/managed-prometheus/query-api-ui#ui-prometheus

This allows you to query cloud metrics via promql in your analysis templates