Azure / azure-service-operator

Azure Service Operator allows you to create Azure resources using kubectl
https://azure.github.io/azure-service-operator/
MIT License
734 stars 194 forks source link

Feature: Add Azure Resource Health #2762

Open nojnhuh opened 1 year ago

nojnhuh commented 1 year ago

Azure provides a Resource Health API that reports certain issues with certain types of Azure resources. Having that same data accessible from ASO would be useful downstream in projects like CAPZ that already integrate with Resource Health using the Go SDK directly.

Overview: https://learn.microsoft.com/en-us/azure/service-health/resource-health-overview API docs: https://learn.microsoft.com/en-us/rest/api/resourcehealth/

I imagine that data could either be used to augment the existing status of the existing resource or in a new API type that might look something like:

kind: ResourceHealth
spec:
  id: <resource ID>
status:
  availabilityState: Available
  ...
matthchr commented 1 year ago

The other way that I mentioned which I don't know if I love, is that we have a spot for it on status but we only fill that out if you ask us to via an annotation. Think: serviceoperator.azure.com/showservicehealth or something

matthchr commented 1 year ago

This is also a bit interesting in that it might want a faster reconcile pass than other resources

matthchr commented 1 month ago

This is still something we're interested in, but will need to do some design work before we can implement it as not every resource has resource health, and we need to define how we would expose health to users and also how users opt in/out of it.