datastore

package
v0.6.0 Latest Latest
Warning

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

Go to latest
Published: Sep 21, 2019 License: Apache-2.0 Imports: 32 Imported by: 4

Documentation

Index

Constants

View Source
const (
	LonghornVolumeKey = "longhornvolume"
	// NameMaximumLength restricted the length due to Kubernetes name limitation
	NameMaximumLength = 40
)

Variables

View Source
var (
	VerificationRetryInterval = 100 * time.Millisecond
	VerificationRetryCounts   = 20
)
View Source
var (
	SkipListerCheck = false
)

Functions

func CheckInstanceManagerType added in v0.6.0

func CheckInstanceManagerType(im *longhorn.InstanceManager) (types.InstanceManagerType, error)

func ErrorIsConflict added in v0.5.0

func ErrorIsConflict(err error) bool

func ErrorIsNotFound added in v0.3.1

func ErrorIsNotFound(err error) bool

Types

type DataStore

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

func NewDataStore

func NewDataStore(
	volumeInformer lhinformers.VolumeInformer,
	engineInformer lhinformers.EngineInformer,
	replicaInformer lhinformers.ReplicaInformer,
	engineImageInformer lhinformers.EngineImageInformer,
	nodeInformer lhinformers.NodeInformer,
	settingInformer lhinformers.SettingInformer,
	imInformer lhinformers.InstanceManagerInformer,
	lhClient lhclientset.Interface,

	podInformer coreinformers.PodInformer,
	cronJobInformer batchinformers_v1beta1.CronJobInformer,
	daemonSetInformer appsinformers.DaemonSetInformer,
	deploymentInformer appsinformers.DeploymentInformer,
	persistentVolumeInformer coreinformers.PersistentVolumeInformer,
	persistentVolumeClaimInformer coreinformers.PersistentVolumeClaimInformer,
	kubeNodeInformer coreinformers.NodeInformer,

	kubeClient clientset.Interface,
	namespace string) *DataStore

func (*DataStore) CreateDefaultDisk added in v0.6.0

func (s *DataStore) CreateDefaultDisk(node *longhorn.Node) error

CreateDefaultDisk creates a default DiskSpec based on DefaultDataPath and applies it to the provided Node.

func (*DataStore) CreateDefaultNode

func (s *DataStore) CreateDefaultNode(name string) (*longhorn.Node, error)

CreateDefaultNode will create the default Disk at the value of the DefaultDataPath Setting only if Create Default Disk on Labeled Nodes has been disabled.

func (*DataStore) CreateEngine

func (s *DataStore) CreateEngine(e *longhorn.Engine) (*longhorn.Engine, error)

func (*DataStore) CreateEngineImage

func (s *DataStore) CreateEngineImage(img *longhorn.EngineImage) (*longhorn.EngineImage, error)

func (*DataStore) CreateEngineImageDaemonSet

func (s *DataStore) CreateEngineImageDaemonSet(ds *appsv1.DaemonSet) error

func (*DataStore) CreateInstanceManager added in v0.6.0

func (s *DataStore) CreateInstanceManager(im *longhorn.InstanceManager) (*longhorn.InstanceManager, error)

func (*DataStore) CreateNode

func (s *DataStore) CreateNode(node *longhorn.Node) (*longhorn.Node, error)

func (*DataStore) CreatePersisentVolume added in v0.5.0

func (s *DataStore) CreatePersisentVolume(pv *corev1.PersistentVolume) (*corev1.PersistentVolume, error)

func (*DataStore) CreatePersisentVolumeClaim added in v0.5.0

func (s *DataStore) CreatePersisentVolumeClaim(ns string, pvc *corev1.PersistentVolumeClaim) (*corev1.PersistentVolumeClaim, error)

func (*DataStore) CreatePod added in v0.6.0

func (s *DataStore) CreatePod(pod *corev1.Pod) (*corev1.Pod, error)

func (*DataStore) CreateReplica

func (s *DataStore) CreateReplica(r *longhorn.Replica) (*longhorn.Replica, error)

func (*DataStore) CreateSetting

func (s *DataStore) CreateSetting(setting *longhorn.Setting) (*longhorn.Setting, error)

func (*DataStore) CreateVolume

func (s *DataStore) CreateVolume(v *longhorn.Volume) (*longhorn.Volume, error)

func (*DataStore) CreateVolumeCronJob

func (s *DataStore) CreateVolumeCronJob(volumeName string, cronJob *batchv1beta1.CronJob) (*batchv1beta1.CronJob, error)

func (*DataStore) DeleteCronJob

func (s *DataStore) DeleteCronJob(cronJobName string) error

func (*DataStore) DeleteDaemonSet added in v0.3.2

func (s *DataStore) DeleteDaemonSet(name string) error

func (*DataStore) DeleteDeployment added in v0.4.0

func (s *DataStore) DeleteDeployment(name string) error

func (*DataStore) DeleteEngine

func (s *DataStore) DeleteEngine(name string) error

DeleteEngine won't result in immediately deletion since finalizer was set by default

func (*DataStore) DeleteEngineImage

func (s *DataStore) DeleteEngineImage(name string) error

DeleteEngineImage won't result in immediately deletion since finalizer was set by default

func (*DataStore) DeleteInstanceManager added in v0.6.0

func (s *DataStore) DeleteInstanceManager(name string) error

DeleteInstanceManager won't result in immediately deletion since finalizer was set by default

func (*DataStore) DeleteInstanceManagersForEngineImage added in v0.6.0

func (s *DataStore) DeleteInstanceManagersForEngineImage(engineImageName string) error

func (*DataStore) DeleteNode added in v0.3.1

func (s *DataStore) DeleteNode(name string) error

func (*DataStore) DeletePod added in v0.6.0

func (s *DataStore) DeletePod(name string) error

func (*DataStore) DeleteReplica

func (s *DataStore) DeleteReplica(name string) error

DeleteReplica won't result in immediately deletion since finalizer was set by default

func (*DataStore) DeleteVolume

func (s *DataStore) DeleteVolume(name string) error

DeleteVolume won't result in immediately deletion since finalizer was set by default

func (*DataStore) GetAllCronJobsList added in v0.4.0

func (s *DataStore) GetAllCronJobsList() (runtime.Object, error)

func (*DataStore) GetAllDaemonSetsList added in v0.4.0

func (s *DataStore) GetAllDaemonSetsList() (runtime.Object, error)

func (*DataStore) GetAllDeploymentsList added in v0.4.0

func (s *DataStore) GetAllDeploymentsList() (runtime.Object, error)

func (*DataStore) GetAllEventsList added in v0.4.0

func (s *DataStore) GetAllEventsList() (runtime.Object, error)

func (*DataStore) GetAllJobsList added in v0.4.0

func (s *DataStore) GetAllJobsList() (runtime.Object, error)

func (*DataStore) GetAllNodesList added in v0.5.0

func (s *DataStore) GetAllNodesList() (runtime.Object, error)

func (*DataStore) GetAllPodsList added in v0.4.0

func (s *DataStore) GetAllPodsList() (runtime.Object, error)

func (*DataStore) GetAllServicesList added in v0.4.0

func (s *DataStore) GetAllServicesList() (runtime.Object, error)

func (*DataStore) GetAllStatefulSetsList added in v0.4.0

func (s *DataStore) GetAllStatefulSetsList() (runtime.Object, error)

func (*DataStore) GetCredentialFromSecret

func (s *DataStore) GetCredentialFromSecret(secretName string) (map[string]string, error)

func (*DataStore) GetDaemonSet added in v0.3.2

func (s *DataStore) GetDaemonSet(name string) (*appsv1.DaemonSet, error)

func (*DataStore) GetDeployment added in v0.4.0

func (s *DataStore) GetDeployment(name string) (*appsv1.Deployment, error)

func (*DataStore) GetEngine

func (s *DataStore) GetEngine(name string) (*longhorn.Engine, error)

func (*DataStore) GetEngineImage

func (s *DataStore) GetEngineImage(name string) (*longhorn.EngineImage, error)

func (*DataStore) GetEngineImageDaemonSet

func (s *DataStore) GetEngineImageDaemonSet(name string) (*appsv1.DaemonSet, error)

func (*DataStore) GetInstanceManager added in v0.6.0

func (s *DataStore) GetInstanceManager(name string) (*longhorn.InstanceManager, error)

func (*DataStore) GetInstanceManagerByInstance added in v0.6.0

func (s *DataStore) GetInstanceManagerByInstance(obj interface{}) (*longhorn.InstanceManager, error)

func (*DataStore) GetInstanceManagerBySelector added in v0.6.0

func (s *DataStore) GetInstanceManagerBySelector(node, image string, managerType types.InstanceManagerType) (*longhorn.InstanceManager, error)

GetInstanceManagerBySelector gets the Instance Managers matching the selector using Labels. Even though the labels duplicate information already in the spec, spec cannot be used for Field Selectors in CustomResourceDefinitions: https://github.com/kubernetes/kubernetes/issues/53459

func (*DataStore) GetInstanceManagerPod added in v0.6.0

func (s *DataStore) GetInstanceManagerPod(name string) (*corev1.Pod, error)

func (*DataStore) GetKubernetesNode added in v0.3.1

func (s *DataStore) GetKubernetesNode(name string) (*corev1.Node, error)

func (*DataStore) GetKubernetesVersion added in v0.4.0

func (s *DataStore) GetKubernetesVersion() (*version.Info, error)

func (*DataStore) GetLonghornEventList added in v0.4.0

func (s *DataStore) GetLonghornEventList() (*corev1.EventList, error)

func (*DataStore) GetLonghornNamespace added in v0.4.0

func (s *DataStore) GetLonghornNamespace() (*corev1.Namespace, error)

func (*DataStore) GetManagerNodeIPMap

func (s *DataStore) GetManagerNodeIPMap() (map[string]string, error)

func (*DataStore) GetNode

func (s *DataStore) GetNode(name string) (*longhorn.Node, error)

func (*DataStore) GetPersisentVolume added in v0.5.0

func (s *DataStore) GetPersisentVolume(pvName string) (*corev1.PersistentVolume, error)

func (*DataStore) GetPersisentVolumeClaim added in v0.5.0

func (s *DataStore) GetPersisentVolumeClaim(namespace, pvcName string) (*corev1.PersistentVolumeClaim, error)

func (*DataStore) GetPodContainerLogRequest added in v0.4.0

func (s *DataStore) GetPodContainerLogRequest(podName, containerName string) *rest.Request

func (*DataStore) GetRandomReadyNode added in v0.6.0

func (s *DataStore) GetRandomReadyNode() (*longhorn.Node, error)

func (*DataStore) GetReplica

func (s *DataStore) GetReplica(name string) (*longhorn.Replica, error)

func (*DataStore) GetSetting

func (s *DataStore) GetSetting(sName types.SettingName) (*longhorn.Setting, error)

GetSetting will automatically fill the non-existing setting if it's a valid setting name. The function will not return nil for *longhorn.Setting when error is nil

func (*DataStore) GetSettingAsBool added in v0.3.2

func (s *DataStore) GetSettingAsBool(settingName types.SettingName) (bool, error)

func (*DataStore) GetSettingAsInt

func (s *DataStore) GetSettingAsInt(settingName types.SettingName) (int64, error)

func (*DataStore) GetSettingValueExisted added in v0.5.0

func (s *DataStore) GetSettingValueExisted(sName types.SettingName) (string, error)

func (*DataStore) GetVolume

func (s *DataStore) GetVolume(name string) (*longhorn.Volume, error)

func (*DataStore) InitSettings added in v0.3.2

func (s *DataStore) InitSettings() error

func (*DataStore) IsEngineImageCLIAPIVersionOne added in v0.6.0

func (s *DataStore) IsEngineImageCLIAPIVersionOne(imageName string) (bool, error)

func (*DataStore) IsNodeDownOrDeleted added in v0.3.2

func (s *DataStore) IsNodeDownOrDeleted(name string) (bool, error)

func (*DataStore) ListDaemonSet added in v0.6.0

func (s *DataStore) ListDaemonSet() ([]*appsv1.DaemonSet, error)

func (*DataStore) ListDeployment added in v0.6.0

func (s *DataStore) ListDeployment() ([]*appsv1.Deployment, error)

func (*DataStore) ListEngineImages

func (s *DataStore) ListEngineImages() (map[string]*longhorn.EngineImage, error)

func (*DataStore) ListEngines added in v0.3.2

func (s *DataStore) ListEngines() (map[string]*longhorn.Engine, error)

func (*DataStore) ListEnginesByNode added in v0.3.1

func (s *DataStore) ListEnginesByNode(name string) ([]*longhorn.Engine, error)

func (*DataStore) ListEnginesROByInstanceManager added in v0.6.0

func (s *DataStore) ListEnginesROByInstanceManager(name string) ([]*longhorn.Engine, error)

func (*DataStore) ListInstanceManagerPods added in v0.6.0

func (s *DataStore) ListInstanceManagerPods() ([]*corev1.Pod, error)

func (*DataStore) ListInstanceManagers added in v0.6.0

func (s *DataStore) ListInstanceManagers() (map[string]*longhorn.InstanceManager, error)

func (*DataStore) ListInstanceManagersForEngineImage added in v0.6.0

func (s *DataStore) ListInstanceManagersForEngineImage(engineImageName string) (map[string]*longhorn.InstanceManager, error)

func (*DataStore) ListManagerPods

func (s *DataStore) ListManagerPods() ([]*corev1.Pod, error)

func (*DataStore) ListNodes

func (s *DataStore) ListNodes() (map[string]*longhorn.Node, error)

func (*DataStore) ListReplicas added in v0.3.2

func (s *DataStore) ListReplicas() (map[string]*longhorn.Replica, error)

func (*DataStore) ListReplicasByNode

func (s *DataStore) ListReplicasByNode(name string) (map[string][]*longhorn.Replica, error)

func (*DataStore) ListReplicasROByInstanceManager added in v0.6.0

func (s *DataStore) ListReplicasROByInstanceManager(name string) ([]*longhorn.Replica, error)

func (*DataStore) ListSettings

func (s *DataStore) ListSettings() (map[types.SettingName]*longhorn.Setting, error)

func (*DataStore) ListStandbyVolumesRO added in v0.5.0

func (s *DataStore) ListStandbyVolumesRO() (map[string]*longhorn.Volume, error)

func (*DataStore) ListVolumeCronJobROs

func (s *DataStore) ListVolumeCronJobROs(volumeName string) (map[string]*batchv1beta1.CronJob, error)

ListVolumeCronJobROs returns a map of read-only CronJobs for the volume

func (*DataStore) ListVolumeEngines

func (s *DataStore) ListVolumeEngines(volumeName string) (map[string]*longhorn.Engine, error)

func (*DataStore) ListVolumeReplicas

func (s *DataStore) ListVolumeReplicas(volumeName string) (map[string]*longhorn.Replica, error)

func (*DataStore) ListVolumes

func (s *DataStore) ListVolumes() (map[string]*longhorn.Volume, error)

func (*DataStore) ListVolumesRO added in v0.3.2

func (s *DataStore) ListVolumesRO() ([]*longhorn.Volume, error)

func (*DataStore) RemoveFinalizerForEngine

func (s *DataStore) RemoveFinalizerForEngine(obj *longhorn.Engine) error

RemoveFinalizerForEngine will result in deletion if DeletionTimestamp was set

func (*DataStore) RemoveFinalizerForEngineImage

func (s *DataStore) RemoveFinalizerForEngineImage(obj *longhorn.EngineImage) error

RemoveFinalizerForEngineImage will result in deletion if DeletionTimestamp was set

func (*DataStore) RemoveFinalizerForInstanceManager added in v0.6.0

func (s *DataStore) RemoveFinalizerForInstanceManager(obj *longhorn.InstanceManager) error

RemoveFinalizerForInstanceManager will result in deletion if DeletionTimestamp was set

func (*DataStore) RemoveFinalizerForNode

func (s *DataStore) RemoveFinalizerForNode(obj *longhorn.Node) error

RemoveFinalizerForNode will result in deletion if DeletionTimestamp was set

func (*DataStore) RemoveFinalizerForReplica

func (s *DataStore) RemoveFinalizerForReplica(obj *longhorn.Replica) error

RemoveFinalizerForReplica will result in deletion if DeletionTimestamp was set

func (*DataStore) RemoveFinalizerForVolume

func (s *DataStore) RemoveFinalizerForVolume(obj *longhorn.Volume) error

RemoveFinalizerForVolume will result in deletion if DeletionTimestamp was set

func (*DataStore) ResetEngineMonitoringStatus

func (s *DataStore) ResetEngineMonitoringStatus(e *longhorn.Engine) (*longhorn.Engine, error)

func (*DataStore) Sync

func (s *DataStore) Sync(stopCh <-chan struct{}) bool

func (*DataStore) UpdateDaemonSet added in v0.6.0

func (s *DataStore) UpdateDaemonSet(obj *appsv1.DaemonSet) (*appsv1.DaemonSet, error)

func (*DataStore) UpdateDeployment added in v0.6.0

func (s *DataStore) UpdateDeployment(obj *appsv1.Deployment) (*appsv1.Deployment, error)

func (*DataStore) UpdateEngine

func (s *DataStore) UpdateEngine(e *longhorn.Engine) (*longhorn.Engine, error)

func (*DataStore) UpdateEngineImage

func (s *DataStore) UpdateEngineImage(img *longhorn.EngineImage) (*longhorn.EngineImage, error)

func (*DataStore) UpdateInstanceManager added in v0.6.0

func (s *DataStore) UpdateInstanceManager(im *longhorn.InstanceManager) (*longhorn.InstanceManager, error)

func (*DataStore) UpdateNode

func (s *DataStore) UpdateNode(node *longhorn.Node) (*longhorn.Node, error)

func (*DataStore) UpdatePersisentVolume added in v0.5.0

func (s *DataStore) UpdatePersisentVolume(pv *corev1.PersistentVolume) (*corev1.PersistentVolume, error)

func (*DataStore) UpdateReplica

func (s *DataStore) UpdateReplica(r *longhorn.Replica) (*longhorn.Replica, error)

func (*DataStore) UpdateSetting

func (s *DataStore) UpdateSetting(setting *longhorn.Setting) (*longhorn.Setting, error)

func (*DataStore) UpdateVolume

func (s *DataStore) UpdateVolume(v *longhorn.Volume) (*longhorn.Volume, error)

func (*DataStore) UpdateVolumeAndOwner

func (s *DataStore) UpdateVolumeAndOwner(v *longhorn.Volume) (*longhorn.Volume, error)

func (*DataStore) UpdateVolumeCronJob

func (s *DataStore) UpdateVolumeCronJob(volumeName string, cronJob *batchv1beta1.CronJob) (*batchv1beta1.CronJob, error)

func (*DataStore) ValidateSetting added in v0.6.0

func (s *DataStore) ValidateSetting(name, value string) (err error)

Jump to

Keyboard shortcuts

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