I was wondering if I could dissociate worker and manager node in Docker Swarm (manager node not taking any applicative tasks to dedicate it to cluster management).
With a minimal cluster setup, 3 manager and 2 workers, I managed to drain all manager node and everything work as expected.
Although I wonder if there is counter recommendations of doing so. Can I do it in production?
Running manager-only manager nodes is the recommended configuration when possible.
In practice you frequently need to run workloads that need access to the docker api on the managers (reverse proxies etc.) so the alternative is to use placement constraints such as node.role==worker
on all services.