diff --git a/deploy-manage/deploy/cloud-on-k8s/_snippets/kib-config.md b/deploy-manage/deploy/cloud-on-k8s/_snippets/kib-config.md index fb6209c224..3e26002d8a 100644 --- a/deploy-manage/deploy/cloud-on-k8s/_snippets/kib-config.md +++ b/deploy-manage/deploy/cloud-on-k8s/_snippets/kib-config.md @@ -2,13 +2,13 @@ You can add your own {{kib}} settings to the `spec.config` section. The following example demonstrates how to set the [`elasticsearch.requestHeadersWhitelist`](kibana://reference/configuration-reference/general-settings.md#elasticsearch-requestheaderswhitelist) configuration option. -```yaml +```yaml subs=true apiVersion: kibana.k8s.elastic.co/v1 kind: Kibana metadata: name: kibana-sample spec: - version: 8.16.1 + version: {{version.stack}} count: 1 elasticsearchRef: name: "elasticsearch-sample" diff --git a/deploy-manage/deploy/cloud-on-k8s/accessing-services.md b/deploy-manage/deploy/cloud-on-k8s/accessing-services.md index ff01de6304..1facb638e4 100644 --- a/deploy-manage/deploy/cloud-on-k8s/accessing-services.md +++ b/deploy-manage/deploy/cloud-on-k8s/accessing-services.md @@ -71,13 +71,13 @@ By default, the {{es}} service created by ECK is configured to route traffic to When you change the `clusterIP` setting of the service, ECK will delete and re-create the service as `clusterIP` is an immutable field. Depending on your client implementation, this might result in a short disruption until the service DNS entries refresh to point to the new endpoints. :::: -```yaml +```yaml subs=true apiVersion: .k8s.elastic.co/v1 kind: metadata: name: hulk spec: - version: 8.16.1 + version: {{version.stack}} http: service: spec: diff --git a/deploy-manage/deploy/cloud-on-k8s/advanced-configuration-logstash.md b/deploy-manage/deploy/cloud-on-k8s/advanced-configuration-logstash.md index 8ad7e854bd..25867ab287 100644 --- a/deploy-manage/deploy/cloud-on-k8s/advanced-configuration-logstash.md +++ b/deploy-manage/deploy/cloud-on-k8s/advanced-configuration-logstash.md @@ -41,7 +41,7 @@ You can specify sensitive settings with Kubernetes secrets. ECK automatically in The Logstash Keystore can be password protected by setting an environment variable called `LOGSTASH_KEYSTORE_PASS`. Check out [Logstash Keystore](logstash://reference/keystore.md#keystore-password) documentation for details. -```yaml +```yaml subs=true apiVersion: v1 kind: Secret metadata: @@ -54,7 +54,7 @@ kind: Logstash metadata: name: logstash-sample spec: - version: 8.16.1 + version: {{version.stack}} count: 1 pipelines: - pipeline.id: main diff --git a/deploy-manage/deploy/cloud-on-k8s/advanced-configuration-maps-server.md b/deploy-manage/deploy/cloud-on-k8s/advanced-configuration-maps-server.md index 9e8cf703e7..f3ca527a92 100644 --- a/deploy-manage/deploy/cloud-on-k8s/advanced-configuration-maps-server.md +++ b/deploy-manage/deploy/cloud-on-k8s/advanced-configuration-maps-server.md @@ -27,13 +27,13 @@ You can add any valid Elastic Maps Server setting as documented on the [product] The following example demonstrates how to set the log level to `debug`: -```yaml +```yaml subs=true apiVersion: maps.k8s.elastic.co/v1alpha1 kind: ElasticMapsServer metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} count: 1 config: logging.level: debug @@ -41,13 +41,13 @@ spec: Alternatively, settings can be provided through a Secret specified in the `configRef` element: -```yaml +```yaml subs=true apiVersion: maps.k8s.elastic.co/v1alpha1 kind: ElasticMapsServer metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} configRef: secretName: maps-config --- diff --git a/deploy-manage/deploy/cloud-on-k8s/advanced-configuration.md b/deploy-manage/deploy/cloud-on-k8s/advanced-configuration.md index 08ce1a92f1..241a73fb2e 100644 --- a/deploy-manage/deploy/cloud-on-k8s/advanced-configuration.md +++ b/deploy-manage/deploy/cloud-on-k8s/advanced-configuration.md @@ -25,7 +25,7 @@ APM Agent central configuration was added in 7.5.1. [APM Agent configuration management](/solutions/observability/apm/apm-agent-central-configuration.md) allows you to configure your APM Agents centrally from the {{kib}} APM app. To use this feature, the APM Server needs to be configured with connection details of the {{kib}} instance. If {{kib}} is managed by ECK, you can simply add a `kibanaRef` attribute to the APM Server specification: -```yaml +```yaml subs=true cat < + version: {{version.stack}} + # image: docker.elastic.co/elasticsearch/elasticsearch:{{version.stack}} // <1> nodeSets: - name: default count: 1 @@ -44,18 +44,30 @@ ECK will automatically set the correct container image for each application. Whe To deploy the ECK operator in an air-gapped environment, you first have to mirror the operator image itself from `docker.elastic.co` to a private container registry, for example `my.registry`. -Once the ECK operator image is copied internally, replace the original image name `docker.elastic.co/eck/eck-operator:{{version.eck}}` with the private name of the image, for example `my.registry/eck/eck-operator:{{version.eck}}`, in the [operator manifests](../../../deploy-manage/deploy/cloud-on-k8s/install-using-yaml-manifest-quickstart.md). When using [Helm charts](../../../deploy-manage/deploy/cloud-on-k8s/install-using-helm-chart.md), replace the `image.repository` Helm value with, for example, `my.registry/eck/eck-operator`. +Once the ECK operator image is copied internally, replace the original image name with the private name of the image in the [operator manifests](../../../deploy-manage/deploy/cloud-on-k8s/install-using-yaml-manifest-quickstart.md). For example: + +Before: +```text subs=true +docker.elastic.co/eck/eck-operator:{{version.eck}} +``` + +After: +```text subs=true +my.registry/eck/eck-operator:{{version.eck}} +``` + +When using [Helm charts](../../../deploy-manage/deploy/cloud-on-k8s/install-using-helm-chart.md), replace the `image.repository` Helm value with, for example, `my.registry/eck/eck-operator`. ## Override the default container registry [k8s-container-registry-override] When creating custom resources ({{eck_resources_list}}), the operator defaults to using container images pulled from the `docker.elastic.co` registry. If you are in an environment where external network access is restricted, you can configure the operator to use a different default container registry by starting the operator with the `--container-registry` command-line flag. Check [*Configure ECK*](../../../deploy-manage/deploy/cloud-on-k8s/configure-eck.md) for more information on how to configure the operator using command-line flags and environment variables. -The operator expects container images to be located at specific repositories in the default container registry. Make sure that your container images are stored in the right repositories and are tagged correctly with the Stack version number. For example, if your private registry is `my.registry` and you wish to deploy components from Stack version 8.16.1, the following image names should exist: +The operator expects container images to be located at specific repositories in the default container registry. Make sure that your container images are stored in the right repositories and are tagged correctly with the Stack version number. For example, if your private registry is `my.registry` and you wish to deploy components from Stack version {{version.stack}}, the following image names should exist: -* `my.registry/elasticsearch/elasticsearch:8.16.1` -* `my.registry/kibana/kibana:8.16.1` -* `my.registry/apm/apm-server:8.16.1` +* my.registry/elasticsearch/elasticsearch:{{version.stack}} +* my.registry/kibana/kibana:{{version.stack}} +* my.registry/apm/apm-server:{{version.stack}} ## Use a global container repository [k8s-container-repository-override] @@ -64,9 +76,9 @@ If you cannot follow the default Elastic image repositories naming scheme, you c For example, if your private registry is `my.registry` and all Elastic images are located under the `elastic` repository, the following image names should exist: -* `my.registry/elastic/elasticsearch:8.16.1` -* `my.registry/elastic/kibana:8.16.1` -* `my.registry/elastic/apm-server:8.16.1` +* my.registry/elastic/elasticsearch:{{version.stack}} +* my.registry/elastic/kibana:{{version.stack}} +* my.registry/elastic/apm-server:{{version.stack}} ## ECK Diagnostics in air-gapped environments [k8s-eck-diag-air-gapped] diff --git a/deploy-manage/deploy/cloud-on-k8s/configuration-beats.md b/deploy-manage/deploy/cloud-on-k8s/configuration-beats.md index 9fbd8b794b..0c4043a801 100644 --- a/deploy-manage/deploy/cloud-on-k8s/configuration-beats.md +++ b/deploy-manage/deploy/cloud-on-k8s/configuration-beats.md @@ -19,14 +19,14 @@ You can upgrade the Beat version or change settings by editing the YAML specific The Beat configuration is defined in the `config` element: -```yaml +```yaml subs=true apiVersion: beat.k8s.elastic.co/v1beta1 kind: Beat metadata: name: quickstart spec: type: heartbeat - version: 8.16.1 + version: {{version.stack}} elasticsearchRef: name: quickstart config: @@ -44,14 +44,14 @@ spec: Alternatively, it can be provided through a Secret specified in the `configRef` element: -```yaml +```yaml subs=true apiVersion: beat.k8s.elastic.co/v1beta1 kind: Beat metadata: name: heartbeat-quickstart spec: type: heartbeat - version: 8.16.1 + version: {{version.stack}} elasticsearchRef: name: quickstart configRef: diff --git a/deploy-manage/deploy/cloud-on-k8s/configuration-fleet.md b/deploy-manage/deploy/cloud-on-k8s/configuration-fleet.md index 12b299c114..dfe1e0e3de 100644 --- a/deploy-manage/deploy/cloud-on-k8s/configuration-fleet.md +++ b/deploy-manage/deploy/cloud-on-k8s/configuration-fleet.md @@ -175,13 +175,13 @@ Depending on the use case, {{agent}} may need to be deployed as a [Deployment](h Similarly, you can set the [update strategy](https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/) when deploying as a DaemonSet. This allows you to control the rollout speed for new configuration by modifying the `maxUnavailable` setting: -```yaml +```yaml subs=true apiVersion: agent.k8s.elastic.co/v1alpha1 kind: Agent metadata: name: elastic-agent-sample spec: - version: 8.16.1 + version: {{version.stack}} daemonSet: strategy: type: RollingUpdate @@ -197,13 +197,13 @@ Refer to [Set compute resources for Beats and Elastic Agent](manage-compute-reso Some {{agent}} features, such as the [{{k8s}} integration](https://epr.elastic.co/package/kubernetes/0.2.8/), require that Agent Pods interact with {{k8s}} APIs. This functionality requires specific permissions. Standard {{k8s}} [RBAC](https://kubernetes.io/docs/reference/access-authn-authz/rbac/) rules apply. For example, to allow API interactions: -```yaml +```yaml subs=true apiVersion: agent.k8s.elastic.co/v1alpha1 kind: Agent metadata: name: elastic-agent-sample spec: - version: 8.16.1 + version: {{version.stack}} elasticsearchRefs: - name: elasticsearch-sample daemonSet: diff --git a/deploy-manage/deploy/cloud-on-k8s/configuration-logstash.md b/deploy-manage/deploy/cloud-on-k8s/configuration-logstash.md index 665fa3b5ee..b5c3a7eea2 100644 --- a/deploy-manage/deploy/cloud-on-k8s/configuration-logstash.md +++ b/deploy-manage/deploy/cloud-on-k8s/configuration-logstash.md @@ -19,13 +19,13 @@ You can upgrade the Logstash version or change settings by editing the YAML spec Define the Logstash configuration (the ECK equivalent to `logstash.yml`) in the `spec.config` section: -```yaml +```yaml subs=true apiVersion: logstash.k8s.elastic.co/v1alpha1 kind: Logstash metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} count: 1 elasticsearchRefs: - name: quickstart @@ -40,13 +40,13 @@ spec: Alternatively, you can provide the configuration through a Secret specified in the `spec.configRef` section. The Secret must have a `logstash.yml` entry with your settings: -```yaml +```yaml subs=true apiVersion: logstash.k8s.elastic.co/v1alpha1 kind: Logstash metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} count: 1 elasticsearchRefs: - name: quickstart @@ -69,13 +69,13 @@ stringData: Define Logstash pipelines in the `spec.pipelines` section (the ECK equivalent to `pipelines.yml`): -```yaml +```yaml subs=true apiVersion: logstash.k8s.elastic.co/v1alpha1 kind: Logstash metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} count: 1 elasticsearchRefs: - clusterName: qs @@ -100,13 +100,13 @@ spec: Alternatively, you can provide the pipelines configuration through a Secret specified in the `spec.pipelinesRef` field. The Secret must have a `pipelines.yml` entry with your configuration: -```yaml +```yaml subs=true apiVersion: logstash.k8s.elastic.co/v1alpha1 kind: Logstash metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} count: 1 elasticsearchRefs: - clusterName: qs @@ -139,13 +139,13 @@ stringData: Logstash on ECK supports all options present in `pipelines.yml`, including settings to update the number of workers, and the size of the batch that the pipeline will process. This also includes using `path.config` to point to volumes mounted on the Logstash container: -```yaml +```yaml subs=true apiVersion: logstash.k8s.elastic.co/v1alpha1 kind: Logstash metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} count: 1 elasticsearchRefs: - clusterName: qs @@ -432,13 +432,13 @@ where NORMALIZED_CLUSTERNAME is the value taken from the `clusterName` field of This example demonstrates how to create a Logstash deployment that connects to different {{es}} instances, one of which is in a separate namespace: -```yaml +```yaml subs=true apiVersion: logstash.k8s.elastic.co/v1alpha1 kind: Logstash metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} count: 1 elasticsearchRefs: <1> - clusterName: prod-es <2> @@ -481,7 +481,7 @@ spec: Logstash can connect to external {{es}} cluster that is not managed by ECK. You can reference a Secret instead of an {{es}} cluster in the `elasticsearchRefs` section through the `secretName` attribute: -```yaml +```yaml subs=true apiVersion: v1 kind: Secret metadata: @@ -497,7 +497,7 @@ kind: Logstash metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} count: 1 elasticsearchRefs: - clusterName: prod-es @@ -561,13 +561,13 @@ You can [customize the {{ls}} Pod](customize-pods.md) using a Pod template, defi This example demonstrates how to create a {{ls}} deployment with increased heap size and resource limits. -```yaml +```yaml subs=true apiVersion: logstash.k8s.elastic.co/v1alpha1 kind: Logstash metadata: name: logstash-sample spec: - version: 8.16.1 + version: {{version.stack}} count: 1 elasticsearchRefs: - name: "elasticsearch-sample" diff --git a/deploy-manage/deploy/cloud-on-k8s/configuration-standalone.md b/deploy-manage/deploy/cloud-on-k8s/configuration-standalone.md index e03d961434..cd50a59307 100644 --- a/deploy-manage/deploy/cloud-on-k8s/configuration-standalone.md +++ b/deploy-manage/deploy/cloud-on-k8s/configuration-standalone.md @@ -19,13 +19,13 @@ You can upgrade the Elastic Agent version or change settings by editing the YAML The Elastic Agent configuration is defined in the `config` element: -```yaml +```yaml subs=true apiVersion: agent.k8s.elastic.co/v1alpha1 kind: Agent metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} elasticsearchRefs: - name: quickstart daemonSet: @@ -63,13 +63,13 @@ spec: Alternatively, it can be provided through a Secret specified in the `configRef` element. The Secret must have an `agent.yml` entry with this configuration: -```yaml +```yaml subs=true apiVersion: agent.k8s.elastic.co/v1alpha1 kind: Agent metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} elasticsearchRefs: - name: quickstart daemonSet: @@ -119,13 +119,13 @@ Elastic Agent supports the use of multiple outputs. Therefore, the `elasticsearc To send Elastic Agent’s internal monitoring and log data to a different {{es}} cluster called `agent-monitoring` in the `elastic-monitoring` namespace, and the harvested metrics to our `quickstart` cluster, you have to define two `elasticsearchRefs` as shown in the following example: -```yaml +```yaml subs=true apiVersion: agent.k8s.elastic.co/v1alpha1 kind: Agent metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} daemonSet: podTemplate: spec: @@ -164,13 +164,13 @@ If the `elasticsearchRefs` element is specified, ECK populates the outputs secti The outputs can also be set manually. To do that, remove the `elasticsearchRefs` element from the specification and include an appropriate output configuration in the `config`, or indirectly through the `configRef` mechanism. -```yaml +```yaml subs=true apiVersion: agent.k8s.elastic.co/v1alpha1 kind: Agent metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} daemonSet: podTemplate: spec: @@ -194,13 +194,13 @@ Depending on the use case, Elastic Agent may need to be deployed as a [Deploymen Similarly, you can set the [update strategy](https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/) when deploying as a DaemonSet. This allows you to control the rollout speed for new configuration by modifying the `maxUnavailable` setting: -```yaml +```yaml subs=true apiVersion: agent.k8s.elastic.co/v1alpha1 kind: Agent metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} daemonSet: podTemplate: spec: @@ -220,13 +220,13 @@ Check [Set compute resources for Beats and Elastic Agent](manage-compute-resourc Some Elastic Agent features, such as the [Kubernetes integration](https://epr.elastic.co/package/kubernetes/0.2.8/), require that Agent Pods interact with Kubernetes APIs. This functionality requires specific permissions. The standard Kubernetes [RBAC](https://kubernetes.io/docs/reference/access-authn-authz/rbac/) rules apply. For example, to allow API interactions: -```yaml +```yaml subs=true apiVersion: agent.k8s.elastic.co/v1alpha1 kind: Agent metadata: name: elastic-agent spec: - version: 8.16.1 + version: {{version.stack}} elasticsearchRefs: - name: elasticsearch daemonSet: diff --git a/deploy-manage/deploy/cloud-on-k8s/connect-to-external-elastic-resources.md b/deploy-manage/deploy/cloud-on-k8s/connect-to-external-elastic-resources.md index 313a93ae4c..8d1908ea9d 100644 --- a/deploy-manage/deploy/cloud-on-k8s/connect-to-external-elastic-resources.md +++ b/deploy-manage/deploy/cloud-on-k8s/connect-to-external-elastic-resources.md @@ -35,7 +35,7 @@ spec: In the case of Elastic Agent you can also specify several named references: -```yaml +```yaml subs=true apiVersion: v1 kind: Secret metadata: @@ -52,7 +52,7 @@ kind: Agent metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} elasticsearchRefs: - outputName: default secretName: external-es-ref diff --git a/deploy-manage/deploy/cloud-on-k8s/create-custom-images.md b/deploy-manage/deploy/cloud-on-k8s/create-custom-images.md index 02a6b553aa..f86e903618 100644 --- a/deploy-manage/deploy/cloud-on-k8s/create-custom-images.md +++ b/deploy-manage/deploy/cloud-on-k8s/create-custom-images.md @@ -10,35 +10,35 @@ products: # Create custom images [k8s-custom-images] -You can create your own custom application images ({{eck_resources_list}}) instead of using the base images provided by Elastic. You might want to do this to have a canonical image with all the necessary plugins pre-loaded rather than [installing them through an init container](init-containers-for-plugin-downloads.md) each time a Pod starts. You must use the official image as the base for custom images. For example, if you want to create an {{es}} 8.16.1 image with the [ICU Analysis Plugin](elasticsearch://reference/elasticsearch-plugins/analysis-icu.md), you can do the following: +You can create your own custom application images ({{eck_resources_list}}) instead of using the base images provided by Elastic. You might want to do this to have a canonical image with all the necessary plugins pre-loaded rather than [installing them through an init container](init-containers-for-plugin-downloads.md) each time a Pod starts. You must use the official image as the base for custom images. For example, if you want to create an {{es}} {{version.stack}} image with the [ICU Analysis Plugin](elasticsearch://reference/elasticsearch-plugins/analysis-icu.md), you can do the following: 1. Create a `Dockerfile` containing: - ``` - FROM docker.elastic.co/elasticsearch/elasticsearch:8.16.1 + ```sh subs=true + FROM docker.elastic.co/elasticsearch/elasticsearch:{{version.stack}} RUN bin/elasticsearch-plugin install --batch analysis-icu ``` 2. Build the image with: - ``` - docker build --tag elasticsearch-icu:8.16.1 + ```sh subs=true + docker build --tag elasticsearch-icu:{{version.stack}} ``` There are various hosting options for your images. If you use Google Kubernetes Engine, it is automatically configured to use the Google Container Registry. Check [Using Container Registry with Google Cloud](https://cloud.google.com/container-registry/docs/using-with-google-cloud-platform#google-kubernetes-engine) for more information. To use the image, you can then [push to the registry](https://cloud.google.com/container-registry/docs/pushing-and-pulling#pushing_an_image_to_a_registry) with: -``` -docker tag elasticsearch-icu:8.16.1 gcr.io/$PROJECT-ID/elasticsearch-icu:8.16.1 -docker push gcr.io/$PROJECT-ID/elasticsearch-icu:8.16.1 +```sh subs=true +docker tag elasticsearch-icu:{{version.stack}} gcr.io/$PROJECT-ID/elasticsearch-icu:{{version.stack}} +docker push gcr.io/$PROJECT-ID/elasticsearch-icu:{{version.stack}} ``` Configure your {{es}} specification to use the newly pushed image, for example: -```yaml +```yaml subs=true spec: - version: 8.16.1 - image: gcr.io/$PROJECT-ID/elasticsearch-icu:8.16.1 + version: {{version.stack}} + image: gcr.io/$PROJECT-ID/elasticsearch-icu:{{version.stack}} ``` ::::{note} diff --git a/deploy-manage/deploy/cloud-on-k8s/customize-pods.md b/deploy-manage/deploy/cloud-on-k8s/customize-pods.md index f06621ce38..0830f857df 100644 --- a/deploy-manage/deploy/cloud-on-k8s/customize-pods.md +++ b/deploy-manage/deploy/cloud-on-k8s/customize-pods.md @@ -14,13 +14,13 @@ You can customize the Pods created for each {{stack}} application by modifying t The following example illustrates how to add a custom label, annotation, and an environment variable using the `podTemplate` field. -```yaml +```yaml subs=true apiVersion: elasticsearch.k8s.elastic.co/v1 kind: Elasticsearch metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} nodeSets: - name: default count: 1 @@ -38,13 +38,13 @@ spec: value: "-Xms4g -Xmx4g" ``` -```yaml +```yaml subs=true apiVersion: kibana.k8s.elastic.co/v1 kind: Kibana metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} count: 1 podTemplate: metadata: @@ -67,13 +67,13 @@ Configuration for other {{stack}} applications, like APM Server, or Beats, is id The following example shows how it’s also possible to customize the init containers created as part of the Pods to initialize the filesystem or to manage the keystores. -```yaml +```yaml subs=true apiVersion: elasticsearch.k8s.elastic.co/v1 kind: Elasticsearch metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} nodeSets: - name: default count: 3 diff --git a/deploy-manage/deploy/cloud-on-k8s/deploy-eck-on-gke-autopilot.md b/deploy-manage/deploy/cloud-on-k8s/deploy-eck-on-gke-autopilot.md index 7f365f98bc..3f02e5ec4e 100644 --- a/deploy-manage/deploy/cloud-on-k8s/deploy-eck-on-gke-autopilot.md +++ b/deploy-manage/deploy/cloud-on-k8s/deploy-eck-on-gke-autopilot.md @@ -37,14 +37,14 @@ Refer to [*Install ECK*](install.md) for more information on installation option Create an {{es}} cluster. If you are using the `Daemonset` described in the [Virtual memory](virtual-memory.md) section to set `max_map_count` you can add the `initContainer` below is also used to ensure the setting is set prior to starting {{es}}. -```shell +```shell subs=true cat < selfSignedCertificate: @@ -134,13 +134,13 @@ There are [known issues with init containers](https://istio.io/docs/setup/additi To install plugins using an init container, use a manifest similar to the following: -```yaml +```yaml subs=true apiVersion: elasticsearch.k8s.elastic.co/v1 kind: Elasticsearch metadata: name: elastic-istio spec: - version: 8.16.1 + version: {{version.stack}} http: tls: selfSignedCertificate: @@ -173,13 +173,13 @@ spec: ### {{kib}} [k8s-service-mesh-istio-kibana] -```yaml +```yaml subs=true apiVersion: kibana.k8s.elastic.co/v1 kind: Kibana metadata: name: elastic-istio spec: - version: 8.16.1 + version: {{version.stack}} count: 1 elasticsearchRef: name: elastic-istio @@ -199,13 +199,13 @@ spec: ### APM Server [k8s-service-mesh-istio-apm] -```yaml +```yaml subs=true apiVersion: apm.k8s.elastic.co/v1 kind: ApmServer metadata: name: elastic-istio spec: - version: 8.16.1 + version: {{version.stack}} count: 1 elasticsearchRef: name: elastic-istio diff --git a/deploy-manage/deploy/cloud-on-k8s/k8s-service-mesh-linkerd.md b/deploy-manage/deploy/cloud-on-k8s/k8s-service-mesh-linkerd.md index 4d2f38f3ae..4aacde5d50 100644 --- a/deploy-manage/deploy/cloud-on-k8s/k8s-service-mesh-linkerd.md +++ b/deploy-manage/deploy/cloud-on-k8s/k8s-service-mesh-linkerd.md @@ -58,13 +58,13 @@ If automatic sidecar injection is enabled and [auto mounting of service account ### {{es}} [k8s-service-mesh-linkerd-elasticsearch] -```yaml +```yaml subs=true apiVersion: elasticsearch.k8s.elastic.co/v1 kind: Elasticsearch metadata: name: elastic-linkerd spec: - version: 8.16.1 + version: {{version.stack}} http: tls: <1> selfSignedCertificate: @@ -92,13 +92,13 @@ spec: The configuration is almost identical for {{kib}} and APM Server resources. -```yaml +```yaml subs=true apiVersion: ... kind: ... metadata: name: elastic-linkerd spec: - version: 8.16.1 + version: {{version.stack}} count: 1 elasticsearchRef: name: elastic-linkerd diff --git a/deploy-manage/deploy/cloud-on-k8s/kibana-instance-quickstart.md b/deploy-manage/deploy/cloud-on-k8s/kibana-instance-quickstart.md index 1da4013eac..8bd4c51916 100644 --- a/deploy-manage/deploy/cloud-on-k8s/kibana-instance-quickstart.md +++ b/deploy-manage/deploy/cloud-on-k8s/kibana-instance-quickstart.md @@ -15,14 +15,14 @@ To deploy a simple [{{kib}}](/get-started/the-stack.md#stack-components-kibana) 1. Specify a {{kib}} instance and associate it with your {{es}} `quickstart` cluster created previously under [Deploying an {{es}} cluster](elasticsearch-deployment-quickstart.md): - ```yaml + ```yaml subs=true cat < ``` @@ -323,13 +323,13 @@ Plugin categories that require special considerations are: If the pipeline *does not* contain any plugins from these categories, you can increase the number of {{ls}} instances by setting the `count` property in the {{ls}} resource: -```yaml +```yaml subs=true apiVersion: logstash.k8s.elastic.co/v1alpha1 kind: Logstash metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} count: 3 ``` @@ -460,17 +460,17 @@ If you need plugins in addition to those included in the standard {{ls}} distrib This sample Dockerfile installs the [`logstash-filter-tld`](logstash-docs-md://lsr/plugins-filters-tld.md) plugin to the official {{ls}} Docker image: -```shell -FROM docker.elastic.co/logstash/logstash:8.16.1 +```shell subs=true +FROM docker.elastic.co/logstash/logstash:{{version.stack}} RUN bin/logstash-plugin install logstash-filter-tld ``` Then after building and deploying the custom image (refer to [*Create custom images*](create-custom-images.md) for more details), include it in the {{ls}} manifest: -```shell +```shell subs=true spec: count: 1 - version: 8.16.1 <1> + version: {{version.stack}} <1> image: ``` diff --git a/deploy-manage/deploy/cloud-on-k8s/manage-compute-resources.md b/deploy-manage/deploy/cloud-on-k8s/manage-compute-resources.md index 92f6255212..7b91bd8127 100644 --- a/deploy-manage/deploy/cloud-on-k8s/manage-compute-resources.md +++ b/deploy-manage/deploy/cloud-on-k8s/manage-compute-resources.md @@ -29,13 +29,13 @@ You can set compute resource constraints in the `podTemplate` of objects managed ### Set compute resources for {{es}} [k8s-compute-resources-elasticsearch] -```yaml +```yaml subs=true apiVersion: elasticsearch.k8s.elastic.co/v1 kind: Elasticsearch metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} nodeSets: - name: default count: 1 @@ -58,13 +58,13 @@ Starting with {{es}} 7.11, the heap size of the JVM is automatically calculated For {{es}} before 7.11, or if you want to override the default calculated heap size on newer versions, set the `ES_JAVA_OPTS` environment variable in the `podTemplate` to an appropriate value: -```yaml +```yaml subs=true apiVersion: elasticsearch.k8s.elastic.co/v1 kind: Elasticsearch metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} nodeSets: - name: default count: 1 @@ -109,13 +109,13 @@ A [known Kubernetes issue](https://github.com/kubernetes/kubernetes/issues/51135 ### Set compute resources for {{kib}}, Elastic Maps Server, APM Server and Logstash [k8s-compute-resources-kibana-and-apm] -```yaml +```yaml subs=true apiVersion: kibana.k8s.elastic.co/v1 kind: Kibana metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} podTemplate: spec: containers: @@ -132,13 +132,13 @@ spec: cpu: 2 ``` -```yaml +```yaml subs=true apiVersion: maps.k8s.elastic.co/v1alpha1 kind: ElasticMapsServer metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} podTemplate: spec: containers: @@ -155,13 +155,13 @@ spec: cpu: 1 ``` -```yaml +```yaml subs=true apiVersion: apm.k8s.elastic.co/v1 kind: ApmServer metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} podTemplate: spec: containers: @@ -175,13 +175,15 @@ spec: cpu: 2 ``` +% enterprise search not available in 9.0+ so this uses a hardcoded version + ```yaml apiVersion: enterprisesearch.k8s.elastic.co/v1 kind: EnterpriseSearch metadata: name: enterprise-search-quickstart spec: - version: 8.16.1 + version: 8.19.1 podTemplate: spec: containers: @@ -198,13 +200,13 @@ spec: value: -Xms3500m -Xmx3500m ``` -```yaml +```yaml subs=true apiVersion: logstash.k8s.elastic.co/v1 kind: logstash metadata: name: logstash-quickstart spec: - version: 8.16.1 + version: {{version.stack}} podTemplate: spec: containers: @@ -230,14 +232,14 @@ For Beats or Elastic Agent objects, the `podTemplate` can be configured as follo When deploying as a Kubernetes Deployment: -```yaml +```yaml subs=true apiVersion: beat.k8s.elastic.co/v1beta1 kind: Beat metadata: name: quickstart spec: type: filebeat - version: 8.16.1 + version: {{version.stack}} deployment: podTemplate: spec: @@ -254,13 +256,13 @@ spec: When deploying as a Kubernetes DaemonSet: -```yaml +```yaml subs=true apiVersion: agent.k8s.elastic.co/v1alpha1 kind: Agent metadata: name: elastic-agent spec: - version: 8.16.1 + version: {{version.stack}} daemonSet: podTemplate: spec: diff --git a/deploy-manage/deploy/cloud-on-k8s/map-data.md b/deploy-manage/deploy/cloud-on-k8s/map-data.md index ad715a0ad9..c6224d03a9 100644 --- a/deploy-manage/deploy/cloud-on-k8s/map-data.md +++ b/deploy-manage/deploy/cloud-on-k8s/map-data.md @@ -85,13 +85,13 @@ You can [customize the Elastic Maps Server Pod](customize-pods.md) using a Pod t The following example demonstrates how to create a Elastic Maps Server deployment which mounts a data volume with the complete basemap. -```yaml +```yaml subs=true apiVersion: maps.k8s.elastic.co/v1alpha1 kind: ElasticMapsServer metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} count: 1 podTemplate: spec: diff --git a/deploy-manage/deploy/cloud-on-k8s/nodes-orchestration.md b/deploy-manage/deploy/cloud-on-k8s/nodes-orchestration.md index cf12350b47..8b364301bb 100644 --- a/deploy-manage/deploy/cloud-on-k8s/nodes-orchestration.md +++ b/deploy-manage/deploy/cloud-on-k8s/nodes-orchestration.md @@ -28,13 +28,13 @@ You can use [YAML anchors](https://yaml.org/spec/1.2/spec.html#id2765878) to dec :::: -```yaml +```yaml subs=true apiVersion: elasticsearch.k8s.elastic.co/v1 kind: Elasticsearch metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} nodeSets: - name: master-nodes count: 3 diff --git a/deploy-manage/deploy/cloud-on-k8s/pod-disruption-budget.md b/deploy-manage/deploy/cloud-on-k8s/pod-disruption-budget.md index 9ad648c6f4..b81464e92d 100644 --- a/deploy-manage/deploy/cloud-on-k8s/pod-disruption-budget.md +++ b/deploy-manage/deploy/cloud-on-k8s/pod-disruption-budget.md @@ -22,7 +22,7 @@ kind: Elasticsearch metadata: name: quickstart spec: - version: 8.16.1 + version: {{version.stack}} nodeSets: - name: default count: 3 @@ -43,14 +43,14 @@ spec: You can specify a PDB per nodeset or node role. -```yaml +```yaml subs=true apiVersion: elasticsearch.k8s.elastic.co/v1 kind: Elasticsearch metadata: name: quickstart spec: podDisruptionBudget: {} <1> - version: 8.16.1 + version: {{version.stack}} nodeSets: - name: master count: 3 diff --git a/deploy-manage/deploy/cloud-on-k8s/pod-prestop-hook.md b/deploy-manage/deploy/cloud-on-k8s/pod-prestop-hook.md index 98a2b6fa08..4a0c2eef65 100644 --- a/deploy-manage/deploy/cloud-on-k8s/pod-prestop-hook.md +++ b/deploy-manage/deploy/cloud-on-k8s/pod-prestop-hook.md @@ -24,7 +24,7 @@ The exact behavior is configurable using an environment variable, for example: ```yaml spec: - version: 8.16.1 + version: {{version.stack}} nodeSets: - name: default count: 1 diff --git a/deploy-manage/deploy/cloud-on-k8s/quickstart-beats.md b/deploy-manage/deploy/cloud-on-k8s/quickstart-beats.md index 4ba79a0469..a4961966fc 100644 --- a/deploy-manage/deploy/cloud-on-k8s/quickstart-beats.md +++ b/deploy-manage/deploy/cloud-on-k8s/quickstart-beats.md @@ -20,7 +20,7 @@ products: name: quickstart spec: type: filebeat - version: 8.16.1 + version: {{version.stack}} elasticsearchRef: name: quickstart config: @@ -67,9 +67,9 @@ products: kubectl get beat ``` - ```sh + ```sh subs=true NAME HEALTH AVAILABLE EXPECTED TYPE VERSION AGE - quickstart green 3 3 filebeat 8.16.1 2m + quickstart green 3 3 filebeat {{version.stack}} 2m ``` 3. List all the Pods belonging to a given Beat. diff --git a/deploy-manage/deploy/cloud-on-k8s/quickstart-fleet.md b/deploy-manage/deploy/cloud-on-k8s/quickstart-fleet.md index 080ffb9d5f..a3d8f912c3 100644 --- a/deploy-manage/deploy/cloud-on-k8s/quickstart-fleet.md +++ b/deploy-manage/deploy/cloud-on-k8s/quickstart-fleet.md @@ -20,7 +20,7 @@ products: name: fleet-server-quickstart namespace: default spec: - version: 8.16.1 + version: {{version.stack}} kibanaRef: name: kibana-quickstart elasticsearchRefs: @@ -43,7 +43,7 @@ products: name: elastic-agent-quickstart namespace: default spec: - version: 8.16.1 + version: {{version.stack}} kibanaRef: name: kibana-quickstart fleetServerRef: @@ -67,7 +67,7 @@ products: name: kibana-quickstart namespace: default spec: - version: 8.16.1 + version: {{version.stack}} count: 1 elasticsearchRef: name: elasticsearch-quickstart @@ -115,7 +115,7 @@ products: name: elasticsearch-quickstart namespace: default spec: - version: 8.16.1 + version: {{version.stack}} nodeSets: - name: default count: 3 @@ -191,10 +191,10 @@ ECK automatically configures secure connections between all components. {{fleet} kubectl get agent ``` - ```sh + ```sh subs=true NAME HEALTH AVAILABLE EXPECTED VERSION AGE - elastic-agent-quickstart green 3 3 8.16.1 14s - fleet-server-quickstart green 1 1 8.16.1 19s + elastic-agent-quickstart green 3 3 {{version.stack}} 14s + fleet-server-quickstart green 1 1 {{version.stack}} 19s ``` 2. List all the Pods belonging to a given {{agent}} specification. diff --git a/deploy-manage/deploy/cloud-on-k8s/quickstart-logstash.md b/deploy-manage/deploy/cloud-on-k8s/quickstart-logstash.md index 55f88ec2f7..90dd27a813 100644 --- a/deploy-manage/deploy/cloud-on-k8s/quickstart-logstash.md +++ b/deploy-manage/deploy/cloud-on-k8s/quickstart-logstash.md @@ -12,7 +12,7 @@ products: Add the following specification to create a minimal {{ls}} deployment that will listen to a Beats agent or Elastic Agent configured to send to Logstash on port 5044, create the service and write the output to an {{es}} cluster named `quickstart`, created in the [{{es}} quickstart](deploy-an-orchestrator.md). -```yaml +```yaml subs=true cat <<'EOF' | kubectl apply -f - apiVersion: logstash.k8s.elastic.co/v1alpha1 kind: Logstash @@ -23,7 +23,7 @@ spec: elasticsearchRefs: - name: quickstart clusterName: qs - version: 8.16.1 + version: {{version.stack}} pipelines: - pipeline.id: main config.string: | @@ -61,9 +61,9 @@ Check [Configuration examples](configuration-examples-logstash.md) for more read kubectl get logstash ``` - ```sh + ```sh subs=true NAME AVAILABLE EXPECTED AGE VERSION - quickstart 3 3 4s 8.16.1 + quickstart 3 3 4s {{version.stack}} ``` 2. List all the Pods that belong to a given Logstash specification. diff --git a/deploy-manage/deploy/cloud-on-k8s/quickstart-standalone.md b/deploy-manage/deploy/cloud-on-k8s/quickstart-standalone.md index a4b290a3a6..479364eff4 100644 --- a/deploy-manage/deploy/cloud-on-k8s/quickstart-standalone.md +++ b/deploy-manage/deploy/cloud-on-k8s/quickstart-standalone.md @@ -12,14 +12,14 @@ products: 1. Apply the following specification to deploy Elastic Agent with the System metrics integration to harvest CPU metrics from the Agent Pods. ECK automatically configures the secured connection to an {{es}} cluster named `quickstart`, created in the [{{es}} quickstart](deploy-an-orchestrator.md). - ```yaml + ```yaml subs=true cat <