Documentation
¶
Index ¶
- Constants
- Variables
- func IsValidFileSystemType(fs string) bool
- 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
- func UpdateParmsZone(opt map[string]string, zoneID string)
- type DiskDriver
- func (d *DiskDriver) GetControllerCapability() []*csi.ControllerServiceCapability
- func (d *DiskDriver) GetMaxVolumePerNode() int64
- func (d *DiskDriver) GetName() string
- func (d *DiskDriver) GetNodeCapability() []*csi.NodeServiceCapability
- func (d *DiskDriver) GetNodeId() string
- func (d *DiskDriver) GetNodeZone() string
- func (d *DiskDriver) GetPluginCapability() []*csi.PluginCapability
- func (d *DiskDriver) GetTopologyVmTypeKey() string
- func (d *DiskDriver) GetTopologyZoneKey() string
- func (d *DiskDriver) GetVersion() string
- func (d *DiskDriver) GetVolumeCapability() []*csi.VolumeCapability_AccessMode
- func (d *DiskDriver) InitDiskDriver(input *InitDiskDriverInput)
- func (d *DiskDriver) ValidateControllerServiceRequest(c csi.ControllerServiceCapability_RPC_Type) bool
- func (d *DiskDriver) ValidateNodeServiceRequest(c csi.NodeServiceCapability_RPC_Type) bool
- func (d *DiskDriver) ValidatePluginCapabilityService(cap csi.PluginCapability_Service_Type) bool
- func (d *DiskDriver) ValidateVolumeAccessMode(c csi.VolumeCapability_AccessMode_Mode) bool
- func (d *DiskDriver) ValidateVolumeCapabilities(caps []*csi.VolumeCapability) bool
- func (d *DiskDriver) ValidateVolumeCapability(cap *csi.VolumeCapability) bool
- type InitDiskDriverInput
- type Topology
- type VmType
- type VolumeType
- type ZecSnapshotClass
- type ZecStorageClass
- func (sc ZecStorageClass) ConvertToDiskCategory(vt VolumeType) string
- func (sc ZecStorageClass) FormatVolumeSizeByte(sizeByte int64) int64
- func (sc ZecStorageClass) GetBurstEnable() bool
- func (sc ZecStorageClass) GetDiskType() VolumeType
- func (sc ZecStorageClass) GetFsType() string
- func (sc ZecStorageClass) GetMaxSizeByte() int64
- func (sc ZecStorageClass) GetMinSizeByte() int64
- func (sc ZecStorageClass) GetPlaceGroupID() string
- func (sc ZecStorageClass) GetRequiredVolumeSizeByte(capRange *csi.CapacityRange) (int64, error)
- func (sc ZecStorageClass) GetZone() string
- func (sc *ZecStorageClass) SetBurstEnable(burstEnable bool)
- func (sc *ZecStorageClass) SetPlaceGroupID(placeGroupID string)
- func (sc *ZecStorageClass) SetZone(zone string)
Constants ¶
const ( StorageClassTypeName = "type" //1=basic, 2=standard StorageClassMaxSizeName = "maxSize" //cloud disk min size (bytes) StorageClassMinSizeName = "minSize" //cloud disk max size (bytes) StorageClassFsTypeName = "fsType" //ext3 ext4 xfs StorageClassZoneId = "zoneID" //zone StorageClassPlaceGroupID = "placeGroupID" //groupid StorageClassBurstEnable = "burstEnable" //burst )
const ( BasicVolumeType VolumeType = 1 StandardVolumeType VolumeType = 2 DefaultVolumeType = StandardVolumeType BasicNvmeName string = "Basic NVMe SSD" StandardNvmeName string = "Standard NVMe SSD" )
const ( BasicVmType VmType = 1 DefaultVmType VmType = BasicVmType BasicVmName string = "BasicVm" )
const ( ZEC_MAX_DISK_SIZE_BYTES int64 = 32768 * 1024 * 1024 * 1024 ZEC_MIN_DISK_SIZE_BYTES int64 = 20 * 1024 * 1024 * 1024 )
const ( DiskSingleReplicaType int = 1 DiskMultiReplicaType int = 2 DiskThreeReplicaType int = 3 DefaultDiskReplicaType int = DiskMultiReplicaType )
disk rep
const (
SnapshotClassTagsName = "tags"
)
Variables ¶
var DefaultControllerServiceCapability = []csi.ControllerServiceCapability_RPC_Type{ csi.ControllerServiceCapability_RPC_CREATE_DELETE_VOLUME, csi.ControllerServiceCapability_RPC_PUBLISH_UNPUBLISH_VOLUME, csi.ControllerServiceCapability_RPC_EXPAND_VOLUME, csi.ControllerServiceCapability_RPC_CREATE_DELETE_SNAPSHOT, }
controller type support capability/feature: ControllerServiceCapability_RPC_UNKNOWN ControllerServiceCapability_RPC_Type = 0 ControllerServiceCapability_RPC_CREATE_DELETE_VOLUME ControllerServiceCapability_RPC_Type = 1 ControllerServiceCapability_RPC_PUBLISH_UNPUBLISH_VOLUME ControllerServiceCapability_RPC_Type = 2 ControllerServiceCapability_RPC_LIST_VOLUMES ControllerServiceCapability_RPC_Type = 3 ControllerServiceCapability_RPC_GET_CAPACITY ControllerServiceCapability_RPC_Type = 4 ControllerServiceCapability_RPC_CREATE_DELETE_SNAPSHOT ControllerServiceCapability_RPC_Type = 5 ControllerServiceCapability_RPC_LIST_SNAPSHOTS ControllerServiceCapability_RPC_Type = 6 ControllerServiceCapability_RPC_CLONE_VOLUME ControllerServiceCapability_RPC_Type = 7 ControllerServiceCapability_RPC_PUBLISH_READONLY ControllerServiceCapability_RPC_Type = 8 ControllerServiceCapability_RPC_EXPAND_VOLUME ControllerServiceCapability_RPC_Type = 9 ControllerServiceCapability_RPC_LIST_VOLUMES_PUBLISHED_NODES ControllerServiceCapability_RPC_Type = 10 ControllerServiceCapability_RPC_VOLUME_CONDITION ControllerServiceCapability_RPC_Type = 11 ControllerServiceCapability_RPC_GET_VOLUME ControllerServiceCapability_RPC_Type = 12 ControllerServiceCapability_RPC_SINGLE_NODE_MULTI_WRITER ControllerServiceCapability_RPC_Type = 13
var DefaultNodeServiceCapability = []csi.NodeServiceCapability_RPC_Type{ csi.NodeServiceCapability_RPC_STAGE_UNSTAGE_VOLUME, csi.NodeServiceCapability_RPC_EXPAND_VOLUME, csi.NodeServiceCapability_RPC_GET_VOLUME_STATS, }
node type support capability/feature: NodeServiceCapability_RPC_UNKNOWN NodeServiceCapability_RPC_Type = 0 NodeServiceCapability_RPC_STAGE_UNSTAGE_VOLUME NodeServiceCapability_RPC_Type = 1 NodeServiceCapability_RPC_GET_VOLUME_STATS NodeServiceCapability_RPC_Type = 2 NodeServiceCapability_RPC_EXPAND_VOLUME NodeServiceCapability_RPC_Type = 3 NodeServiceCapability_RPC_VOLUME_CONDITION NodeServiceCapability_RPC_Type = 4 NodeServiceCapability_RPC_SINGLE_NODE_MULTI_WRITER NodeServiceCapability_RPC_Type = 5 NodeServiceCapability_RPC_VOLUME_MOUNT_GROUP NodeServiceCapability_RPC_Type = 6
var DefaultPluginCapability = []*csi.PluginCapability{ { Type: &csi.PluginCapability_Service_{ Service: &csi.PluginCapability_Service{ Type: csi.PluginCapability_Service_CONTROLLER_SERVICE, }, }, }, { Type: &csi.PluginCapability_VolumeExpansion_{ VolumeExpansion: &csi.PluginCapability_VolumeExpansion{ Type: csi.PluginCapability_VolumeExpansion_OFFLINE, }, }, }, { Type: &csi.PluginCapability_Service_{ Service: &csi.PluginCapability_Service{ Type: csi.PluginCapability_Service_VOLUME_ACCESSIBILITY_CONSTRAINTS, }, }, }, }
var DefaultVolumeAccessModeType = []csi.VolumeCapability_AccessMode_Mode{ csi.VolumeCapability_AccessMode_SINGLE_NODE_WRITER, csi.VolumeCapability_AccessMode_SINGLE_NODE_SINGLE_WRITER, }
VolumeCapability_AccessMode_UNKNOWN VolumeCapability_AccessMode_Mode = 0 VolumeCapability_AccessMode_SINGLE_NODE_WRITER VolumeCapability_AccessMode_Mode = 1 VolumeCapability_AccessMode_SINGLE_NODE_READER_ONLY VolumeCapability_AccessMode_Mode = 2 VolumeCapability_AccessMode_MULTI_NODE_READER_ONLY VolumeCapability_AccessMode_Mode = 3 VolumeCapability_AccessMode_MULTI_NODE_SINGLE_WRITER VolumeCapability_AccessMode_Mode = 4 VolumeCapability_AccessMode_MULTI_NODE_MULTI_WRITER VolumeCapability_AccessMode_Mode = 5 VolumeCapability_AccessMode_SINGLE_NODE_SINGLE_WRITER VolumeCapability_AccessMode_Mode = 6 VolumeCapability_AccessMode_SINGLE_NODE_MULTI_WRITER VolumeCapability_AccessMode_Mode = 7
var VmTypeAttachPreferred = map[VmType]VolumeType{ BasicVmType: BasicVolumeType, }
no use, reserve
var VmTypeName = map[VmType]string{ BasicVmType: BasicVmName, }
var VmTypeValue = map[string]VmType{ BasicVmName: BasicVmType, }
var VolumeTypeAttachConstraint = map[VolumeType][]VmType{ BasicVolumeType: { BasicVmType, }, StandardVolumeType: { BasicVmType, }, }
topology disk mapping to vm
var VolumeTypeName = map[VolumeType]string{ BasicVolumeType: BasicNvmeName, StandardVolumeType: StandardNvmeName, }
var VolumeTypeToMaxSize = map[VolumeType]int64{ BasicVolumeType: ZEC_MAX_DISK_SIZE_BYTES, StandardVolumeType: ZEC_MAX_DISK_SIZE_BYTES, }
max zec cloud disk size
var VolumeTypeToMinSize = map[VolumeType]int64{ BasicVolumeType: ZEC_MIN_DISK_SIZE_BYTES, StandardVolumeType: ZEC_MIN_DISK_SIZE_BYTES, }
min zec cloud disk size
Functions ¶
func IsValidFileSystemType ¶
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
func UpdateParmsZone ¶
Types ¶
type DiskDriver ¶
type DiskDriver struct {
// contains filtered or unexported fields
}
func GetDiskDriver ¶
func GetDiskDriver() *DiskDriver
func (*DiskDriver) GetControllerCapability ¶
func (d *DiskDriver) GetControllerCapability() []*csi.ControllerServiceCapability
func (*DiskDriver) GetMaxVolumePerNode ¶
func (d *DiskDriver) GetMaxVolumePerNode() int64
func (*DiskDriver) GetName ¶
func (d *DiskDriver) GetName() string
func (*DiskDriver) GetNodeCapability ¶
func (d *DiskDriver) GetNodeCapability() []*csi.NodeServiceCapability
func (*DiskDriver) GetNodeId ¶
func (d *DiskDriver) GetNodeId() string
func (*DiskDriver) GetNodeZone ¶
func (d *DiskDriver) GetNodeZone() string
func (*DiskDriver) GetPluginCapability ¶
func (d *DiskDriver) GetPluginCapability() []*csi.PluginCapability
func (*DiskDriver) GetTopologyVmTypeKey ¶
func (d *DiskDriver) GetTopologyVmTypeKey() string
Action: Vm-Type only support BasicVm
func (*DiskDriver) GetTopologyZoneKey ¶
func (d *DiskDriver) GetTopologyZoneKey() string
Action: Vm below zone
func (*DiskDriver) GetVersion ¶
func (d *DiskDriver) GetVersion() string
func (*DiskDriver) GetVolumeCapability ¶
func (d *DiskDriver) GetVolumeCapability() []*csi.VolumeCapability_AccessMode
func (*DiskDriver) InitDiskDriver ¶
func (d *DiskDriver) InitDiskDriver(input *InitDiskDriverInput)
func (*DiskDriver) ValidateControllerServiceRequest ¶
func (d *DiskDriver) ValidateControllerServiceRequest(c csi.ControllerServiceCapability_RPC_Type) bool
func (*DiskDriver) ValidateNodeServiceRequest ¶
func (d *DiskDriver) ValidateNodeServiceRequest(c csi.NodeServiceCapability_RPC_Type) bool
func (*DiskDriver) ValidatePluginCapabilityService ¶
func (d *DiskDriver) ValidatePluginCapabilityService(cap csi.PluginCapability_Service_Type) bool
func (*DiskDriver) ValidateVolumeAccessMode ¶
func (d *DiskDriver) ValidateVolumeAccessMode(c csi.VolumeCapability_AccessMode_Mode) bool
func (*DiskDriver) ValidateVolumeCapabilities ¶
func (d *DiskDriver) ValidateVolumeCapabilities(caps []*csi.VolumeCapability) bool
func (*DiskDriver) ValidateVolumeCapability ¶
func (d *DiskDriver) ValidateVolumeCapability(cap *csi.VolumeCapability) bool
type InitDiskDriverInput ¶
type InitDiskDriverInput struct {
Name string
Version string
NodeId string
ZoneId string
MaxVolume int64
VolumeCap []csi.VolumeCapability_AccessMode_Mode
ControllerCap []csi.ControllerServiceCapability_RPC_Type
NodeCap []csi.NodeServiceCapability_RPC_Type
PluginCap []*csi.PluginCapability
}
type Topology ¶
type Topology struct {
// contains filtered or unexported fields
}
func NewTopology ¶
type VolumeType ¶
type VolumeType int
func StringToType ¶
func StringToType(s string) VolumeType
func (VolumeType) Int ¶
func (v VolumeType) Int() int
func (VolumeType) IsValid ¶
func (v VolumeType) IsValid() bool
func (VolumeType) String ¶
func (v VolumeType) String() string
type ZecSnapshotClass ¶ added in v1.1.0
type ZecSnapshotClass struct {
// contains filtered or unexported fields
}
func NewDefaultZecSnapshotClass ¶ added in v1.1.0
func NewDefaultZecSnapshotClass() *ZecSnapshotClass
func NewZecSnapshotClassFromMap ¶ added in v1.1.0
func NewZecSnapshotClassFromMap(opt map[string]string) (*ZecSnapshotClass, error)
func (ZecSnapshotClass) GetTags ¶ added in v1.1.0
func (sc ZecSnapshotClass) GetTags() []string
func (*ZecSnapshotClass) SetTags ¶ added in v1.1.0
func (sc *ZecSnapshotClass) SetTags(tags []string)
type ZecStorageClass ¶
type ZecStorageClass struct {
// contains filtered or unexported fields
}
func NewDefaultZecStorageClassFromType ¶
func NewDefaultZecStorageClassFromType(diskType VolumeType) *ZecStorageClass
func NewZecStorageClassFromMap ¶
func NewZecStorageClassFromMap(opt map[string]string) (*ZecStorageClass, error)
func (ZecStorageClass) ConvertToDiskCategory ¶
func (sc ZecStorageClass) ConvertToDiskCategory(vt VolumeType) string
func (ZecStorageClass) FormatVolumeSizeByte ¶
func (sc ZecStorageClass) FormatVolumeSizeByte(sizeByte int64) int64
func (ZecStorageClass) GetBurstEnable ¶ added in v1.1.0
func (sc ZecStorageClass) GetBurstEnable() bool
func (ZecStorageClass) GetDiskType ¶
func (sc ZecStorageClass) GetDiskType() VolumeType
func (ZecStorageClass) GetFsType ¶
func (sc ZecStorageClass) GetFsType() string
func (ZecStorageClass) GetMaxSizeByte ¶
func (sc ZecStorageClass) GetMaxSizeByte() int64
func (ZecStorageClass) GetMinSizeByte ¶
func (sc ZecStorageClass) GetMinSizeByte() int64
func (ZecStorageClass) GetPlaceGroupID ¶
func (sc ZecStorageClass) GetPlaceGroupID() string
func (ZecStorageClass) GetRequiredVolumeSizeByte ¶
func (sc ZecStorageClass) GetRequiredVolumeSizeByte(capRange *csi.CapacityRange) (int64, error)
func (ZecStorageClass) GetZone ¶
func (sc ZecStorageClass) GetZone() string
func (*ZecStorageClass) SetBurstEnable ¶ added in v1.1.0
func (sc *ZecStorageClass) SetBurstEnable(burstEnable bool)
func (*ZecStorageClass) SetPlaceGroupID ¶
func (sc *ZecStorageClass) SetPlaceGroupID(placeGroupID string)
func (*ZecStorageClass) SetZone ¶
func (sc *ZecStorageClass) SetZone(zone string)