volume

package
v0.14.0 Latest Latest
Warning

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

Go to latest
Published: Apr 15, 2025 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	VOLUMEMUTEX = "VolumeMutex"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type LocalVolume

type LocalVolume interface {
	CreateVolume(lvName, vgName string, size, ratio uint64) error
	DeleteVolume(lvName, vgName string) error
	ResizeVolume(lvName, vgName string, size, ratio uint64) error
	VolumeList(lvName, vgName string) ([]types.LvInfo, error)
	VolumeInfo(lvName, vgName string) (*types.LvInfo, error)

	// GetCurrentVgStruct 额外的方法
	GetCurrentVgStruct() ([]api.VgGroup, error)
	GetCurrentPvStruct() ([]api.PVInfo, error)
	AddNewDiskToVg(disk, vgName string) error
	RemoveDiskInVg(disk, vgName string) error

	HealthCheck()
	RefreshLvmCache()

	// CreateBcache bcache
	CreateBcache(dev, cacheDev string, block, bucket string, cacheMode string) (*types.BcacheDeviceInfo, error)
	DeleteBcache(dev, cacheDev string) error
	BcacheDeviceInfo(dev string) (*types.BcacheDeviceInfo, error)

	GetLv() lvmd.Lvm2
}

LocalVolume 本接口负责对外提供方法 处理业务逻辑并调用lvm接口

type LocalVolumeImplement

type LocalVolumeImplement struct {
	Lv     lvmd.Lvm2
	Bcache bcache.Bcache
	Mutex  *mutx.GlobalLocks
}

func (*LocalVolumeImplement) AddNewDiskToVg

func (v *LocalVolumeImplement) AddNewDiskToVg(disk, vgName string) error

func (*LocalVolumeImplement) BcacheDeviceInfo

func (v *LocalVolumeImplement) BcacheDeviceInfo(dev string) (*types.BcacheDeviceInfo, error)

func (*LocalVolumeImplement) CreateBcache

func (v *LocalVolumeImplement) CreateBcache(dev, cacheDev string, block, bucket string, cachePolicy string) (*types.BcacheDeviceInfo, error)

CreateBcache bcache

func (*LocalVolumeImplement) CreateVolume

func (v *LocalVolumeImplement) CreateVolume(lvName, vgName string, size, ratio uint64) error

func (*LocalVolumeImplement) DeleteBcache

func (v *LocalVolumeImplement) DeleteBcache(dev, cacheDev string) error

func (*LocalVolumeImplement) DeleteVolume

func (v *LocalVolumeImplement) DeleteVolume(lvName, vgName string) error

func (*LocalVolumeImplement) GetCurrentPvStruct

func (v *LocalVolumeImplement) GetCurrentPvStruct() ([]api.PVInfo, error)

func (*LocalVolumeImplement) GetCurrentVgStruct

func (v *LocalVolumeImplement) GetCurrentVgStruct() ([]api.VgGroup, error)

func (*LocalVolumeImplement) GetLv added in v0.11.0

func (v *LocalVolumeImplement) GetLv() lvmd.Lvm2

func (*LocalVolumeImplement) HealthCheck

func (v *LocalVolumeImplement) HealthCheck()

func (*LocalVolumeImplement) RefreshLvmCache

func (v *LocalVolumeImplement) RefreshLvmCache()

func (*LocalVolumeImplement) RemoveDiskInVg

func (v *LocalVolumeImplement) RemoveDiskInVg(disk, vgName string) error

func (*LocalVolumeImplement) ResizeVolume

func (v *LocalVolumeImplement) ResizeVolume(lvName, vgName string, size, ratio uint64) error

func (*LocalVolumeImplement) VolumeInfo

func (v *LocalVolumeImplement) VolumeInfo(lvName, vgName string) (*types.LvInfo, error)

func (*LocalVolumeImplement) VolumeList

func (v *LocalVolumeImplement) VolumeList(lvName, vgName string) ([]types.LvInfo, error)

Jump to

Keyboard shortcuts

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