Connect to external Elastic resources
editConnect to external Elastic resources
editFields like elasticsearchRef
or kibanaRef
are useful to automatically establish connections between applications managed by the same ECK operator instance. It is however also possible to connect to applications managed by a different ECK operator instance, or to applications not managed by ECK, for example an Elastic Cloud deployment. This can be done by providing connection details and credentials in a Secret
through the secretName
attribute:
apiVersion: v1 kind: Secret metadata: name: external-es-ref stringData: url: https://sample.gcp.elastic-cloud.com username: "elastic" password: REDACTED --- apiVersion: kibana.k8s.elastic.co/v1 kind: Kibana metadata: name: kibana-sample spec: version: 8.14.0 count: 1 elasticsearchRef: secretName: external-es-ref
In the case of Elastic Agent you can also specify several named references:
apiVersion: v1 kind: Secret metadata: name: external-es-ref stringData: url: https://abcd-42.xyz.elastic-cloud.com:443 username: "" password: "" api-key: REDACTED ca.crt: REDACTED --- apiVersion: v1 kind: Secret metadata: name: external-es-ref2 stringData: url: https://efgh-43.xyz.elastic-cloud.com:443 username: "" password: "" api-key: REDACTED ca.crt: REDACTED --- apiVersion: agent.k8s.elastic.co/v1alpha1 kind: Agent metadata: name: quickstart spec: version: 8.17.0 elasticsearchRefs: - outputName: default secretName: external-es-ref - outputName: monitoring secretName: external-es-ref2
The following fields are expected to be set in the referenced Secret
:
-
url
(required): URL to be used to access the external resource. -
username
(required): The username of the user to be authenticated to the Elastic resource. -
password
(required): The password for the provided user. -
ca.crt
(optional): The certificate authority to be used to connect to the external resource.
In the case of Agent and Beats resources the following field can also be used to connect to Elasticsearch:
-
api-key
: An API key to authenticate against the Elastic resource.
The operator must be able to connect to the external resources to check version compatibility.