Make volume manager more robust across restarts
When kubelet is restarted, volume manager loses its internal state. It rebuilds this state and calls attach/mount on volumes that may already be attached/mounted.
This issue is to track two items:
- Verify that if mount is called on a volume that is already mounted that it does not fail.
- If a pod was deleted while kubelet was unavailable, the associated volume will not be unmounted (since Kubelet would not know about it after restart). So volume_manager should find a way to recover the pre-attached volumes and populate actual state of the world on startup so that they get cleaned up appropriately.