Package v1alpha1 is the v1alpha1 version of the API.
Package v1alpha1 contains API Schema definitions for the data v1alpha1 API group
zz_unit_test_scheme.go with a "zz" prefix to ensure its init function is called after all the other init function in the pacakge
- AlluxioRuntime
- CacheRuntime
- CacheRuntimeClass
- DataBackup
- DataLoad
- DataMigrate
- DataProcess
- Dataset
- EFCRuntime
- GooseFSRuntime
- JindoRuntime
- JuiceFSRuntime
- ThinRuntime
- ThinRuntimeProfile
- VineyardRuntime
API Gateway
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
endpoint string |
Endpoint for accessing |
Underlying type: string
AffinityPolicy the strategy for the affinity between Data Operation Pods.
Appears in:
| Field | Description |
|---|---|
| `` | |
Require |
|
Prefer |
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
dependOn ObjectRef |
Specifies the dependent preceding operation in a workflow. If not set, use the operation referred to by RunAfter. | Optional: {} |
|
policy AffinityPolicy |
Policy one of: "", "Require", "Prefer" | Optional: {} |
|
prefers Prefer array |
|||
requires Require array |
AlluxioCompTemplateSpec is a description of the Alluxio commponents
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
replicas integer |
Replicas is the desired number of replicas of the given template. If unspecified, defaults to 1. replicas is the min replicas of dataset in the cluster |
Minimum: 1 Optional: {} |
|
jvmOptions string array |
Options for JVM | ||
properties object (keys:string, values:string) |
Configurable properties for the Alluxio component. Refer to Alluxio Configuration Properties for more info |
Optional: {} |
|
ports object (keys:string, values:integer) |
Ports used by Alluxio(e.g. rpc: 19998 for master) | Optional: {} |
|
resources ResourceRequirements |
Resources that will be requested by the Alluxio component. Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. |
Optional: {} |
|
env object (keys:string, values:string) |
Environment variables that will be used by Alluxio component. |
||
enabled boolean |
Enabled or Disabled for the components. For now, only API Gateway is enabled or disabled. | Optional: {} |
|
nodeSelector object (keys:string, values:string) |
NodeSelector is a selector which must be true for the master to fit on a node | Optional: {} |
|
networkMode NetworkMode |
Whether to use hostnetwork or not | Enum: [HostNetwork ContainerNetwork] Optional: {} |
|
volumeMounts VolumeMount array |
VolumeMounts specifies the volumes listed in ".spec.volumes" to mount into the alluxio runtime component's filesystem. | Optional: {} |
|
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to Alluxio's pods | Optional: {} |
|
imagePullSecrets LocalObjectReference array |
ImagePullSecrets that will be used to pull images |
AlluxioFuseSpec is a description of the Alluxio Fuse
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
image string |
Image for Alluxio Fuse(e.g. alluxio/alluxio-fuse) | ||
imageTag string |
Image Tag for Alluxio Fuse(e.g. 2.3.0-SNAPSHOT) | ||
imagePullPolicy string |
One of the three policies: Always, IfNotPresent, Never |
||
imagePullSecrets LocalObjectReference array |
ImagePullSecrets that will be used to pull images | ||
jvmOptions string array |
Options for JVM | ||
properties object (keys:string, values:string) |
Configurable properties for Alluxio System. Refer to Alluxio Configuration Properties for more info |
||
env object (keys:string, values:string) |
Environment variables that will be used by Alluxio Fuse | ||
resources ResourceRequirements |
Resources that will be requested by Alluxio Fuse. Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. |
Optional: {} |
|
args string array |
Arguments that will be passed to Alluxio Fuse | ||
nodeSelector object (keys:string, values:string) |
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: {} |
|
cleanPolicy FuseCleanPolicy |
CleanPolicy decides when to clean Alluxio Fuse pods. Currently Fluid supports two policies: OnDemand and OnRuntimeDeleted OnDemand cleans fuse pod once the fuse pod on some node is not needed OnRuntimeDeleted cleans fuse pod only when the cache runtime is deleted Defaults to OnRuntimeDeleted |
Optional: {} |
|
networkMode NetworkMode |
Whether to use hostnetwork or not | Enum: [HostNetwork ContainerNetwork] Optional: {} |
|
volumeMounts VolumeMount array |
VolumeMounts specifies the volumes listed in ".spec.volumes" to mount into the alluxio runtime component's filesystem. | Optional: {} |
|
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to Alluxio's fuse pods | Optional: {} |
AlluxioRuntime is the Schema for the alluxioruntimes API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersion string |
data.fluid.io/v1alpha1 |
||
kind string |
AlluxioRuntime |
||
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
||
spec AlluxioRuntimeSpec |
AlluxioRuntimeSpec defines the desired state of AlluxioRuntime
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
alluxioVersion VersionSpec |
The version information that instructs fluid to orchestrate a particular version of Alluxio. | ||
master AlluxioCompTemplateSpec |
The component spec of Alluxio master | ||
jobMaster AlluxioCompTemplateSpec |
The component spec of Alluxio job master | ||
worker AlluxioCompTemplateSpec |
The component spec of Alluxio worker | ||
jobWorker AlluxioCompTemplateSpec |
The component spec of Alluxio job Worker | ||
apiGateway AlluxioCompTemplateSpec |
The component spec of Alluxio API Gateway | ||
initUsers InitUsersSpec |
The spec of init users | ||
fuse AlluxioFuseSpec |
The component spec of Alluxio Fuse | ||
properties object (keys:string, values:string) |
Configurable properties for Alluxio system. Refer to Alluxio Configuration Properties for more info |
||
jvmOptions string array |
Options for JVM | ||
tieredstore TieredStore |
Tiered storage used by Alluxio | ||
data Data |
Management strategies for the dataset to which the runtime is bound | ||
replicas integer |
The replicas of the worker, need to be specified | ||
runAs User |
Manage the user to run Alluxio Runtime | ||
disablePrometheus boolean |
Disable monitoring for Alluxio Runtime Prometheus is enabled by default |
Optional: {} |
|
hadoopConfig string |
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: {} |
|
volumes Volume array |
Volumes is the list of Kubernetes volumes that can be mounted by the alluxio runtime components and/or fuses. | Optional: {} |
|
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to Alluxio's pods | Optional: {} |
|
management RuntimeManagement |
RuntimeManagement defines policies when managing the runtime | Optional: {} |
|
imagePullSecrets LocalObjectReference array |
ImagePullSecrets that will be used to pull images | Optional: {} |
CacheRuntime is the Schema for the CacheRuntimes API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersion string |
data.fluid.io/v1alpha1 |
||
kind string |
CacheRuntime |
||
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
||
spec CacheRuntimeSpec |
CacheRuntimeClass is the Schema for the cacheruntimeclasses API. CacheRuntimeClass defines a class of cache runtime implementations with specific configurations.
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersion string |
data.fluid.io/v1alpha1 |
||
kind string |
CacheRuntimeClass |
||
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
||
fileSystemType string |
FileSystemType is the file system type of the cache runtime (e.g., "alluxio", "juicefs") | Required: {} |
|
topology RuntimeTopology |
Topology describes the topology of the CacheRuntime components (master, worker, client) | Optional: {} |
|
extraResources RuntimeExtraResources |
ExtraResources specifies additional resources (e.g., ConfigMaps) used by the CacheRuntime components | Optional: {} |
CacheRuntimeClientSpec describes the desired state of CacheRuntime client component
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
disabled boolean |
Disabled indicates whether the component should be disabled. If set to true, the component will not be created. |
Optional: {} |
|
runtimeVersion VersionSpec |
RuntimeVersion is the version information that instructs Fluid to orchestrate a particular version of the runtime. | Optional: {} |
|
options object (keys:string, values:string) |
Options is a set of key-value pairs that provide additional configuration for the cache system. | Optional: {} |
|
podMetadata PodMetadata |
PodMetadata contains labels and annotations that will be propagated to the component's pods. | Optional: {} |
|
resources ResourceRequirements |
Resources describes the compute resource requirements. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
Optional: {} |
|
env EnvVar array |
Env is a list of environment variables to set in the container. | Optional: {} |
|
volumeMounts VolumeMount array |
VolumeMounts are the volumes to mount into the container's filesystem. Cannot be updated. |
Optional: {} |
|
args string array |
Args are arguments to the entrypoint. The container image's CMD is used if this is not provided. |
Optional: {} |
|
nodeSelector object (keys:string, values:string) |
NodeSelector is a selector which must be true for the pod to fit on a node. Selector which must match a node's labels for the pod to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ |
Optional: {} |
|
tolerations Toleration array |
Tolerations are the pod's tolerations. If specified, the pod's tolerations. More info: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/ |
Optional: {} |
|
tieredStore RuntimeTieredStore |
TieredStore describes the tiered storage configuration used by the client component. | Optional: {} |
|
cleanPolicy FuseCleanPolicy |
CleanPolicy determines when to clean up the FUSE client pods. Currently supports two policies: - "OnDemand": Clean up the FUSE pod when it is no longer needed on a node - "OnRuntimeDeleted": Clean up the FUSE pod only when the CacheRuntime is deleted Defaults to "OnRuntimeDeleted". |
OnRuntimeDeleted | Enum: [OnRuntimeDeleted OnDemand] Optional: {} |
CacheRuntimeMasterSpec describes the desired state of CacheRuntime master component
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
disabled boolean |
Disabled indicates whether the component should be disabled. If set to true, the component will not be created. |
Optional: {} |
|
runtimeVersion VersionSpec |
RuntimeVersion is the version information that instructs Fluid to orchestrate a particular version of the runtime. | Optional: {} |
|
options object (keys:string, values:string) |
Options is a set of key-value pairs that provide additional configuration for the cache system. | Optional: {} |
|
podMetadata PodMetadata |
PodMetadata contains labels and annotations that will be propagated to the component's pods. | Optional: {} |
|
resources ResourceRequirements |
Resources describes the compute resource requirements. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
Optional: {} |
|
env EnvVar array |
Env is a list of environment variables to set in the container. | Optional: {} |
|
volumeMounts VolumeMount array |
VolumeMounts are the volumes to mount into the container's filesystem. Cannot be updated. |
Optional: {} |
|
args string array |
Args are arguments to the entrypoint. The container image's CMD is used if this is not provided. |
Optional: {} |
|
nodeSelector object (keys:string, values:string) |
NodeSelector is a selector which must be true for the pod to fit on a node. Selector which must match a node's labels for the pod to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ |
Optional: {} |
|
tolerations Toleration array |
Tolerations are the pod's tolerations. If specified, the pod's tolerations. More info: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/ |
Optional: {} |
|
replicas integer |
Replicas is the desired number of replicas of the master component. If unspecified, defaults to 1. |
1 | Minimum: 0 Optional: {} |
CacheRuntimeSpec describes the desired state of CacheRuntime
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
runtimeClassName string |
RuntimeClassName is the name of the CacheRuntimeClass to use for this runtime. The CacheRuntimeClass defines the implementation details of the cache runtime. |
Required: {} |
|
master CacheRuntimeMasterSpec |
Master is the desired state of the master component. | Optional: {} |
|
worker CacheRuntimeWorkerSpec |
Worker is the desired state of the worker component. | Optional: {} |
|
client CacheRuntimeClientSpec |
Client is the desired state of the client component. | Optional: {} |
|
options object (keys:string, values:string) |
Options is a set of key-value pairs that provide additional configuration for the cache system. These options will be propagated to all components. |
Optional: {} |
|
podMetadata PodMetadata |
PodMetadata contains labels and annotations that will be propagated to all component pods. | Optional: {} |
|
imagePullSecrets LocalObjectReference array |
ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod |
Optional: {} |
|
volumes Volume array |
Volumes is the list of volumes that can be mounted by containers belonging to the cache runtime components. More info: https://kubernetes.io/docs/concepts/storage/volumes |
Optional: {} |
CacheRuntimeWorkerSpec describes the desired state of CacheRuntime worker component
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
disabled boolean |
Disabled indicates whether the component should be disabled. If set to true, the component will not be created. |
Optional: {} |
|
runtimeVersion VersionSpec |
RuntimeVersion is the version information that instructs Fluid to orchestrate a particular version of the runtime. | Optional: {} |
|
options object (keys:string, values:string) |
Options is a set of key-value pairs that provide additional configuration for the cache system. | Optional: {} |
|
podMetadata PodMetadata |
PodMetadata contains labels and annotations that will be propagated to the component's pods. | Optional: {} |
|
resources ResourceRequirements |
Resources describes the compute resource requirements. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
Optional: {} |
|
env EnvVar array |
Env is a list of environment variables to set in the container. | Optional: {} |
|
volumeMounts VolumeMount array |
VolumeMounts are the volumes to mount into the container's filesystem. Cannot be updated. |
Optional: {} |
|
args string array |
Args are arguments to the entrypoint. The container image's CMD is used if this is not provided. |
Optional: {} |
|
nodeSelector object (keys:string, values:string) |
NodeSelector is a selector which must be true for the pod to fit on a node. Selector which must match a node's labels for the pod to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ |
Optional: {} |
|
tolerations Toleration array |
Tolerations are the pod's tolerations. If specified, the pod's tolerations. More info: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/ |
Optional: {} |
|
replicas integer |
Replicas is the desired number of replicas of the worker component. If unspecified, defaults to 1. |
1 | Minimum: 0 Optional: {} |
tieredStore RuntimeTieredStore |
TieredStore describes the tiered storage configuration used by the worker component. | Optional: {} |
CacheableNodeAffinity defines constraints that limit what nodes this dataset can be cached to.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
required NodeSelector |
Required specifies hard node constraints that must be met. |
CleanCachePolicy defines policies when cleaning cache
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
gracePeriodSeconds integer |
Optional duration in seconds the cache needs to clean gracefully. May be decreased in delete runtime request. Value must be non-negative integer. The value zero indicates clean immediately via the timeout command (no opportunity to shut down). If this value is nil, the default grace period will be used instead. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with timeout command. Set this value longer than the expected cleanup time for your process. |
60 | Optional: {} |
maxRetryAttempts integer |
Optional max retry Attempts when cleanCache function returns an error after execution, runtime attempts to run it three more times by default. With Maximum Retry Attempts, you can customize the maximum number of retries. This gives you the option to continue processing retries. |
3 | Optional: {} |
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
enabled boolean |
Enabled decides whether to expose client metrics. | ||
scrapeTarget string |
ScrapeTarget decides which fuse component will be scraped by Prometheus. It is a list separated by comma where supported items are [MountPod, Sidecar, All (indicates MountPod and Sidecar), None]. Defaults to None when it is not explicitly set. |
ComponentServiceConfig defines the service configuration for runtime components. Currently only headless service is supported, but this can be extended in the future to support other service types such as ClusterIP, NodePort, LoadBalancer, etc.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
headless HeadlessRuntimeComponentService |
Headless enables a headless service for the component. A headless service does not allocate a cluster IP and allows direct pod-to-pod communication. |
Optional: {} |
Condition explains the transitions on phase
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
type ConditionType |
Type of condition, either Complete or Failed |
||
reason string |
Reason for the condition's last transition | ||
message string |
Message is a human-readable message indicating details about the transition | ||
lastProbeTime Time |
LastProbeTime describes last time this condition was updated. | ||
lastTransitionTime Time |
LastTransitionTime describes last time the condition transitioned from one status to another. |
ConfigMapDependencyConfig defines the ConfigMap mount configuration
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
name string |
Name is the ConfigMap template name defined in extraResources.configMaps | Optional: {} |
|
mountPath string |
MountPath is the path within the container at which the ConfigMap should be mounted. Must not contain ':'. |
Optional: {} |
ConfigMapRuntimeExtraResource defines a ConfigMap template for CacheRuntime extra resources
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
name string |
Name is the name of the ConfigMap. This will be used as the actual ConfigMap name when created in the runtime's namespace. |
Optional: {} |
|
data object (keys:string, values:string) |
Data contains the configuration data. Each key must consist of alphanumeric characters, '-', '_' or '.'. Values with non-UTF-8 byte sequences must use the BinaryData field. The keys stored in Data must not overlap with the keys in the BinaryData field, this is enforced during validation process. |
Optional: {} |
Data management strategies
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
replicas integer |
The copies of the dataset | Optional: {} |
|
pin boolean |
Pin the dataset or not. Refer to Alluxio User-CLI pin | Optional: {} |
DataBackup is the Schema for the backup API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersion string |
data.fluid.io/v1alpha1 |
||
kind string |
DataBackup |
||
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
||
spec DataBackupSpec |
DataBackupSpec defines the desired state of DataBackup
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
dataset string |
Dataset defines the target dataset of the DataBackup | ||
backupPath string |
BackupPath defines the target path to save data of the DataBackup | ||
runAs User |
Manage the user to run Alluxio DataBackup | ||
runAfter OperationRef |
Specifies that the preceding operation in a workflow | Optional: {} |
|
ttlSecondsAfterFinished integer |
TTLSecondsAfterFinished is the time second to clean up data operations after finished or failed | Optional: {} |
DataLoad is the Schema for the dataloads API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersion string |
data.fluid.io/v1alpha1 |
||
kind string |
DataLoad |
||
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
||
spec DataLoadSpec |
DataLoadSpec defines the desired state of DataLoad
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
dataset TargetDataset |
Dataset defines the target dataset of the DataLoad | ||
loadMetadata boolean |
LoadMetadata specifies if the dataload job should load metadata | ||
target TargetPath array |
Target defines target paths that needs to be loaded | ||
options object (keys:string, values:string) |
Options specifies the extra dataload properties for runtime | ||
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to DataLoad pods | ||
affinity Affinity |
Affinity defines affinity for DataLoad pod | Optional: {} |
|
tolerations Toleration array |
Tolerations defines tolerations for DataLoad pod | Optional: {} |
|
nodeSelector object (keys:string, values:string) |
NodeSelector defiens node selector for DataLoad pod | Optional: {} |
|
schedulerName string |
SchedulerName sets the scheduler to be used for DataLoad pod | Optional: {} |
|
policy Policy |
including Once, Cron, OnEvent | Once | Enum: [Once Cron OnEvent] Optional: {} |
schedule string |
The schedule in Cron format, only set when policy is cron, see https://en.wikipedia.org/wiki/Cron. | Optional: {} |
|
runAfter OperationRef |
Specifies that the preceding operation in a workflow | Optional: {} |
|
ttlSecondsAfterFinished integer |
TTLSecondsAfterFinished is the time second to clean up data operations after finished or failed | Optional: {} |
|
resources ResourceRequirements |
Resources that will be requested by the DataLoad job. |
Optional: {} |
DataMigrate is the Schema for the datamigrates API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersion string |
data.fluid.io/v1alpha1 |
||
kind string |
DataMigrate |
||
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
||
spec DataMigrateSpec |
DataMigrateSpec defines the desired state of DataMigrate
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
image string |
Image (e.g. alluxio/alluxio) | ||
imageTag string |
Image tag (e.g. 2.3.0-SNAPSHOT) | ||
imagePullPolicy string |
One of the three policies: Always, IfNotPresent, Never |
||
from DataToMigrate |
data to migrate source, including dataset and external storage | ||
to DataToMigrate |
data to migrate destination, including dataset and external storage | ||
block boolean |
if dataMigrate blocked dataset usage, default is false | Optional: {} |
|
runtimeType string |
using which runtime to migrate data; if none, take dataset runtime as default | Optional: {} |
|
options object (keys:string, values:string) |
options for migrate, different for each runtime | Optional: {} |
|
policy Policy |
policy for migrate, including Once, Cron, OnEvent | Once | Enum: [Once Cron OnEvent] Optional: {} |
schedule string |
The schedule in Cron format, only set when policy is cron, see https://en.wikipedia.org/wiki/Cron. | Optional: {} |
|
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to DataMigrate pods | ||
affinity Affinity |
Affinity defines affinity for DataMigrate pod | Optional: {} |
|
tolerations Toleration array |
Tolerations defines tolerations for DataMigrate pod | Optional: {} |
|
nodeSelector object (keys:string, values:string) |
NodeSelector defiens node selector for DataMigrate pod | Optional: {} |
|
schedulerName string |
SchedulerName sets the scheduler to be used for DataMigrate pod | Optional: {} |
|
runAfter OperationRef |
Specifies that the preceding operation in a workflow | Optional: {} |
|
ttlSecondsAfterFinished integer |
TTLSecondsAfterFinished is the time second to clean up data operations after finished or failed | Optional: {} |
|
resources ResourceRequirements |
Resources that will be requested by the DataMigrate job. |
Optional: {} |
|
parallelism integer |
Parallelism defines the parallelism tasks numbers for DataMigrate. If the value is greater than 1, the job acts as a launcher, and users should define the WorkerSpec. |
1 | Minimum: 1 Optional: {} |
parallelOptions object (keys:string, values:string) |
ParallelOptions defines options like ssh port and ssh secret name when parallelism is greater than 1. | Optional: {} |
DataProcess is the Schema for the dataprocesses API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersion string |
data.fluid.io/v1alpha1 |
||
kind string |
DataProcess |
||
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
||
spec DataProcessSpec |
DataProcessSpec defines the desired state of DataProcess
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
dataset TargetDatasetWithMountPath |
Dataset specifies the target dataset and its mount path. | Required: {} |
|
processor Processor |
Processor specify how to process data. | Required: {} |
|
runAfter OperationRef |
Specifies that the preceding operation in a workflow | Optional: {} |
|
ttlSecondsAfterFinished integer |
TTLSecondsAfterFinished is the time second to clean up data operations after finished or failed | Optional: {} |
DataRestoreLocation describes the spec restore location of Dataset
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
path string |
Path describes the path of restore, in the form of local://subpath or pvc:///subpath | Optional: {} |
|
nodeName string |
NodeName describes the nodeName of restore if Path is in the form of local://subpath | Optional: {} |
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
dataset DatasetToMigrate |
dataset to migrate | ||
externalStorage ExternalStorage |
external storage for data migrate |
Dataset is the Schema for the datasets API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersion string |
data.fluid.io/v1alpha1 |
||
kind string |
Dataset |
||
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
||
spec DatasetSpec |
Condition describes the state of the cache at a certain point.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
type DatasetConditionType |
Type of cache condition. | ||
reason string |
The reason for the condition's last transition. | ||
message string |
A human readable message indicating details about the transition. | ||
lastUpdateTime Time |
The last time this condition was updated. | ||
lastTransitionTime Time |
Last time the condition transitioned from one status to another. |
Underlying type: string
DatasetConditionType defines all kinds of types of cacheStatus.
one of the three types: RuntimeScheduled, Ready and Initialized
Appears in:
| Field | Description |
|---|---|
RuntimeScheduled |
RuntimeScheduled means the runtime CRD has been accepted by the system, But master and workers are not ready |
Ready |
DatasetReady means the cache system for the dataset is ready. |
NotReady |
DatasetNotReady means the dataset is not bound due to some unexpected error |
UpdateReady |
DatasetUpdateReady means the cache system for the dataset is updated. |
Updating |
DatasetUpdating means the cache system for the dataset is updating. |
Initialized |
DatasetInitialized means the cache system for the dataset is Initialized. |
Underlying type: string
DatasetPhase indicates whether the loading is behaving
Appears in:
| Field | Description |
|---|---|
Pending |
TODO: add the Pending phase to Dataset |
Bound |
Bound to dataset, can't be released |
Failed |
Failed, can't be deleted |
NotBound |
Not bound to runtime, can be deleted |
Updating |
updating dataset, can't be released |
DataMigrating |
migrating dataset, can't be mounted |
| `` | the dataset have no phase and need to be judged |
DatasetSpec defines the desired state of Dataset
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
mounts Mount array |
Mount Points to be mounted on cache runtime. This field can be empty because some runtimes don't need to mount external storage (e.g. Vineyard). |
MinItems: 1 UniqueItems: false Optional: {} |
|
owner User |
The owner of the dataset | Optional: {} |
|
nodeAffinity CacheableNodeAffinity |
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: {} |
|
tolerations Toleration array |
If specified, the pod's tolerations. | Optional: {} |
|
accessModes PersistentVolumeAccessMode array |
AccessModes contains all ways the volume backing the PVC can be mounted | Optional: {} |
|
runtimes Runtime array |
Runtimes for supporting dataset (e.g. AlluxioRuntime) | ||
placement PlacementMode |
Manage switch for opening Multiple datasets single node deployment or not | Enum: [Exclusive Shared] Optional: {} |
|
dataRestoreLocation DataRestoreLocation |
DataRestoreLocation is the location to load data of dataset been backuped | Optional: {} |
|
sharedOptions object (keys:string, values:string) |
SharedOptions is the options to all mount | Optional: {} |
|
sharedEncryptOptions EncryptOption array |
SharedEncryptOptions is the encryptOption to all mount | Optional: {} |
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
name string |
name of dataset | ||
namespace string |
namespace of dataset | ||
path string |
path to migrate |
EFCCompTemplateSpec is a description of the EFC components
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
replicas integer |
Replicas is the desired number of replicas of the given template. If unspecified, defaults to 1. replicas is the min replicas of dataset in the cluster |
Minimum: 1 Optional: {} |
|
version VersionSpec |
The version information that instructs fluid to orchestrate a particular version of EFC Comp | ||
properties object (keys:string, values:string) |
Configurable properties for the EFC component. | Optional: {} |
|
ports object (keys:string, values:integer) |
Ports used by EFC(e.g. rpc: 19998 for master). | Optional: {} |
|
resources ResourceRequirements |
Resources that will be requested by the EFC component. Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. |
Optional: {} |
|
disabled boolean |
Enabled or Disabled for the components. Default enable. |
Optional: {} |
|
nodeSelector object (keys:string, values:string) |
NodeSelector is a selector which must be true for the component to fit on a node. | Optional: {} |
|
networkMode NetworkMode |
Whether to use host network or not. | Enum: [HostNetwork ContainerNetwork] Optional: {} |
|
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to EFC's master and worker pods | Optional: {} |
EFCFuseSpec is a description of the EFC Fuse
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
version VersionSpec |
The version information that instructs fluid to orchestrate a particular version of EFC Fuse | ||
properties object (keys:string, values:string) |
Configurable properties for EFC fuse | Optional: {} |
|
resources ResourceRequirements |
Resources that will be requested by EFC Fuse. Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. |
Optional: {} |
|
nodeSelector object (keys:string, values:string) |
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: {} |
|
cleanPolicy FuseCleanPolicy |
CleanPolicy decides when to clean EFC Fuse pods. Currently Fluid supports two policies: OnDemand and OnRuntimeDeleted OnDemand cleans fuse pod once th fuse pod on some node is not needed OnRuntimeDeleted cleans fuse pod only when the cache runtime is deleted Defaults to OnRuntimeDeleted |
Optional: {} |
|
networkMode NetworkMode |
Whether to use hostnetwork or not | Enum: [HostNetwork ContainerNetwork] Optional: {} |
|
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to EFC's fuse pods | Optional: {} |
EFCRuntime is the Schema for the efcruntimes API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersion string |
data.fluid.io/v1alpha1 |
||
kind string |
EFCRuntime |
||
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
||
spec EFCRuntimeSpec |
EFCRuntimeSpec defines the desired state of EFCRuntime
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
master EFCCompTemplateSpec |
The component spec of EFC master | ||
worker EFCCompTemplateSpec |
The component spec of EFC worker | ||
initFuse InitFuseSpec |
The spec of init alifuse | ||
fuse EFCFuseSpec |
The component spec of EFC Fuse | ||
tieredstore TieredStore |
Tiered storage used by EFC worker | ||
replicas integer |
The replicas of the worker, need to be specified | ||
osAdvise OSAdvise |
Operating system optimization for EFC | ||
cleanCachePolicy CleanCachePolicy |
CleanCachePolicy defines cleanCache Policy | Optional: {} |
|
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to all EFC's pods | Optional: {} |
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
name string |
The name of encryptOption | Required: {} |
|
valueFrom EncryptOptionSource |
The valueFrom of encryptOption | Optional: {} |
EncryptOptionComponentDependency defines the configuration for encrypt option dependency
Appears in:
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
secretKeyRef SecretKeySelector |
The encryptInfo obtained from secret | Optional: {} |
ExternalEndpointSpec defines the configurations for external etcd cluster
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
uri string |
URI specifies the endpoint of external Etcd cluster E,g. "etcd-svc.etcd-namespace.svc.cluster.local:2379" Default is not set and use http protocol to connect to external etcd cluster |
Optional: {} |
|
encryptOptions EncryptOption array |
encrypt info for accessing the external etcd cluster | Optional: {} |
|
options object (keys:string, values:string) |
Configurable options for External Etcd cluster. | Optional: {} |
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
uri string |
type of external storage, including s3, oss, gcs, ceph, nfs, pvc, etc. (related to runtime) | ||
encryptOptions EncryptOption array |
encrypt info for external storage | Optional: {} |
ExtraResourcesComponentDependency defines the extra resources configuration for component dependencies
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
configMaps ConfigMapDependencyConfig array |
ConfigMaps is a list of ConfigMaps in the same namespace to mount into the component | Optional: {} |
Underlying type: string
Appears in:
- AlluxioFuseSpec
- CacheRuntimeClientSpec
- EFCFuseSpec
- GooseFSFuseSpec
- JindoFuseSpec
- JuiceFSFuseSpec
- ThinFuseSpec
- VineyardClientSocketSpec
| Field | Description |
|---|---|
| `` | NoneCleanPolicy is the default clean policy. It will be transformed to OnRuntimeDeletedCleanPolicy automatically. |
OnDemand |
OnDemandCleanPolicy cleans fuse pod once the fuse pod on some node is not needed |
OnRuntimeDeleted |
OnRuntimeDeletedCleanPolicy cleans fuse pod only when the cache runtime is deleted |
OnFuseChanged |
OnFuseChangedCleanPolicy cleans fuse pod when the fuse in runtime is updated and the fuse pod on some node is not needed |
GooseFSCompTemplateSpec is a description of the GooseFS commponents
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
replicas integer |
Replicas is the desired number of replicas of the given template. If unspecified, defaults to 1. replicas is the min replicas of dataset in the cluster |
Minimum: 1 Optional: {} |
|
jvmOptions string array |
Options for JVM | ||
properties object (keys:string, values:string) |
Configurable properties for the GOOSEFS component. Refer to GOOSEFS Configuration Properties for more info |
Optional: {} |
|
ports object (keys:string, values:integer) |
Ports used by GooseFS(e.g. rpc: 19998 for master) | Optional: {} |
|
resources ResourceRequirements |
Resources that will be requested by the GooseFS component. Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. |
Optional: {} |
|
env object (keys:string, values:string) |
Environment variables that will be used by GooseFS component. |
||
enabled boolean |
Enabled or Disabled for the components. For now, only API Gateway is enabled or disabled. | Optional: {} |
|
nodeSelector object (keys:string, values:string) |
NodeSelector is a selector which must be true for the master to fit on a node | Optional: {} |
|
annotations object (keys:string, values:string) |
Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations |
Optional: {} |
GooseFSFuseSpec is a description of the GooseFS Fuse
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
image string |
Image for GooseFS Fuse(e.g. goosefs/goosefs-fuse) | ||
imageTag string |
Image Tag for GooseFS Fuse(e.g. v1.0.1) | ||
imagePullPolicy string |
One of the three policies: Always, IfNotPresent, Never |
||
jvmOptions string array |
Options for JVM | ||
properties object (keys:string, values:string) |
Configurable properties for the GOOSEFS component. Refer to GOOSEFS Configuration Properties for more info |
||
env object (keys:string, values:string) |
Environment variables that will be used by GooseFS Fuse | ||
resources ResourceRequirements |
Resources that will be requested by GooseFS Fuse. Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. |
Optional: {} |
|
args string array |
Arguments that will be passed to GooseFS Fuse | ||
nodeSelector object (keys:string, values:string) |
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: {} |
|
cleanPolicy FuseCleanPolicy |
CleanPolicy decides when to clean GooseFS Fuse pods. Currently Fluid supports two policies: OnDemand and OnRuntimeDeleted OnDemand cleans fuse pod once th fuse pod on some node is not needed OnRuntimeDeleted cleans fuse pod only when the cache runtime is deleted Defaults to OnRuntimeDeleted |
Optional: {} |
|
annotations object (keys:string, values:string) |
Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations |
Optional: {} |
GooseFSRuntime is the Schema for the goosefsruntimes API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersion string |
data.fluid.io/v1alpha1 |
||
kind string |
GooseFSRuntime |
||
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
||
spec GooseFSRuntimeSpec |
GooseFSRuntimeSpec defines the desired state of GooseFSRuntime
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
goosefsVersion VersionSpec |
The version information that instructs fluid to orchestrate a particular version of GooseFS. | ||
master GooseFSCompTemplateSpec |
The component spec of GooseFS master | ||
jobMaster GooseFSCompTemplateSpec |
The component spec of GooseFS job master | ||
worker GooseFSCompTemplateSpec |
The component spec of GooseFS worker | ||
jobWorker GooseFSCompTemplateSpec |
The component spec of GooseFS job Worker | ||
apiGateway GooseFSCompTemplateSpec |
The component spec of GooseFS API Gateway | ||
initUsers InitUsersSpec |
The spec of init users | ||
fuse GooseFSFuseSpec |
The component spec of GooseFS Fuse | ||
properties object (keys:string, values:string) |
Configurable properties for the GOOSEFS component. Refer to GOOSEFS Configuration Properties for more info |
||
jvmOptions string array |
Options for JVM | ||
tieredstore TieredStore |
Tiered storage used by GooseFS | ||
data Data |
Management strategies for the dataset to which the runtime is bound | ||
replicas integer |
The replicas of the worker, need to be specified | ||
runAs User |
Manage the user to run GooseFS Runtime GooseFS support POSIX-ACL and Apache Ranger to manager authorization |
||
disablePrometheus boolean |
Disable monitoring for GooseFS Runtime Prometheus is enabled by default |
Optional: {} |
|
hadoopConfig string |
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: {} |
|
cleanCachePolicy CleanCachePolicy |
CleanCachePolicy defines cleanCache Policy | Optional: {} |
HCFS Endpoint info
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
endpoint string |
Endpoint for accessing | ||
underlayerFileSystemVersion string |
Underlayer HCFS Compatible Version |
HeadlessRuntimeComponentService defines the configuration for headless service
Appears in:
InitFuseSpec is a description of initialize the fuse kernel module for runtime
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
version VersionSpec |
The version information that instructs fluid to orchestrate a particular version of Alifuse |
InitUsersSpec is a description of the initialize the users for runtime
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
image string |
Image for initialize the users for runtime(e.g. alluxio/alluxio-User init) | ||
imageTag string |
Image Tag for initialize the users for runtime(e.g. 2.3.0-SNAPSHOT) | ||
imagePullPolicy string |
One of the three policies: Always, IfNotPresent, Never |
||
env object (keys:string, values:string) |
Environment variables that will be used by initialize the users for runtime | ||
resources ResourceRequirements |
Resources that will be requested by initialize the users for runtime. Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. |
Optional: {} |
JindoCompTemplateSpec is a description of the Jindo commponents
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
replicas integer |
Replicas is the desired number of replicas of the given template. If unspecified, defaults to 1. replicas is the min replicas of dataset in the cluster |
Minimum: 1 Optional: {} |
|
properties object (keys:string, values:string) |
Configurable properties for the Jindo component. |
Optional: {} |
|
ports object (keys:string, values:integer) |
Optional: {} |
||
resources ResourceRequirements |
Resources that will be requested by the Jindo component. Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. |
Optional: {} |
|
env object (keys:string, values:string) |
Environment variables that will be used by Jindo component. |
||
nodeSelector object (keys:string, values:string) |
NodeSelector is a selector which must be true for the master to fit on a node | Optional: {} |
|
tolerations Toleration array |
If specified, the pod's tolerations. | Optional: {} |
|
labels object (keys:string, values:string) |
Labels will be added on JindoFS Master or Worker pods. DEPRECATED: This is a deprecated field. Please use PodMetadata instead. Note: this field is set to be exclusive with PodMetadata.Labels |
Optional: {} |
|
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to Jindo's pods | Optional: {} |
|
disabled boolean |
If disable JindoFS master or worker | Optional: {} |
|
volumeMounts VolumeMount array |
VolumeMounts specifies the volumes listed in ".spec.volumes" to mount into the jindo runtime component's filesystem. | Optional: {} |
|
imagePullSecrets LocalObjectReference array |
ImagePullSecrets that will be used to pull images |
JindoFuseSpec is a description of the Jindo Fuse
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
image string |
Image for Jindo Fuse(e.g. jindo/jindo-fuse) | ||
imageTag string |
Image Tag for Jindo Fuse(e.g. 2.3.0-SNAPSHOT) | ||
imagePullPolicy string |
One of the three policies: Always, IfNotPresent, Never |
||
imagePullSecrets LocalObjectReference array |
ImagePullSecrets that will be used to pull images | ||
properties object (keys:string, values:string) |
Configurable properties for Jindo System. |
||
env object (keys:string, values:string) |
Environment variables that will be used by Jindo Fuse | ||
resources ResourceRequirements |
Resources that will be requested by Jindo Fuse. Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. |
Optional: {} |
|
args string array |
Arguments that will be passed to Jindo Fuse | ||
nodeSelector object (keys:string, values:string) |
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: {} |
|
tolerations Toleration array |
If specified, the pod's tolerations. | Optional: {} |
|
labels object (keys:string, values:string) |
Labels will be added on all the JindoFS pods. DEPRECATED: this is a deprecated field. Please use PodMetadata.Labels instead. Note: this field is set to be exclusive with PodMetadata.Labels |
Optional: {} |
|
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to Jindo's fuse pods | Optional: {} |
|
cleanPolicy FuseCleanPolicy |
CleanPolicy decides when to clean JindoFS Fuse pods. Currently Fluid supports two policies: OnDemand and OnRuntimeDeleted OnDemand cleans fuse pod once th fuse pod on some node is not needed OnRuntimeDeleted cleans fuse pod only when the cache runtime is deleted Defaults to OnRuntimeDeleted |
Optional: {} |
|
disabled boolean |
If disable JindoFS fuse | Optional: {} |
|
logConfig object (keys:string, values:string) |
Optional: {} |
||
metrics ClientMetrics |
Define whether fuse metrics will be enabled. | Optional: {} |
JindoRuntime is the Schema for the jindoruntimes API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersion string |
data.fluid.io/v1alpha1 |
||
kind string |
JindoRuntime |
||
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
||
spec JindoRuntimeSpec |
JindoRuntimeSpec defines the desired state of JindoRuntime
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
jindoVersion VersionSpec |
The version information that instructs fluid to orchestrate a particular version of Jindo. | ||
master JindoCompTemplateSpec |
The component spec of Jindo master | ||
worker JindoCompTemplateSpec |
The component spec of Jindo worker | ||
fuse JindoFuseSpec |
The component spec of Jindo Fuse | ||
properties object (keys:string, values:string) |
Configurable properties for Jindo system. |
||
tieredstore TieredStore |
Tiered storage used by Jindo | ||
replicas integer |
The replicas of the worker, need to be specified | ||
runAs User |
Manage the user to run Jindo Runtime | ||
user string |
|||
hadoopConfig string |
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: {} |
|
secret string |
|||
labels object (keys:string, values:string) |
Labels will be added on all the JindoFS pods. DEPRECATED: this is a deprecated field. Please use PodMetadata.Labels instead. Note: this field is set to be exclusive with PodMetadata.Labels |
Optional: {} |
|
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to all Jindo's fuse pods | Optional: {} |
|
logConfig object (keys:string, values:string) |
Optional: {} |
||
networkmode NetworkMode |
Whether to use hostnetwork or not | Enum: [HostNetwork ContainerNetwork] Optional: {} |
|
cleanCachePolicy CleanCachePolicy |
CleanCachePolicy defines cleanCache Policy | Optional: {} |
|
volumes Volume array |
Volumes is the list of Kubernetes volumes that can be mounted by the jindo runtime components and/or fuses. | Optional: {} |
|
imagePullSecrets LocalObjectReference array |
ImagePullSecrets that will be used to pull images | Optional: {} |
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
podSpec PodSpec |
PodSpec defines Pod specification of the DataProcess job. | Optional: {} |
JuiceFSCompTemplateSpec is a description of the JuiceFS components
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
replicas integer |
Replicas is the desired number of replicas of the given template. If unspecified, defaults to 1. replicas is the min replicas of dataset in the cluster |
Minimum: 1 Optional: {} |
|
ports ContainerPort array |
Ports used by JuiceFS | Optional: {} |
|
resources ResourceRequirements |
Resources that will be requested by the JuiceFS component. | Optional: {} |
|
options object (keys:string, values:string) |
Options | ||
env EnvVar array |
Environment variables that will be used by JuiceFS component. | ||
enabled boolean |
Enabled or Disabled for the components. | Optional: {} |
|
nodeSelector object (keys:string, values:string) |
NodeSelector is a selector | Optional: {} |
|
volumeMounts VolumeMount array |
VolumeMounts specifies the volumes listed in ".spec.volumes" to mount into runtime component's filesystem. | Optional: {} |
|
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to JuiceFs's pods. | Optional: {} |
|
networkMode NetworkMode |
Whether to use hostnetwork or not | Enum: [HostNetwork ContainerNetwork] Optional: {} |
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
image string |
Image for JuiceFS fuse | ||
imageTag string |
Image for JuiceFS fuse | ||
imagePullPolicy string |
One of the three policies: Always, IfNotPresent, Never |
||
env EnvVar array |
Environment variables that will be used by JuiceFS Fuse | ||
resources ResourceRequirements |
Resources that will be requested by JuiceFS Fuse. | ||
options object (keys:string, values:string) |
Options mount options that fuse pod will use | Optional: {} |
|
nodeSelector object (keys:string, values:string) |
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: {} |
|
volumeMounts VolumeMount array |
VolumeMounts specifies the volumes listed in ".spec.volumes" to mount into runtime component's filesystem. | Optional: {} |
|
cleanPolicy FuseCleanPolicy |
CleanPolicy decides when to clean Juicefs Fuse pods. Currently Fluid supports three policies: OnDemand, OnRuntimeDeleted and OnFuseChangedCleanPolicy OnDemand cleans fuse pod once the fuse pod on some node is not needed OnRuntimeDeleted cleans fuse pod only when the cache runtime is deleted OnFuseChangedCleanPolicy cleans fuse pod once the fuse pod on some node is not needed and the fuse in runtime is updated Defaults to OnRuntimeDeleted |
Optional: {} |
|
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to JuiceFs's pods. | Optional: {} |
|
networkMode NetworkMode |
Whether to use hostnetwork or not | Enum: [HostNetwork ContainerNetwork] Optional: {} |
JuiceFSRuntime is the Schema for the juicefsruntimes API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersion string |
data.fluid.io/v1alpha1 |
||
kind string |
JuiceFSRuntime |
||
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
||
spec JuiceFSRuntimeSpec |
JuiceFSRuntimeSpec defines the desired state of JuiceFSRuntime
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
juicefsVersion VersionSpec |
The version information that instructs fluid to orchestrate a particular version of JuiceFS. | ||
initUsers InitUsersSpec |
The spec of init users | ||
master JuiceFSCompTemplateSpec |
The component spec of JuiceFS master | ||
worker JuiceFSCompTemplateSpec |
The component spec of JuiceFS worker | ||
jobWorker JuiceFSCompTemplateSpec |
The component spec of JuiceFS job Worker | ||
fuse JuiceFSFuseSpec |
Desired state for JuiceFS Fuse | ||
tieredstore TieredStore |
Tiered storage used by JuiceFS | ||
configs string |
Configs of JuiceFS | ||
replicas integer |
The replicas of the worker, need to be specified | ||
runAs User |
Manage the user to run Juicefs Runtime | ||
disablePrometheus boolean |
Disable monitoring for JuiceFS Runtime Prometheus is enabled by default |
Optional: {} |
|
volumes Volume array |
Volumes is the list of Kubernetes volumes that can be mounted by the alluxio runtime components and/or fuses. | Optional: {} |
|
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to JuiceFs's pods. | Optional: {} |
|
management RuntimeManagement |
RuntimeManagement defines policies when managing the runtime | Optional: {} |
Level describes configurations a tier needs.
Refer to Configuring Tiered Storage for more info
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
mediumtype MediumType |
Medium Type of the tier. One of the three types: MEM, SSD, HDD |
Enum: [MEM SSD HDD] Required: {} |
|
volumeType VolumeType |
VolumeType is the volume type of the tier. Should be one of the three types: hostPath, emptyDir and volumeTemplate.If not set, defaults to hostPath. |
hostPath | Enum: [hostPath emptyDir] Optional: {} |
path string |
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". |
MinLength: 1 Optional: {} |
|
quota Quantity |
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: {} |
|
quotaList string |
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. |
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]+))))?)$ Optional: {} |
|
high string |
Ratio of high watermark of the tier (e.g. 0.9) | ||
low string |
Ratio of low watermark of the tier (e.g. 0.7) |
MasterSpec defines the configurations for Vineyard Master component which is also regarded as the Etcd component in Vineyard. For more info about Vineyard, refer to Vineyard
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
replicas integer |
The replicas of Vineyard component. If not specified, defaults to 1. For worker, the replicas should not be greater than the number of nodes in the cluster |
Minimum: 1 Optional: {} |
|
image string |
The image of Vineyard component. For Master, the default image is registry.aliyuncs.com/vineyard/vineyarddFor Worker, the default image is registry.aliyuncs.com/vineyard/vineyarddThe default container registry is docker.io, you can change it by setting the image field |
Optional: {} |
|
imageTag string |
The image tag of Vineyard component. For Master, the default image tag is v0.22.2.For Worker, the default image tag is v0.22.2. |
Optional: {} |
|
imagePullPolicy string |
The image pull policy of Vineyard component. Default is IfNotPresent. |
Optional: {} |
|
nodeSelector object (keys:string, values:string) |
NodeSelector is a selector to choose which nodes to launch the Vineyard component. E,g. {"disktype": "ssd"} |
Optional: {} |
|
ports object (keys:string, values:integer) |
Ports used by Vineyard component. For Master, the default client port is 2379 and peer port is 2380. For Worker, the default rpc port is 9600 and the default exporter port is 9144. |
Optional: {} |
|
env object (keys:string, values:string) |
Environment variables that will be used by Vineyard component. For Master, refer to Etcd Configuration for more info Default is not set. |
Optional: {} |
|
options object (keys:string, values:string) |
Configurable options for Vineyard component. For Master, there is no configurable options. For Worker, support the following options. vineyardd.reserve.memory: (Bool) where to reserve memory for vineyardd If set to true, the memory quota will be counted to the vineyardd rather than the application. etcd.prefix: (String) the prefix of etcd key for vineyard objects wait.etcd.timeout: (String) the timeout period before waiting the etcd to be ready, in seconds Default value is as follows. vineyardd.reserve.memory: "true" etcd.prefix: "/vineyard" wait.etcd.timeout: "120" |
Optional: {} |
|
resources ResourceRequirements |
Resources contains the resource requirements and limits for the Vineyard component. Default is not set. For Worker, when the options contains vineyardd.reserve.memory=true, the resources.request.memory for worker should be greater than tieredstore.levels[0].quota(aka vineyardd shared memory) |
Optional: {} |
|
volumeMounts VolumeMount array |
VolumeMounts specifies the volumes listed in ".spec.volumes" to mount into the vineyard runtime component's filesystem. It is useful for specifying a persistent storage. Default is not set. |
Optional: {} |
|
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to Vineyard's pods including Master and Worker. Default is not set. |
Optional: {} |
|
networkMode NetworkMode |
Whether to use hostnetwork or not Default is HostNetwork |
Enum: [HostNetwork ContainerNetwork] Optional: {} |
|
endpoint ExternalEndpointSpec |
ExternalEndpoint defines the configurations for external etcd cluster Default is not set If set, the Vineyard Master component will not be deployed, which means the Vineyard Worker component will use an external Etcd cluster. E,g. endpoint: uri: "etcd-svc.etcd-namespace.svc.cluster.local:2379" encryptOptions: - name: access-key valueFrom: secretKeyRef: name: etcd-secret key: accesskey |
Optional: {} |
MediumSource describes the storage medium type for tiered store. Only one of its members may be specified.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
processMemory ProcessMemoryMediumSource |
ProcessMemory indicates that process memory should be used as the storage medium. The cache will be stored in the process's memory space. |
Optional: {} |
|
volume VolumeMediumSource |
Volume indicates that a Kubernetes volume should be used as the storage medium. Supported volume types include hostPath, emptyDir, and ephemeral volumes. |
Optional: {} |
MetadataSyncPolicy defines policies when syncing metadata
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
autoSync boolean |
AutoSync enables automatic metadata sync when setting up a runtime. If not set, it defaults to true. | Optional: {} |
Mount describes a mounting.
Refer to Alluxio Storage Integrations for more info
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
mountPoint string |
MountPoint is the mount point of source. | MinLength: 5 Required: {} |
|
options object (keys:string, values:string) |
The Mount Options. Refer to Mount Options. The option has Prefix 'fs.' And you can Learn more from The Storage Integrations |
Optional: {} |
|
name string |
The name of mount | MinLength: 0 Optional: {} |
|
path string |
The path of mount, if not set will be /{Name} | Optional: {} |
|
readOnly boolean |
Optional: Defaults to false (read-write). | Optional: {} |
|
shared boolean |
Optional: Defaults to false (shared). | Optional: {} |
|
encryptOptions EncryptOption array |
The secret information | Optional: {} |
MountPointStatus describes the status of a single mount point in the dataset
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
mount Mount |
Mount contains the mount point configuration from the bound dataset. This includes the remote path, mount options, and other mount-specific settings. |
||
mountTime Time |
MountTime is the timestamp of the last successful mount operation. If MountTime is earlier than the master component's start time, a remount will be required. |
Optional: {} |
Underlying type: string
Appears in:
- AlluxioCompTemplateSpec
- AlluxioFuseSpec
- EFCCompTemplateSpec
- EFCFuseSpec
- JindoRuntimeSpec
- JuiceFSCompTemplateSpec
- JuiceFSFuseSpec
- MasterSpec
- ThinCompTemplateSpec
- ThinFuseSpec
- VineyardClientSocketSpec
- VineyardCompTemplateSpec
| Field | Description |
|---|---|
HostNetwork |
|
ContainerNetwork |
|
| `` | DefaultNetworkMode is Host |
Underlying type: string
Appears in:
| Field | Description |
|---|---|
NotMountNodePublishSecret |
|
MountNodePublishSecretIfExists |
|
CopyNodePublishSecretAndMountIfNotExists |
OSAdvise is a description of choices to have optimization on specific operating system
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
osVersion string |
Specific operating system version that can have optimization. | Optional: {} |
|
enabled boolean |
Enable operating system optimization not enabled by default. |
Optional: {} |
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersion string |
API version of the referent operation | Optional: {} |
|
kind string |
Kind specifies the type of the referent operation | Enum: [DataLoad DataBackup DataMigrate DataProcess] Required: {} |
|
name string |
Name specifies the name of the referent operation | Required: {} |
|
namespace string |
Namespace specifies the namespace of the referent operation. | Optional: {} |
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersion string |
API version of the referent operation | Optional: {} |
|
kind string |
Kind specifies the type of the referent operation | Enum: [DataLoad DataBackup DataMigrate DataProcess] Required: {} |
|
name string |
Name specifies the name of the referent operation | Required: {} |
|
namespace string |
Namespace specifies the namespace of the referent operation. | Optional: {} |
|
affinityStrategy AffinityStrategy |
AffinityStrategy specifies the pod affinity strategy with the referent operation. | Optional: {} |
Underlying type: string
Appears in:
| Field | Description |
|---|---|
Exclusive |
|
Shared |
|
| `` | DefaultMode is exclusive |
PodMetadata defines subgroup properties of metav1.ObjectMeta
Appears in:
- AlluxioCompTemplateSpec
- AlluxioFuseSpec
- AlluxioRuntimeSpec
- CacheRuntimeClientSpec
- CacheRuntimeMasterSpec
- CacheRuntimeSpec
- CacheRuntimeWorkerSpec
- DataLoadSpec
- DataMigrateSpec
- EFCCompTemplateSpec
- EFCFuseSpec
- EFCRuntimeSpec
- JindoCompTemplateSpec
- JindoFuseSpec
- JindoRuntimeSpec
- JuiceFSCompTemplateSpec
- JuiceFSFuseSpec
- JuiceFSRuntimeSpec
- MasterSpec
- Metadata
- Processor
- RuntimeComponentCommonSpec
- ThinFuseSpec
- VineyardClientSocketSpec
- VineyardCompTemplateSpec
- VineyardRuntimeSpec
| Field | Description | Default | Validation |
|---|---|---|---|
labels object (keys:string, values:string) |
Labels are labels of pod specification | ||
annotations object (keys:string, values:string) |
Annotations are annotations of pod specification |
Underlying type: string
Appears in:
| Field | Description |
|---|---|
Once |
Once run data migrate once, default policy is Once |
Cron |
Cron run data migrate by cron |
OnEvent |
OnEvent run data migrate when event occurs |
Prefer defines the label key and weight for generating a PreferredSchedulingTerm.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
name string |
|||
weight integer |
ProcessMemoryMediumSource describes process memory as a storage medium. When specified, cache data will be stored in the process's memory space, and the quota will be added to the container's resource requests and limits.
Appears in:
Processor defines the actual processor for DataProcess. Processor can be either of a Job or a Shell script.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
serviceAccountName string |
ServiceAccountName defiens the serviceAccountName of the container | Optional: {} |
|
podMetadata PodMetadata |
PodMetadata defines labels and annotations on the processor pod. | Optional: {} |
|
job JobProcessor |
Job represents a processor which runs DataProcess as a job. | Optional: {} |
|
script ScriptProcessor |
Shell represents a processor which executes shell script |
Require defines the label key for generating a NodeSelectorTerm.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
name string |
Runtime describes a runtime to be used to support dataset
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
name string |
Name of the runtime object | ||
namespace string |
Namespace of the runtime object | ||
category Category |
Category the runtime object belongs to (e.g. Accelerate) | ||
type string |
Runtime object's type (e.g. Alluxio) | ||
masterReplicas integer |
Runtime master replicas |
RuntimeComponentCommonSpec describes the common configuration for CacheRuntime components
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
disabled boolean |
Disabled indicates whether the component should be disabled. If set to true, the component will not be created. |
Optional: {} |
|
runtimeVersion VersionSpec |
RuntimeVersion is the version information that instructs Fluid to orchestrate a particular version of the runtime. | Optional: {} |
|
options object (keys:string, values:string) |
Options is a set of key-value pairs that provide additional configuration for the cache system. | Optional: {} |
|
podMetadata PodMetadata |
PodMetadata contains labels and annotations that will be propagated to the component's pods. | Optional: {} |
|
resources ResourceRequirements |
Resources describes the compute resource requirements. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
Optional: {} |
|
env EnvVar array |
Env is a list of environment variables to set in the container. | Optional: {} |
|
volumeMounts VolumeMount array |
VolumeMounts are the volumes to mount into the container's filesystem. Cannot be updated. |
Optional: {} |
|
args string array |
Args are arguments to the entrypoint. The container image's CMD is used if this is not provided. |
Optional: {} |
|
nodeSelector object (keys:string, values:string) |
NodeSelector is a selector which must be true for the pod to fit on a node. Selector which must match a node's labels for the pod to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ |
Optional: {} |
|
tolerations Toleration array |
Tolerations are the pod's tolerations. If specified, the pod's tolerations. More info: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/ |
Optional: {} |
RuntimeComponentDefinition defines the configuration for a CacheRuntime component
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
workloadType TypeMeta |
WorkloadType is the default workload type of the component | Optional: {} |
|
options object (keys:string, values:string) |
Options is a set of key-value pairs that provide additional configuration for the component | Optional: {} |
|
template PodTemplateSpec |
Template describes the pods that will be created. The template follows the standard PodTemplateSpec from Kubernetes core. |
Optional: {} |
|
service RuntimeComponentService |
Service is the service configuration for the component | Optional: {} |
|
dependencies RuntimeComponentDependencies |
Dependencies specifies the dependencies required by the component | Optional: {} |
RuntimeComponentDependencies defines the dependencies required by a CacheRuntime component
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
encryptOption EncryptOptionComponentDependency |
EncryptOption is the configuration for encrypt option secret mount | Optional: {} |
|
extraResources ExtraResourcesComponentDependency |
ExtraResources specifies the usage of extra resources such as ConfigMaps | Optional: {} |
RuntimeComponentService describes the service configuration for a CacheRuntime component
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
headless HeadlessRuntimeComponentService |
Headless enables a headless service for the component. A headless service does not allocate a cluster IP and allows direct pod-to-pod communication. |
Optional: {} |
RuntimeComponentStatus describes the observed state of a runtime component. It follows the standard Kubernetes pattern for tracking workload status.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
phase RuntimePhase |
Phase is the current lifecycle phase of the component. Known phases include: "Pending", "Running", "Failed", etc. |
Required: {} |
|
reason string |
Reason is a brief, machine-readable string that gives the reason for the current phase. This is useful for understanding why a component is in a particular state. |
Optional: {} |
|
message string |
Message is a human-readable message indicating details about the component's status. | Optional: {} |
|
readyReplicas integer |
ReadyReplicas is the number of pods with a Ready condition. | Optional: {} |
|
currentReplicas integer |
CurrentReplicas is the current number of replicas running for the component | Optional: {} |
|
desiredReplicas integer |
DesiredReplicas is the desired number of replicas as specified in the spec. | Optional: {} |
|
unavailableReplicas integer |
UnavailableReplicas is the number of pods that are not available. A pod is considered unavailable if it is not ready or has been terminated. |
Optional: {} |
|
availableReplicas integer |
AvailableReplicas is the number of pods that are available and ready to serve requests. This count includes only pods that have passed readiness checks. |
Optional: {} |
RuntimeComponentStatusCollection describes the status of all runtime components. It provides a unified view of master, worker, and client component states.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
master RuntimeComponentStatus |
Master is the observed state of the master component. | Optional: {} |
|
worker RuntimeComponentStatus |
Worker is the observed state of the worker component. | Optional: {} |
|
client RuntimeComponentStatus |
Client is the observed state of the client (FUSE) component. | Optional: {} |
Condition describes the state of the cache at a certain point.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
type RuntimeConditionType |
Type of cache condition. | ||
reason string |
The reason for the condition's last transition. | ||
message string |
A human readable message indicating details about the transition. | ||
lastProbeTime Time |
The last time this condition was updated. | ||
lastTransitionTime Time |
Last time the condition transitioned from one status to another. |
Underlying type: string
RuntimeConditionType indicates valid conditions type of a runtime
Appears in:
| Field | Description |
|---|---|
MasterInitialized |
RuntimeMasterInitialized means the master of runtime is initialized |
MasterReady |
RuntimeMasterReady means the master of runtime is ready |
WorkersInitialized |
RuntimeWorkersInitialized means the workers of runtime are initialized |
WorkersReady |
RuntimeWorkersReady means the workers of runtime are ready |
WorkersScaledIn |
RuntimeWorkerScaledIn means the workers of runtime just scaled in |
WorkersScaledOut |
RuntimeWorkerScaledIn means the workers of runtime just scaled out |
FusesInitialized |
RuntimeFusesInitialized means the fuses of runtime are initialized |
FusesReady |
RuntimeFusesReady means the fuses of runtime are ready |
FusesScaledIn |
RuntimeFusesScaledIn means the fuses of runtime just scaled in |
FusesScaledOut |
RuntimeFusesScaledOut means the fuses of runtime just scaled out |
RuntimeExtraResources defines the extra resources for CacheRuntime
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
configMaps ConfigMapRuntimeExtraResource array |
ConfigMaps is a list of ConfigMaps that will be created in the runtime's namespace. These ConfigMaps can be referenced and mounted by runtime components. |
Optional: {} |
RuntimeManagement defines suggestions for runtime controllers to manage the runtime
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
cleanCachePolicy CleanCachePolicy |
CleanCachePolicy defines the policy of cleaning cache when shutting down the runtime | Optional: {} |
|
metadataSyncPolicy MetadataSyncPolicy |
MetadataSyncPolicy defines the policy of syncing metadata when setting up the runtime. If not set, | Optional: {} |
Underlying type: string
Appears in:
| Field | Description |
|---|---|
| `` | |
NotReady |
|
PartialReady |
|
Ready |
RuntimeTieredStore describes the tiered storage configuration for cache runtime
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
levels RuntimeTieredStoreLevel array |
Levels is the list of cache storage tiers from highest priority to lowest. Each tier can use different storage media (e.g., memory, SSD, HDD). |
Optional: {} |
RuntimeTieredStoreLevel describes the configuration for a single tier in the tiered storage
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
medium MediumSource |
Medium describes the storage medium type for this tier. Supported types include process memory and various volume types. |
Optional: {} |
|
path string array |
Path is a list of file paths to be used for the cache tier. Multiple paths can be specified to distribute cache across different mount points. For example: ["/mnt/cache1", "/mnt/cache2"]. |
MinItems: 1 Optional: {} |
|
quota Quantity array |
Quota is a list of storage quotas for each path in the tier. The length of Quota should match the length of Path. Each quota corresponds to the path at the same index. For example: ["100Gi", "50Gi"] allocates 100GiB to the first path and 50GiB to the second path. |
Optional: {} |
|
high string |
High is the ratio of high watermark of the tier (e.g., "0.9"). When cache usage exceeds this ratio, eviction will be triggered. |
Optional: {} |
|
low string |
Low is the ratio of low watermark of the tier (e.g., "0.7"). Eviction will continue until cache usage falls below this ratio. |
Optional: {} |
RuntimeTopology defines the topology structure of CacheRuntime components
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
master RuntimeComponentDefinition |
Master is the configuration for master component | Optional: {} |
|
worker RuntimeComponentDefinition |
Worker is the configuration for worker component | Optional: {} |
|
client RuntimeComponentDefinition |
Client is the configuration for client component | Optional: {} |
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
image string |
Image (e.g. alluxio/alluxio) | ||
imageTag string |
Image tag (e.g. 2.3.0-SNAPSHOT) | ||
imagePullPolicy string |
One of the three policies: Always, IfNotPresent, Never |
||
restartPolicy RestartPolicy |
RestartPolicy specifies the processor job's restart policy. Only "Never", "OnFailure" is allowed. | Never | Enum: [Never OnFailure] Optional: {} |
command string array |
Entrypoint command for ScriptProcessor. | Optional: {} |
|
source string |
Script source for ScriptProcessor | Required: {} |
|
env EnvVar array |
List of environment variables to set in the container. | Optional: {} |
|
volumeMounts VolumeMount array |
Pod volumes to mount into the container's filesystem. | Optional: {} |
|
volumes Volume array |
List of volumes that can be mounted by containers belonging to the pod. | Optional: {} |
|
resources ResourceRequirements |
Resources that will be requested by the DataProcess job. |
Optional: {} |
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
name string |
The name of required secret | Required: {} |
|
key string |
The required key in the secret | Optional: {} |
TargetDataset defines the target dataset of the DataLoad
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
name string |
Name defines name of the target dataset | ||
namespace string |
Namespace defines namespace of the target dataset |
TargetDataset defines which dataset will be processed by DataProcess. Under the hood, the dataset's pvc will be mounted to the given mountPath of the DataProcess's containers.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
name string |
Name defines name of the target dataset | ||
namespace string |
Namespace defines namespace of the target dataset | ||
mountPath string |
MountPath defines where the Dataset should be mounted in DataProcess's containers. | Required: {} |
|
subPath string |
SubPath defines subpath of the target dataset to mount. | Optional: {} |
TargetPath defines the target path of the DataLoad
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
path string |
Path defines path to be load | ||
replicas integer |
Replicas defines how many replicas will be loaded |
ThinCompTemplateSpec is a description of the thinRuntime components
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
image string |
Image for thinRuntime fuse | ||
imageTag string |
Image for thinRuntime fuse | ||
imagePullPolicy string |
One of the three policies: Always, IfNotPresent, Never |
||
imagePullSecrets LocalObjectReference array |
ImagePullSecrets that will be used to pull images | Optional: {} |
|
replicas integer |
Replicas is the desired number of replicas of the given template. If unspecified, defaults to 1. replicas is the min replicas of dataset in the cluster |
Minimum: 1 Optional: {} |
|
ports ContainerPort array |
Ports used thinRuntime | Optional: {} |
|
resources ResourceRequirements |
Resources that will be requested by thinRuntime component. | Optional: {} |
|
env EnvVar array |
Environment variables that will be used by thinRuntime component. | ||
enabled boolean |
Enabled or Disabled for the components. | Optional: {} |
|
nodeSelector object (keys:string, values:string) |
NodeSelector is a selector | Optional: {} |
|
volumeMounts VolumeMount array |
VolumeMounts specifies the volumes listed in ".spec.volumes" to mount into runtime component's filesystem. | Optional: {} |
|
livenessProbe Probe |
livenessProbe of thin fuse pod | Optional: {} |
|
readinessProbe Probe |
readinessProbe of thin fuse pod | Optional: {} |
|
networkMode NetworkMode |
Whether to use hostnetwork or not | Enum: [HostNetwork ContainerNetwork] Optional: {} |
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
image string |
Image for thinRuntime fuse | ||
imageTag string |
Image for thinRuntime fuse | ||
imagePullPolicy string |
One of the three policies: Always, IfNotPresent, Never |
||
imagePullSecrets LocalObjectReference array |
ImagePullSecrets that will be used to pull images | Optional: {} |
|
ports ContainerPort array |
Ports used thinRuntime | Optional: {} |
|
env EnvVar array |
Environment variables that will be used by thinRuntime Fuse | ||
command string array |
Command that will be passed to thinRuntime Fuse | ||
args string array |
Arguments that will be passed to thinRuntime Fuse | ||
options object (keys:string, values:string) |
Options configurable options of FUSE client, performance parameters usually. will be merged with Dataset.spec.mounts.options into fuse pod. |
||
resources ResourceRequirements |
Resources that will be requested by thinRuntime Fuse. | ||
nodeSelector object (keys:string, values:string) |
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: {} |
|
cleanPolicy FuseCleanPolicy |
CleanPolicy decides when to clean thinRuntime Fuse pods. Currently Fluid supports two policies: OnDemand and OnRuntimeDeleted OnDemand cleans fuse pod once the fuse pod on some node is not needed OnRuntimeDeleted cleans fuse pod only when the cache runtime is deleted Defaults to OnDemand |
Optional: {} |
|
networkMode NetworkMode |
Whether to use hostnetwork or not | Enum: [HostNetwork ContainerNetwork] Optional: {} |
|
livenessProbe Probe |
livenessProbe of thin fuse pod | Optional: {} |
|
readinessProbe Probe |
readinessProbe of thin fuse pod | Optional: {} |
|
volumeMounts VolumeMount array |
VolumeMounts specifies the volumes listed in ".spec.volumes" to mount into the thinruntime component's filesystem. | Optional: {} |
|
lifecycle Lifecycle |
Lifecycle describes actions that the management system should take in response to container lifecycle events. | ||
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to ThinRuntime's FUSE pods. | Optional: {} |
ThinRuntime is the Schema for the thinruntimes API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersion string |
data.fluid.io/v1alpha1 |
||
kind string |
ThinRuntime |
||
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
||
spec ThinRuntimeSpec |
ThinRuntimeProfile is the Schema for the ThinRuntimeProfiles API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersion string |
data.fluid.io/v1alpha1 |
||
kind string |
ThinRuntimeProfile |
||
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
||
spec ThinRuntimeProfileSpec |
ThinRuntimeProfileSpec defines the desired state of ThinRuntimeProfile
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
fileSystemType string |
file system of thinRuntime | Required: {} |
|
imagePullSecrets LocalObjectReference array |
ImagePullSecrets that will be used to pull images | Optional: {} |
|
worker ThinCompTemplateSpec |
The component spec of worker | ||
fuse ThinFuseSpec |
The component spec of thinRuntime | ||
volumes Volume array |
Volumes is the list of Kubernetes volumes that can be mounted by runtime components and/or fuses. | Optional: {} |
|
nodePublishSecretPolicy NodePublishSecretPolicy |
NodePublishSecretPolicy describes the policy to decide which to do with node publish secret when mounting an existing persistent volume. | MountNodePublishSecretIfExists | Enum: [NotMountNodePublishSecret MountNodePublishSecretIfExists CopyNodePublishSecretAndMountIfNotExists] |
ThinRuntimeSpec defines the desired state of ThinRuntime
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
profileName string |
The specific runtime profile name, empty value is used for handling datasets which mount another dataset | ||
worker ThinCompTemplateSpec |
The component spec of worker | ||
fuse ThinFuseSpec |
The component spec of thinRuntime | ||
tieredstore TieredStore |
Tiered storage | ||
replicas integer |
The replicas of the worker, need to be specified | ||
runAs User |
Manage the user to run Runtime | ||
disablePrometheus boolean |
Disable monitoring for Runtime Prometheus is enabled by default |
Optional: {} |
|
volumes Volume array |
Volumes is the list of Kubernetes volumes that can be mounted by runtime components and/or fuses. | Optional: {} |
|
management RuntimeManagement |
RuntimeManagement defines policies when managing the runtime | Optional: {} |
|
imagePullSecrets LocalObjectReference array |
ImagePullSecrets that will be used to pull images | Optional: {} |
TieredStore is a description of the tiered store
Appears in:
- AlluxioRuntimeSpec
- EFCRuntimeSpec
- GooseFSRuntimeSpec
- JindoRuntimeSpec
- JuiceFSRuntimeSpec
- ThinRuntimeSpec
- VineyardRuntimeSpec
| Field | Description | Default | Validation |
|---|---|---|---|
levels Level array |
configurations for multiple tiers |
User explains the user and group to run a Container
Appears in:
- AlluxioRuntimeSpec
- DataBackupSpec
- DatasetSpec
- GooseFSRuntimeSpec
- JindoRuntimeSpec
- JuiceFSRuntimeSpec
- ThinRuntimeSpec
| Field | Description | Default | Validation |
|---|---|---|---|
uid integer |
The uid to run the alluxio runtime | ||
gid integer |
The gid to run the alluxio runtime | ||
user string |
The user name to run the alluxio runtime | ||
group string |
The group name to run the alluxio runtime |
VersionSpec represents the settings for the version that fluid is orchestrating.
Appears in:
- AlluxioRuntimeSpec
- CacheRuntimeClientSpec
- CacheRuntimeMasterSpec
- CacheRuntimeWorkerSpec
- DataMigrateSpec
- EFCCompTemplateSpec
- EFCFuseSpec
- GooseFSRuntimeSpec
- InitFuseSpec
- JindoRuntimeSpec
- JuiceFSRuntimeSpec
- RuntimeComponentCommonSpec
- ScriptProcessor
| Field | Description | Default | Validation |
|---|---|---|---|
image string |
Image (e.g. alluxio/alluxio) | ||
imageTag string |
Image tag (e.g. 2.3.0-SNAPSHOT) | ||
imagePullPolicy string |
One of the three policies: Always, IfNotPresent, Never |
VineyardClientSocketSpec holds the configurations for vineyard client socket
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
image string |
Image for Vineyard Fuse Default is registry.aliyuncs.com/vineyard/vineyard-fluid-fuse |
Optional: {} |
|
imageTag string |
Image Tag for Vineyard Fuse Default is v0.22.2 |
Optional: {} |
|
imagePullPolicy string |
Image pull policy for Vineyard Fuse Default is IfNotPresentAvailable values are Always, IfNotPresent, Never |
Optional: {} |
|
env object (keys:string, values:string) |
Environment variables that will be used by Vineyard Fuse. Default is not set. |
Optional: {} |
|
cleanPolicy FuseCleanPolicy |
CleanPolicy decides when to clean Vineyard Fuse pods. Currently Fluid supports two policies: OnDemand and OnRuntimeDeleted OnDemand cleans fuse pod once th fuse pod on some node is not needed OnRuntimeDeleted cleans fuse pod only when the cache runtime is deleted Defaults to OnRuntimeDeleted |
Optional: {} |
|
resources ResourceRequirements |
Resources contains the resource requirements and limits for the Vineyard Fuse. Default is not set. |
Optional: {} |
|
networkMode NetworkMode |
Whether to use hostnetwork or not Default is HostNetwork |
Enum: [HostNetwork ContainerNetwork] Optional: {} |
|
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to Vineyard's pods. | Optional: {} |
|
options object (keys:string, values:string) |
Options for configuring vineyardd parameters. Supported options are as follows. reserve_memory: (Bool) Whether to reserving enough physical memory pages for vineyardd. Default is true. allocator: (String) The allocator used by vineyardd, could be "dlmalloc" or "mimalloc". Default is "dlmalloc". compression: (Bool) Compress before migration or spilling. Default is true. coredump: (Bool) Enable coredump core dump when been aborted. Default is false. meta_timeout: (Int) Timeout period before waiting the metadata service to be ready, in seconds Default is 60. etcd_endpoint: (String) The endpoint of etcd. Default is same as the etcd endpoint of vineyard worker. etcd_prefix: (String) Metadata path prefix in etcd. Default is "/vineyard". size: (String) shared memory size for vineyardd. 1024M, 1024000, 1G, or 1Gi. Default is "0", which means no cache. When the size is not set to "0", it should be greater than the 2048 bytes(2K). spill_path: (String) Path to spill temporary files, if not set, spilling will be disabled. Default is "". spill_lower_rate: (Double) The lower rate of memory usage to trigger spilling. Default is 0.3. spill_upper_rate: (Double) The upper rate of memory usage to stop spilling. Default is 0.8. Default is as follows. fuse: options: size: "0" etcd_endpoint: "http://{{Name}}-master-0.{{Name}}-master.{{Namespace}}:{{EtcdClientPort}}" etcd_prefix: "/vineyard" |
Optional: {} |
VineyardCompTemplateSpec is the common configurations for vineyard components including Master and Worker.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
replicas integer |
The replicas of Vineyard component. If not specified, defaults to 1. For worker, the replicas should not be greater than the number of nodes in the cluster |
Minimum: 1 Optional: {} |
|
image string |
The image of Vineyard component. For Master, the default image is registry.aliyuncs.com/vineyard/vineyarddFor Worker, the default image is registry.aliyuncs.com/vineyard/vineyarddThe default container registry is docker.io, you can change it by setting the image field |
Optional: {} |
|
imageTag string |
The image tag of Vineyard component. For Master, the default image tag is v0.22.2.For Worker, the default image tag is v0.22.2. |
Optional: {} |
|
imagePullPolicy string |
The image pull policy of Vineyard component. Default is IfNotPresent. |
Optional: {} |
|
nodeSelector object (keys:string, values:string) |
NodeSelector is a selector to choose which nodes to launch the Vineyard component. E,g. {"disktype": "ssd"} |
Optional: {} |
|
ports object (keys:string, values:integer) |
Ports used by Vineyard component. For Master, the default client port is 2379 and peer port is 2380. For Worker, the default rpc port is 9600 and the default exporter port is 9144. |
Optional: {} |
|
env object (keys:string, values:string) |
Environment variables that will be used by Vineyard component. For Master, refer to Etcd Configuration for more info Default is not set. |
Optional: {} |
|
options object (keys:string, values:string) |
Configurable options for Vineyard component. For Master, there is no configurable options. For Worker, support the following options. vineyardd.reserve.memory: (Bool) where to reserve memory for vineyardd If set to true, the memory quota will be counted to the vineyardd rather than the application. etcd.prefix: (String) the prefix of etcd key for vineyard objects wait.etcd.timeout: (String) the timeout period before waiting the etcd to be ready, in seconds Default value is as follows. vineyardd.reserve.memory: "true" etcd.prefix: "/vineyard" wait.etcd.timeout: "120" |
Optional: {} |
|
resources ResourceRequirements |
Resources contains the resource requirements and limits for the Vineyard component. Default is not set. For Worker, when the options contains vineyardd.reserve.memory=true, the resources.request.memory for worker should be greater than tieredstore.levels[0].quota(aka vineyardd shared memory) |
Optional: {} |
|
volumeMounts VolumeMount array |
VolumeMounts specifies the volumes listed in ".spec.volumes" to mount into the vineyard runtime component's filesystem. It is useful for specifying a persistent storage. Default is not set. |
Optional: {} |
|
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to Vineyard's pods including Master and Worker. Default is not set. |
Optional: {} |
|
networkMode NetworkMode |
Whether to use hostnetwork or not Default is HostNetwork |
Enum: [HostNetwork ContainerNetwork] Optional: {} |
VineyardRuntime is the Schema for the VineyardRuntimes API
| Field | Description | Default | Validation |
|---|---|---|---|
apiVersion string |
data.fluid.io/v1alpha1 |
||
kind string |
VineyardRuntime |
||
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata. |
||
spec VineyardRuntimeSpec |
VineyardRuntimeSpec defines the desired state of VineyardRuntime
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
master MasterSpec |
Master holds the configurations for Vineyard Master component Represents the Etcd component in Vineyard |
Optional: {} |
|
worker VineyardCompTemplateSpec |
Worker holds the configurations for Vineyard Worker component Represents the Vineyardd component in Vineyard |
Optional: {} |
|
replicas integer |
The replicas of the worker, need to be specified If worker.replicas and the field are both specified, the field will be respected |
||
fuse VineyardClientSocketSpec |
Fuse holds the configurations for Vineyard client socket. Note that the "Fuse" here is kept just for API consistency, VineyardRuntime mount a socket file instead of a FUSE filesystem to make data cache available. Applications can connect to the vineyard runtime components through IPC or RPC. IPC is the default way to connect to vineyard runtime components, which is more efficient than RPC. If the socket file is not mounted, the connection will fall back to RPC. |
Optional: {} |
|
tieredstore TieredStore |
Tiered storage used by vineyardd The MediumType can only be MEM and SSDMEM actually represents the shared memory of vineyardd.SSD represents the external storage of vineyardd.Default is as follows. tieredstore: levels: - level: 0 mediumtype: MEM quota: 4Gi Choose hostpath as the external storage of vineyardd. tieredstore: levels: - level: 0 mediumtype: MEM quota: 4Gi high: "0.8" low: "0.3" - level: 1 mediumtype: SSD quota: 10Gi volumeType: Hostpath path: /var/spill-path |
Optional: {} |
|
disablePrometheus boolean |
Disable monitoring metrics for Vineyard Runtime Default is false |
Optional: {} |
|
podMetadata PodMetadata |
PodMetadata defines labels and annotations that will be propagated to Vineyard's pods. | Optional: {} |
|
volumes Volume array |
Volumes is the list of Kubernetes volumes that can be mounted by the vineyard components (Master and Worker). Default is null. |
Optional: {} |
VolumeMediumSource describes a Kubernetes volume as a storage medium. Only one of its members may be specified.
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
hostPath HostPathVolumeSource |
HostPath represents a pre-existing file or directory on the host machine that is directly exposed to the container. More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath |
Optional: {} |
|
emptyDir EmptyDirVolumeSource |
EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
Optional: {} |
|
ephemeral EphemeralVolumeSource |
Ephemeral represents a volume that is handled by a cluster storage driver. The volume's lifecycle is tied to the pod that defines it. More info: https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/ |
Optional: {} |
Appears in:
| Field | Description | Default | Validation |
|---|---|---|---|
operationComplete boolean |
OperationComplete indicates if the preceding operation is complete |