API Reference#

Packages#

  • k8s.v6d.io/v1alpha1

k8s.v6d.io/v1alpha1#

Package v1alpha1 contains API Schema definitions for the k8s v1alpha1 API group

Resource Types#

Backup#

Backup describes a backup operation of vineyard objects, which uses the Kubernetes PersistentVolume to store the backup data. Every backup operation will be binded with the name of Backup.

Appears in:

Field

Description

apiVersion string

k8s.v6d.io/v1alpha1

kind string

Backup

metadata ObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

spec BackupSpec

BackupList#

BackupList contains a list of Backup

Field

Description

apiVersion string

k8s.v6d.io/v1alpha1

kind string

BackupList

metadata ListMeta

Refer to Kubernetes API documentation for fields of metadata.

items Backup array

BackupSpec#

BackupSpec defines the desired state of Backup

Appears in:

Field

Description

vineyarddName string

the name of the vineyard cluster

vineyarddNamespace string

the namespace of the vineyard cluster

objecIDs string array

the specific objects to be backed up if not specified, all objects will be backed up

backupPath string

the path of backup data

persistentVolumeSpec PersistentVolumeSpec

the PersistentVolumeSpec of the backup data

persistentVolumeClaimSpec PersistentVolumeClaimSpec

the PersistentVolumeClaimSpec of the backup data

CSIDriver#

CSIDriver is the Schema for the csidrivers API

Appears in:

Field

Description

apiVersion string

k8s.v6d.io/v1alpha1

kind string

CSIDriver

metadata ObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

spec CSIDriverSpec

CSIDriverList#

CSIDriverList contains a list of CSIDriver

Field

Description

apiVersion string

k8s.v6d.io/v1alpha1

kind string

CSIDriverList

metadata ListMeta

Refer to Kubernetes API documentation for fields of metadata.

items CSIDriver array

CSIDriverSpec#

CSIDriverSpec defines the desired state of CSIDriver

Appears in:

Field

Description

image string

Image is the name of the csi driver image

imagePullPolicy string

ImagePullPolicy is the image pull policy of the csi driver

storageClassName string

StorageClassName is the name of the storage class

volumeBindingMode string

VolumeBindingMode is the volume binding mode of the storage class

sidecar CSISidecar

Sidecar is the configuration for the CSI sidecar container nolint: lll

clusters VineyardClusters array

Clusters are the list of vineyard clusters

enableToleration boolean

EnableToleration is the flag to enable toleration for the csi driver

enableVerboseLog boolean

EnableVerboseLog is the flag to enable verbose log for the csi driver

CSISidecar#

CSISidecar holds the configuration for the CSI sidecar container

Appears in:

Field

Description

provisionerImage string

ProvisionerImage is the image of the provisioner sidecar

attacherImage string

AttacherImage is the image of the attacher sidecar

nodeRegistrarImage string

NodeRegistrarImage is the image of the node registrar sidecar

livenessProbeImage string

LivenessProbeImage is the image of the liveness probe sidecar

imagePullPolicy string

ImagePullPolicy is the image pull policy of all sidecar containers

enableTopology boolean

EnableTopology is the flag to enable topology for the csi driver

GlobalObject#

GlobalObject describes a global object in vineyard, whose metadata will be stored in etcd.

Appears in:

Field

Description

apiVersion string

k8s.v6d.io/v1alpha1

kind string

GlobalObject

metadata ObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

spec GlobalObjectSpec

GlobalObjectList#

GlobalObjectList contains a list of GlobalObject

Field

Description

apiVersion string

k8s.v6d.io/v1alpha1

kind string

GlobalObjectList

metadata ListMeta

Refer to Kubernetes API documentation for fields of metadata.

items GlobalObject array

GlobalObjectSpec#

GlobalObjectSpec defines the desired state of GlobalObject

Appears in:

Field

Description

id string

name string

signature string

typename string

members string array

metadata string

Refer to Kubernetes API documentation for fields of metadata.

LocalObject#

LocalObject describes a local object in vineyard, whose metadata will only be stored in local vineyard.

Appears in:

Field

Description

apiVersion string

k8s.v6d.io/v1alpha1

kind string

LocalObject

metadata ObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

spec LocalObjectSpec

LocalObjectList#

LocalObjectList contains a list of LocalObject

Field

Description

apiVersion string

k8s.v6d.io/v1alpha1

kind string

LocalObjectList

metadata ListMeta

Refer to Kubernetes API documentation for fields of metadata.

items LocalObject array

LocalObjectSpec#

LocalObjectSpec defines the desired state of LocalObject

Appears in:

Field

Description

id string

name string

signature string

typename string

instance_id integer

hostname string

metadata string

Refer to Kubernetes API documentation for fields of metadata.

MetricConfig#

MetricConfig holds the configuration about metric container

Appears in:

Field

Description

enable boolean

Enable metrics

image string

represent the metric’s image

imagePullPolicy string

the policy about pulling image

Operation#

Operation describes an operation between workloads, such as assembly and repartition. As for the assembly operation, there are several kinds of computing engines, some may not support the stream data, so we need to insert an assembly operation to assemble the stream data into a batch data, so that the next computing engines can process the data. As for the repartition operation, the vineyard has integrated with the distributed computing engines, such as Dask. If you want to repartition the data to adapt the dask workers, then the repartition operation is essential for such scenario.

Appears in:

Field

Description

apiVersion string

k8s.v6d.io/v1alpha1

kind string

Operation

metadata ObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

spec OperationSpec

OperationList#

OperationList contains a list of Operation

Field

Description

apiVersion string

k8s.v6d.io/v1alpha1

kind string

OperationList

metadata ListMeta

Refer to Kubernetes API documentation for fields of metadata.

items Operation array

OperationSpec#

OperationSpec defines the desired state of Operation

Appears in:

Field

Description

name string

the name of vineyard pluggable drivers, including assembly and repartition.

type string

the type of object, including local and distributed.

require string

the required job’s name of the operation

target string

the target job’s name of the operation

timeoutSeconds integer

TimeoutSeconds is the timeout of the operation.

PluginImageConfig#

PluginImageConfig holds all image configuration about pluggable drivers(backup, recover, local assembly, distributed assembly, repartition)

Appears in:

Field

Description

backupImage string

the image of backup operation

recoverImage string

the image of recover operation

daskRepartitionImage string

the image of dask repartition operation

localAssemblyImage string

the image of local assembly operation

distributedAssemblyImage string

the image of distributed assembly operation

Recover#

Recover describes a recover operation of vineyard objects, which is used to recover a specific backup operation.

Appears in:

Field

Description

apiVersion string

k8s.v6d.io/v1alpha1

kind string

Recover

metadata ObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

spec RecoverSpec

RecoverList#

RecoverList contains a list of Recover

Field

Description

apiVersion string

k8s.v6d.io/v1alpha1

kind string

RecoverList

metadata ListMeta

Refer to Kubernetes API documentation for fields of metadata.

items Recover array

RecoverSpec#

RecoverSpec defines the desired state of Recover

Appears in:

Field

Description

backupName string

the name of backup

backupNamespace string

the namespace of backup

ServiceConfig#

ServiceConfig holds all service configuration about vineyardd

Appears in:

Field

Description

type string

service type

port integer

service port

Sidecar#

Sidecar is used for configuring and managing the vineyard sidecar container.

Appears in:

Field

Description

apiVersion string

k8s.v6d.io/v1alpha1

kind string

Sidecar

metadata ObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

spec SidecarSpec

SidecarList#

SidecarList contains a list of Sidecar

Field

Description

apiVersion string

k8s.v6d.io/v1alpha1

kind string

SidecarList

metadata ListMeta

Refer to Kubernetes API documentation for fields of metadata.

items Sidecar array

SidecarSpec#

SidecarSpec defines the desired state of Sidecar

Appears in:

Field

Description

selector string

the selector of pod

replicas integer

the replicas of workload

etcdReplicas integer

EtcdReplicas describe the etcd replicas

vineyard VineyardConfig

vineyard container configuration nolint: lll

metric MetricConfig

metric container configuration

volume VolumeConfig

metric configurations

service ServiceConfig

rpc service configuration

securityContext SecurityContext

SecurityContext holds the security context settings for the vineyardd container.

volumes Volume array

Volumes is the list of Kubernetes volumes that can be mounted by the vineyard container.

volumeMounts VolumeMount array

VolumeMounts specifies the volumes listed in “.spec.volumes” to mount into the vineyard container.

SpillConfig#

SpillConfig holds all configuration about spilling

Appears in:

Field

Description

name string

the name of the spill config

path string

the path of spilling

spillLowerRate string

low watermark of spilling memory

spillUpperRate string

high watermark of triggering spilling

persistentVolumeSpec PersistentVolumeSpec

the PersistentVolumeSpec of the spilling PV

persistentVolumeClaimSpec PersistentVolumeClaimSpec

the PersistentVolumeClaimSpec of the spill file

VineyardClusters#

VineyardClusters contains the list of vineyard clusters

Appears in:

Field

Description

namespace string

Namespace is the namespace of the vineyard cluster

name string

Name is the name of the vineyard deployment

VineyardConfig#

VineyardConfig holds all configuration about vineyard container

Appears in:

Field

Description

image string

represent the vineyardd’s image

imagePullPolicy string

the policy about pulling image

syncCRDs boolean

synchronize CRDs when persisting objects

socket string

The directory on host for the IPC socket file. The UNIX-domain socket will be placed as ${Socket}/vineyard.sock.

size string

shared memory size for vineyardd

reserveMemory boolean

reserve the shared memory for vineyardd

streamThreshold integer

memory threshold of streams (percentage of total memory)

spill SpillConfig

the configuration of spilling

env EnvVar array

vineyard environment configuration

memory string

the memory resources of vineyard container

cpu string

the cpu resources of vineyard container

Vineyardd#

Vineyardd is used to deploy a vineyard cluster on kubernetes, which can simplify the configurations of the vineyard binary, the external etcd cluster and the vineyard Deployment. As vineyard is bound to a specific socket on the hostpath by default, the vineyard pod cannot be deployed on the same node. Before deploying vineyardd, you should know how many nodes are available for vineyard pod to deploy on and make sure the vineyardd pod number is less than the number of available nodes.

Appears in:

Field

Description

apiVersion string

k8s.v6d.io/v1alpha1

kind string

Vineyardd

metadata ObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

spec VineyarddSpec

VineyarddList#

VineyarddList contains a list of Vineyardd

Field

Description

apiVersion string

k8s.v6d.io/v1alpha1

kind string

VineyarddList

metadata ListMeta

Refer to Kubernetes API documentation for fields of metadata.

items Vineyardd array

VineyarddSpec#

VineyarddSpec holds all configuration about vineyardd

Appears in:

Field

Description

replicas integer

Replicas is the number of vineyardd pods to deploy

etcdReplicas integer

EtcdReplicas describe the etcd replicas

service ServiceConfig

vineyardd’s service

vineyard VineyardConfig

vineyard container configuration nolint: lll

pluginImage PluginImageConfig

operation container configuration nolint: lll

metric MetricConfig

metric container configuration

volume VolumeConfig

Volume configuration

securityContext SecurityContext

SecurityContext holds the security context settings for the vineyardd container.

volumes Volume array

Volumes is the list of Kubernetes volumes that can be mounted by the vineyard deployment.

volumeMounts VolumeMount array

VolumeMounts specifies the volumes listed in “.spec.volumes” to mount into the vineyard deployment.

VolumeConfig#

VolumeConfig holds all configuration about persistent volume

Appears in:

Field

Description

pvcName string

the name of pvc

mountPath string

the mount path of pv