v1alpha1

package
v0.6.0 Latest Latest
Warning

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

Go to latest
Published: Aug 11, 2021 License: Apache-2.0 Imports: 9 Imported by: 1

Documentation

Overview

Package v1alpha1 is the v1alpha1 version of the API. +groupName=data.fluid.io +k8s:openapi-gen=true

Package v1alpha1 contains API Schema definitions for the data v1alpha1 API group +kubebuilder:object:generate=true +groupName=data.fluid.io

Index

Constants

View Source
const (
	// The cache system are ready
	DatasetReadyReason = "DatasetReady"

	// The cache system are updating
	DatasetUpdatingReason = "DatasetUpdating"

	// Resynced means updating with the underlayer filesystem.
	DatasetDataSetFailedReason = "DatasetFailed"
)
View Source
const (
	Group   = "data.fluid.io"
	Version = "v1alpha1"
)
View Source
const (
	// RuntimeMasterInitializedReason means the master of runtime is initialized
	RuntimeMasterInitializedReason = "Master is initialized"
	// RuntimeMasterReadyReason means the master of runtime is ready
	RuntimeMasterReadyReason = "Master is ready"
	// RuntimeWorkersInitializedReason means the workers of runtime are initialized
	RuntimeWorkersInitializedReason = "Workers are initialized"
	// RuntimeWorkersReadyReason means the workers of runtime are ready
	RuntimeWorkersReadyReason = "Workers are ready"
	// RuntimeWorkersScaledInReason means the workers of runtime just scaled in
	RuntimeWorkersScaledInReason = "Workers scaled in"
	// RuntimeWorkersScaledInReason means the workers of runtime just scaled out
	RuntimeWorkersScaledOutReason = "Workers scaled out"
	// RuntimeFusesInitializedReason means the fuses of runtime are initialized
	RuntimeFusesInitializedReason = "Fuses are initialized"
	// RuntimeFusesReadyReason means the fuses of runtime are ready
	RuntimeFusesReadyReason = "Fuses are ready"
	// RuntimeFusesScaledInReason means the fuses of runtime just scaled in
	RuntimeFusesScaledInReason = "Fuses scaled in"
	// RuntimeFusesScaledInReason means the fuses of runtime just scaled out
	RuntimeFusesScaledOutReason = "Fuses scaled out"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: Group, Version: Version}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

func GetOpenAPIDefinitions added in v0.6.0

func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition

Types

type APIGatewayStatus added in v0.6.0

type APIGatewayStatus struct {
	// Endpoint for accessing
	Endpoint string `json:"endpoint,omitempty"`
}

API Gateway

func (*APIGatewayStatus) DeepCopy added in v0.6.0

func (in *APIGatewayStatus) DeepCopy() *APIGatewayStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIGatewayStatus.

func (*APIGatewayStatus) DeepCopyInto added in v0.6.0

func (in *APIGatewayStatus) DeepCopyInto(out *APIGatewayStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AlluxioCompTemplateSpec

type AlluxioCompTemplateSpec struct {
	// Replicas is the desired number of replicas of the given template.
	// If unspecified, defaults to 1.
	// +kubebuilder:validation:Minimum=1
	// replicas is the min replicas of dataset in the cluster
	// +optional
	Replicas int32 `json:"replicas,omitempty"`

	// Options for JVM
	JvmOptions []string `json:"jvmOptions,omitempty"`

	// Configurable properties for the Alluxio component. <br>
	// Refer to <a href="https://docs.alluxio.io/os/user/stable/en/reference/Properties-List.html">Alluxio Configuration Properties</a> for more info
	// +optional
	Properties map[string]string `json:"properties,omitempty"`

	// Ports used by Alluxio(e.g. rpc: 19998 for master)
	// +optional
	Ports map[string]int `json:"ports,omitempty"`

	// Resources that will be requested by the Alluxio component. <br>
	// <br>
	// Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
	// already allocated to the pod.
	// +optional
	Resources corev1.ResourceRequirements `json:"resources,omitempty"`

	// Environment variables that will be used by Alluxio component. <br>
	Env map[string]string `json:"env,omitempty"`

	// Enabled or Disabled for the components. For now, only  API Gateway is enabled or disabled.
	// +optional
	Enabled bool `json:"enabled,omitempty"`

	// NodeSelector is a selector which must be true for the master to fit on a node
	// +optional
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`
}

AlluxioCompTemplateSpec is a description of the Alluxio commponents

func (*AlluxioCompTemplateSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlluxioCompTemplateSpec.

func (*AlluxioCompTemplateSpec) DeepCopyInto

func (in *AlluxioCompTemplateSpec) DeepCopyInto(out *AlluxioCompTemplateSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AlluxioFuseSpec

type AlluxioFuseSpec struct {

	// Image for Alluxio Fuse(e.g. alluxio/alluxio-fuse)
	Image string `json:"image,omitempty"`

	// Image Tag for Alluxio Fuse(e.g. 2.3.0-SNAPSHOT)
	ImageTag string `json:"imageTag,omitempty"`

	// One of the three policies: `Always`, `IfNotPresent`, `Never`
	ImagePullPolicy string `json:"imagePullPolicy,omitempty"`

	// Options for JVM
	JvmOptions []string `json:"jvmOptions,omitempty"`

	// Configurable properties for Alluxio System. <br>
	// Refer to <a href="https://docs.alluxio.io/os/user/stable/en/reference/Properties-List.html">Alluxio Configuration Properties</a> for more info
	Properties map[string]string `json:"properties,omitempty"`

	// Environment variables that will be used by Alluxio Fuse
	Env map[string]string `json:"env,omitempty"`

	// Resources that will be requested by Alluxio Fuse. <br>
	// <br>
	// Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
	// already allocated to the pod.
	// +optional
	Resources corev1.ResourceRequirements `json:"resources,omitempty"`

	// Arguments that will be passed to Alluxio Fuse
	Args []string `json:"args,omitempty"`

	// If the fuse client should be deployed in global mode,
	// otherwise the affinity should be considered
	// +optional
	Global bool `json:"global,omitempty"`

	// NodeSelector is a selector which must be true for the fuse client to fit on a node,
	// this option only effect when global is enabled
	// +optional
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`
}

AlluxioFuseSpec is a description of the Alluxio Fuse

func (*AlluxioFuseSpec) DeepCopy

func (in *AlluxioFuseSpec) DeepCopy() *AlluxioFuseSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlluxioFuseSpec.

func (*AlluxioFuseSpec) DeepCopyInto

func (in *AlluxioFuseSpec) DeepCopyInto(out *AlluxioFuseSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AlluxioRuntime

type AlluxioRuntime struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   AlluxioRuntimeSpec `json:"spec,omitempty"`
	Status RuntimeStatus      `json:"status,omitempty"`
}

AlluxioRuntime is the Schema for the alluxioruntimes API

func (*AlluxioRuntime) DeepCopy

func (in *AlluxioRuntime) DeepCopy() *AlluxioRuntime

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlluxioRuntime.

func (*AlluxioRuntime) DeepCopyInto

func (in *AlluxioRuntime) DeepCopyInto(out *AlluxioRuntime)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AlluxioRuntime) DeepCopyObject

func (in *AlluxioRuntime) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*AlluxioRuntime) Replicas

func (runtime *AlluxioRuntime) Replicas() int32

Replicas gets the replicas of runtime worker

type AlluxioRuntimeList

type AlluxioRuntimeList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []AlluxioRuntime `json:"items"`
}

AlluxioRuntimeList contains a list of AlluxioRuntime

func (*AlluxioRuntimeList) DeepCopy

func (in *AlluxioRuntimeList) DeepCopy() *AlluxioRuntimeList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlluxioRuntimeList.

func (*AlluxioRuntimeList) DeepCopyInto

func (in *AlluxioRuntimeList) DeepCopyInto(out *AlluxioRuntimeList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AlluxioRuntimeList) DeepCopyObject

func (in *AlluxioRuntimeList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type AlluxioRuntimeRole

type AlluxioRuntimeRole common.RuntimeRole
const (
	// Master is the type for master of Alluxio cluster.
	Master AlluxioRuntimeRole = "master"

	// Worker is the type for workers of Alluxio cluster.
	Worker AlluxioRuntimeRole = "worker"

	// Fuse is the type for chief worker of Alluxio cluster.
	Fuse AlluxioRuntimeRole = "fuse"

	// API Gateway is the API Gateway of Alluxio cluster.
	APIGateway AlluxioRuntimeRole = "apiGateway"
)

type AlluxioRuntimeSpec

type AlluxioRuntimeSpec struct {
	// The version information that instructs fluid to orchestrate a particular version of Alluxio.
	AlluxioVersion VersionSpec `json:"alluxioVersion,omitempty"`

	// Desired state for Alluxio master
	Master AlluxioCompTemplateSpec `json:"master,omitempty"`

	// Desired state for Alluxio job master
	JobMaster AlluxioCompTemplateSpec `json:"jobMaster,omitempty"`

	// Desired state for Alluxio worker
	Worker AlluxioCompTemplateSpec `json:"worker,omitempty"`

	// Desired state for Alluxio job Worker
	JobWorker AlluxioCompTemplateSpec `json:"jobWorker,omitempty"`

	// Desired state for Alluxio API Gateway
	APIGateway AlluxioCompTemplateSpec `json:"apiGateway,omitempty"`

	// The spec of init users
	InitUsers InitUsersSpec `json:"initUsers,omitempty"`

	// Desired state for Alluxio Fuse
	Fuse AlluxioFuseSpec `json:"fuse,omitempty"`

	// Configurable properties for Alluxio system. <br>
	// Refer to <a href="https://docs.alluxio.io/os/user/stable/en/reference/Properties-List.html">Alluxio Configuration Properties</a> for more info
	Properties map[string]string `json:"properties,omitempty"`

	// Options for JVM
	JvmOptions []string `json:"jvmOptions,omitempty"`

	// Tiered storage used by Alluxio
	TieredStore TieredStore `json:"tieredstore,omitempty"`

	// Management strategies for the dataset to which the runtime is bound
	Data Data `json:"data,omitempty"`

	// The replicas of the worker, need to be specified
	Replicas int32 `json:"replicas,omitempty"`

	// Manage the user to run Alluxio Runtime
	RunAs *User `json:"runAs,omitempty"`

	// Disable monitoring for Alluxio Runtime
	// Prometheus is enabled by default
	// +optional
	DisablePrometheus bool `json:"disablePrometheus,omitempty"`

	// Name of the configMap used to support HDFS configurations when using HDFS as Alluxio's UFS. The configMap
	// must be in the same namespace with the AlluxioRuntime. The configMap should contain user-specific HDFS conf files in it.
	// For now, only "hdfs-site.xml" and "core-site.xml" are supported. It must take the filename of the conf file as the key and content
	// of the file as the value.
	// +optional
	HadoopConfig string `json:"hadoopConfig,omitempty"`
}

AlluxioRuntimeSpec defines the desired state of AlluxioRuntime

func (*AlluxioRuntimeSpec) DeepCopy

func (in *AlluxioRuntimeSpec) DeepCopy() *AlluxioRuntimeSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlluxioRuntimeSpec.

func (*AlluxioRuntimeSpec) DeepCopyInto

func (in *AlluxioRuntimeSpec) DeepCopyInto(out *AlluxioRuntimeSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BackupLocation added in v0.5.0

type BackupLocation struct {
	// Path describes the path of backup, in the form of local:///absolutePath or pvc://<pvcName>/subpath
	Path string `json:"path,omitempty"`
	// NodeName describes the nodeName of backup if Path is in the form of local://subpath
	NodeName string `json:"nodeName,omitempty"`
}

BackupLocation describes the final backup location of DataBackup

func (*BackupLocation) DeepCopy added in v0.5.0

func (in *BackupLocation) DeepCopy() *BackupLocation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupLocation.

func (*BackupLocation) DeepCopyInto added in v0.5.0

func (in *BackupLocation) DeepCopyInto(out *BackupLocation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CacheableNodeAffinity

type CacheableNodeAffinity struct {
	// Required specifies hard node constraints that must be met.
	Required *v1.NodeSelector `json:"required,omitempty"`
}

CacheableNodeAffinity defines constraints that limit what nodes this dataset can be cached to.

func (*CacheableNodeAffinity) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CacheableNodeAffinity.

func (*CacheableNodeAffinity) DeepCopyInto

func (in *CacheableNodeAffinity) DeepCopyInto(out *CacheableNodeAffinity)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Condition added in v0.6.0

type Condition struct {
	// Type of condition, either `Complete` or `Failed`
	Type common.ConditionType `json:"type"`
	// Status of the condition, one of `True`, `False` or `Unknown`
	Status corev1.ConditionStatus `json:"status"`
	// Reason for the condition's last transition
	Reason string `json:"reason,omitempty"`
	// Message is a human-readable message indicating details about the transition
	Message string `json:"message,omitempty"`
	// LastProbeTime describes last time this condition was updated.
	LastProbeTime metav1.Time `json:"lastProbeTime,omitempty"`
	// LastTransitionTime describes last time the condition transitioned from one status to another.
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
}

Condition explains the transitions on phase

func (*Condition) DeepCopy added in v0.6.0

func (in *Condition) DeepCopy() *Condition

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Condition.

func (*Condition) DeepCopyInto added in v0.6.0

func (in *Condition) DeepCopyInto(out *Condition)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Data

type Data struct {
	// The copies of the dataset
	// +optional
	Replicas int32 `json:"replicas"`

	// Pin the dataset or not. Refer to <a href="https://docs.alluxio.io/os/user/stable/en/operation/User-CLI.html#pin">Alluxio User-CLI pin</a>
	// +optional
	Pin bool `json:"pin"`
}

Data management strategies

func (*Data) DeepCopy

func (in *Data) DeepCopy() *Data

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Data.

func (*Data) DeepCopyInto

func (in *Data) DeepCopyInto(out *Data)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataBackup added in v0.5.0

type DataBackup struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   DataBackupSpec   `json:"spec,omitempty"`
	Status DataBackupStatus `json:"status,omitempty"`
}

DataBackup is the Schema for the backup API

func (*DataBackup) DeepCopy added in v0.5.0

func (in *DataBackup) DeepCopy() *DataBackup

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataBackup.

func (*DataBackup) DeepCopyInto added in v0.5.0

func (in *DataBackup) DeepCopyInto(out *DataBackup)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DataBackup) DeepCopyObject added in v0.5.0

func (in *DataBackup) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type DataBackupList added in v0.5.0

type DataBackupList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []DataBackup `json:"items"`
}

DataBackupList contains a list of DataBackup

func (*DataBackupList) DeepCopy added in v0.5.0

func (in *DataBackupList) DeepCopy() *DataBackupList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataBackupList.

func (*DataBackupList) DeepCopyInto added in v0.5.0

func (in *DataBackupList) DeepCopyInto(out *DataBackupList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DataBackupList) DeepCopyObject added in v0.5.0

func (in *DataBackupList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type DataBackupSpec added in v0.5.0

type DataBackupSpec struct {
	// Dataset defines the target dataset of the DataBackup
	Dataset string `json:"dataset,omitempty"`
	// BackupPath defines the target path to save data of the DataBackup
	BackupPath string `json:"backupPath,omitempty"`
	// Manage the user to run Alluxio DataBackup
	RunAs *User `json:"runAs,omitempty"`
}

DataBackupSpec defines the desired state of DataBackup

func (*DataBackupSpec) DeepCopy added in v0.5.0

func (in *DataBackupSpec) DeepCopy() *DataBackupSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataBackupSpec.

func (*DataBackupSpec) DeepCopyInto added in v0.5.0

func (in *DataBackupSpec) DeepCopyInto(out *DataBackupSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataBackupStatus added in v0.5.0

type DataBackupStatus struct {
	// Phase describes current phase of DataBackup
	Phase common.Phase `json:"phase"`
	// BackupLocation tell user the location to save data of the DataBackup
	BackupLocation BackupLocation `json:"backupLocation,omitempty"`
	// Duration tell user how much time was spent to backup
	Duration string `json:"duration"`
	// Conditions consists of transition information on DataBackup's Phase
	Conditions []Condition `json:"conditions"`
}

DataBackupStatus defines the observed state of DataBackup

func (*DataBackupStatus) DeepCopy added in v0.5.0

func (in *DataBackupStatus) DeepCopy() *DataBackupStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataBackupStatus.

func (*DataBackupStatus) DeepCopyInto added in v0.5.0

func (in *DataBackupStatus) DeepCopyInto(out *DataBackupStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataLoad added in v0.4.0

type DataLoad struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   DataLoadSpec   `json:"spec,omitempty"`
	Status DataLoadStatus `json:"status,omitempty"`
}

DataLoad is the Schema for the dataloads API

func (*DataLoad) DeepCopy added in v0.4.0

func (in *DataLoad) DeepCopy() *DataLoad

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataLoad.

func (*DataLoad) DeepCopyInto added in v0.4.0

func (in *DataLoad) DeepCopyInto(out *DataLoad)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DataLoad) DeepCopyObject added in v0.4.0

func (in *DataLoad) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type DataLoadList added in v0.4.0

type DataLoadList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []DataLoad `json:"items"`
}

DataLoadList contains a list of DataLoad

func (*DataLoadList) DeepCopy added in v0.4.0

func (in *DataLoadList) DeepCopy() *DataLoadList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataLoadList.

func (*DataLoadList) DeepCopyInto added in v0.4.0

func (in *DataLoadList) DeepCopyInto(out *DataLoadList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DataLoadList) DeepCopyObject added in v0.4.0

func (in *DataLoadList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type DataLoadSpec added in v0.4.0

type DataLoadSpec struct {
	// Dataset defines the target dataset of the DataLoad
	Dataset TargetDataset `json:"dataset,omitempty"`

	// LoadMetadata specifies if the dataload job should load metadata
	LoadMetadata bool `json:"loadMetadata,omitempty"`

	// Target defines target paths that needs to be loaded
	Target []TargetPath `json:"target,omitempty"`
}

DataLoadSpec defines the desired state of DataLoad

func (*DataLoadSpec) DeepCopy added in v0.4.0

func (in *DataLoadSpec) DeepCopy() *DataLoadSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataLoadSpec.

func (*DataLoadSpec) DeepCopyInto added in v0.4.0

func (in *DataLoadSpec) DeepCopyInto(out *DataLoadSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataLoadStatus added in v0.4.0

type DataLoadStatus struct {
	// Phase describes current phase of DataLoad
	Phase common.Phase `json:"phase"`

	// Conditions consists of transition information on DataLoad's Phase
	Conditions []Condition `json:"conditions"`

	// Duration tell user how much time was spent to load the data
	Duration string `json:"duration"`
}

DataLoadStatus defines the observed state of DataLoad

func (*DataLoadStatus) DeepCopy added in v0.4.0

func (in *DataLoadStatus) DeepCopy() *DataLoadStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataLoadStatus.

func (*DataLoadStatus) DeepCopyInto added in v0.4.0

func (in *DataLoadStatus) DeepCopyInto(out *DataLoadStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataRestoreLocation added in v0.5.0

type DataRestoreLocation struct {
	// Path describes the path of restore, in the form of  local://subpath or pvc://<pvcName>/subpath
	// +optional
	Path string `json:"path,omitempty"`
	// NodeName describes the nodeName of restore if Path is  in the form of local://subpath
	// +optional
	NodeName string `json:"nodeName,omitempty"`
}

DataRestoreLocation describes the spec restore location of Dataset

func (*DataRestoreLocation) DeepCopy added in v0.5.0

func (in *DataRestoreLocation) DeepCopy() *DataRestoreLocation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataRestoreLocation.

func (*DataRestoreLocation) DeepCopyInto added in v0.5.0

func (in *DataRestoreLocation) DeepCopyInto(out *DataRestoreLocation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Dataset

type Dataset struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   DatasetSpec   `json:"spec,omitempty"`
	Status DatasetStatus `json:"status,omitempty"`
}

Dataset is the Schema for the datasets API

func (*Dataset) CanbeBound

func (dataset *Dataset) CanbeBound(name string, namespace string, category common.Category) (bound bool)

CanbeBound checks if the dataset can be bound to the runtime

func (*Dataset) DeepCopy

func (in *Dataset) DeepCopy() *Dataset

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Dataset.

func (*Dataset) DeepCopyInto

func (in *Dataset) DeepCopyInto(out *Dataset)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Dataset) DeepCopyObject

func (in *Dataset) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Dataset) IsExclusiveMode added in v0.5.0

func (dataset *Dataset) IsExclusiveMode() bool

type DatasetCondition

type DatasetCondition struct {
	// Type of cache condition.
	Type DatasetConditionType `json:"type"`
	// Status of the condition, one of True, False, Unknown.
	Status v1.ConditionStatus `json:"status"`
	// The reason for the condition's last transition.
	Reason string `json:"reason,omitempty"`
	// A human readable message indicating details about the transition.
	Message string `json:"message,omitempty"`
	// The last time this condition was updated.
	LastUpdateTime metav1.Time `json:"lastUpdateTime,omitempty"`
	// Last time the condition transitioned from one status to another.
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
}

Condition describes the state of the cache at a certain point.

func (*DatasetCondition) DeepCopy

func (in *DatasetCondition) DeepCopy() *DatasetCondition

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatasetCondition.

func (*DatasetCondition) DeepCopyInto

func (in *DatasetCondition) DeepCopyInto(out *DatasetCondition)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DatasetConditionType

type DatasetConditionType string

DatasetConditionType defines all kinds of types of cacheStatus.<br> one of the three types: `RuntimeScheduled`, `Ready` and `Initialized`

const (
	// RuntimeScheduled means the runtime CRD has been accepted by the system,
	// But master and workers are not ready
	RuntimeScheduled DatasetConditionType = "RuntimeScheduled"

	// DatasetReady means the cache system for the dataset is ready.
	DatasetReady DatasetConditionType = "Ready"

	// DatasetUpdateReady means the cache system for the dataset is updated.
	DatasetUpdateReady DatasetConditionType = "UpdateReady"

	// DatasetUpdating means the cache system for the dataset is updating.
	DatasetUpdating DatasetConditionType = "Updating"

	// DatasetInitialized means the cache system for the dataset is Initialized.
	DatasetInitialized DatasetConditionType = "Initialized"
)

type DatasetList

type DatasetList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Dataset `json:"items"`
}

DatasetList contains a list of Dataset

func (*DatasetList) DeepCopy

func (in *DatasetList) DeepCopy() *DatasetList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatasetList.

func (*DatasetList) DeepCopyInto

func (in *DatasetList) DeepCopyInto(out *DatasetList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DatasetList) DeepCopyObject

func (in *DatasetList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type DatasetPhase

type DatasetPhase string

DatasetPhase indicates whether the loading is behaving

const (
	// TODO: add the Pending phase to Dataset
	PendingDatasetPhase DatasetPhase = "Pending"
	// Bound to dataset, can't be released
	BoundDatasetPhase DatasetPhase = "Bound"
	// Failed, can't be deleted
	FailedDatasetPhase DatasetPhase = "Failed"
	// Not bound to runtime, can be deleted
	NotBoundDatasetPhase DatasetPhase = "NotBound"
	// updating dataset, can't be released
	UpdatingDatasetPhase DatasetPhase = "Updating"
	// the dataset have no phase and need to be judged
	NoneDatasetPhase DatasetPhase = ""
)

type DatasetSpec

type DatasetSpec struct {
	// Mount Points to be mounted on Alluxio.
	// +kubebuilder:validation:MinItems=1
	// +kubebuilder:validation:UniqueItems=false
	// +required
	Mounts []Mount `json:"mounts,omitempty"`

	// The owner of the dataset
	// +optional
	Owner *User `json:"owner,omitempty"`

	// NodeAffinity defines constraints that limit what nodes this dataset can be cached to.
	// This field influences the scheduling of pods that use the cached dataset.
	// +optional
	NodeAffinity *CacheableNodeAffinity `json:"nodeAffinity,omitempty"`

	// If specified, the pod's tolerations.
	// +optional
	Tolerations []v1.Toleration `json:"tolerations,omitempty"`

	// AccessModes contains all ways the volume backing the PVC can be mounted
	// +optional
	AccessModes []v1.PersistentVolumeAccessMode `json:"accessModes,omitempty"`

	// Runtimes for supporting dataset (e.g. AlluxioRuntime)
	Runtimes []Runtime `json:"runtimes,omitempty"`

	// Manage switch for opening Multiple datasets single node deployment or not
	// TODO(xieydd) In future, evaluate node resources and runtime resources to decide whether to turn them on
	// +kubebuilder:validation:Enum=Exclusive;"";Shared
	// +optional
	PlacementMode PlacementMode `json:"placement,omitempty"`

	// DataRestoreLocation is the location to load data of dataset  been backuped
	// +optional
	DataRestoreLocation *DataRestoreLocation `json:"dataRestoreLocation,omitempty"`
}

DatasetSpec defines the desired state of Dataset

func (*DatasetSpec) DeepCopy

func (in *DatasetSpec) DeepCopy() *DatasetSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatasetSpec.

func (*DatasetSpec) DeepCopyInto

func (in *DatasetSpec) DeepCopyInto(out *DatasetSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DatasetStatus

type DatasetStatus struct {
	// the info of mount points have been mounted
	Mounts []Mount `json:"mounts,omitempty"`

	// Total in GB of dataset in the cluster
	UfsTotal string `json:"ufsTotal,omitempty"`

	// Dataset Phase. One of the four phases: `Pending`, `Bound`, `NotBound` and `Failed`
	Phase DatasetPhase `json:"phase,omitempty"`

	// Runtimes for supporting dataset
	Runtimes []Runtime `json:"runtimes,omitempty"`

	// Conditions is an array of current observed conditions.
	Conditions []DatasetCondition `json:"conditions"`

	// CacheStatus represents the total resources of the dataset.
	CacheStates common.CacheStateList `json:"cacheStates,omitempty"`

	// HCFSStatus represents hcfs info
	HCFSStatus *HCFSStatus `json:"hcfs,omitempty"`

	// FileNum represents the file numbers of the dataset
	FileNum string `json:"fileNum,omitempty"`

	// DataLoadRef specifies the running DataLoad job that targets this Dataset.
	// This is mainly used as a lock to prevent concurrent DataLoad jobs.
	DataLoadRef string `json:"dataLoadRef,omitempty"`

	// DataBackupRef specifies the running Backup job that targets this Dataset.
	// This is mainly used as a lock to prevent concurrent DataBackup jobs.
	DataBackupRef string `json:"dataBackupRef,omitempty"`
}

DatasetStatus defines the observed state of Dataset +kubebuilder:subresource:status

func (*DatasetStatus) DeepCopy

func (in *DatasetStatus) DeepCopy() *DatasetStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatasetStatus.

func (*DatasetStatus) DeepCopyInto

func (in *DatasetStatus) DeepCopyInto(out *DatasetStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EncryptOption added in v0.5.0

type EncryptOption struct {
	// The name of encryptOption
	// +required
	Name string `json:"name,omitempty"`

	// The valueFrom of encryptOption
	// +optional
	ValueFrom EncryptOptionSource `json:"valueFrom,omitempty"`
}

func (*EncryptOption) DeepCopy added in v0.5.0

func (in *EncryptOption) DeepCopy() *EncryptOption

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptOption.

func (*EncryptOption) DeepCopyInto added in v0.5.0

func (in *EncryptOption) DeepCopyInto(out *EncryptOption)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EncryptOptionSource added in v0.5.0

type EncryptOptionSource struct {
	// The encryptInfo obtained from secret
	// +optional
	SecretKeyRef SecretKeySelector `json:"secretKeyRef,omitempty"`
}

func (*EncryptOptionSource) DeepCopy added in v0.5.0

func (in *EncryptOptionSource) DeepCopy() *EncryptOptionSource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptOptionSource.

func (*EncryptOptionSource) DeepCopyInto added in v0.5.0

func (in *EncryptOptionSource) DeepCopyInto(out *EncryptOptionSource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GooseFSCompTemplateSpec added in v0.6.0

type GooseFSCompTemplateSpec struct {
	// Replicas is the desired number of replicas of the given template.
	// If unspecified, defaults to 1.
	// +kubebuilder:validation:Minimum=1
	// replicas is the min replicas of dataset in the cluster
	// +optional
	Replicas int32 `json:"replicas,omitempty"`

	// Options for JVM
	JvmOptions []string `json:"jvmOptions,omitempty"`

	// Configurable properties for the GOOSEFS component. <br>
	// Refer to <a href="https://cloud.tencent.com/document/product/436/56415">GOOSEFS Configuration Properties</a> for more info
	// +optional
	Properties map[string]string `json:"properties,omitempty"`

	// Ports used by GooseFS(e.g. rpc: 19998 for master)
	// +optional
	Ports map[string]int `json:"ports,omitempty"`

	// Resources that will be requested by the GooseFS component. <br>
	// <br>
	// Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
	// already allocated to the pod.
	// +optional
	Resources corev1.ResourceRequirements `json:"resources,omitempty"`

	// Environment variables that will be used by GooseFS component. <br>
	Env map[string]string `json:"env,omitempty"`

	// Enabled or Disabled for the components. For now, only  API Gateway is enabled or disabled.
	// +optional
	Enabled bool `json:"enabled,omitempty"`

	// NodeSelector is a selector which must be true for the master to fit on a node
	// +optional
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`
}

GooseFSCompTemplateSpec is a description of the GooseFS commponents

func (*GooseFSCompTemplateSpec) DeepCopy added in v0.6.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GooseFSCompTemplateSpec.

func (*GooseFSCompTemplateSpec) DeepCopyInto added in v0.6.0

func (in *GooseFSCompTemplateSpec) DeepCopyInto(out *GooseFSCompTemplateSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GooseFSFuseSpec added in v0.6.0

type GooseFSFuseSpec struct {

	// Image for GooseFS Fuse(e.g. goosefs/goosefs-fuse)
	Image string `json:"image,omitempty"`

	// Image Tag for GooseFS Fuse(e.g. v1.0.1)
	ImageTag string `json:"imageTag,omitempty"`

	// One of the three policies: `Always`, `IfNotPresent`, `Never`
	ImagePullPolicy string `json:"imagePullPolicy,omitempty"`

	// Options for JVM
	JvmOptions []string `json:"jvmOptions,omitempty"`

	// Configurable properties for the GOOSEFS component. <br>
	// Refer to <a href="https://cloud.tencent.com/document/product/436/56415">GOOSEFS Configuration Properties</a> for more info
	Properties map[string]string `json:"properties,omitempty"`

	// Environment variables that will be used by GooseFS Fuse
	Env map[string]string `json:"env,omitempty"`

	// Resources that will be requested by GooseFS Fuse. <br>
	// <br>
	// Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
	// already allocated to the pod.
	// +optional
	Resources corev1.ResourceRequirements `json:"resources,omitempty"`

	// Arguments that will be passed to GooseFS Fuse
	Args []string `json:"args,omitempty"`

	// If the fuse client should be deployed in global mode,
	// otherwise the affinity should be considered
	// +optional
	Global bool `json:"global,omitempty"`

	// NodeSelector is a selector which must be true for the fuse client to fit on a node,
	// this option only effect when global is enabled
	// +optional
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`
}

GooseFSFuseSpec is a description of the GooseFS Fuse

func (*GooseFSFuseSpec) DeepCopy added in v0.6.0

func (in *GooseFSFuseSpec) DeepCopy() *GooseFSFuseSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GooseFSFuseSpec.

func (*GooseFSFuseSpec) DeepCopyInto added in v0.6.0

func (in *GooseFSFuseSpec) DeepCopyInto(out *GooseFSFuseSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GooseFSRuntime added in v0.6.0

type GooseFSRuntime struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   GooseFSRuntimeSpec `json:"spec,omitempty"`
	Status RuntimeStatus      `json:"status,omitempty"`
}

GooseFSRuntime is the Schema for the goosefsruntimes API

func (*GooseFSRuntime) DeepCopy added in v0.6.0

func (in *GooseFSRuntime) DeepCopy() *GooseFSRuntime

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GooseFSRuntime.

func (*GooseFSRuntime) DeepCopyInto added in v0.6.0

func (in *GooseFSRuntime) DeepCopyInto(out *GooseFSRuntime)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*GooseFSRuntime) DeepCopyObject added in v0.6.0

func (in *GooseFSRuntime) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*GooseFSRuntime) Replicas added in v0.6.0

func (runtime *GooseFSRuntime) Replicas() int32

Replicas gets the replicas of runtime worker

type GooseFSRuntimeList added in v0.6.0

type GooseFSRuntimeList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []GooseFSRuntime `json:"items"`
}

GooseFSRuntimeList contains a list of GooseFSRuntime

func (*GooseFSRuntimeList) DeepCopy added in v0.6.0

func (in *GooseFSRuntimeList) DeepCopy() *GooseFSRuntimeList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GooseFSRuntimeList.

func (*GooseFSRuntimeList) DeepCopyInto added in v0.6.0

func (in *GooseFSRuntimeList) DeepCopyInto(out *GooseFSRuntimeList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*GooseFSRuntimeList) DeepCopyObject added in v0.6.0

func (in *GooseFSRuntimeList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type GooseFSRuntimeSpec added in v0.6.0

type GooseFSRuntimeSpec struct {
	// The version information that instructs fluid to orchestrate a particular version of GooseFS.
	GooseFSVersion VersionSpec `json:"goosefsVersion,omitempty"`

	// Desired state for GooseFS master
	Master GooseFSCompTemplateSpec `json:"master,omitempty"`

	// Desired state for GooseFS job master
	JobMaster GooseFSCompTemplateSpec `json:"jobMaster,omitempty"`

	// Desired state for GooseFS worker
	Worker GooseFSCompTemplateSpec `json:"worker,omitempty"`

	// Desired state for GooseFS job Worker
	JobWorker GooseFSCompTemplateSpec `json:"jobWorker,omitempty"`

	// Desired state for GooseFS API Gateway
	APIGateway GooseFSCompTemplateSpec `json:"apiGateway,omitempty"`

	// The spec of init users
	InitUsers InitUsersSpec `json:"initUsers,omitempty"`

	// Desired state for GooseFS Fuse
	Fuse GooseFSFuseSpec `json:"fuse,omitempty"`

	// Configurable properties for the GOOSEFS component. <br>
	// Refer to <a href="https://cloud.tencent.com/document/product/436/56415">GOOSEFS Configuration Properties</a> for more info
	Properties map[string]string `json:"properties,omitempty"`

	// Options for JVM
	JvmOptions []string `json:"jvmOptions,omitempty"`

	// Tiered storage used by GooseFS
	TieredStore TieredStore `json:"tieredstore,omitempty"`

	// Management strategies for the dataset to which the runtime is bound
	Data Data `json:"data,omitempty"`

	// The replicas of the worker, need to be specified
	Replicas int32 `json:"replicas,omitempty"`

	// Manage the user to run GooseFS Runtime
	// GooseFS support POSIX-ACL and Apache Ranger to manager authorization
	// TODO(chrisydxie@tencent.com) Support Apache Ranger.
	RunAs *User `json:"runAs,omitempty"`

	// Disable monitoring for GooseFS Runtime
	// Prometheus is enabled by default
	// +optional
	DisablePrometheus bool `json:"disablePrometheus,omitempty"`

	// Name of the configMap used to support HDFS configurations when using HDFS as GooseFS's UFS. The configMap
	// must be in the same namespace with the GooseFSRuntime. The configMap should contain user-specific HDFS conf files in it.
	// For now, only "hdfs-site.xml" and "core-site.xml" are supported. It must take the filename of the conf file as the key and content
	// of the file as the value.
	// +optional
	HadoopConfig string `json:"hadoopConfig,omitempty"`
}

GooseFSRuntimeSpec defines the desired state of GooseFSRuntime

func (*GooseFSRuntimeSpec) DeepCopy added in v0.6.0

func (in *GooseFSRuntimeSpec) DeepCopy() *GooseFSRuntimeSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GooseFSRuntimeSpec.

func (*GooseFSRuntimeSpec) DeepCopyInto added in v0.6.0

func (in *GooseFSRuntimeSpec) DeepCopyInto(out *GooseFSRuntimeSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HCFSStatus added in v0.4.0

type HCFSStatus struct {
	// Endpoint for accessing
	Endpoint string `json:"endpoint,omitempty"`

	// Underlayer HCFS Compatible Version
	UnderlayerFileSystemVersion string `json:"underlayerFileSystemVersion,omitempty"`
}

HCFS Endpoint info

func (*HCFSStatus) DeepCopy added in v0.4.0

func (in *HCFSStatus) DeepCopy() *HCFSStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HCFSStatus.

func (*HCFSStatus) DeepCopyInto added in v0.4.0

func (in *HCFSStatus) DeepCopyInto(out *HCFSStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InitUsersSpec added in v0.3.0

type InitUsersSpec struct {

	// Image for initialize the users for runtime(e.g. alluxio/alluxio-User init)
	Image string `json:"image,omitempty"`

	// Image Tag for initialize the users for runtime(e.g. 2.3.0-SNAPSHOT)
	ImageTag string `json:"imageTag,omitempty"`

	// One of the three policies: `Always`, `IfNotPresent`, `Never`
	ImagePullPolicy string `json:"imagePullPolicy,omitempty"`

	// Environment variables that will be used by initialize the users for runtime
	Env map[string]string `json:"env,omitempty"`

	// Resources that will be requested by initialize the users for runtime. <br>
	// <br>
	// Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
	// already allocated to the pod.
	// +optional
	Resources corev1.ResourceRequirements `json:"resources,omitempty"`
}

InitUsersSpec is a description of the initialize the users for runtime

func (*InitUsersSpec) DeepCopy added in v0.3.0

func (in *InitUsersSpec) DeepCopy() *InitUsersSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InitUsersSpec.

func (*InitUsersSpec) DeepCopyInto added in v0.3.0

func (in *InitUsersSpec) DeepCopyInto(out *InitUsersSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type JindoCompTemplateSpec added in v0.5.0

type JindoCompTemplateSpec struct {
	// Replicas is the desired number of replicas of the given template.
	// If unspecified, defaults to 1.
	// +kubebuilder:validation:Minimum=1
	// replicas is the min replicas of dataset in the cluster
	// +optional
	Replicas int32 `json:"replicas,omitempty"`

	// Configurable properties for the Jindo component. <br>
	// +optional
	Properties map[string]string `json:"properties,omitempty"`

	// +optional
	Ports map[string]int `json:"ports,omitempty"`

	// Resources that will be requested by the Jindo component. <br>
	// <br>
	// Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
	// already allocated to the pod.
	// +optional
	Resources corev1.ResourceRequirements `json:"resources,omitempty"`

	// Environment variables that will be used by Jindo component. <br>
	Env map[string]string `json:"env,omitempty"`

	// NodeSelector is a selector which must be true for the master to fit on a node
	// +optional
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`

	// If specified, the pod's tolerations.
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
}

JindoCompTemplateSpec is a description of the Jindo commponents

func (*JindoCompTemplateSpec) DeepCopy added in v0.5.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JindoCompTemplateSpec.

func (*JindoCompTemplateSpec) DeepCopyInto added in v0.5.0

func (in *JindoCompTemplateSpec) DeepCopyInto(out *JindoCompTemplateSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type JindoFuseSpec added in v0.5.0

type JindoFuseSpec struct {

	// Image for Jindo Fuse(e.g. jindo/jindo-fuse)
	Image string `json:"image,omitempty"`

	// Image Tag for Jindo Fuse(e.g. 2.3.0-SNAPSHOT)
	ImageTag string `json:"imageTag,omitempty"`

	// One of the three policies: `Always`, `IfNotPresent`, `Never`
	ImagePullPolicy string `json:"imagePullPolicy,omitempty"`

	// Configurable properties for Jindo System. <br>
	Properties map[string]string `json:"properties,omitempty"`

	// Environment variables that will be used by Jindo Fuse
	Env map[string]string `json:"env,omitempty"`

	// Resources that will be requested by Jindo Fuse. <br>
	// <br>
	// Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources
	// already allocated to the pod.
	// +optional
	Resources corev1.ResourceRequirements `json:"resources,omitempty"`

	// Arguments that will be passed to Jindo Fuse
	Args []string `json:"args,omitempty"`

	// If the fuse client should be deployed in global mode,
	// otherwise the affinity should be considered
	// +optional
	Global bool `json:"global,omitempty"`

	// NodeSelector is a selector which must be true for the fuse client to fit on a node,
	// this option only effect when global is enabled
	// +optional
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`

	// If specified, the pod's tolerations.
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
}

JindoFuseSpec is a description of the Jindo Fuse

func (*JindoFuseSpec) DeepCopy added in v0.5.0

func (in *JindoFuseSpec) DeepCopy() *JindoFuseSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JindoFuseSpec.

func (*JindoFuseSpec) DeepCopyInto added in v0.5.0

func (in *JindoFuseSpec) DeepCopyInto(out *JindoFuseSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type JindoRuntime added in v0.5.0

type JindoRuntime struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   JindoRuntimeSpec `json:"spec,omitempty"`
	Status RuntimeStatus    `json:"status,omitempty"`
}

JindoRuntime is the Schema for the jindoruntimes API

func (*JindoRuntime) DeepCopy added in v0.5.0

func (in *JindoRuntime) DeepCopy() *JindoRuntime

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JindoRuntime.

func (*JindoRuntime) DeepCopyInto added in v0.5.0

func (in *JindoRuntime) DeepCopyInto(out *JindoRuntime)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*JindoRuntime) DeepCopyObject added in v0.5.0

func (in *JindoRuntime) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*JindoRuntime) Replicas added in v0.5.0

func (runtime *JindoRuntime) Replicas() int32

Replicas gets the replicas of runtime worker

type JindoRuntimeList added in v0.5.0

type JindoRuntimeList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []JindoRuntime `json:"items"`
}

JindoRuntimeList contains a list of JindoRuntime

func (*JindoRuntimeList) DeepCopy added in v0.5.0

func (in *JindoRuntimeList) DeepCopy() *JindoRuntimeList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JindoRuntimeList.

func (*JindoRuntimeList) DeepCopyInto added in v0.5.0

func (in *JindoRuntimeList) DeepCopyInto(out *JindoRuntimeList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*JindoRuntimeList) DeepCopyObject added in v0.5.0

func (in *JindoRuntimeList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type JindoRuntimeSpec added in v0.5.0

type JindoRuntimeSpec struct {
	// The version information that instructs fluid to orchestrate a particular version of Jindo.
	JindoVersion VersionSpec `json:"jindoVersion,omitempty"`

	// Desired state for Jindo master
	Master JindoCompTemplateSpec `json:"master,omitempty"`

	// Desired state for Jindo worker
	Worker JindoCompTemplateSpec `json:"worker,omitempty"`

	// Desired state for Jindo Fuse
	Fuse JindoFuseSpec `json:"fuse,omitempty"`

	// Configurable properties for Jindo system. <br>
	Properties map[string]string `json:"properties,omitempty"`

	// Tiered storage used by Jindo
	TieredStore TieredStore `json:"tieredstore,omitempty"`

	// The replicas of the worker, need to be specified
	Replicas int32 `json:"replicas,omitempty"`

	// Manage the user to run Jindo Runtime
	RunAs *User `json:"runAs,omitempty"`

	User string `json:"user,omitempty"`

	// Name of the configMap used to support HDFS configurations when using HDFS as Jindo's UFS. The configMap
	// must be in the same namespace with the JindoRuntime. The configMap should contain user-specific HDFS conf files in it.
	// For now, only "hdfs-site.xml" and "core-site.xml" are supported. It must take the filename of the conf file as the key and content
	// of the file as the value.
	// +optional
	HadoopConfig string `json:"hadoopConfig,omitempty"`

	Secret string `json:"secret,omitempty"`
}

JindoRuntimeSpec defines the desired state of JindoRuntime

func (*JindoRuntimeSpec) DeepCopy added in v0.5.0

func (in *JindoRuntimeSpec) DeepCopy() *JindoRuntimeSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JindoRuntimeSpec.

func (*JindoRuntimeSpec) DeepCopyInto added in v0.5.0

func (in *JindoRuntimeSpec) DeepCopyInto(out *JindoRuntimeSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Level

type Level struct {

	// Medium Type of the tier. One of the three types: `MEM`, `SSD`, `HDD`
	// +kubebuilder:validation:Enum=MEM;SSD;HDD
	// +required
	MediumType common.MediumType `json:"mediumtype"`

	// File paths to be used for the tier. Multiple paths are supported.
	// Multiple paths should be separated with comma. For example: "/mnt/cache1,/mnt/cache2".
	// +kubebuilder:validation:MinLength=1
	// +required
	Path string `json:"path,omitempty"`

	// Quota for the whole tier. (e.g. 100Gi)
	// Please note that if there're multiple paths used for this tierstore,
	// the quota will be equally divided into these paths. If you'd like to
	// set quota for each, path, see QuotaList for more information.
	// +optional
	Quota *resource.Quantity `json:"quota,omitempty"`

	// QuotaList are quotas used to set quota on multiple paths. Quotas should be separated with comma.
	// Quotas in this list will be set to paths with the same order in Path.
	// For example, with Path defined with "/mnt/cache1,/mnt/cache2" and QuotaList set to "100Gi, 50Gi",
	// then we get 100GiB cache storage under "/mnt/cache1" and 50GiB under "/mnt/cache2".
	// Also note that num of quotas must be consistent with the num of paths defined in Path.
	// +optional
	// +kubebuilder:validation:Pattern:="^((\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+)))),)+((\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?)$"
	QuotaList string `json:"quotaList,omitempty"`

	// Ratio of high watermark of the tier (e.g. 0.9)
	High string `json:"high,omitempty"`

	// Ratio of low watermark of the tier (e.g. 0.7)
	Low string `json:"low,omitempty"`
}

Level describes configurations a tier needs. <br> Refer to <a href="https://docs.alluxio.io/os/user/stable/en/core-services/Caching.html#configuring-tiered-storage">Configuring Tiered Storage</a> for more info

func (*Level) DeepCopy

func (in *Level) DeepCopy() *Level

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Level.

func (*Level) DeepCopyInto

func (in *Level) DeepCopyInto(out *Level)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Mount

type Mount struct {
	// MountPoint is the mount point of source.
	// +kubebuilder:validation:MinLength=10
	// +required
	MountPoint string `json:"mountPoint,omitempty"`

	// The Mount Options. <br>
	// Refer to <a href="https://docs.alluxio.io/os/user/stable/en/reference/Properties-List.html">Mount Options</a>.  <br>
	// The option has Prefix 'fs.' And you can Learn more from
	// <a href="https://docs.alluxio.io/os/user/stable/en/ufs/S3.html">The Storage Integrations</a>
	// +optional
	Options map[string]string `json:"options,omitempty"`

	// The name of mount
	// +kubebuilder:validation:MinLength=0
	// +required
	Name string `json:"name,omitempty"`

	// The path of mount, if not set will be /{Name}
	// +optional
	Path string `json:"path,omitempty"`

	// Optional: Defaults to false (read-write).
	// +optional
	ReadOnly bool `json:"readOnly,omitempty"`

	// Optional: Defaults to false (shared).
	// +optional
	Shared bool `json:"shared,omitempty"`

	// The secret information
	// +optional
	EncryptOptions []EncryptOption `json:"encryptOptions,omitempty"`
}

Mount describes a mounting. <br> Refer to <a href="https://docs.alluxio.io/os/user/stable/en/ufs/S3.html">Alluxio Storage Integrations</a> for more info

func (*Mount) DeepCopy

func (in *Mount) DeepCopy() *Mount

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Mount.

func (*Mount) DeepCopyInto

func (in *Mount) DeepCopyInto(out *Mount)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PlacementMode added in v0.5.0

type PlacementMode string
const (
	ExclusiveMode PlacementMode = "Exclusive"

	ShareMode PlacementMode = "Shared"

	// DefaultMode is exclusive
	DefaultMode PlacementMode = ""
)

type Runtime

type Runtime struct {

	// Name of the runtime object
	Name string `json:"name,omitempty"`

	// Namespace of the runtime object
	Namespace string `json:"namespace,omitempty"`

	// Category the runtime object belongs to (e.g. Accelerate)
	Category common.Category `json:"category,omitempty"`

	// Runtime object's type (e.g. Alluxio)
	Type string `json:"type,omitempty"`

	// Runtime master replicas
	MasterReplicas int32 `json:"masterReplicas,omitempty"`
}

Runtime describes a runtime to be used to support dataset

func (*Runtime) DeepCopy

func (in *Runtime) DeepCopy() *Runtime

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Runtime.

func (*Runtime) DeepCopyInto

func (in *Runtime) DeepCopyInto(out *Runtime)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RuntimeCondition

type RuntimeCondition struct {
	// Type of cache condition.
	Type RuntimeConditionType `json:"type"`
	// Status of the condition, one of True, False, Unknown.
	Status corev1.ConditionStatus `json:"status"`
	// The reason for the condition's last transition.
	Reason string `json:"reason,omitempty"`
	// A human readable message indicating details about the transition.
	Message string `json:"message,omitempty"`
	// The last time this condition was updated.
	LastProbeTime metav1.Time `json:"lastProbeTime,omitempty"`
	// Last time the condition transitioned from one status to another.
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
}

Condition describes the state of the cache at a certain point.

func (*RuntimeCondition) DeepCopy

func (in *RuntimeCondition) DeepCopy() *RuntimeCondition

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuntimeCondition.

func (*RuntimeCondition) DeepCopyInto

func (in *RuntimeCondition) DeepCopyInto(out *RuntimeCondition)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RuntimeConditionType

type RuntimeConditionType string

RuntimeConditionType indicates valid conditions type of a runtime

const (
	// RuntimeMasterInitialized means the master of runtime is initialized
	RuntimeMasterInitialized RuntimeConditionType = "MasterInitialized"
	// RuntimeMasterReady means the master of runtime is ready
	RuntimeMasterReady RuntimeConditionType = "MasterReady"
	// RuntimeWorkersInitialized means the workers of runtime are initialized
	RuntimeWorkersInitialized RuntimeConditionType = "WorkersInitialized"
	// RuntimeWorkersReady means the workers of runtime are ready
	RuntimeWorkersReady RuntimeConditionType = "WorkersReady"
	// RuntimeWorkerScaledIn means the workers of runtime just scaled in
	RuntimeWorkerScaledIn RuntimeConditionType = "WorkersScaledIn"
	// RuntimeWorkerScaledIn means the workers of runtime just scaled out
	RuntimeWorkerScaledOut RuntimeConditionType = "WorkersScaledOut"
	// RuntimeFusesInitialized means the fuses of runtime are initialized
	RuntimeFusesInitialized RuntimeConditionType = "FusesInitialized"
	// RuntimeFusesReady means the fuses of runtime are ready
	RuntimeFusesReady RuntimeConditionType = "FusesReady"
	// RuntimeFusesScaledIn means the fuses of runtime just scaled in
	RuntimeFusesScaledIn RuntimeConditionType = "FusesScaledIn"
	// RuntimeFusesScaledOut means the fuses of runtime just scaled out
	RuntimeFusesScaledOut RuntimeConditionType = "FusesScaledOut"
)

These are valid conditions of a runtime.

type RuntimePhase

type RuntimePhase string
const (
	RuntimePhaseNone         RuntimePhase = ""
	RuntimePhaseNotReady     RuntimePhase = "NotReady"
	RuntimePhasePartialReady RuntimePhase = "PartialReady"
	RuntimePhaseReady        RuntimePhase = "Ready"
)

type RuntimeStatus added in v0.5.0

type RuntimeStatus struct {
	// config map used to set configurations
	ValueFileConfigmap string `json:"valueFile"`

	// MasterPhase is the master running phase
	MasterPhase RuntimePhase `json:"masterPhase"`

	// Reason for Master's condition transition
	MasterReason string `json:"masterReason,omitempty"`

	// WorkerPhase is the worker running phase
	WorkerPhase RuntimePhase `json:"workerPhase"`

	// Reason for Worker's condition transition
	WorkerReason string `json:"workerReason,omitempty"`

	// The total number of nodes that should be running the runtime worker
	// pod (including nodes correctly running the runtime worker pod).
	DesiredWorkerNumberScheduled int32 `json:"desiredWorkerNumberScheduled"`

	// The total number of nodes that can be running the runtime worker
	// pod (including nodes correctly running the runtime worker pod).
	CurrentWorkerNumberScheduled int32 `json:"currentWorkerNumberScheduled"`

	// The number of nodes that should be running the runtime worker pod and have one
	// or more of the runtime worker pod running and ready.
	WorkerNumberReady int32 `json:"workerNumberReady"`

	// The number of nodes that should be running the
	// runtime worker pod and have one or more of the runtime worker pod running and
	// available (ready for at least spec.minReadySeconds)
	// +optional
	WorkerNumberAvailable int32 `json:"workerNumberAvailable,omitempty"`

	// The number of nodes that should be running the
	// runtime worker pod and have none of the runtime worker pod running and available
	// (ready for at least spec.minReadySeconds)
	// +optional
	WorkerNumberUnavailable int32 `json:"workerNumberUnavailable,omitempty"`

	// The total number of nodes that should be running the runtime
	// pod (including nodes correctly running the runtime master pod).
	DesiredMasterNumberScheduled int32 `json:"desiredMasterNumberScheduled"`

	// The total number of nodes that should be running the runtime
	// pod (including nodes correctly running the runtime master pod).
	CurrentMasterNumberScheduled int32 `json:"currentMasterNumberScheduled"`

	// The number of nodes that should be running the runtime worker pod and have zero
	// or more of the runtime master pod running and ready.
	MasterNumberReady int32 `json:"masterNumberReady"`

	// FusePhase is the Fuse running phase
	FusePhase RuntimePhase `json:"fusePhase"`

	// Reason for the condition's last transition.
	FuseReason string `json:"fuseReason,omitempty"`

	// The total number of nodes that can be running the runtime Fuse
	// pod (including nodes correctly running the runtime Fuse pod).
	CurrentFuseNumberScheduled int32 `json:"currentFuseNumberScheduled"`

	// The total number of nodes that should be running the runtime Fuse
	// pod (including nodes correctly running the runtime Fuse pod).
	DesiredFuseNumberScheduled int32 `json:"desiredFuseNumberScheduled"`

	// The number of nodes that should be running the runtime Fuse pod and have one
	// or more of the runtime Fuse pod running and ready.
	FuseNumberReady int32 `json:"fuseNumberReady"`

	// The number of nodes that should be running the
	// runtime fuse pod and have none of the runtime fuse pod running and available
	// (ready for at least spec.minReadySeconds)
	// +optional
	FuseNumberUnavailable int32 `json:"fuseNumberUnavailable,omitempty"`

	// The number of nodes that should be running the
	// runtime Fuse pod and have one or more of the runtime Fuse pod running and
	// available (ready for at least spec.minReadySeconds)
	// +optional
	FuseNumberAvailable int32 `json:"fuseNumberAvailable,omitempty"`

	// Duration tell user how much time was spent to setup the runtime
	SetupDuration string `json:"setupDuration,omitempty"`

	// Represents the latest available observations of a ddc runtime's current state.
	// +patchMergeKey=type
	// +patchStrategy=merge
	Conditions []RuntimeCondition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"`

	// CacheStatus represents the total resources of the dataset.
	CacheStates common.CacheStateList `json:"cacheStates,omitempty"`

	// Selector is used for auto-scaling
	Selector string `json:"selector,omitempty"` // this must be the string form of the selector

	// APIGatewayStatus represents rest api gateway status
	APIGatewayStatus *APIGatewayStatus `json:"apiGateway,omitempty"`
}

RuntimeStatus defines the observed state of Runtime

func (*RuntimeStatus) DeepCopy added in v0.5.0

func (in *RuntimeStatus) DeepCopy() *RuntimeStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuntimeStatus.

func (*RuntimeStatus) DeepCopyInto added in v0.5.0

func (in *RuntimeStatus) DeepCopyInto(out *RuntimeStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SecretKeySelector added in v0.5.0

type SecretKeySelector struct {
	// The name of required secret
	// +required
	Name string `json:"name,omitempty"`

	// The required key in the secret
	// +optional
	Key string `json:"key,omitempty"`
}

func (*SecretKeySelector) DeepCopy added in v0.5.0

func (in *SecretKeySelector) DeepCopy() *SecretKeySelector

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretKeySelector.

func (*SecretKeySelector) DeepCopyInto added in v0.5.0

func (in *SecretKeySelector) DeepCopyInto(out *SecretKeySelector)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetDataset added in v0.4.0

type TargetDataset struct {
	// Name defines name of the target dataset
	Name string `json:"name"`

	// Namespace defines namespace of the target dataset
	Namespace string `json:"namespace,omitempty"`
}

TargetDataset defines the target dataset of the DataLoad

func (*TargetDataset) DeepCopy added in v0.4.0

func (in *TargetDataset) DeepCopy() *TargetDataset

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetDataset.

func (*TargetDataset) DeepCopyInto added in v0.4.0

func (in *TargetDataset) DeepCopyInto(out *TargetDataset)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetPath added in v0.4.0

type TargetPath struct {
	// Path defines path to be load
	Path string `json:"path"`

	// Replicas defines how many replicas will be loaded
	Replicas int32 `json:"replicas,omitempty"`
}

TargetPath defines the target path of the DataLoad

func (*TargetPath) DeepCopy added in v0.4.0

func (in *TargetPath) DeepCopy() *TargetPath

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetPath.

func (*TargetPath) DeepCopyInto added in v0.4.0

func (in *TargetPath) DeepCopyInto(out *TargetPath)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TieredStore added in v0.6.0

type TieredStore struct {
	// configurations for multiple tiers
	Levels []Level `json:"levels,omitempty"`
}

TieredStore is a description of the tiered store

func (*TieredStore) DeepCopy added in v0.6.0

func (in *TieredStore) DeepCopy() *TieredStore

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TieredStore.

func (*TieredStore) DeepCopyInto added in v0.6.0

func (in *TieredStore) DeepCopyInto(out *TieredStore)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type User added in v0.3.0

type User struct {
	// The uid to run the alluxio runtime
	UID *int64 `json:"uid"`
	// The gid to run the alluxio runtime
	GID *int64 `json:"gid"`
	// The user name to run the alluxio runtime
	UserName string `json:"user"`
	// The group name to run the alluxio runtime
	GroupName string `json:"group"`
}

User explains the user and group to run a Container

func (*User) DeepCopy added in v0.3.0

func (in *User) DeepCopy() *User

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new User.

func (*User) DeepCopyInto added in v0.3.0

func (in *User) DeepCopyInto(out *User)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VersionSpec added in v0.5.0

type VersionSpec struct {
	// Image (e.g. alluxio/alluxio)
	Image string `json:"image,omitempty"`

	// Image tag (e.g. 2.3.0-SNAPSHOT)
	ImageTag string `json:"imageTag,omitempty"`

	// One of the three policies: `Always`, `IfNotPresent`, `Never`
	ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
}

VersionSpec represents the settings for the version that fluid is orchestrating.

func (*VersionSpec) DeepCopy added in v0.5.0

func (in *VersionSpec) DeepCopy() *VersionSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VersionSpec.

func (*VersionSpec) DeepCopyInto added in v0.5.0

func (in *VersionSpec) DeepCopyInto(out *VersionSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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