Documentation ¶
Index ¶
- Constants
- type ControllerParameters
- type PersistentVolumeController
- func (ctrl *PersistentVolumeController) GetCloudProvider() cloudprovider.Interface
- func (ctrl *PersistentVolumeController) GetHostIP() (net.IP, error)
- func (ctrl *PersistentVolumeController) GetHostName() string
- func (ctrl *PersistentVolumeController) GetKubeClient() clientset.Interface
- func (ctrl *PersistentVolumeController) GetMounter() mount.Interface
- func (ctrl *PersistentVolumeController) GetNodeAllocatable() (v1.ResourceList, error)
- func (ctrl *PersistentVolumeController) GetPluginDir(pluginName string) string
- func (ctrl *PersistentVolumeController) GetPodPluginDir(podUID types.UID, pluginName string) string
- func (ctrl *PersistentVolumeController) GetPodVolumeDir(podUID types.UID, pluginName string, volumeName string) string
- func (adc *PersistentVolumeController) GetSecretFunc() func(namespace, name string) (*v1.Secret, error)
- func (ctrl *PersistentVolumeController) GetWriter() io.Writer
- func (ctrl *PersistentVolumeController) NewWrapperMounter(volName string, spec vol.Spec, pod *v1.Pod, opts vol.VolumeOptions) (vol.Mounter, error)
- func (ctrl *PersistentVolumeController) NewWrapperUnmounter(volName string, spec vol.Spec, podUID types.UID) (vol.Unmounter, error)
- func (ctrl *PersistentVolumeController) Run(stopCh <-chan struct{})
Constants ¶
const CloudVolumeCreatedForClaimNameTag = "kubernetes.io/created-for/pvc/name"
CloudVolumeCreatedForClaimNameTag is a name of a tag attached to a real volume in cloud (e.g. AWS EBS or GCE PD) with name of a persistent volume claim used to create this volume.
const CloudVolumeCreatedForClaimNamespaceTag = "kubernetes.io/created-for/pvc/namespace"
CloudVolumeCreatedForClaimNamespaceTag is a name of a tag attached to a real volume in cloud (e.g. AWS EBS or GCE PD) with namespace of a persistent volume claim used to create this volume.
const CloudVolumeCreatedForVolumeNameTag = "kubernetes.io/created-for/pv/name"
CloudVolumeCreatedForVolumeNameTag is a name of a tag attached to a real volume in cloud (e.g. AWS EBS or GCE PD) with name of appropriate Kubernetes persistent volume .
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ControllerParameters ¶ added in v1.5.0
type ControllerParameters struct { KubeClient clientset.Interface SyncPeriod time.Duration AlphaProvisioner vol.ProvisionableVolumePlugin VolumePlugins []vol.VolumePlugin Cloud cloudprovider.Interface ClusterName string VolumeInformer coreinformers.PersistentVolumeInformer ClaimInformer coreinformers.PersistentVolumeClaimInformer ClassInformer storageinformers.StorageClassInformer EventRecorder record.EventRecorder EnableDynamicProvisioning bool }
ControllerParameters contains arguments for creation of a new PersistentVolume controller.
type PersistentVolumeController ¶
type PersistentVolumeController struct {
// contains filtered or unexported fields
}
PersistentVolumeController is a controller that synchronizes PersistentVolumeClaims and PersistentVolumes. It starts two cache.Controllers that watch PersistentVolume and PersistentVolumeClaim changes.
func NewController ¶ added in v1.5.0
func NewController(p ControllerParameters) *PersistentVolumeController
NewController creates a new PersistentVolume controller
func (*PersistentVolumeController) GetCloudProvider ¶
func (ctrl *PersistentVolumeController) GetCloudProvider() cloudprovider.Interface
func (*PersistentVolumeController) GetHostIP ¶
func (ctrl *PersistentVolumeController) GetHostIP() (net.IP, error)
func (*PersistentVolumeController) GetHostName ¶
func (ctrl *PersistentVolumeController) GetHostName() string
func (*PersistentVolumeController) GetKubeClient ¶
func (ctrl *PersistentVolumeController) GetKubeClient() clientset.Interface
func (*PersistentVolumeController) GetMounter ¶
func (ctrl *PersistentVolumeController) GetMounter() mount.Interface
func (*PersistentVolumeController) GetNodeAllocatable ¶ added in v1.4.0
func (ctrl *PersistentVolumeController) GetNodeAllocatable() (v1.ResourceList, error)
func (*PersistentVolumeController) GetPluginDir ¶
func (ctrl *PersistentVolumeController) GetPluginDir(pluginName string) string
func (*PersistentVolumeController) GetPodPluginDir ¶
func (ctrl *PersistentVolumeController) GetPodPluginDir(podUID types.UID, pluginName string) string
func (*PersistentVolumeController) GetPodVolumeDir ¶
func (*PersistentVolumeController) GetSecretFunc ¶ added in v1.6.0
func (adc *PersistentVolumeController) GetSecretFunc() func(namespace, name string) (*v1.Secret, error)
func (*PersistentVolumeController) GetWriter ¶
func (ctrl *PersistentVolumeController) GetWriter() io.Writer
func (*PersistentVolumeController) NewWrapperMounter ¶
func (*PersistentVolumeController) NewWrapperUnmounter ¶
func (*PersistentVolumeController) Run ¶
func (ctrl *PersistentVolumeController) Run(stopCh <-chan struct{})
Run starts all of this controller's control loops