One of the main issues with Docker in production actually is the need for rescheduling a container on a Docker host if the container/host goes down.
This implies more than just reschedule the container on a different node, you'll need to find a way to share your data volumes across your hosts so you won't loose any data (this is achievable with volume plugin such as GlusterFS, Flocker... even with NFS). You'll also need to manage an overlay network inside your cluster so your containers can communicate with each others inside your cluster. This area is still pretty experimental and is not production ready.
About monitoring, I've read a few articles about Prometheus (https://prometheus.io/) being able to pull metrics from Docker and it was recently integrated in the Kubernetes solution. I'll definitively have a look at it.
Michael Hausenblas
Distributed Systems Jester