-
Notifications
You must be signed in to change notification settings - Fork 40k
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
PodInterface should support Watch #4777
Comments
cc @lavalamp: Do you know why we do not support watch? |
Every object should support Watch. |
Watching status doesn't currently work -- that's #2726. |
I agree with OP. This is just an accident of history; some boilerplate in the client isn't completely filled out. As Brian mentions, not every field is currently watchable but that's being addressed elsewhere. |
@sdminonne This is relevant to your interests potentially w/ your work on #560 |
This is a pretty simple change if someone wants to get their feet wet. :) |
I'll work on it. |
Added Watch support to PodInterface. Extended pods e2e to test watch. Resolves kubernetes#4777.
Added Watch support to PodInterface. Extended pods e2e to test watch. Resolves kubernetes#4777.
PodInterface should have Watch method behaving in the same way as ServiceInterface.Watch does.
Use case: a monitoring system (namely Prometheus) expects to get the list of monitored servers performing a DNS-SD query. Special service (similar to kube2sky shipped with Kubernetes) mirrors status of running Pods into etcd, which is in turn monitored by SkyDNS server and exported as DNS-SD. Schematically the data flow looks like this: Kubernetes -> kube2sky -> etcd -> SkyDNS -> Prometheus.
The biggest challenge is to deliver list of all running pods from Kubernetes to kube2sky. Currently kube2sky can only poll Kubernetes with PodInterface.List() each N seconds, which is not efficient. Having a Watch method would be much better.
The text was updated successfully, but these errors were encountered: