pmemcsidriver

package
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 19, 2022 License: Apache-2.0 Imports: 52 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	//PmemDriverTopologyKey key to use for topology constraint
	DriverTopologyKey = ""
)

Functions

func GetCSIDriver added in v0.8.0

func GetCSIDriver(cfg Config) (*csiDriver, error)

func Main added in v0.5.0

func Main() int

func NewIdentityServer

func NewIdentityServer(name, version string) *identityServer

func NewNodeControllerServer

func NewNodeControllerServer(ctx context.Context, nodeID string, dm pmdmanager.PmemDeviceManager, sm pmemstate.StateManager) *nodeControllerServer

func NewNodeServer

func NewNodeServer(cs *nodeControllerServer, mountDirectory string) *nodeServer

Types

type Config

type Config struct {
	//DriverName name of the csi driver
	DriverName string
	//NodeID node id on which this csi driver is running
	NodeID string
	//Endpoint exported csi driver endpoint
	Endpoint string
	//Mode mode fo the driver
	Mode DriverMode
	//DeviceManager device manager to use
	DeviceManager api.DeviceMode
	//Directory where to persist the node driver state
	StateBasePath string
	//Version driver release version
	Version string
	// PmemPercentage percentage of space to be used by the driver in each PMEM region
	PmemPercentage uint

	// KubeAPIQPS is the average rate of requests to the Kubernetes API server,
	// enforced locally in client-go.
	KubeAPIQPS float64

	// KubeAPIQPS is the number of requests that a client is
	// allowed to send above the average rate of request.
	KubeAPIBurst int
	// contains filtered or unexported fields
}

Config type for driver configuration

type DefaultControllerServer

type DefaultControllerServer struct {
	// contains filtered or unexported fields
}

func (*DefaultControllerServer) ControllerGetCapabilities

ControllerGetCapabilities implements the default GRPC callout. Default supports all capabilities

func (*DefaultControllerServer) ControllerPublishVolume

func (*DefaultControllerServer) ControllerUnpublishVolume

func (*DefaultControllerServer) CreateSnapshot

func (*DefaultControllerServer) CreateVolume

func (*DefaultControllerServer) DeleteSnapshot

func (*DefaultControllerServer) DeleteVolume

func (*DefaultControllerServer) GetCapacity

func (*DefaultControllerServer) ListSnapshots

func (*DefaultControllerServer) ListVolumes

func (*DefaultControllerServer) ValidateControllerServiceRequest

func (cs *DefaultControllerServer) ValidateControllerServiceRequest(c csi.ControllerServiceCapability_RPC_Type) error

type DriverMode

type DriverMode string
const (
	// Node driver with support for provisioning.
	Node DriverMode = "node"
	// The controller with the rescheduler. For historic reasons this is called "webhooks".
	Controller DriverMode = "webhooks"
	// Convert each raw namespace into fsdax.
	ForceConvertRawNamespaces = "force-convert-raw-namespaces"
)

The mode strings are part of the metrics API (-> csi_controller, csi_node as subsystem), do not change them!

func (*DriverMode) Set added in v0.7.0

func (mode *DriverMode) Set(value string) error

func (*DriverMode) String added in v0.7.0

func (mode *DriverMode) String() string

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL