elasticsearch.k8s.elastic.co/v1
ECK
Package v1 contains API schema definitions for managing Elasticsearch resources.
Auth contains user authentication and authorization security settings for Elasticsearch.
Field | Description |
---|---|
roles RoleSource array |
Roles to propagate to the Elasticsearch cluster. |
fileRealm FileRealmSource array |
FileRealm to propagate to the Elasticsearch cluster. |
disableElasticUser boolean |
DisableElasticUser disables the default elastic user that is created by ECK. |
ChangeBudget defines the constraints to consider when applying changes to the Elasticsearch cluster.
Field | Description |
---|---|
maxUnavailable integer |
MaxUnavailable is the maximum number of Pods that can be unavailable (not ready) during the update due to circumstances under the control of the operator. Setting a negative value will disable this restriction. Defaults to 1 if not specified. |
maxSurge integer |
MaxSurge is the maximum number of new Pods that can be created exceeding the original number of Pods defined in the specification. MaxSurge is only taken into consideration when scaling up. Setting a negative value will disable the restriction. Defaults to unbounded if not specified. |
DownscaleOperation provides details about in progress downscale operations. This API is in technical preview and may be changed or removed in a future release.
Field | Description |
---|---|
lastUpdatedTime Time |
|
nodes DownscaledNode array |
Nodes which are scheduled to be removed from the cluster. |
stalled boolean |
Stalled represents a state where no progress can be made. It is only available for clusters managed with the Elasticsearch shutdown API. |
DownscaledNode provides an overview of in progress changes applied by the operator to remove Elasticsearch nodes from the cluster. This API is in technical preview and may be changed or removed in a future release.
Field | Description |
---|---|
name string |
Name of the Elasticsearch node that should be removed. |
shutdownStatus string |
Shutdown status as returned by the Elasticsearch shutdown API. If the Elasticsearch shutdown API is not available, the shutdown status is then inferred from the remaining shards on the nodes, as observed by the operator. |
explanation string |
Explanation provides details about an in progress node shutdown. It is only available for clusters managed with the Elasticsearch shutdown API. |
Elasticsearch represents an Elasticsearch resource in a Kubernetes cluster.
Field | Description |
---|---|
apiVersion string |
elasticsearch.k8s.elastic.co/v1 |
kind string |
Elasticsearch |
metadata ObjectMeta |
Refer to Kubernetes API documentation for fields of metadata . |
spec ElasticsearchSpec |
|
status ElasticsearchStatus |
ElasticsearchHealth is the health of the cluster as returned by the health API.
ElasticsearchOrchestrationPhase is the phase Elasticsearch is in from the controller point of view.
ElasticsearchSpec holds the specification of an Elasticsearch cluster.
Field | Description |
---|---|
version string |
Version of Elasticsearch. |
image string |
Image is the Elasticsearch Docker image to deploy. |
remoteClusterServer RemoteClusterServer |
RemoteClusterServer specifies if the remote cluster server should be enabled. This must be enabled if this cluster is a remote cluster which is expected to be accessed using API key authentication. |
http HTTPConfig |
HTTP holds HTTP layer settings for Elasticsearch. |
transport TransportConfig |
Transport holds transport layer settings for Elasticsearch. |
nodeSets NodeSet array |
NodeSets allow specifying groups of Elasticsearch nodes sharing the same configuration and Pod templates. |
updateStrategy UpdateStrategy |
UpdateStrategy specifies how updates to the cluster should be performed. |
podDisruptionBudget PodDisruptionBudgetTemplate |
PodDisruptionBudget provides access to the default Pod disruption budget for the Elasticsearch cluster. The default budget doesn’t allow any Pod to be removed in case the cluster is not green or if there is only one node of type data or master . In all other cases the default PodDisruptionBudget sets minUnavailable equal to the total number of nodes minus 1. To disable, set PodDisruptionBudget to the empty value ({} in YAML). |
auth Auth |
Auth contains user authentication and authorization security settings for Elasticsearch. |
secureSettings SecretSource array |
SecureSettings is a list of references to Kubernetes secrets containing sensitive configuration options for Elasticsearch. |
serviceAccountName string |
ServiceAccountName is used to check access from the current resource to a resource (for ex. a remote Elasticsearch cluster) in a different namespace. Can only be used if ECK is enforcing RBAC on references. |
remoteClusters RemoteCluster array |
RemoteClusters enables you to establish uni-directional connections to a remote Elasticsearch cluster. |
volumeClaimDeletePolicy VolumeClaimDeletePolicy |
VolumeClaimDeletePolicy sets the policy for handling deletion of PersistentVolumeClaims for all NodeSets. Possible values are DeleteOnScaledownOnly and DeleteOnScaledownAndClusterDeletion. Defaults to DeleteOnScaledownAndClusterDeletion. |
monitoring Monitoring |
Monitoring enables you to collect and ship log and monitoring data of this Elasticsearch cluster. See docs-content://deploy-manage/monitor.md. Metricbeat and Filebeat are deployed in the same Pod as sidecars and each one sends data to one or two different Elasticsearch monitoring clusters running in the same Kubernetes cluster. |
revisionHistoryLimit integer |
RevisionHistoryLimit is the number of revisions to retain to allow rollback in the underlying StatefulSets. |
ElasticsearchStatus represents the observed state of Elasticsearch.
Field | Description |
---|---|
availableNodes integer |
AvailableNodes is the number of available instances. |
version string |
Version of the stack resource currently running. During version upgrades, multiple versions may run in parallel: this value specifies the lowest version currently running. |
health ElasticsearchHealth |
|
phase ElasticsearchOrchestrationPhase |
|
conditions Conditions |
Conditions holds the current service state of an Elasticsearch cluster. This API is in technical preview and may be changed or removed in a future release. |
inProgressOperations InProgressOperations |
InProgressOperations represents changes being applied by the operator to the Elasticsearch cluster. This API is in technical preview and may be changed or removed in a future release. |
observedGeneration integer |
ObservedGeneration is the most recent generation observed for this Elasticsearch cluster. It corresponds to the metadata generation, which is updated on mutation by the API Server. If the generation observed in status diverges from the generation in metadata, the Elasticsearch controller has not yet processed the changes contained in the Elasticsearch specification. |
Field | Description |
---|---|
grant string array |
|
except string array |
FileRealmSource references users to create in the Elasticsearch cluster.
Field | Description |
---|---|
secretName string |
SecretName is the name of the secret. |
InProgressOperations provides details about in progress changes applied by the operator on the Elasticsearch cluster. This API is in technical preview and may be changed or removed in a future release.
Field | Description |
---|---|
downscale DownscaleOperation |
|
upgrade UpgradeOperation |
|
upscale UpscaleOperation |
Field | Description |
---|---|
name string |
Name of the Elasticsearch node that should be added to the cluster. |
status NewNodeStatus |
NewNodeStatus states if a new node is being created, or if the upscale is delayed. |
message string |
Optional message to explain why a node may not be immediately added. |
NewNodeStatus provides details about the status of nodes which are expected to be created and added to the Elasticsearch cluster. This API is in technical preview and may be changed or removed in a future release.
NodeSet is the specification for a group of Elasticsearch nodes sharing the same configuration and a Pod template.
Field | Description |
---|---|
name string |
Name of this set of nodes. Becomes a part of the Elasticsearch node.name setting. |
config Config |
Config holds the Elasticsearch configuration. |
count integer |
Count of Elasticsearch nodes to deploy. If the node set is managed by an autoscaling policy the initial value is automatically set by the autoscaling controller. |
podTemplate PodTemplateSpec |
PodTemplate provides customisation options (labels, annotations, affinity rules, resource requests, and so on) for the Pods belonging to this NodeSet. |
volumeClaimTemplates PersistentVolumeClaim array |
VolumeClaimTemplates is a list of persistent volume claims to be used by each Pod in this NodeSet. Every claim in this list must have a matching volumeMount in one of the containers defined in the PodTemplate. Items defined here take precedence over any default claims added by the operator with the same name. |
RemoteCluster declares a remote Elasticsearch cluster connection.
Field | Description |
---|---|
name string |
Name is the name of the remote cluster as it is set in the Elasticsearch settings. The name is expected to be unique for each remote clusters. |
elasticsearchRef LocalObjectSelector |
ElasticsearchRef is a reference to an Elasticsearch cluster running within the same k8s cluster. |
apiKey RemoteClusterAPIKey |
APIKey can be used to enable remote cluster access using Cross-Cluster API keys: https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-security-create-cross-cluster-api-key |
RemoteClusterAPIKey defines a remote cluster API Key.
Field | Description |
---|---|
access RemoteClusterAccess |
Access is the name of the API Key. It is automatically generated if not set or empty. |
RemoteClusterAccess models the API key specification as documented in https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-security-create-cross-cluster-api-key
Field | Description |
---|---|
search Search |
|
replication Replication |
Field | Description |
---|---|
enabled boolean |
Field | Description |
---|---|
names string array |
RoleSource references roles to create in the Elasticsearch cluster.
Field | Description |
---|---|
secretName string |
SecretName is the name of the secret. |
Field | Description |
---|---|
names string array |
|
field_security FieldSecurity |
|
query Config |
|
allow_restricted_indices boolean |
SelfSignedTransportCertificates holds configuration for the self-signed certificates generated by the operator.
Field | Description |
---|---|
disabled boolean |
Disabled indicates that provisioning of the self-signed certificates should be disabled. |
TransportConfig holds the transport layer settings for Elasticsearch.
Field | Description |
---|---|
service ServiceTemplate |
Service defines the template for the associated Kubernetes Service object. |
tls TransportTLSOptions |
TLS defines options for configuring TLS on the transport layer. |
Field | Description |
---|---|
otherNameSuffix string |
OtherNameSuffix when defined will be prefixed with the Pod name and used as the common name, and the first DNSName, as well as an OtherName required by Elasticsearch in the Subject Alternative Name extension of each Elasticsearch node’s transport TLS certificate. Example: if set to "node.cluster.local", the generated certificate will have its otherName set to "<pod_name>.node.cluster.local". |
subjectAltNames SubjectAlternativeName array |
SubjectAlternativeNames is a list of SANs to include in the generated node transport TLS certificates. |
certificate SecretRef |
Certificate is a reference to a Kubernetes secret that contains the CA certificate and private key for generating node certificates. The referenced secret should contain the following: * ca.crt : The CA certificate in PEM format.* ca.key : The private key for the CA certificate in PEM format. |
certificateAuthorities ConfigMapRef |
CertificateAuthorities is a reference to a config map that contains one or more x509 certificates for trusted authorities in PEM format. The certificates need to be in a file called ca.crt . |
selfSignedCertificates SelfSignedTransportCertificates |
SelfSignedCertificates allows configuring the self-signed certificate generated by the operator. |
UpdateStrategy specifies how updates to the cluster should be performed.
Field | Description |
---|---|
changeBudget ChangeBudget |
ChangeBudget defines the constraints to consider when applying changes to the Elasticsearch cluster. |
UpgradeOperation provides an overview of the pending or in progress changes applied by the operator to update the Elasticsearch nodes in the cluster. This API is in technical preview and may be changed or removed in a future release.
Field | Description |
---|---|
lastUpdatedTime Time |
|
nodes UpgradedNode array |
Nodes that must be restarted for upgrade. |
UpgradedNode provides details about the status of nodes which are expected to be updated. This API is in technical preview and may be changed or removed in a future release.
Field | Description |
---|---|
name string |
Name of the Elasticsearch node that should be upgraded. |
status string |
Status states if the node is either in the process of being deleted for an upgrade, or blocked by a predicate or another condition stated in the message field. |
message string |
Optional message to explain why a node may not be immediately restarted for upgrade. |
predicate string |
Predicate is the name of the predicate currently preventing this node from being deleted for an upgrade. |
UpscaleOperation provides an overview of in progress changes applied by the operator to add Elasticsearch nodes to the cluster. This API is in technical preview and may be changed or removed in a future release.
Field | Description |
---|---|
lastUpdatedTime Time |
|
nodes NewNode array |
Nodes expected to be added by the operator. |
VolumeClaimDeletePolicy describes the delete policy for handling PersistentVolumeClaims that hold Elasticsearch data. Inspired by https://github.com/kubernetes/enhancements/pull/2440