Failure over node?

I have a docker service that only can have a single instance running in the whole cluster. I want to setup a failure over node to this service, i.e, in normal operation, it should be running in an assigned high profile node, and another node that are running some non-critical task as the backup. Once the main node is crash or down, I hope K8s can instantly start that docker service for a temporarily rescue until we restore that high profile node. How can setup this in K8s?