Packages:

- disaggregated.metaservice.doris.com/v1

## disaggregated.metaservice.doris.com/v1

Package v1 is the v1 version of the API.

Resource Types:

- DorisDisaggregatedMetaService

### DorisDisaggregatedMetaService

DorisDisaggregatedMetaService is the Schema for the DorisDisaggregatedMetaServices API

Field | Description
--- | ---
`apiVersion` string | `disaggregated.metaservice.doris.com/v1`
`kind` string | `DorisDisaggregatedMetaService`
`metadata` Kubernetes meta/v1.ObjectMeta | Refer to the Kubernetes API documentation for the fields of the `metadata` field.
`spec` DorisDisaggregatedMetaServiceSpec |
`fdb` FoundationDB | describe the fdb spec, most configurations are already build-in.
`ms` MetaService | the specification of metaservice, metaservice is the component of doris disaggregated cluster.
`recycler` Recycler | the specification of recycler, recycler is the component of doris disaggregated cluster.
`status` DorisDisaggregatedMetaServiceStatus |

### AvailableStatus (`string` alias)

(Appears on:BaseStatus, FDBStatus)

Value | Description
--- | ---
"Available" | Available represents the service is available.
"UnAvailable" | UnAvailable represents the service not available for using.

### BaseSpec

(Appears on:MetaService, Recycler)

Field | Description
--- | ---
`image` string | Image is the metaservice docker image to deploy. the image can pull from dockerhub selectdb repository.
`serviceAccount` string |
`imagePullSecrets` []Kubernetes core/v1.LocalObjectReference | (Optional) 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. If specified, these secrets will be passed to individual puller implementations for them to use. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod
`ResourceRequirements` Kubernetes core/v1.ResourceRequirements | (Members of `ResourceRequirements` are embedded into this type.) defines the specification of resource cpu and mem. ep: {“requests”:{“cpu”: 4, “memory”: “8Gi”},“limits”:{“cpu”:4,“memory”:“8Gi”}}
`annotations` map[string]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.
`service` ExportService | (Optional) export metaservice for accessing from outside k8s.
`affinity` Kubernetes core/v1.Affinity | (Optional) Affinity is a group of affinity scheduling rules.
`tolerations` []Kubernetes core/v1.Toleration | (Optional) (Optional) Tolerations for scheduling pods onto some dedicated nodes
`configMaps` []ConfigMap | ConfigMaps describe all configmaps that need to be mounted.
`nodeSelector` map[string]string | (Optional) (Optional) If specified, the pod’s nodeSelector，displayName=“Map of nodeSelectors to match when scheduling pods on nodes”
`envVars` []Kubernetes core/v1.EnvVar | (Optional) EnvVars is a slice of environment variables that are added to the pods, the default is empty.
`labels` map[string]string | (Optional) Labels for user selector or classify pods
`hostAliases` []Kubernetes core/v1.HostAlias | (Optional) HostAliases is an optional list of hosts and IPs that will be injected into the pod’s hosts file if specified. This is only valid for non-hostNetwork pods.
`persistentVolume` PersistentVolume |
`securityContext` Kubernetes core/v1.PodSecurityContext | (Optional) Security context for pod.
`containerSecurityContext` Kubernetes core/v1.SecurityContext | (Optional) Security context for all containers running in the pod (unless they override it).

### BaseStatus

(Appears on:DorisDisaggregatedMetaServiceStatus)

Field | Description
--- | ---
`phase` MetaServicePhase | Phase represent the stage of reconciling.
`availableStatus` AvailableStatus | AvailableStatus represents the metaservice available or not.

### ComponentType (`string` alias)

Value | Description
--- | ---
"fdb" |
"metaservice" |
"recycler" |

### ConfigMap

(Appears on:BaseSpec)

Field | Description
--- | ---
`name` string | Name specify the configmap in deployed namespace that need to be mounted in pod.
`mountPath` string | MountPath specify the position of configmap be mounted.

### DorisDisaggregatedMetaServiceSpec

(Appears on:DorisDisaggregatedMetaService)

describe the meta specification of disaggregated cluster

Field | Description
--- | ---
`fdb` FoundationDB | describe the fdb spec, most configurations are already build-in.
`ms` MetaService | the specification of metaservice, metaservice is the component of doris disaggregated cluster.
`recycler` Recycler | the specification of recycler, recycler is the component of doris disaggregated cluster.

### DorisDisaggregatedMetaServiceStatus

(Appears on:DorisDisaggregatedMetaService)

Field | Description
--- | ---
`fdbStatus` FDBStatus | describe the fdb status information: contains access address, fdb available or not, etc…
`msStatus` BaseStatus | describe the ms status.
`recyclerStatus` BaseStatus | descirbe the recycler status.

### ExportService

(Appears on:BaseSpec)

Field | Description
--- | ---
`type` Kubernetes core/v1.ServiceType | (Optional) type of service,the possible value for the service type are : ClusterIP, NodePort, LoadBalancer,ExternalName. More info: https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types
`portMaps` []PortMap | PortMaps specify node port for target port in pod, when the service type=NodePort.
`annotations` map[string]string | Annotations for using function on different cloud platform.
`loadBalancerIP` string | (Optional) Only applies to Service Type: LoadBalancer. This feature depends on whether the underlying cloud-provider supports specifying the loadBalancerIP when a load balancer is created. This field will be ignored if the cloud-provider does not support the feature. This field was under-specified and its meaning varies across implementations, and it cannot support dual-stack. As of Kubernetes v1.24, users are encouraged to use implementation-specific annotations when available. This field may be removed in a future API version.

### FDBStatus

(Appears on:DorisDisaggregatedMetaServiceStatus)

Field | Description
--- | ---
`FDBAddress` string | FDBAddress describe the address for fdbclient using.
`fdbResourceName` string | FDBResourceName specify the name of the kind `FoundationDBCluster` resource.
`availableStatus` AvailableStatus | AvailableStatus represents the fdb available or not.

### FoundationDB

(Appears on:DorisDisaggregatedMetaServiceSpec)

Field | Description
--- | ---
`image` string | Image is the fdb docker image to deploy. please reference the selectdb repository to find. usually no need config, operator will use default image.
`sidecarImage` string | SidecarImage is the fdb sidecar image to deploy. pelease reference the selectdb repository to find.
`imagePullSecrets` []Kubernetes core/v1.LocalObjectReference | (Optional) 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. If specified, these secrets will be passed to individual puller implementations for them to use. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod
`ResourceRequirements` Kubernetes core/v1.ResourceRequirements | (Members of `ResourceRequirements` are embedded into this type.) defines the specification of resource cpu and mem. ep: {“requests”:{“cpu”: 4, “memory”: “8Gi”},“limits”:{“cpu”:4,“memory”:“8Gi”}} usually not need config, operator will set default {“requests”: {“cpu”: 4, “memory”: “8Gi”}, “limits”: {“cpu”: 4, “memory”: “8Gi”}}
`volumeClaimTemplate` Kubernetes core/v1.PersistentVolumeClaim | VolumeClaimTemplate allows customizing the persistent volume claim for the pod.
`labels` map[string]string | Labels for organize and categorize objects
`annotations` map[string]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.
`nodeSelector` map[string]string | (Optional) (Optional) If specified, the pod’s nodeSelector，displayName=“Map of nodeSelectors to match when scheduling pods on nodes”
`affinity` Kubernetes core/v1.Affinity | (Optional) Affinity is a group of affinity scheduling rules.
`tolerations` []Kubernetes core/v1.Toleration | (Optional) (Optional) Tolerations for scheduling pods onto some dedicated nodes

### MetaService

(Appears on:DorisDisaggregatedMetaServiceSpec)

Field | Description
--- | ---
`BaseSpec` BaseSpec | (Members of `BaseSpec` are embedded into this type.) the foundation spec for creating cn software services. BaseSpec `json:"baseSpec,omitempty"`

### MetaServicePhase (`string` alias)

(Appears on:BaseStatus)

Value | Description
--- | ---
"Creating" | Creating represents service in creating stage.
"Failed" | Failed represents service failed to start, can’t be accessed.
"Ready" | Ready represents the service is ready for accepting requests.
"Upgrading" | Upgrading represents the spec of the service changed, service in smoothing upgrade.

### PersistentVolume

(Appears on:BaseSpec)

PersistentVolume defines volume information and container mount information.

Field | Description
--- | ---
`persistentVolumeClaimSpec` Kubernetes core/v1.PersistentVolumeClaimSpec | PersistentVolumeClaimSpec is a list of claim spec about storage that pods are required.
`annotations` map[string]string | Annotation for PVC pods. Users can adapt the storage authentication and pv binding of the cloud platform through configuration. It only takes effect in the first configuration and cannot be added or modified later.

### PortMap

(Appears on:ExportService)

PortMap for ServiceType=NodePort situation.

Field | Description
--- | ---
`nodePort` int32 | (Optional) The port on each node on which this service is exposed when type is NodePort or LoadBalancer. Usually assigned by the system. If a value is specified, in-range, and not in use it will be used, otherwise the operation will fail. If not specified, a port will be allocated if this Service requires one. If this field is specified when creating a Service which does not need it, creation will fail. This field will be wiped when updating a Service to no longer need it (e.g. changing type from NodePort to ClusterIP). More info: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport need in 30000-32767
`targetPort` int32 | (Optional) Number or name of the port to access on the pods targeted by the service. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. If this is a string, it will be looked up as a named port in the target Pod’s container ports. If this is not specified, the value of the ‘port’ field is used (an identity map). This field is ignored for services with clusterIP=None, and should be omitted or set equal to the ‘port’ field. More info: https://kubernetes.io/docs/concepts/services-networking/service/#defining-a-service

### Recycler

(Appears on:DorisDisaggregatedMetaServiceSpec)

Field | Description
--- | ---
`BaseSpec` BaseSpec | (Members of `BaseSpec` are embedded into this type.) the foundation spec for creating cn software services. BaseSpec `json:"baseSpec,omitempty"`

### ServiceRole (`string` alias)

Value | Description
--- | ---
"access" |

Generated with `gen-crd-api-reference-docs` on git commit `7d8fdc8`.