nas

package
v1.0.6 Latest Latest
Warning

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

Go to latest
Published: Jul 13, 2020 License: Apache-2.0 Imports: 27 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MNTROOTPATH     = "/csi-persistentvolumes"
	MBSize          = 1024 * 1024
	DRIVER          = "driver"
	SERVER          = "server"
	MODE            = "mode"
	ModeType        = "modeType"
	VolumeAs        = "volumeAs"
	PATH            = "path"
	ProtocolType    = "protocolType"
	FileSystemType  = "fileSystemType"
	Capacity        = "capacity"
	EncryptType     = "encryptType"
	SnapshotID      = "snapshotID"
	StorageType     = "storageType"
	ZoneID          = "zoneId"
	DESCRIPTION     = "description"
	ZoneIDTag       = "zone-id"
	NetworkType     = "networkType"
	VpcID           = "vpcId"
	VSwitchID       = "vSwitchId"
	AccessGroupName = "accessGroupName"
	RegionID        = "regionId"
	CnHangzhouFin   = "cn-hangzhou-finance"
	DeleteVolume    = "deleteVolume"
)

resourcemode is selected by: subpath/filesystem

View Source
const (
	// NasTempMntPath used for create sub directory
	NasTempMntPath = "/mnt/acs_mnt/k8s_nas/temp"
	// NasPortnum is nas port
	NasPortnum = "2049"
	// NasMetricByPlugin tag
	NasMetricByPlugin = "NAS_METRIC_BY_PLUGIN"
	// MixRunTimeMode support both runc and runv
	MixRunTimeMode = "runc-runv"
	// RunvRunTimeMode tag
	RunvRunTimeMode = "runv"
)
View Source
const (
	// MetadataURL is metadata url
	MetadataURL = "http://100.100.100.200/latest/meta-data/"
	// RegionTag is region id
	RegionTag = "region-id"
)
View Source
const (

	// InstanceID is instance id
	InstanceID = "instance-id"
)

Variables

View Source
var (
	// VERSION should be updated by hand at each release
	VERSION = "v1.14.8"
	// GITCOMMIT will be overwritten automatically by the build system
	GITCOMMIT = "HEAD"
	// KubernetesAlicloudIdentity is the system identity for ecs client request
	KubernetesAlicloudIdentity = fmt.Sprintf("Kubernetes.Alicloud/CsiProvision.Nas-%s", VERSION)
)

Functions

func CheckNfsPathMounted added in v1.0.1

func CheckNfsPathMounted(mountpoint, server, path string) bool

CheckNfsPathMounted check whether the given nfs path was mounted

func CreateDest added in v1.0.1

func CreateDest(dest string) error

CreateDest create the target

func DoNfsMount added in v1.0.1

func DoNfsMount(nfsServer, nfsPath, nfsVers, mountOptions, mountPoint, volumeID string) error

DoNfsMount execute the mount command for nas dir

func GetMetaData added in v1.0.1

func GetMetaData(resource string) string

GetMetaData get host regionid, zoneid

func GetNfsDetails added in v1.0.1

func GetNfsDetails(nfsServersString string) (string, string)

GetNfsDetails get nfs server's details

func GlobalConfigSet added in v1.0.3

func GlobalConfigSet()

GlobalConfigSet set global config

func NewControllerServer added in v1.0.1

func NewControllerServer(d *csicommon.CSIDriver, client *aliNas.Client, region string) csi.ControllerServer

NewControllerServer is to create controller server

func ParseMountFlags added in v1.0.2

func ParseMountFlags(mntOptions []string) (string, string)

ParseMountFlags parse mountOptions

func SetNasEndPoint added in v1.0.2

func SetNasEndPoint(regionID string)

SetNasEndPoint Set Endpoint for Nas

Types

type GlobalConfig added in v1.0.3

type GlobalConfig struct {
	Region             string
	NasTagEnable       bool
	ADControllerEnable bool
	MetricEnable       bool
	RunTimeClass       string
}

GlobalConfig save global values for plugin

var (

	// GlobalConfigVar Global Config
	GlobalConfigVar GlobalConfig
)

type NAS added in v1.0.1

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

NAS the NAS object

func NewDriver

func NewDriver(nodeID, endpoint string) *NAS

NewDriver create the identity/node/controller server and disk driver

func (*NAS) Run added in v1.0.1

func (d *NAS) Run()

Run start a new NodeServer

type Options added in v1.0.1

type Options struct {
	Server   string `json:"server"`
	Path     string `json:"path"`
	Vers     string `json:"vers"`
	Mode     string `json:"mode"`
	ModeType string `json:"modeType"`
	Options  string `json:"options"`
}

Options struct definition

type RoleAuth added in v1.0.1

type RoleAuth struct {
	AccessKeyID     string
	AccessKeySecret string
	Expiration      time.Time
	SecurityToken   string
	LastUpdated     time.Time
	Code            string
}

RoleAuth define STS Token Response

type RunvNasOptions added in v1.0.4

type RunvNasOptions struct {
	Server     string `json:"server"`
	Path       string `json:"path"`
	Vers       string `json:"vers"`
	Mode       string `json:"mode"`
	ModeType   string `json:"modeType"`
	Options    string `json:"options"`
	RunTime    string `json:"runtime"`
	MountFile  string `json:"mountfile"`
	VolumeType string `json:"volumeType"`
}

RunvNasOptions struct definition

Jump to

Keyboard shortcuts

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