Versions in this module Expand all Collapse all v1 v1.6.4 Dec 18, 2024 Changes in this version + const DiskTypeBlock + const DiskTypeFilesystem + const MonitorInterval + const RebuildingSnapshotNamePrefix + const ReplicaRebuildingLvolSuffix + const SnapshotOperationCreate + const SnapshotOperationDelete + const SnapshotOperationRevert + const SyncTimeout + func GenerateRebuildingSnapshotName() string + func GetBdevLvolMap(cli *spdkclient.Client) (map[string]*spdktypes.BdevInfo, error) + func GetBdevMap(cli *spdkclient.Client) (map[string]*spdktypes.BdevInfo, error) + func GetNvmfEndpoint(nqn, ip string, port int32) string + func GetNvmfSubsystemMap(cli *spdkclient.Client) (map[string]*spdktypes.NvmfSubsystem, error) + func GetReplicaRebuildingLvolName(replicaName string) string + func GetReplicaSnapshotLvolName(replicaName, snapshotName string) string + func GetReplicaSnapshotLvolNamePrefix(replicaName string) string + func GetServiceClient(address string) (*client.SPDKClient, error) + func GetSnapshotNameFromReplicaSnapshotLvolName(replicaName, snapLvolName string) string + func IsReplicaSnapshotLvol(replicaName, lvolName string) bool + func ServiceLvolToProtoLvol(replicaName string, lvol *Lvol) *spdkrpc.Lvol + func ServiceReplicaToProtoReplica(r *Replica) *spdkrpc.Replica + type Backup struct + BackupURL string + Error string + IP string + IsIncremental bool + Name string + Port int32 + Progress int + SnapshotName string + State btypes.ProgressState + VolumeName string + func NewBackup(spdkClient *spdkclient.Client, backupName, volumeName, snapshotName string, ...) (*Backup, error) + func (b *Backup) BackupCreate(config *backupstore.DeltaBackupConfig) error + func (b *Backup) CloseSnapshot(snapshotName, volumeName string) error + func (b *Backup) CompareSnapshot(snapshotName, compareSnapshotName, volumeName string) (*btypes.Mappings, error) + func (b *Backup) HasSnapshot(snapshotName, volumeName string) bool + func (b *Backup) OpenSnapshot(snapshotName, volumeName string) error + func (b *Backup) ReadSnapshot(snapshotName, volumeName string, offset int64, data []byte) error + func (b *Backup) UpdateBackupStatus(snapshotName, volumeName string, state string, progress int, url string, ...) error + type BackupCreateInfo struct + BackupName string + IsIncremental bool + ReplicaAddress string + type Engine struct + ActualSize uint64 + Endpoint string + ErrorMsg string + Frontend string + Head *api.Lvol + IP string + IsRestoring bool + Name string + Port int32 + ReplicaAddressMap map[string]string + ReplicaBdevNameMap map[string]string + ReplicaModeMap map[string]types.Mode + SnapshotMap map[string]*api.Lvol + SpecSize uint64 + State types.InstanceState + UpdateCh chan interface{} + VolumeName string + func NewEngine(engineName, volumeName, frontend string, specSize uint64, ...) *Engine + func (e *Engine) BackupCreate(backupName, volumeName, engineName, snapshotName, backingImageName, ... string, ...) (*BackupCreateInfo, error) + func (e *Engine) BackupRestore(spdkClient *spdkclient.Client, backupUrl, engineName, snapshotName string, ...) (*spdkrpc.EngineBackupRestoreResponse, error) + func (e *Engine) BackupRestoreFinish(spdkClient *spdkclient.Client) error + func (e *Engine) BackupStatus(backupName, replicaAddress string) (*spdkrpc.BackupStatusResponse, error) + func (e *Engine) CheckAndUpdateInfoFromReplica() + func (e *Engine) Create(spdkClient *spdkclient.Client, ...) (ret *spdkrpc.Engine, err error) + func (e *Engine) Delete(spdkClient *spdkclient.Client, superiorPortAllocator *util.Bitmap) (err error) + func (e *Engine) Get() (res *spdkrpc.Engine) + func (e *Engine) ReplicaAddFinish(spdkClient *spdkclient.Client, replicaName, replicaAddress string, ...) (err error) + func (e *Engine) ReplicaAddStart(spdkClient *spdkclient.Client, replicaName, replicaAddress string) (err error) + func (e *Engine) ReplicaDelete(spdkClient *spdkclient.Client, replicaName, replicaAddress string) (err error) + func (e *Engine) ReplicaList(spdkClient *spdkclient.Client) (ret map[string]*api.Replica, err error) + func (e *Engine) ReplicaShallowCopy(dstReplicaName, dstReplicaAddress string) (err error) + func (e *Engine) RestoreStatus() (*spdkrpc.RestoreStatusResponse, error) + func (e *Engine) SetErrorState() + func (e *Engine) SnapshotCreate(spdkClient *spdkclient.Client, inputSnapshotName string, ...) (snapshotName string, err error) + func (e *Engine) SnapshotDelete(spdkClient *spdkclient.Client, snapshotName string) (err error) + func (e *Engine) SnapshotRevert(spdkClient *spdkclient.Client, snapshotName string) (err error) + func (e *Engine) ValidateAndUpdate(spdkClient *spdkclient.Client) (err error) + type Fragmap struct + ClusterSize uint64 + Map bitmap.Bitmap + NumClusters uint64 + type Lvol struct + ActualSize uint64 + Alias string + Children map[string]*Lvol + CreationTime string + Name string + Parent string + SpecSize uint64 + UUID string + UserCreated bool + func BdevLvolInfoToServiceLvol(bdev *spdktypes.BdevInfo) *Lvol + type Replica struct + ActiveChain []*Lvol + ActualSize uint64 + Alias string + ChainLength int + ErrorMsg string + IP string + IsExposeRequired bool + IsExposed bool + LvsName string + LvsUUID string + Name string + PortEnd int32 + PortStart int32 + SnapshotLvolMap map[string]*Lvol + SpecSize uint64 + State types.InstanceState + UpdateCh chan interface{} + func NewReplica(ctx context.Context, replicaName, lvsName, lvsUUID string, ...) *Replica + func (r *Replica) BackupRestore(spdkClient *spdkclient.Client, backupUrl, snapshotName string, ...) (err error) + func (r *Replica) Create(spdkClient *spdkclient.Client, exposeRequired bool, portCount int32, ...) (ret *spdkrpc.Replica, err error) + func (r *Replica) Delete(spdkClient *spdkclient.Client, cleanupRequired bool, ...) (err error) + func (r *Replica) Get() (pReplica *spdkrpc.Replica) + func (r *Replica) RebuildingDstFinish(spdkClient *spdkclient.Client, unexposeRequired bool) (err error) + func (r *Replica) RebuildingDstSnapshotCreate(spdkClient *spdkclient.Client, snapshotName string, opts *api.SnapshotOptions) (err error) + func (r *Replica) RebuildingDstSnapshotRevert(spdkClient *spdkclient.Client, snapshotName string) (err error) + func (r *Replica) RebuildingDstStart(spdkClient *spdkclient.Client, exposeRequired bool) (address string, err error) + func (r *Replica) RebuildingSrcAttach(spdkClient *spdkclient.Client, dstReplicaName, dstRebuildingLvolAddress string) (err error) + func (r *Replica) RebuildingSrcDetach(spdkClient *spdkclient.Client, dstReplicaName string) (err error) + func (r *Replica) RebuildingSrcFinish(spdkClient *spdkclient.Client, dstReplicaName string) (err error) + func (r *Replica) RebuildingSrcStart(spdkClient *spdkclient.Client, localReplicaLvsNameMap map[string]string, ...) (err error) + func (r *Replica) SetErrorState() + func (r *Replica) SnapshotCreate(spdkClient *spdkclient.Client, snapshotName string, opts *api.SnapshotOptions) (pReplica *spdkrpc.Replica, err error) + func (r *Replica) SnapshotDelete(spdkClient *spdkclient.Client, snapshotName string) (pReplica *spdkrpc.Replica, err error) + func (r *Replica) SnapshotRevert(spdkClient *spdkclient.Client, snapshotName string) (pReplica *spdkrpc.Replica, err error) + func (r *Replica) SnapshotShallowCopy(spdkClient *spdkclient.Client, snapshotName string) (err error) + func (r *Replica) Sync(spdkClient *spdkclient.Client) (err error) + type Restore struct + BackupURL string + CurrentRestoringBackup string + Error string + LastRestored string + LvolName string + Progress int + SnapshotName string + State btypes.ProgressState + func NewRestore(spdkClient *spdkclient.Client, ...) (*Restore, error) + func (r *Restore) CloseVolumeDev(volDev *os.File) error + func (r *Restore) DeepCopy() *Restore + func (r *Restore) FinishRestore() + func (r *Restore) GetStopChan() chan struct{} + func (r *Restore) OpenVolumeDev(volDevName string) (*os.File, string, error) + func (r *Restore) StartNewRestore(backupUrl, currentRestoringBackup, lvolName, snapshotName string, ...) + func (r *Restore) Stop() + func (r *Restore) UpdateRestoreStatus(snapshotLvolName string, progress int, err error) + type Server struct + func NewServer(ctx context.Context, portStart, portEnd int32) (*Server, error) + func (s *Server) DiskCreate(ctx context.Context, req *spdkrpc.DiskCreateRequest) (ret *spdkrpc.Disk, err error) + func (s *Server) DiskDelete(ctx context.Context, req *spdkrpc.DiskDeleteRequest) (ret *emptypb.Empty, err error) + func (s *Server) DiskGet(ctx context.Context, req *spdkrpc.DiskGetRequest) (ret *spdkrpc.Disk, err error) + func (s *Server) EngineBackupCreate(ctx context.Context, req *spdkrpc.BackupCreateRequest) (ret *spdkrpc.BackupCreateResponse, err error) + func (s *Server) EngineBackupRestore(ctx context.Context, req *spdkrpc.EngineBackupRestoreRequest) (ret *spdkrpc.EngineBackupRestoreResponse, err error) + func (s *Server) EngineBackupRestoreFinish(ctx context.Context, req *spdkrpc.EngineBackupRestoreFinishRequest) (ret *emptypb.Empty, err error) + func (s *Server) EngineBackupStatus(ctx context.Context, req *spdkrpc.BackupStatusRequest) (*spdkrpc.BackupStatusResponse, error) + func (s *Server) EngineCreate(ctx context.Context, req *spdkrpc.EngineCreateRequest) (ret *spdkrpc.Engine, err error) + func (s *Server) EngineDelete(ctx context.Context, req *spdkrpc.EngineDeleteRequest) (ret *emptypb.Empty, err error) + func (s *Server) EngineGet(ctx context.Context, req *spdkrpc.EngineGetRequest) (ret *spdkrpc.Engine, err error) + func (s *Server) EngineList(ctx context.Context, req *emptypb.Empty) (*spdkrpc.EngineListResponse, error) + func (s *Server) EngineReplicaAdd(ctx context.Context, req *spdkrpc.EngineReplicaAddRequest) (ret *emptypb.Empty, err error) + func (s *Server) EngineReplicaDelete(ctx context.Context, req *spdkrpc.EngineReplicaDeleteRequest) (ret *emptypb.Empty, err error) + func (s *Server) EngineReplicaList(ctx context.Context, req *spdkrpc.EngineReplicaListRequest) (ret *spdkrpc.EngineReplicaListResponse, err error) + func (s *Server) EngineRestoreStatus(ctx context.Context, req *spdkrpc.RestoreStatusRequest) (*spdkrpc.RestoreStatusResponse, error) + func (s *Server) EngineSnapshotCreate(ctx context.Context, req *spdkrpc.SnapshotRequest) (ret *spdkrpc.SnapshotResponse, err error) + func (s *Server) EngineSnapshotDelete(ctx context.Context, req *spdkrpc.SnapshotRequest) (ret *emptypb.Empty, err error) + func (s *Server) EngineSnapshotRevert(ctx context.Context, req *spdkrpc.SnapshotRequest) (ret *emptypb.Empty, err error) + func (s *Server) EngineWatch(req *emptypb.Empty, srv spdkrpc.SPDKService_EngineWatchServer) error + func (s *Server) LogGetFlags(ctx context.Context, req *emptypb.Empty) (ret *spdkrpc.LogGetFlagsResponse, err error) + func (s *Server) LogGetLevel(ctx context.Context, req *emptypb.Empty) (ret *spdkrpc.LogGetLevelResponse, err error) + func (s *Server) LogSetFlags(ctx context.Context, req *spdkrpc.LogSetFlagsRequest) (ret *emptypb.Empty, err error) + func (s *Server) LogSetLevel(ctx context.Context, req *spdkrpc.LogSetLevelRequest) (ret *emptypb.Empty, err error) + func (s *Server) ReplicaBackupCreate(ctx context.Context, req *spdkrpc.BackupCreateRequest) (ret *spdkrpc.BackupCreateResponse, err error) + func (s *Server) ReplicaBackupRestore(ctx context.Context, req *spdkrpc.ReplicaBackupRestoreRequest) (ret *emptypb.Empty, err error) + func (s *Server) ReplicaBackupStatus(ctx context.Context, req *spdkrpc.BackupStatusRequest) (ret *spdkrpc.BackupStatusResponse, err error) + func (s *Server) ReplicaCreate(ctx context.Context, req *spdkrpc.ReplicaCreateRequest) (ret *spdkrpc.Replica, err error) + func (s *Server) ReplicaDelete(ctx context.Context, req *spdkrpc.ReplicaDeleteRequest) (ret *emptypb.Empty, err error) + func (s *Server) ReplicaGet(ctx context.Context, req *spdkrpc.ReplicaGetRequest) (ret *spdkrpc.Replica, err error) + func (s *Server) ReplicaList(ctx context.Context, req *emptypb.Empty) (*spdkrpc.ReplicaListResponse, error) + func (s *Server) ReplicaRebuildingDstFinish(ctx context.Context, req *spdkrpc.ReplicaRebuildingDstFinishRequest) (ret *emptypb.Empty, err error) + func (s *Server) ReplicaRebuildingDstSnapshotCreate(ctx context.Context, req *spdkrpc.SnapshotRequest) (ret *emptypb.Empty, err error) + func (s *Server) ReplicaRebuildingDstSnapshotRevert(ctx context.Context, req *spdkrpc.SnapshotRequest) (ret *emptypb.Empty, err error) + func (s *Server) ReplicaRebuildingDstStart(ctx context.Context, req *spdkrpc.ReplicaRebuildingDstStartRequest) (ret *spdkrpc.ReplicaRebuildingDstStartResponse, err error) + func (s *Server) ReplicaRebuildingSrcAttach(ctx context.Context, req *spdkrpc.ReplicaRebuildingSrcAttachRequest) (ret *emptypb.Empty, err error) + func (s *Server) ReplicaRebuildingSrcDetach(ctx context.Context, req *spdkrpc.ReplicaRebuildingSrcDetachRequest) (ret *emptypb.Empty, err error) + func (s *Server) ReplicaRebuildingSrcFinish(ctx context.Context, req *spdkrpc.ReplicaRebuildingSrcFinishRequest) (ret *emptypb.Empty, err error) + func (s *Server) ReplicaRebuildingSrcStart(ctx context.Context, req *spdkrpc.ReplicaRebuildingSrcStartRequest) (ret *emptypb.Empty, err error) + func (s *Server) ReplicaRestoreStatus(ctx context.Context, req *spdkrpc.ReplicaRestoreStatusRequest) (ret *spdkrpc.ReplicaRestoreStatusResponse, err error) + func (s *Server) ReplicaSnapshotCreate(ctx context.Context, req *spdkrpc.SnapshotRequest) (ret *spdkrpc.Replica, err error) + func (s *Server) ReplicaSnapshotDelete(ctx context.Context, req *spdkrpc.SnapshotRequest) (ret *emptypb.Empty, err error) + func (s *Server) ReplicaSnapshotRevert(ctx context.Context, req *spdkrpc.SnapshotRequest) (ret *emptypb.Empty, err error) + func (s *Server) ReplicaSnapshotShallowCopy(ctx context.Context, req *spdkrpc.ReplicaSnapshotShallowCopyRequest) (ret *emptypb.Empty, err error) + func (s *Server) ReplicaWatch(req *emptypb.Empty, srv spdkrpc.SPDKService_ReplicaWatchServer) error + func (s *Server) Subscribe(instanceType types.InstanceType) (<-chan interface{}, error) + func (s *Server) VersionDetailGet(context.Context, *emptypb.Empty) (*spdkrpc.VersionDetailGetReply, error) + type SnapshotOperationType string