common.k8s.elastic.co/v1

edit

Package v1 contains API schema definitions for common types used by all resources.

ConfigMapRef

edit

ConfigMapRef is a reference to a config map that exists in the same namespace as the referring resource.

Field Description

configMapName string

ConfigSource

edit

ConfigSource references configuration settings.

Field Description

SecretRef SecretRef

SecretName references a Kubernetes Secret in the same namespace as the resource that will consume it. Examples: --- # Filebeat configuration kind: Secret apiVersion: v1 metadata: name: filebeat-user-config stringData: beat.yml:

  • filebeat.inputs: - type: container paths: - /var/log/containers/*.log processors: - add_kubernetes_metadata: node: ${NODE_NAME} matchers: - logs_path: logs_path: "/var/log/containers/" processors: - add_cloud_metadata: {} - add_host_metadata: {} --- # EnterpriseSearch configuration kind: Secret apiVersion: v1 metadata: name: smtp-credentials stringData: enterprise-search.yml:
  • email.account.enabled: true email.account.smtp.auth: plain email.account.smtp.starttls.enable: false email.account.smtp.host: 127.0.0.1 email.account.smtp.port: 25 email.account.smtp.user: myuser email.account.smtp.password: mypassword email.account.email_defaults.from: [email protected] ---

HTTPConfig

edit

HTTPConfig holds the HTTP layer configuration for resources.

Field Description

service ServiceTemplate

Service defines the template for the associated Kubernetes Service object.

tls TLSOptions

TLS defines options for configuring TLS for HTTP.

KeyToPath

edit

KeyToPath defines how to map a key in a Secret object to a filesystem path.

Field Description

key string

Key is the key contained in the secret.

path string

Path is the relative file path to map the key to. Path must not be an absolute file path and must not contain any ".." components.

LocalObjectSelector

edit

LocalObjectSelector defines a reference to a Kubernetes object corresponding to an Elastic resource managed by the operator

Field Description

namespace string

Namespace of the Kubernetes object. If empty, defaults to the current namespace.

name string

Name of an existing Kubernetes object corresponding to an Elastic resource managed by ECK.

serviceName string

ServiceName is the name of an existing Kubernetes service which is used to make requests to the referenced object. It has to be in the same namespace as the referenced resource. If left empty, the default HTTP service of the referenced resource is used.

LogsMonitoring

edit

LogsMonitoring holds a list of Elasticsearch clusters which receive logs data from associated resources.

Field Description

elasticsearchRefs ObjectSelector array

ElasticsearchRefs is a reference to a list of monitoring Elasticsearch clusters running in the same Kubernetes cluster. Due to existing limitations, only a single Elasticsearch cluster is currently supported.

MetricsMonitoring

edit

MetricsMonitoring holds a list of Elasticsearch clusters which receive monitoring data from associated resources.

Field Description

elasticsearchRefs ObjectSelector array

ElasticsearchRefs is a reference to a list of monitoring Elasticsearch clusters running in the same Kubernetes cluster. Due to existing limitations, only a single Elasticsearch cluster is currently supported.

Monitoring

edit

Monitoring holds references to both the metrics, and logs Elasticsearch clusters for configuring stack monitoring.

Field Description

metrics MetricsMonitoring

Metrics holds references to Elasticsearch clusters which receive monitoring data from this resource.

logs LogsMonitoring

Logs holds references to Elasticsearch clusters which receive log data from an associated resource.

ObjectSelector

edit

ObjectSelector defines a reference to a Kubernetes object which can be an Elastic resource managed by the operator or a Secret describing an external Elastic resource not managed by the operator.

Field Description

namespace string

Namespace of the Kubernetes object. If empty, defaults to the current namespace.

name string

Name of an existing Kubernetes object corresponding to an Elastic resource managed by ECK.

serviceName string

ServiceName is the name of an existing Kubernetes service which is used to make requests to the referenced object. It has to be in the same namespace as the referenced resource. If left empty, the default HTTP service of the referenced resource is used.

secretName string

SecretName is the name of an existing Kubernetes secret that contains connection information for associating an Elastic resource not managed by the operator. The referenced secret must contain the following: - url: the URL to reach the Elastic resource - username: the username of the user to be authenticated to the Elastic resource - password: the password of the user to be authenticated to the Elastic resource - ca.crt: the CA certificate in PEM format (optional). This field cannot be used in combination with the other fields name, namespace or serviceName.

PodDisruptionBudgetTemplate

edit

PodDisruptionBudgetTemplate defines the template for creating a PodDisruptionBudget.

Field Description

metadata ObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

spec PodDisruptionBudgetSpec

Spec is the specification of the PDB.

SecretRef

edit

SecretRef is a reference to a secret that exists in the same namespace.

Field Description

secretName string

SecretName is the name of the secret.

SecretSource

edit

SecretSource defines a data source based on a Kubernetes Secret.

Field Description

secretName string

SecretName is the name of the secret.

entries KeyToPath array

Entries define how to project each key-value pair in the secret to filesystem paths. If not defined, all keys will be projected to similarly named paths in the filesystem. If defined, only the specified keys will be projected to the corresponding paths.

SelfSignedCertificate

edit

SelfSignedCertificate holds configuration for the self-signed certificate generated by the operator.

Field Description

subjectAltNames SubjectAlternativeName array

SubjectAlternativeNames is a list of SANs to include in the generated HTTP TLS certificate.

disabled boolean

Disabled indicates that the provisioning of the self-signed certifcate should be disabled.

ServiceTemplate

edit

ServiceTemplate defines the template for a Kubernetes Service.

Field Description

metadata ObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

spec ServiceSpec

Spec is the specification of the service.

SubjectAlternativeName

edit

SubjectAlternativeName represents a SAN entry in a x509 certificate.

Field Description

dns string

DNS is the DNS name of the subject.

ip string

IP is the IP address of the subject.

TLSOptions

edit

TLSOptions holds TLS configuration options.

Field Description

selfSignedCertificate SelfSignedCertificate

SelfSignedCertificate allows configuring the self-signed certificate generated by the operator.

certificate SecretRef

Certificate is a reference to a Kubernetes secret that contains the certificate and private key for enabling TLS. The referenced secret should contain the following: - ca.crt: The certificate authority (optional). - tls.crt: The certificate (or a chain). - tls.key: The private key to the first certificate in the certificate chain.