Using a DaemonSet for LB pods means that a given port can be mapped only in single service per cluster. Then again, a daemonset gives maximum availability. When there's lot of nodes in the cluster a daemonset also results in huge list of external addresses in the service status.
It would be nice to allow the user to select between a deployment and daemonset. The only viable way to configure such things is via annotations on the service. I'd propose the following way:
Using a DaemonSet for LB pods means that a given port can be mapped only in single service per cluster. Then again, a daemonset gives maximum availability. When there's lot of nodes in the cluster a daemonset also results in huge list of external addresses in the service status.
It would be nice to allow the user to select between a deployment and daemonset. The only viable way to configure such things is via annotations on the service. I'd propose the following way: