kubernetes: k8s.io/kubernetes/pkg/controller/volume/persistentvolume Index | Files | Directories

package persistentvolume

import "k8s.io/kubernetes/pkg/controller/volume/persistentvolume"

Index

Package Files

index.go pv_controller.go pv_controller_base.go volume_host.go

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 .

type ControllerParameters Uses

type ControllerParameters struct {
    KubeClient                clientset.Interface
    SyncPeriod                time.Duration
    VolumePlugins             []vol.VolumePlugin
    Cloud                     cloudprovider.Interface
    ClusterName               string
    VolumeInformer            coreinformers.PersistentVolumeInformer
    ClaimInformer             coreinformers.PersistentVolumeClaimInformer
    ClassInformer             storageinformers.StorageClassInformer
    PodInformer               coreinformers.PodInformer
    NodeInformer              coreinformers.NodeInformer
    EventRecorder             record.EventRecorder
    EnableDynamicProvisioning bool
}

ControllerParameters contains arguments for creation of a new PersistentVolume controller.

type PersistentVolumeController Uses

type PersistentVolumeController struct {
    NodeLister       corelisters.NodeLister
    NodeListerSynced cache.InformerSynced
    // 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 Uses

func NewController(p ControllerParameters) (*PersistentVolumeController, error)

NewController creates a new PersistentVolume controller

func (*PersistentVolumeController) DeleteServiceAccountTokenFunc Uses

func (ctrl *PersistentVolumeController) DeleteServiceAccountTokenFunc() func(types.UID)

func (*PersistentVolumeController) GetCloudProvider Uses

func (ctrl *PersistentVolumeController) GetCloudProvider() cloudprovider.Interface

func (*PersistentVolumeController) GetConfigMapFunc Uses

func (ctrl *PersistentVolumeController) GetConfigMapFunc() func(namespace, name string) (*v1.ConfigMap, error)

func (*PersistentVolumeController) GetEventRecorder Uses

func (ctrl *PersistentVolumeController) GetEventRecorder() record.EventRecorder

func (*PersistentVolumeController) GetExec Uses

func (adc *PersistentVolumeController) GetExec(pluginName string) mount.Exec

func (*PersistentVolumeController) GetHostIP Uses

func (ctrl *PersistentVolumeController) GetHostIP() (net.IP, error)

func (*PersistentVolumeController) GetHostName Uses

func (ctrl *PersistentVolumeController) GetHostName() string

func (*PersistentVolumeController) GetKubeClient Uses

func (ctrl *PersistentVolumeController) GetKubeClient() clientset.Interface

func (*PersistentVolumeController) GetMounter Uses

func (ctrl *PersistentVolumeController) GetMounter(pluginName string) mount.Interface

func (*PersistentVolumeController) GetNodeAllocatable Uses

func (ctrl *PersistentVolumeController) GetNodeAllocatable() (v1.ResourceList, error)

func (*PersistentVolumeController) GetNodeLabels Uses

func (ctrl *PersistentVolumeController) GetNodeLabels() (map[string]string, error)

func (*PersistentVolumeController) GetNodeName Uses

func (ctrl *PersistentVolumeController) GetNodeName() types.NodeName

func (*PersistentVolumeController) GetPluginDir Uses

func (ctrl *PersistentVolumeController) GetPluginDir(pluginName string) string

func (*PersistentVolumeController) GetPodPluginDir Uses

func (ctrl *PersistentVolumeController) GetPodPluginDir(podUID types.UID, pluginName string) string

func (*PersistentVolumeController) GetPodVolumeDeviceDir Uses

func (ctrl *PersistentVolumeController) GetPodVolumeDeviceDir(ppodUID types.UID, pluginName string) string

func (*PersistentVolumeController) GetPodVolumeDir Uses

func (ctrl *PersistentVolumeController) GetPodVolumeDir(podUID types.UID, pluginName string, volumeName string) string

func (*PersistentVolumeController) GetPodsDir Uses

func (ctrl *PersistentVolumeController) GetPodsDir() string

func (*PersistentVolumeController) GetSecretFunc Uses

func (ctrl *PersistentVolumeController) GetSecretFunc() func(namespace, name string) (*v1.Secret, error)

func (*PersistentVolumeController) GetServiceAccountTokenFunc Uses

func (ctrl *PersistentVolumeController) GetServiceAccountTokenFunc() func(_, _ string, _ *authenticationv1.TokenRequest) (*authenticationv1.TokenRequest, error)

func (*PersistentVolumeController) GetSubpather Uses

func (ctrl *PersistentVolumeController) GetSubpather() subpath.Interface

func (*PersistentVolumeController) GetVolumeDevicePluginDir Uses

func (ctrl *PersistentVolumeController) GetVolumeDevicePluginDir(pluginName string) string

func (*PersistentVolumeController) NewWrapperMounter Uses

func (ctrl *PersistentVolumeController) NewWrapperMounter(volName string, spec vol.Spec, pod *v1.Pod, opts vol.VolumeOptions) (vol.Mounter, error)

func (*PersistentVolumeController) NewWrapperUnmounter Uses

func (ctrl *PersistentVolumeController) NewWrapperUnmounter(volName string, spec vol.Spec, podUID types.UID) (vol.Unmounter, error)

func (*PersistentVolumeController) Run Uses

func (ctrl *PersistentVolumeController) Run(stopCh <-chan struct{})

Run starts all of this controller's control loops

Directories

PathSynopsis
config
config/v1alpha1
metrics
options
testing
util

Package persistentvolume imports 47 packages (graph) and is imported by 34 packages. Updated 2019-09-21. Refresh now. Tools for package owners.