Skip to content

Commit 6b463a7

Browse files
lcawldroberts195
andauthored
[DOCS] Clarify use of CCS on ML nodes (#66616)
Co-authored-by: David Roberts <[email protected]>
1 parent 09f9db2 commit 6b463a7

File tree

3 files changed

+33
-25
lines changed

3 files changed

+33
-25
lines changed

docs/reference/modules/node.asciidoc

+14-12
Original file line numberDiff line numberDiff line change
@@ -13,20 +13,13 @@ clients.
1313
// tag::modules-node-description-tag[]
1414
All nodes know about all the other nodes in the cluster and can forward client
1515
requests to the appropriate node.
16-
17-
By default, a node is all of the following types: master-eligible, data, ingest,
18-
and (if available) machine learning. All data nodes are also transform nodes.
1916
// end::modules-node-description-tag[]
2017

21-
TIP: As the cluster grows and in particular if you have large {ml} jobs or
22-
{ctransforms}, consider separating dedicated master-eligible nodes from
23-
dedicated data nodes, {ml} nodes, and {transform} nodes.
24-
2518
[[node-roles]]
2619
==== Node roles
2720

2821
You can define the roles of a node by setting `node.roles`. If you don't
29-
configure this setting, then the node has the following roles by default:
22+
configure this setting, the node has the following roles by default:
3023

3124
* `master`
3225
* `data`
@@ -37,9 +30,14 @@ configure this setting, then the node has the following roles by default:
3730
* `ingest`
3831
* `ml`
3932
* `remote_cluster_client`
33+
* `transform`
4034

4135
NOTE: If you set `node.roles`, the node is assigned only the roles you specify.
4236

37+
As the cluster grows and in particular if you have large {ml} jobs or
38+
{ctransforms}, consider separating dedicated master-eligible nodes from
39+
dedicated data nodes, {ml} nodes, and {transform} nodes.
40+
4341
<<master-node,Master-eligible node>>::
4442

4543
A node that has the `master` role (default), which makes it eligible to be
@@ -335,10 +333,12 @@ To create a dedicated {ml} node in the {default-dist}, set:
335333

336334
[source,yaml]
337335
----
338-
node.roles: [ ml ]
339-
xpack.ml.enabled: true <1>
336+
node.roles: [ ml, remote_cluster_client] <1>
337+
xpack.ml.enabled: true <2>
340338
----
341-
<1> The `xpack.ml.enabled` setting is enabled by default.
339+
<1> The `remote_cluster_client` role is optional but strongly recommended.
340+
Otherwise, {ccs} fails when used in {ml} jobs or {dfeeds}. See <<remote-node>>.
341+
<2> The `xpack.ml.enabled` setting is enabled by default.
342342

343343
[[transform-node]]
344344
==== [xpack]#{transform-cap} node#
@@ -351,8 +351,10 @@ To create a dedicated {transform} node in the {default-dist}, set:
351351

352352
[source,yaml]
353353
----
354-
node.roles: [ transform ]
354+
node.roles: [ transform, remote_cluster_client ] <1>
355355
----
356+
<1> The `remote_cluster_client` role is optional but strongly recommended.
357+
Otherwise, {ccs} fails when used in {transforms}. See <<remote-node>>.
356358

357359
[[change-node-role]]
358360
==== Changing the role of a node

docs/reference/settings/ml-settings.asciidoc

+10-6
Original file line numberDiff line numberDiff line change
@@ -22,15 +22,19 @@ hardware, you must disable {ml} (by setting `xpack.ml.enabled` to `false`).
2222

2323
`node.roles: [ ml ]`::
2424
(<<static-cluster-setting,Static>>) Set `node.roles` to contain `ml` to identify
25-
the node as a _{ml} node_ that is capable of running jobs. Every node is a {ml}
26-
node by default.
25+
the node as a _{ml} node_. If you want to run {ml} jobs, there must be at least
26+
one {ml} node in your cluster.
2727
+
28-
If you use the `node.roles` setting, then all required roles must be explicitly
29-
set. Consult <<modules-node>> to learn more.
28+
By default, every node is a {ml} node. If you set `node.roles`, however,
29+
you must explicitly specify all the required roles for the node. To learn more,
30+
refer to <<modules-node>>.
3031
+
31-
IMPORTANT: On dedicated coordinating nodes or dedicated master nodes, do not set
32+
[IMPORTANT]
33+
====
34+
* On dedicated coordinating nodes or dedicated master nodes, do not set
3235
the `ml` role.
33-
36+
* It is strongly recommended that dedicated {ml} nodes also have the `remote_cluster_client` role; otherwise, {ccs} fails when used in {ml} jobs or {dfeeds}. See <<remote-node>>.
37+
====
3438

3539
`xpack.ml.enabled`::
3640
(<<static-cluster-setting,Static>>) Set to `true` (default) to enable {ml} APIs

docs/reference/settings/transform-settings.asciidoc

+9-7
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,16 @@ default.
1616

1717
`node.roles: [ transform ]`::
1818
(<<static-cluster-setting,Static>>) Set `node.roles` to contain `transform` to
19-
identify the node as a _transform node_. If you use the default settings for a
20-
node, it does not have the `transform` role.
19+
identify the node as a _transform node_. If you want to run {transforms}, there
20+
must be at least one {transform} node in your cluster.
2121
+
22-
If a node doesn't have this role, the node cannot run transforms. If you want to
23-
run transforms, there must be at least one transform node in your cluster.
24-
+
25-
If you use the `node.roles` setting, all required roles must be explicitly set.
26-
Consult <<modules-node>> to learn more.
22+
By default, every node is a {transform} node. If you set `node.roles`, however,
23+
you must explicitly specify all the required roles for the node. To learn more,
24+
refer to <<modules-node>>.
25+
+
26+
IMPORTANT: It is strongly recommended that dedicated {transform} nodes also have
27+
the `remote_cluster_client` role; otherwise, {ccs} fails when used in
28+
{transforms}. See <<remote-node>>.
2729

2830
`xpack.transform.enabled`::
2931
deprecated:[7.8.0,Basic License features should always be enabled]

0 commit comments

Comments
 (0)