migration

package
v0.0.0-...-a810e79 Latest Latest
Warning

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

Go to latest
Published: Feb 25, 2021 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

View Source
const BTRFSFeatureMigrationHeader = "migration_header"

BTRFSFeatureMigrationHeader indicates a migration header will be sent/recv in data channel first.

View Source
const BTRFSFeatureSubvolumes = "header_subvolumes"

BTRFSFeatureSubvolumes indicates migration can send/recv subvolumes.

Variables

View Source
var (
	MigrationFSType_name = map[int32]string{
		0: "RSYNC",
		1: "BTRFS",
		2: "ZFS",
		3: "RBD",
		4: "BLOCK_AND_RSYNC",
	}
	MigrationFSType_value = map[string]int32{
		"RSYNC":           0,
		"BTRFS":           1,
		"ZFS":             2,
		"RBD":             3,
		"BLOCK_AND_RSYNC": 4,
	}
)

Enum value maps for MigrationFSType.

View Source
var (
	CRIUType_name = map[int32]string{
		0: "CRIU_RSYNC",
		1: "PHAUL",
		2: "NONE",
	}
	CRIUType_value = map[string]int32{
		"CRIU_RSYNC": 0,
		"PHAUL":      1,
		"NONE":       2,
	}
)

Enum value maps for CRIUType.

View Source
var File_lxd_migration_migrate_proto protoreflect.FileDescriptor

Functions

func ProgressReader

func ProgressReader(op *operations.Operation, key string, description string) func(io.ReadCloser) io.ReadCloser

ProgressReader reports the read progress.

func ProgressTracker

func ProgressTracker(op *operations.Operation, key string, description string) *ioprogress.ProgressTracker

ProgressTracker returns a migration I/O tracker

func ProgressWriter

func ProgressWriter(op *operations.Operation, key string, description string) func(io.WriteCloser) io.WriteCloser

ProgressWriter reports the write progress.

func ProtoRecv

func ProtoRecv(ws *websocket.Conn, msg proto.Message) error

ProtoRecv gets a protobuf message from a websocket

func ProtoSend

func ProtoSend(ws *websocket.Conn, msg proto.Message) error

ProtoSend sends a protobuf message over a websocket

func ProtoSendControl

func ProtoSendControl(ws *websocket.Conn, err error)

ProtoSendControl sends a migration control message over a websocket

Types

type BtrfsFeatures

type BtrfsFeatures struct {
	MigrationHeader  *bool `protobuf:"varint,1,opt,name=migration_header,json=migrationHeader" json:"migration_header,omitempty"`
	HeaderSubvolumes *bool `protobuf:"varint,2,opt,name=header_subvolumes,json=headerSubvolumes" json:"header_subvolumes,omitempty"`
	// contains filtered or unexported fields
}

func (*BtrfsFeatures) Descriptor deprecated

func (*BtrfsFeatures) Descriptor() ([]byte, []int)

Deprecated: Use BtrfsFeatures.ProtoReflect.Descriptor instead.

func (*BtrfsFeatures) GetHeaderSubvolumes

func (x *BtrfsFeatures) GetHeaderSubvolumes() bool

func (*BtrfsFeatures) GetMigrationHeader

func (x *BtrfsFeatures) GetMigrationHeader() bool

func (*BtrfsFeatures) ProtoMessage

func (*BtrfsFeatures) ProtoMessage()

func (*BtrfsFeatures) ProtoReflect

func (x *BtrfsFeatures) ProtoReflect() protoreflect.Message

func (*BtrfsFeatures) Reset

func (x *BtrfsFeatures) Reset()

func (*BtrfsFeatures) String

func (x *BtrfsFeatures) String() string

type CRIUType

type CRIUType int32
const (
	CRIUType_CRIU_RSYNC CRIUType = 0
	CRIUType_PHAUL      CRIUType = 1
	CRIUType_NONE       CRIUType = 2
)

func (CRIUType) Descriptor

func (CRIUType) Descriptor() protoreflect.EnumDescriptor

func (CRIUType) Enum

func (x CRIUType) Enum() *CRIUType

func (CRIUType) EnumDescriptor deprecated

func (CRIUType) EnumDescriptor() ([]byte, []int)

Deprecated: Use CRIUType.Descriptor instead.

func (CRIUType) Number

func (x CRIUType) Number() protoreflect.EnumNumber

func (CRIUType) String

func (x CRIUType) String() string

func (CRIUType) Type

func (*CRIUType) UnmarshalJSON deprecated

func (x *CRIUType) UnmarshalJSON(b []byte) error

Deprecated: Do not use.

type Config

type Config struct {
	Key   *string `protobuf:"bytes,1,req,name=key" json:"key,omitempty"`
	Value *string `protobuf:"bytes,2,req,name=value" json:"value,omitempty"`
	// contains filtered or unexported fields
}

func (*Config) Descriptor deprecated

func (*Config) Descriptor() ([]byte, []int)

Deprecated: Use Config.ProtoReflect.Descriptor instead.

func (*Config) GetKey

func (x *Config) GetKey() string

func (*Config) GetValue

func (x *Config) GetValue() string

func (*Config) ProtoMessage

func (*Config) ProtoMessage()

func (*Config) ProtoReflect

func (x *Config) ProtoReflect() protoreflect.Message

func (*Config) Reset

func (x *Config) Reset()

func (*Config) String

func (x *Config) String() string

type Device

type Device struct {
	Name   *string   `protobuf:"bytes,1,req,name=name" json:"name,omitempty"`
	Config []*Config `protobuf:"bytes,2,rep,name=config" json:"config,omitempty"`
	// contains filtered or unexported fields
}

func (*Device) Descriptor deprecated

func (*Device) Descriptor() ([]byte, []int)

Deprecated: Use Device.ProtoReflect.Descriptor instead.

func (*Device) GetConfig

func (x *Device) GetConfig() []*Config

func (*Device) GetName

func (x *Device) GetName() string

func (*Device) ProtoMessage

func (*Device) ProtoMessage()

func (*Device) ProtoReflect

func (x *Device) ProtoReflect() protoreflect.Message

func (*Device) Reset

func (x *Device) Reset()

func (*Device) String

func (x *Device) String() string

type DumpStatsEntry

type DumpStatsEntry struct {
	FreezingTime       *uint32 `protobuf:"varint,1,req,name=freezing_time,json=freezingTime" json:"freezing_time,omitempty"`
	FrozenTime         *uint32 `protobuf:"varint,2,req,name=frozen_time,json=frozenTime" json:"frozen_time,omitempty"`
	MemdumpTime        *uint32 `protobuf:"varint,3,req,name=memdump_time,json=memdumpTime" json:"memdump_time,omitempty"`
	MemwriteTime       *uint32 `protobuf:"varint,4,req,name=memwrite_time,json=memwriteTime" json:"memwrite_time,omitempty"`
	PagesScanned       *uint64 `protobuf:"varint,5,req,name=pages_scanned,json=pagesScanned" json:"pages_scanned,omitempty"`
	PagesSkippedParent *uint64 `protobuf:"varint,6,req,name=pages_skipped_parent,json=pagesSkippedParent" json:"pages_skipped_parent,omitempty"`
	PagesWritten       *uint64 `protobuf:"varint,7,req,name=pages_written,json=pagesWritten" json:"pages_written,omitempty"`
	IrmapResolve       *uint32 `protobuf:"varint,8,opt,name=irmap_resolve,json=irmapResolve" json:"irmap_resolve,omitempty"`
	PagesLazy          *uint64 `protobuf:"varint,9,req,name=pages_lazy,json=pagesLazy" json:"pages_lazy,omitempty"`
	PagePipes          *uint64 `protobuf:"varint,10,opt,name=page_pipes,json=pagePipes" json:"page_pipes,omitempty"`
	PagePipeBufs       *uint64 `protobuf:"varint,11,opt,name=page_pipe_bufs,json=pagePipeBufs" json:"page_pipe_bufs,omitempty"`
	// contains filtered or unexported fields
}

This one contains statistics about dump/restore process

func (*DumpStatsEntry) Descriptor deprecated

func (*DumpStatsEntry) Descriptor() ([]byte, []int)

Deprecated: Use DumpStatsEntry.ProtoReflect.Descriptor instead.

func (*DumpStatsEntry) GetFreezingTime

func (x *DumpStatsEntry) GetFreezingTime() uint32

func (*DumpStatsEntry) GetFrozenTime

func (x *DumpStatsEntry) GetFrozenTime() uint32

func (*DumpStatsEntry) GetIrmapResolve

func (x *DumpStatsEntry) GetIrmapResolve() uint32

func (*DumpStatsEntry) GetMemdumpTime

func (x *DumpStatsEntry) GetMemdumpTime() uint32

func (*DumpStatsEntry) GetMemwriteTime

func (x *DumpStatsEntry) GetMemwriteTime() uint32

func (*DumpStatsEntry) GetPagePipeBufs

func (x *DumpStatsEntry) GetPagePipeBufs() uint64

func (*DumpStatsEntry) GetPagePipes

func (x *DumpStatsEntry) GetPagePipes() uint64

func (*DumpStatsEntry) GetPagesLazy

func (x *DumpStatsEntry) GetPagesLazy() uint64

func (*DumpStatsEntry) GetPagesScanned

func (x *DumpStatsEntry) GetPagesScanned() uint64

func (*DumpStatsEntry) GetPagesSkippedParent

func (x *DumpStatsEntry) GetPagesSkippedParent() uint64

func (*DumpStatsEntry) GetPagesWritten

func (x *DumpStatsEntry) GetPagesWritten() uint64

func (*DumpStatsEntry) ProtoMessage

func (*DumpStatsEntry) ProtoMessage()

func (*DumpStatsEntry) ProtoReflect

func (x *DumpStatsEntry) ProtoReflect() protoreflect.Message

func (*DumpStatsEntry) Reset

func (x *DumpStatsEntry) Reset()

func (*DumpStatsEntry) String

func (x *DumpStatsEntry) String() string

type IDMapType

type IDMapType struct {
	Isuid    *bool  `protobuf:"varint,1,req,name=isuid" json:"isuid,omitempty"`
	Isgid    *bool  `protobuf:"varint,2,req,name=isgid" json:"isgid,omitempty"`
	Hostid   *int32 `protobuf:"varint,3,req,name=hostid" json:"hostid,omitempty"`
	Nsid     *int32 `protobuf:"varint,4,req,name=nsid" json:"nsid,omitempty"`
	Maprange *int32 `protobuf:"varint,5,req,name=maprange" json:"maprange,omitempty"`
	// contains filtered or unexported fields
}

func (*IDMapType) Descriptor deprecated

func (*IDMapType) Descriptor() ([]byte, []int)

Deprecated: Use IDMapType.ProtoReflect.Descriptor instead.

func (*IDMapType) GetHostid

func (x *IDMapType) GetHostid() int32

func (*IDMapType) GetIsgid

func (x *IDMapType) GetIsgid() bool

func (*IDMapType) GetIsuid

func (x *IDMapType) GetIsuid() bool

func (*IDMapType) GetMaprange

func (x *IDMapType) GetMaprange() int32

func (*IDMapType) GetNsid

func (x *IDMapType) GetNsid() int32

func (*IDMapType) ProtoMessage

func (*IDMapType) ProtoMessage()

func (*IDMapType) ProtoReflect

func (x *IDMapType) ProtoReflect() protoreflect.Message

func (*IDMapType) Reset

func (x *IDMapType) Reset()

func (*IDMapType) String

func (x *IDMapType) String() string

type MigrationControl

type MigrationControl struct {
	Success *bool `protobuf:"varint,1,req,name=success" json:"success,omitempty"`
	// optional failure message if sending a failure
	Message *string `protobuf:"bytes,2,opt,name=message" json:"message,omitempty"`
	// contains filtered or unexported fields
}

func (*MigrationControl) Descriptor deprecated

func (*MigrationControl) Descriptor() ([]byte, []int)

Deprecated: Use MigrationControl.ProtoReflect.Descriptor instead.

func (*MigrationControl) GetMessage

func (x *MigrationControl) GetMessage() string

func (*MigrationControl) GetSuccess

func (x *MigrationControl) GetSuccess() bool

func (*MigrationControl) ProtoMessage

func (*MigrationControl) ProtoMessage()

func (*MigrationControl) ProtoReflect

func (x *MigrationControl) ProtoReflect() protoreflect.Message

func (*MigrationControl) Reset

func (x *MigrationControl) Reset()

func (*MigrationControl) String

func (x *MigrationControl) String() string

type MigrationFSType

type MigrationFSType int32
const (
	MigrationFSType_RSYNC           MigrationFSType = 0
	MigrationFSType_BTRFS           MigrationFSType = 1
	MigrationFSType_ZFS             MigrationFSType = 2
	MigrationFSType_RBD             MigrationFSType = 3
	MigrationFSType_BLOCK_AND_RSYNC MigrationFSType = 4
)

func (MigrationFSType) Descriptor

func (MigrationFSType) Enum

func (x MigrationFSType) Enum() *MigrationFSType

func (MigrationFSType) EnumDescriptor deprecated

func (MigrationFSType) EnumDescriptor() ([]byte, []int)

Deprecated: Use MigrationFSType.Descriptor instead.

func (MigrationFSType) Number

func (MigrationFSType) String

func (x MigrationFSType) String() string

func (MigrationFSType) Type

func (*MigrationFSType) UnmarshalJSON deprecated

func (x *MigrationFSType) UnmarshalJSON(b []byte) error

Deprecated: Do not use.

type MigrationHeader

type MigrationHeader struct {
	Fs            *MigrationFSType `protobuf:"varint,1,req,name=fs,enum=migration.MigrationFSType" json:"fs,omitempty"`
	Criu          *CRIUType        `protobuf:"varint,2,opt,name=criu,enum=migration.CRIUType" json:"criu,omitempty"`
	Idmap         []*IDMapType     `protobuf:"bytes,3,rep,name=idmap" json:"idmap,omitempty"`
	SnapshotNames []string         `protobuf:"bytes,4,rep,name=snapshotNames" json:"snapshotNames,omitempty"`
	Snapshots     []*Snapshot      `protobuf:"bytes,5,rep,name=snapshots" json:"snapshots,omitempty"`
	Predump       *bool            `protobuf:"varint,7,opt,name=predump" json:"predump,omitempty"`
	RsyncFeatures *RsyncFeatures   `protobuf:"bytes,8,opt,name=rsyncFeatures" json:"rsyncFeatures,omitempty"`
	Refresh       *bool            `protobuf:"varint,9,opt,name=refresh" json:"refresh,omitempty"`
	ZfsFeatures   *ZfsFeatures     `protobuf:"bytes,10,opt,name=zfsFeatures" json:"zfsFeatures,omitempty"`
	VolumeSize    *int64           `protobuf:"varint,11,opt,name=volumeSize" json:"volumeSize,omitempty"`
	BtrfsFeatures *BtrfsFeatures   `protobuf:"bytes,12,opt,name=btrfsFeatures" json:"btrfsFeatures,omitempty"`
	// contains filtered or unexported fields
}

func TypesToHeader

func TypesToHeader(types ...Type) *MigrationHeader

TypesToHeader converts one or more Types to a MigrationHeader. It uses the first type argument supplied to indicate the preferred migration method and sets the MigrationHeader's Fs type to that. If the preferred type is ZFS then it will also set the header's optional ZfsFeatures. If the fallback Rsync type is present in any of the types even if it is not preferred, then its optional features are added to the header's RsyncFeatures, allowing for fallback negotiation to take place on the farside.

func (*MigrationHeader) Descriptor deprecated

func (*MigrationHeader) Descriptor() ([]byte, []int)

Deprecated: Use MigrationHeader.ProtoReflect.Descriptor instead.

func (*MigrationHeader) GetBtrfsFeatures

func (x *MigrationHeader) GetBtrfsFeatures() *BtrfsFeatures

func (*MigrationHeader) GetBtrfsFeaturesSlice

func (m *MigrationHeader) GetBtrfsFeaturesSlice() []string

GetBtrfsFeaturesSlice returns a slice of strings representing the supported BTRFS features.

func (*MigrationHeader) GetCriu

func (x *MigrationHeader) GetCriu() CRIUType

func (*MigrationHeader) GetFs

func (x *MigrationHeader) GetFs() MigrationFSType

func (*MigrationHeader) GetIdmap

func (x *MigrationHeader) GetIdmap() []*IDMapType

func (*MigrationHeader) GetPredump

func (x *MigrationHeader) GetPredump() bool

func (*MigrationHeader) GetRefresh

func (x *MigrationHeader) GetRefresh() bool

func (*MigrationHeader) GetRsyncFeatures

func (x *MigrationHeader) GetRsyncFeatures() *RsyncFeatures

func (*MigrationHeader) GetRsyncFeaturesSlice

func (m *MigrationHeader) GetRsyncFeaturesSlice() []string

GetRsyncFeaturesSlice returns a slice of strings representing the supported RSYNC features

func (*MigrationHeader) GetSnapshotNames

func (x *MigrationHeader) GetSnapshotNames() []string

func (*MigrationHeader) GetSnapshots

func (x *MigrationHeader) GetSnapshots() []*Snapshot

func (*MigrationHeader) GetVolumeSize

func (x *MigrationHeader) GetVolumeSize() int64

func (*MigrationHeader) GetZfsFeatures

func (x *MigrationHeader) GetZfsFeatures() *ZfsFeatures

func (*MigrationHeader) GetZfsFeaturesSlice

func (m *MigrationHeader) GetZfsFeaturesSlice() []string

GetZfsFeaturesSlice returns a slice of strings representing the supported ZFS features

func (*MigrationHeader) ProtoMessage

func (*MigrationHeader) ProtoMessage()

func (*MigrationHeader) ProtoReflect

func (x *MigrationHeader) ProtoReflect() protoreflect.Message

func (*MigrationHeader) Reset

func (x *MigrationHeader) Reset()

func (*MigrationHeader) String

func (x *MigrationHeader) String() string

type MigrationSync

type MigrationSync struct {
	FinalPreDump *bool `protobuf:"varint,1,req,name=finalPreDump" json:"finalPreDump,omitempty"`
	// contains filtered or unexported fields
}

func (*MigrationSync) Descriptor deprecated

func (*MigrationSync) Descriptor() ([]byte, []int)

Deprecated: Use MigrationSync.ProtoReflect.Descriptor instead.

func (*MigrationSync) GetFinalPreDump

func (x *MigrationSync) GetFinalPreDump() bool

func (*MigrationSync) ProtoMessage

func (*MigrationSync) ProtoMessage()

func (*MigrationSync) ProtoReflect

func (x *MigrationSync) ProtoReflect() protoreflect.Message

func (*MigrationSync) Reset

func (x *MigrationSync) Reset()

func (*MigrationSync) String

func (x *MigrationSync) String() string

type RestoreStatsEntry

type RestoreStatsEntry struct {
	PagesCompared   *uint64 `protobuf:"varint,1,req,name=pages_compared,json=pagesCompared" json:"pages_compared,omitempty"`
	PagesSkippedCow *uint64 `protobuf:"varint,2,req,name=pages_skipped_cow,json=pagesSkippedCow" json:"pages_skipped_cow,omitempty"`
	ForkingTime     *uint32 `protobuf:"varint,3,req,name=forking_time,json=forkingTime" json:"forking_time,omitempty"`
	RestoreTime     *uint32 `protobuf:"varint,4,req,name=restore_time,json=restoreTime" json:"restore_time,omitempty"`
	PagesRestored   *uint64 `protobuf:"varint,5,opt,name=pages_restored,json=pagesRestored" json:"pages_restored,omitempty"`
	// contains filtered or unexported fields
}

func (*RestoreStatsEntry) Descriptor deprecated

func (*RestoreStatsEntry) Descriptor() ([]byte, []int)

Deprecated: Use RestoreStatsEntry.ProtoReflect.Descriptor instead.

func (*RestoreStatsEntry) GetForkingTime

func (x *RestoreStatsEntry) GetForkingTime() uint32

func (*RestoreStatsEntry) GetPagesCompared

func (x *RestoreStatsEntry) GetPagesCompared() uint64

func (*RestoreStatsEntry) GetPagesRestored

func (x *RestoreStatsEntry) GetPagesRestored() uint64

func (*RestoreStatsEntry) GetPagesSkippedCow

func (x *RestoreStatsEntry) GetPagesSkippedCow() uint64

func (*RestoreStatsEntry) GetRestoreTime

func (x *RestoreStatsEntry) GetRestoreTime() uint32

func (*RestoreStatsEntry) ProtoMessage

func (*RestoreStatsEntry) ProtoMessage()

func (*RestoreStatsEntry) ProtoReflect

func (x *RestoreStatsEntry) ProtoReflect() protoreflect.Message

func (*RestoreStatsEntry) Reset

func (x *RestoreStatsEntry) Reset()

func (*RestoreStatsEntry) String

func (x *RestoreStatsEntry) String() string

type RsyncFeatures

type RsyncFeatures struct {
	Xattrs        *bool `protobuf:"varint,1,opt,name=xattrs" json:"xattrs,omitempty"`
	Delete        *bool `protobuf:"varint,2,opt,name=delete" json:"delete,omitempty"`
	Compress      *bool `protobuf:"varint,3,opt,name=compress" json:"compress,omitempty"`
	Bidirectional *bool `protobuf:"varint,4,opt,name=bidirectional" json:"bidirectional,omitempty"`
	// contains filtered or unexported fields
}

func (*RsyncFeatures) Descriptor deprecated

func (*RsyncFeatures) Descriptor() ([]byte, []int)

Deprecated: Use RsyncFeatures.ProtoReflect.Descriptor instead.

func (*RsyncFeatures) GetBidirectional

func (x *RsyncFeatures) GetBidirectional() bool

func (*RsyncFeatures) GetCompress

func (x *RsyncFeatures) GetCompress() bool

func (*RsyncFeatures) GetDelete

func (x *RsyncFeatures) GetDelete() bool

func (*RsyncFeatures) GetXattrs

func (x *RsyncFeatures) GetXattrs() bool

func (*RsyncFeatures) ProtoMessage

func (*RsyncFeatures) ProtoMessage()

func (*RsyncFeatures) ProtoReflect

func (x *RsyncFeatures) ProtoReflect() protoreflect.Message

func (*RsyncFeatures) Reset

func (x *RsyncFeatures) Reset()

func (*RsyncFeatures) String

func (x *RsyncFeatures) String() string

type Snapshot

type Snapshot struct {
	Name         *string   `protobuf:"bytes,1,req,name=name" json:"name,omitempty"`
	LocalConfig  []*Config `protobuf:"bytes,2,rep,name=localConfig" json:"localConfig,omitempty"`
	Profiles     []string  `protobuf:"bytes,3,rep,name=profiles" json:"profiles,omitempty"`
	Ephemeral    *bool     `protobuf:"varint,4,req,name=ephemeral" json:"ephemeral,omitempty"`
	LocalDevices []*Device `protobuf:"bytes,5,rep,name=localDevices" json:"localDevices,omitempty"`
	Architecture *int32    `protobuf:"varint,6,req,name=architecture" json:"architecture,omitempty"`
	Stateful     *bool     `protobuf:"varint,7,req,name=stateful" json:"stateful,omitempty"`
	CreationDate *int64    `protobuf:"varint,8,opt,name=creation_date,json=creationDate" json:"creation_date,omitempty"`
	LastUsedDate *int64    `protobuf:"varint,9,opt,name=last_used_date,json=lastUsedDate" json:"last_used_date,omitempty"`
	ExpiryDate   *int64    `protobuf:"varint,10,opt,name=expiry_date,json=expiryDate" json:"expiry_date,omitempty"`
	// contains filtered or unexported fields
}

func (*Snapshot) Descriptor deprecated

func (*Snapshot) Descriptor() ([]byte, []int)

Deprecated: Use Snapshot.ProtoReflect.Descriptor instead.

func (*Snapshot) GetArchitecture

func (x *Snapshot) GetArchitecture() int32

func (*Snapshot) GetCreationDate

func (x *Snapshot) GetCreationDate() int64

func (*Snapshot) GetEphemeral

func (x *Snapshot) GetEphemeral() bool

func (*Snapshot) GetExpiryDate

func (x *Snapshot) GetExpiryDate() int64

func (*Snapshot) GetLastUsedDate

func (x *Snapshot) GetLastUsedDate() int64

func (*Snapshot) GetLocalConfig

func (x *Snapshot) GetLocalConfig() []*Config

func (*Snapshot) GetLocalDevices

func (x *Snapshot) GetLocalDevices() []*Device

func (*Snapshot) GetName

func (x *Snapshot) GetName() string

func (*Snapshot) GetProfiles

func (x *Snapshot) GetProfiles() []string

func (*Snapshot) GetStateful

func (x *Snapshot) GetStateful() bool

func (*Snapshot) ProtoMessage

func (*Snapshot) ProtoMessage()

func (*Snapshot) ProtoReflect

func (x *Snapshot) ProtoReflect() protoreflect.Message

func (*Snapshot) Reset

func (x *Snapshot) Reset()

func (*Snapshot) String

func (x *Snapshot) String() string

type StatsEntry

type StatsEntry struct {
	Dump    *DumpStatsEntry    `protobuf:"bytes,1,opt,name=dump" json:"dump,omitempty"`
	Restore *RestoreStatsEntry `protobuf:"bytes,2,opt,name=restore" json:"restore,omitempty"`
	// contains filtered or unexported fields
}

func (*StatsEntry) Descriptor deprecated

func (*StatsEntry) Descriptor() ([]byte, []int)

Deprecated: Use StatsEntry.ProtoReflect.Descriptor instead.

func (*StatsEntry) GetDump

func (x *StatsEntry) GetDump() *DumpStatsEntry

func (*StatsEntry) GetRestore

func (x *StatsEntry) GetRestore() *RestoreStatsEntry

func (*StatsEntry) ProtoMessage

func (*StatsEntry) ProtoMessage()

func (*StatsEntry) ProtoReflect

func (x *StatsEntry) ProtoReflect() protoreflect.Message

func (*StatsEntry) Reset

func (x *StatsEntry) Reset()

func (*StatsEntry) String

func (x *StatsEntry) String() string

type Type

type Type struct {
	FSType   MigrationFSType // Transport mode selected.
	Features []string        // Feature hints for selected FSType transport mode.
}

Type represents the migration transport type. It indicates the method by which the migration can take place and what optional features are available.

func MatchTypes

func MatchTypes(offer *MigrationHeader, fallbackType MigrationFSType, ourTypes []Type) ([]Type, error)

MatchTypes attempts to find matching migration transport types between an offered type sent from a remote source and the types supported by a local storage pool. If matches are found then one or more Types are returned containing the method and the matching optional features present in both. The function also takes a fallback type which is used as an additional offer type preference in case the preferred remote type is not compatible with the local type available. It is expected that both sides of the migration will support the fallback type for the volume's content type that is being migrated.

type VolumeSourceArgs

type VolumeSourceArgs struct {
	Name          string
	Snapshots     []string
	MigrationType Type
	TrackProgress bool
	MultiSync     bool
	FinalSync     bool
	Data          interface{} // Optional store to persist storage driver state between MultiSync phases.
	ContentType   string
}

VolumeSourceArgs represents the arguments needed to setup a volume migration source.

type VolumeTargetArgs

type VolumeTargetArgs struct {
	Name          string
	Description   string
	Config        map[string]string
	Snapshots     []string
	MigrationType Type
	TrackProgress bool
	Refresh       bool
	Live          bool
	VolumeSize    int64
	ContentType   string
}

VolumeTargetArgs represents the arguments needed to setup a volume migration sink.

type ZfsFeatures

type ZfsFeatures struct {
	Compress *bool `protobuf:"varint,1,opt,name=compress" json:"compress,omitempty"`
	// contains filtered or unexported fields
}

func (*ZfsFeatures) Descriptor deprecated

func (*ZfsFeatures) Descriptor() ([]byte, []int)

Deprecated: Use ZfsFeatures.ProtoReflect.Descriptor instead.

func (*ZfsFeatures) GetCompress

func (x *ZfsFeatures) GetCompress() bool

func (*ZfsFeatures) ProtoMessage

func (*ZfsFeatures) ProtoMessage()

func (*ZfsFeatures) ProtoReflect

func (x *ZfsFeatures) ProtoReflect() protoreflect.Message

func (*ZfsFeatures) Reset

func (x *ZfsFeatures) Reset()

func (*ZfsFeatures) String

func (x *ZfsFeatures) String() string

Jump to

Keyboard shortcuts

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