Documentation ¶
Index ¶
- Constants
- func IsCIDR(ipRange string) bool
- func IsIpWithinRange(ipAddress, ipRange string) (bool, error)
- func NewControllerServiceCapability(cap csi.ControllerServiceCapability_RPC_Type) *csi.ControllerServiceCapability
- func NewNodeServiceCapability(cap csi.NodeServiceCapability_RPC_Type) *csi.NodeServiceCapability
- func NewVolumeCapabilityAccessMode(mode csi.VolumeCapability_AccessMode_Mode) *csi.VolumeCapability_AccessMode
- type FeatureLockRelease
- type FeatureMaxSharesPerInstance
- type FeatureMultishareBackups
- type FeatureNFSExportOptionsOnCreate
- type FeatureStateful
- type GCFSDriver
- type GCFSDriverConfig
- type GCFSDriverFeatureOptions
- type MultishareController
- func (m *MultishareController) ControllerExpandVolume(ctx context.Context, req *csi.ControllerExpandVolumeRequest) (*csi.ControllerExpandVolumeResponse, error)
- func (m *MultishareController) CreateSnapshot(ctx context.Context, req *csi.CreateSnapshotRequest) (*csi.CreateSnapshotResponse, error)
- func (m *MultishareController) CreateVolume(ctx context.Context, req *csi.CreateVolumeRequest) (*csi.CreateVolumeResponse, error)
- func (m *MultishareController) DeleteVolume(ctx context.Context, req *csi.DeleteVolumeRequest) (*csi.DeleteVolumeResponse, error)
- func (m *MultishareController) GetShareMaxSizeFromPV(ctx context.Context, volHandle string) (int64, error)
- func (m *MultishareController) Run(stopCh <-chan struct{})
- type MultishareOpsManager
- type MultishareReconciler
- type MultishareStatefulController
- func (m *MultishareStatefulController) ControllerExpandVolume(ctx context.Context, req *csi.ControllerExpandVolumeRequest) (*csi.ControllerExpandVolumeResponse, error)
- func (m *MultishareStatefulController) CreateVolume(ctx context.Context, req *csi.CreateVolumeRequest) (*csi.CreateVolumeResponse, error)
- func (m *MultishareStatefulController) DeleteVolume(ctx context.Context, req *csi.DeleteVolumeRequest) (*csi.DeleteVolumeResponse, error)
- type NonBlockingGRPCServer
- type Op
- type OpInfo
- type Workflow
Constants ¶
View Source
const ( ParamReservedIPV4CIDR = "reserved-ipv4-cidr" ParamReservedIPRange = "reserved-ip-range" ParamConnectMode = "connect-mode" ParamInstanceEncryptionKmsKey = "instance-encryption-kms-key" ParamNfsExportOptions = "nfs-export-options-on-create" // Keys for PV and PVC parameters as reported by external-provisioner ParameterKeyPVCName = "csi.storage.k8s.io/pvc/name" ParameterKeyPVCNamespace = "csi.storage.k8s.io/pvc/namespace" ParameterKeyPVName = "csi.storage.k8s.io/pv/name" // User provided labels ParameterKeyLabels = "labels" TagKeyClusterName = "storage_gke_io_cluster_name" TagKeyClusterLocation = "storage_gke_io_cluster_location" )
CreateVolume parameters
View Source
const (
// Keys for Topology.
TopologyKeyZone = "topology.gke.io/zone"
)
Variables ¶
This section is empty.
Functions ¶
func IsIpWithinRange ¶ added in v1.3.3
IsIpWithinRange checks if an ip address is within the given ip range.
func NewControllerServiceCapability ¶
func NewControllerServiceCapability(cap csi.ControllerServiceCapability_RPC_Type) *csi.ControllerServiceCapability
func NewNodeServiceCapability ¶
func NewNodeServiceCapability(cap csi.NodeServiceCapability_RPC_Type) *csi.NodeServiceCapability
func NewVolumeCapabilityAccessMode ¶
func NewVolumeCapabilityAccessMode(mode csi.VolumeCapability_AccessMode_Mode) *csi.VolumeCapability_AccessMode
Types ¶
type FeatureLockRelease ¶ added in v1.4.1
type FeatureLockRelease struct { Enabled bool Standalone bool Config *lockrelease.LockReleaseControllerConfig }
type FeatureMaxSharesPerInstance ¶ added in v1.5.0
type FeatureMaxSharesPerInstance struct {}
type FeatureMultishareBackups ¶ added in v1.5.14
type FeatureMultishareBackups struct {
}type FeatureNFSExportOptionsOnCreate ¶ added in v1.6.13
type FeatureNFSExportOptionsOnCreate struct {
Enabled bool
}
type FeatureStateful ¶ added in v1.5.0
type FeatureStateful struct { Enabled bool KubeAPIQPS float64 KubeAPIBurst int KubeConfig string ResyncPeriod time.Duration LeaderElection bool LeaderElectionNamespace string LeaderElectionLeaseDuration time.Duration LeaderElectionRenewDeadline time.Duration LeaderElectionRetryPeriod time.Duration DriverClientSet *clientset.Clientset }
type GCFSDriver ¶
type GCFSDriver struct {
// contains filtered or unexported fields
}
func NewGCFSDriver ¶
func NewGCFSDriver(config *GCFSDriverConfig) (*GCFSDriver, error)
func (*GCFSDriver) Run ¶
func (driver *GCFSDriver) Run(endpoint string)
func (*GCFSDriver) ValidateControllerServiceRequest ¶
func (driver *GCFSDriver) ValidateControllerServiceRequest(c csi.ControllerServiceCapability_RPC_Type) error
type GCFSDriverConfig ¶
type GCFSDriverConfig struct { Name string // Driver name Version string // Driver version NodeName string // Node name RunController bool // Run CSI controller service RunNode bool // Run CSI node service Mounter mount.Interface // Mount library Cloud *cloud.Cloud // Cloud provider MetadataService metadataservice.Service Reconciler *MultishareReconciler Metrics *metrics.MetricsManager EcfsDescription string IsRegional bool ClusterName string FeatureOptions *GCFSDriverFeatureOptions ExtraVolumeLabels map[string]string TagManager cloud.TagService }
type GCFSDriverFeatureOptions ¶ added in v1.4.1
type GCFSDriverFeatureOptions struct { // FeatureLockRelease will enable the NFS lock release feature if sets to true. FeatureLockRelease *FeatureLockRelease // FeatureMaxSharesPerInstance will enable CSI driver to pack configurable number of max shares per Filestore instance (multishare) FeatureStateful *FeatureStateful FeatureNFSExportOptionsOnCreate *FeatureNFSExportOptionsOnCreate }
type MultishareController ¶ added in v1.2.0
type MultishareController struct {
// contains filtered or unexported fields
}
MultishareController handles CSI calls for volumes which use Filestore multishare instances.
func NewMultishareController ¶ added in v1.2.0
func NewMultishareController(config *controllerServerConfig) *MultishareController
func (*MultishareController) ControllerExpandVolume ¶ added in v1.2.0
func (m *MultishareController) ControllerExpandVolume(ctx context.Context, req *csi.ControllerExpandVolumeRequest) (*csi.ControllerExpandVolumeResponse, error)
func (*MultishareController) CreateSnapshot ¶ added in v1.5.14
func (m *MultishareController) CreateSnapshot(ctx context.Context, req *csi.CreateSnapshotRequest) (*csi.CreateSnapshotResponse, error)
func (*MultishareController) CreateVolume ¶ added in v1.2.0
func (m *MultishareController) CreateVolume(ctx context.Context, req *csi.CreateVolumeRequest) (*csi.CreateVolumeResponse, error)
func (*MultishareController) DeleteVolume ¶ added in v1.2.0
func (m *MultishareController) DeleteVolume(ctx context.Context, req *csi.DeleteVolumeRequest) (*csi.DeleteVolumeResponse, error)
func (*MultishareController) GetShareMaxSizeFromPV ¶ added in v1.5.0
func (*MultishareController) Run ¶ added in v1.5.0
func (m *MultishareController) Run(stopCh <-chan struct{})
type MultishareOpsManager ¶ added in v1.2.0
type MultishareOpsManager struct { // contains filtered or unexported fields }
MultishareOpsManager manages the lifecycle of all instance and share operations.
func NewMultishareOpsManager ¶ added in v1.2.0
func NewMultishareOpsManager(cloud *cloud.Cloud, mcs *MultishareController) *MultishareOpsManager
type MultishareReconciler ¶ added in v1.5.0
type MultishareReconciler struct {
// contains filtered or unexported fields
}
func NewMultishareReconciler ¶ added in v1.5.0
func NewMultishareReconciler( clientset clientset.Interface, config *GCFSDriverConfig, shareInformer informers.ShareInfoInformer, instanceInformar informers.InstanceInfoInformer, scLister storageListers.StorageClassLister, ) *MultishareReconciler
func (*MultishareReconciler) Run ¶ added in v1.5.0
func (recon *MultishareReconciler) Run(stopCh <-chan struct{})
type MultishareStatefulController ¶ added in v1.5.0
type MultishareStatefulController struct {
// contains filtered or unexported fields
}
MultishareController handles CSI calls for volumes which use Filestore multishare instances.
func NewMultishareStatefulController ¶ added in v1.5.0
func NewMultishareStatefulController(config *controllerServerConfig) *MultishareStatefulController
func (*MultishareStatefulController) ControllerExpandVolume ¶ added in v1.5.0
func (m *MultishareStatefulController) ControllerExpandVolume(ctx context.Context, req *csi.ControllerExpandVolumeRequest) (*csi.ControllerExpandVolumeResponse, error)
func (*MultishareStatefulController) CreateVolume ¶ added in v1.5.0
func (m *MultishareStatefulController) CreateVolume(ctx context.Context, req *csi.CreateVolumeRequest) (*csi.CreateVolumeResponse, error)
func (*MultishareStatefulController) DeleteVolume ¶ added in v1.5.0
func (m *MultishareStatefulController) DeleteVolume(ctx context.Context, req *csi.DeleteVolumeRequest) (*csi.DeleteVolumeResponse, error)
type NonBlockingGRPCServer ¶
type NonBlockingGRPCServer interface { // Start services at the endpoint Start(endpoint string, ids csi.IdentityServer, cs csi.ControllerServer, ns csi.NodeServer) // Waits for the service to stop Wait() // Stops the service gracefully Stop() // Stops the service forcefully ForceStop() }
Defines Non blocking GRPC server interfaces
func NewNonBlockingGRPCServer ¶
func NewNonBlockingGRPCServer() NonBlockingGRPCServer
type Op ¶ added in v1.5.0
type Op struct { Id string Type util.OperationType Target string Err error }
Click to show internal directories.
Click to hide internal directories.