This proposal is to implement the Kubernetes Attach/Detach API. The API decentralizes the call to Attach/Detach volumes by invoking the operations from the controller (not the kubelets). The controller is able to properly coordinate attach/detach operations and handle situations where racy conditions may arise.
This proposal is to implement the Kubernetes Attach/Detach API. The API decentralizes the call to Attach/Detach volumes by invoking the operations from the controller (not the kubelets). The controller is able to properly coordinate attach/detach operations and handle situations where racy conditions may arise.
Attach/Detach API
The Attach API makes available the following operations
Attach()
- remotely attaches a volumeVolumesAreAttached()
- queries attachment status of a list of volumesWaitForAttach
- blocks until the specified device is reported attachedGetDeviceMountPath
- returns where the device should be mountedMountDevice
- mounts device to a global path where it can be bind-mountedThe Detach API offers the following operations