You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Dynamic events that happen during a service's lifetime — like not having any (healthy) pods — aren't tracked, meaning the reported statuses will always be "UP". Ideally, the importer could track the lifecycle of these events to differentiate between a service that is truly "UP", versus one that merely "exists".
Describe the feature
In the OpenShift Applications > Services UI, there is a "Pods" section that shows pods associated with a service, and if they're accepting traffic:
This is seemingly accomplished by:
fetching a list of pods:
GET /api/v1/namespaces/${NAMESPACE}/pods
filtering pods that match the service's selector
watching /api/v1/namespaces/${NAMESPACE}/pods or /api/v1/namespaces/${NAMESPACE}/events for changes (I'm not sure which; Firefox shows both, but Chrome only shows the latter)
GOTO 2
There are undoubtedly better approaches (e.g. Fabric8's KubernetesHelper#podsForService, but that's the one that caught my eye and inspired this issue.
The KubernetesServiceImporter could do something similar to keep track of pod events, and update the status of a service accordingly.
Use cases
Reflects real-time status of the service
Contribution
I'd be happy to try, with some guidance. :)
The text was updated successfully, but these errors were encountered:
Context
Presently, the
KubernetesServiceImporter
tracks services 'statically':if a service is added, it will publish a record
if a service is updated, it will update the record
if a service is deleted, it will unpublish the record
Dynamic events that happen during a service's lifetime — like not having any (healthy) pods — aren't tracked, meaning the reported statuses will always be "UP". Ideally, the importer could track the lifecycle of these events to differentiate between a service that is truly "UP", versus one that merely "exists".
Describe the feature
In the OpenShift Applications > Services UI, there is a "Pods" section that shows pods associated with a service, and if they're accepting traffic:
This is seemingly accomplished by:
fetching a list of pods:
filtering pods that match the service's selector
watching
/api/v1/namespaces/${NAMESPACE}/pods
or/api/v1/namespaces/${NAMESPACE}/events
for changes (I'm not sure which; Firefox shows both, but Chrome only shows the latter)GOTO 2
There are undoubtedly better approaches (e.g. Fabric8's
KubernetesHelper#podsForService
, but that's the one that caught my eye and inspired this issue.The
KubernetesServiceImporter
could do something similar to keep track of pod events, and update the status of a service accordingly.Use cases
Contribution
I'd be happy to try, with some guidance. :)
The text was updated successfully, but these errors were encountered: