Skip to content

Commit 8304bf6

Browse files
authored
Merge branch 'main' into docs-internal-repo-171-ease-tier
2 parents bb83080 + ff063c6 commit 8304bf6

File tree

87 files changed

+519
-382
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

87 files changed

+519
-382
lines changed

deploy-manage/deploy/cloud-on-k8s/_snippets/kib-config.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@ You can add your own {{kib}} settings to the `spec.config` section.
22

33
The following example demonstrates how to set the [`elasticsearch.requestHeadersWhitelist`](kibana://reference/configuration-reference/general-settings.md#elasticsearch-requestheaderswhitelist) configuration option.
44

5-
```yaml
5+
```yaml subs=true
66
apiVersion: kibana.k8s.elastic.co/v1
77
kind: Kibana
88
metadata:
99
name: kibana-sample
1010
spec:
11-
version: 8.16.1
11+
version: {{version.stack}}
1212
count: 1
1313
elasticsearchRef:
1414
name: "elasticsearch-sample"

deploy-manage/deploy/cloud-on-k8s/accessing-services.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,13 +71,13 @@ By default, the {{es}} service created by ECK is configured to route traffic to
7171
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.
7272
::::
7373

74-
```yaml
74+
```yaml subs=true
7575
apiVersion: <kind>.k8s.elastic.co/v1
7676
kind: <Kind>
7777
metadata:
7878
name: hulk
7979
spec:
80-
version: 8.16.1
80+
version: {{version.stack}}
8181
http:
8282
service:
8383
spec:

deploy-manage/deploy/cloud-on-k8s/advanced-configuration-logstash.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ You can specify sensitive settings with Kubernetes secrets. ECK automatically in
4141
4242
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.
4343

44-
```yaml
44+
```yaml subs=true
4545
apiVersion: v1
4646
kind: Secret
4747
metadata:
@@ -54,7 +54,7 @@ kind: Logstash
5454
metadata:
5555
name: logstash-sample
5656
spec:
57-
version: 8.16.1
57+
version: {{version.stack}}
5858
count: 1
5959
pipelines:
6060
- pipeline.id: main

deploy-manage/deploy/cloud-on-k8s/advanced-configuration-maps-server.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,27 +27,27 @@ You can add any valid Elastic Maps Server setting as documented on the [product]
2727

2828
The following example demonstrates how to set the log level to `debug`:
2929

30-
```yaml
30+
```yaml subs=true
3131
apiVersion: maps.k8s.elastic.co/v1alpha1
3232
kind: ElasticMapsServer
3333
metadata:
3434
name: quickstart
3535
spec:
36-
version: 8.16.1
36+
version: {{version.stack}}
3737
count: 1
3838
config:
3939
logging.level: debug
4040
```
4141
4242
Alternatively, settings can be provided through a Secret specified in the `configRef` element:
4343

44-
```yaml
44+
```yaml subs=true
4545
apiVersion: maps.k8s.elastic.co/v1alpha1
4646
kind: ElasticMapsServer
4747
metadata:
4848
name: quickstart
4949
spec:
50-
version: 8.16.1
50+
version: {{version.stack}}
5151
configRef:
5252
secretName: maps-config
5353
---

deploy-manage/deploy/cloud-on-k8s/advanced-configuration.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,15 @@ APM Agent central configuration was added in 7.5.1.
2525

2626
[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:
2727

28-
```yaml
28+
```yaml subs=true
2929
cat <<EOF | kubectl apply -f -
3030
apiVersion: apm.k8s.elastic.co/v1
3131
kind: ApmServer
3232
metadata:
3333
name: apm-server-quickstart
3434
namespace: default
3535
spec:
36-
version: 8.16.1
36+
version: {{version.stack}}
3737
count: 1
3838
elasticsearchRef:
3939
name: quickstart
@@ -58,14 +58,14 @@ config:
5858
5959
To customize the configuration of the APM Server, use the `config` element in the specification:
6060

61-
```yaml
61+
```yaml subs=true
6262
apiVersion: apm.k8s.elastic.co/v1
6363
kind: ApmServer
6464
metadata:
6565
name: apm-server-quickstart
6666
namespace: default
6767
spec:
68-
version: 8.16.1
68+
version: {{version.stack}}
6969
count: 1
7070
config:
7171
output:
@@ -94,14 +94,14 @@ The APM Server keystore can be used to store sensitive settings in the APM Serve
9494

9595
2. In the `spec.secureSettings` section, add a reference to the secret you previously created.
9696

97-
```yaml
97+
```yaml subs=true
9898
apiVersion: apm.k8s.elastic.co/v1
9999
kind: ApmServer
100100
metadata:
101101
name: apm-server-quickstart
102102
namespace: default
103103
spec:
104-
version: 8.16.1
104+
version: {{version.stack}}
105105
count: 1
106106
secureSettings:
107107
- secretName: apm-secret-settings
@@ -134,14 +134,14 @@ Now that you know how to use the APM keystore and customize the server configura
134134

135135
Here is a complete example with a password stored in the Keystore, as described in the previous section:
136136

137-
```yaml
137+
```yaml subs=true
138138
apiVersion: apm.k8s.elastic.co/v1
139139
kind: ApmServer
140140
metadata:
141141
name: apm-server-quickstart
142142
namespace: default
143143
spec:
144-
version: 8.16.1
144+
version: {{version.stack}}
145145
count: 1
146146
secureSettings:
147147
- secretName: apm-secret-settings

deploy-manage/deploy/cloud-on-k8s/advanced-elasticsearch-node-scheduling.md

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -30,13 +30,13 @@ You can use [YAML anchors](https://yaml.org/spec/1.2/spec.html#id2765878) to dec
3030

3131
This allows you to describe an {{es}} cluster with 3 dedicated master nodes, for example:
3232

33-
```yaml
33+
```yaml subs=true
3434
apiVersion: elasticsearch.k8s.elastic.co/v1
3535
kind: Elasticsearch
3636
metadata:
3737
name: quickstart
3838
spec:
39-
version: 8.16.1
39+
version: {{version.stack}}
4040
nodeSets:
4141
# 3 dedicated master nodes
4242
- name: master
@@ -59,13 +59,13 @@ You can set up various [affinity and anti-affinity options](https://kubernetes.i
5959

6060
To avoid scheduling several {{es}} nodes from the same cluster on the same host, use a `podAntiAffinity` rule based on the hostname and the cluster name label:
6161

62-
```yaml
62+
```yaml subs=true
6363
apiVersion: elasticsearch.k8s.elastic.co/v1
6464
kind: Elasticsearch
6565
metadata:
6666
name: quickstart
6767
spec:
68-
version: 8.16.1
68+
version: {{version.stack}}
6969
nodeSets:
7070
- name: default
7171
count: 3
@@ -84,13 +84,13 @@ spec:
8484

8585
This is ECK default behavior if you don’t specify any `affinity` option. To explicitly disable the default behavior, set an empty affinity object:
8686

87-
```yaml
87+
```yaml subs=true
8888
apiVersion: elasticsearch.k8s.elastic.co/v1
8989
kind: Elasticsearch
9090
metadata:
9191
name: quickstart
9292
spec:
93-
version: 8.16.1
93+
version: {{version.stack}}
9494
nodeSets:
9595
- name: default
9696
count: 3
@@ -101,13 +101,13 @@ spec:
101101

102102
The default affinity is using `preferredDuringSchedulingIgnoredDuringExecution`, which acts as best effort and won’t prevent an {{es}} node from being scheduled on a host if there are no other hosts available. Scheduling a 4-nodes {{es}} cluster on a 3-host Kubernetes cluster would then successfully schedule 2 {{es}} nodes on the same host. To enforce a strict single node per host, specify `requiredDuringSchedulingIgnoredDuringExecution` instead:
103103

104-
```yaml
104+
```yaml subs=true
105105
apiVersion: elasticsearch.k8s.elastic.co/v1
106106
kind: Elasticsearch
107107
metadata:
108108
name: quickstart
109109
spec:
110-
version: 8.16.1
110+
version: {{version.stack}}
111111
nodeSets:
112112
- name: default
113113
count: 3
@@ -143,13 +143,13 @@ volumeBindingMode: WaitForFirstConsumer
143143

144144
To restrict the scheduling to a particular set of Kubernetes nodes based on labels, use a [NodeSelector](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector). The following example schedules {{es}} Pods on Kubernetes nodes tagged with both labels `diskType: ssd` and `environment: production`.
145145

146-
```yaml
146+
```yaml subs=true
147147
apiVersion: elasticsearch.k8s.elastic.co/v1
148148
kind: Elasticsearch
149149
metadata:
150150
name: quickstart
151151
spec:
152-
version: 8.16.1
152+
version: {{version.stack}}
153153
nodeSets:
154154
- name: default
155155
count: 3
@@ -162,13 +162,13 @@ spec:
162162

163163
You can achieve the same (and more) with [node affinity](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#node-affinity-beta-feature):
164164

165-
```yaml
165+
```yaml subs=true
166166
apiVersion: elasticsearch.k8s.elastic.co/v1
167167
kind: Elasticsearch
168168
metadata:
169169
name: quickstart
170170
spec:
171-
version: 8.16.1
171+
version: {{version.stack}}
172172
nodeSets:
173173
- name: default
174174
count: 3
@@ -217,15 +217,15 @@ The following example demonstrates how to use the `topology.kubernetes.io/zone`
217217

218218
Note that by default ECK creates a `k8s_node_name` attribute with the name of the Kubernetes node running the Pod, and configures {{es}} to use this attribute. This ensures that {{es}} allocates primary and replica shards to Pods running on different Kubernetes nodes and never to Pods that are scheduled onto the same Kubernetes node. To preserve this behavior while making {{es}} aware of the availability zone, include the `k8s_node_name` attribute in the comma-separated `cluster.routing.allocation.awareness.attributes` list.
219219

220-
```yaml
220+
```yaml subs=true
221221
apiVersion: elasticsearch.k8s.elastic.co/v1
222222
kind: Elasticsearch
223223
metadata:
224224
annotations:
225225
eck.k8s.elastic.co/downward-node-labels: "topology.kubernetes.io/zone"
226226
name: quickstart
227227
spec:
228-
version: 8.16.1
228+
version: {{version.stack}}
229229
nodeSets:
230230
- name: default
231231
count: 3
@@ -263,13 +263,13 @@ This example relies on:
263263

264264
By combining [{{es}} shard allocation awareness](elasticsearch://reference/elasticsearch/configuration-reference/cluster-level-shard-allocation-routing-settings.md) with [Kubernetes node affinity](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#node-affinity-beta-feature), you can set up an {{es}} cluster with hot-warm topology:
265265

266-
```yaml
266+
```yaml subs=true
267267
apiVersion: elasticsearch.k8s.elastic.co/v1
268268
kind: Elasticsearch
269269
metadata:
270270
name: quickstart
271271
spec:
272-
version: 8.16.1
272+
version: {{version.stack}}
273273
nodeSets:
274274
# hot nodes, with high CPU and fast IO
275275
- name: hot

deploy-manage/deploy/cloud-on-k8s/air-gapped-install.md

Lines changed: 23 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,14 @@ The ECK operator can be run in an air-gapped environment without access to the o
1616

1717
By default ECK does not require you to specify the container image for each {{stack}} application you deploy.
1818

19-
```yaml
19+
```yaml subs=true
2020
apiVersion: elasticsearch.k8s.elastic.co/v1
2121
kind: Elasticsearch
2222
metadata:
2323
name: quickstart
2424
spec:
25-
version: 8.16.1
26-
# image: docker.elastic.co/elasticsearch/elasticsearch:8.16.1 // <1>
25+
version: {{version.stack}}
26+
# image: docker.elastic.co/elasticsearch/elasticsearch:{{version.stack}} // <1>
2727
nodeSets:
2828
- name: default
2929
count: 1
@@ -44,18 +44,30 @@ ECK will automatically set the correct container image for each application. Whe
4444

4545
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`.
4646

47-
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`.
47+
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:
48+
49+
Before:
50+
```text subs=true
51+
docker.elastic.co/eck/eck-operator:{{version.eck}}
52+
```
53+
54+
After:
55+
```text subs=true
56+
my.registry/eck/eck-operator:{{version.eck}}
57+
```
58+
59+
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`.
4860

4961

5062
## Override the default container registry [k8s-container-registry-override]
5163

5264
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.
5365

54-
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:
66+
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:
5567

56-
* `my.registry/elasticsearch/elasticsearch:8.16.1`
57-
* `my.registry/kibana/kibana:8.16.1`
58-
* `my.registry/apm/apm-server:8.16.1`
68+
* my.registry/elasticsearch/elasticsearch:{{version.stack}}
69+
* my.registry/kibana/kibana:{{version.stack}}
70+
* my.registry/apm/apm-server:{{version.stack}}
5971

6072

6173
## 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
6476

6577
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:
6678

67-
* `my.registry/elastic/elasticsearch:8.16.1`
68-
* `my.registry/elastic/kibana:8.16.1`
69-
* `my.registry/elastic/apm-server:8.16.1`
79+
* my.registry/elastic/elasticsearch:{{version.stack}}
80+
* my.registry/elastic/kibana:{{version.stack}}
81+
* my.registry/elastic/apm-server:{{version.stack}}
7082

7183

7284
## ECK Diagnostics in air-gapped environments [k8s-eck-diag-air-gapped]

deploy-manage/deploy/cloud-on-k8s/configuration-beats.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,14 @@ You can upgrade the Beat version or change settings by editing the YAML specific
1919

2020
The Beat configuration is defined in the `config` element:
2121

22-
```yaml
22+
```yaml subs=true
2323
apiVersion: beat.k8s.elastic.co/v1beta1
2424
kind: Beat
2525
metadata:
2626
name: quickstart
2727
spec:
2828
type: heartbeat
29-
version: 8.16.1
29+
version: {{version.stack}}
3030
elasticsearchRef:
3131
name: quickstart
3232
config:
@@ -44,14 +44,14 @@ spec:
4444
4545
Alternatively, it can be provided through a Secret specified in the `configRef` element:
4646

47-
```yaml
47+
```yaml subs=true
4848
apiVersion: beat.k8s.elastic.co/v1beta1
4949
kind: Beat
5050
metadata:
5151
name: heartbeat-quickstart
5252
spec:
5353
type: heartbeat
54-
version: 8.16.1
54+
version: {{version.stack}}
5555
elasticsearchRef:
5656
name: quickstart
5757
configRef:

0 commit comments

Comments
 (0)