Skip to content

Commit d71ced1

Browse files
authored
Generalize search.remote settings to cluster.remote (#33413)
With features like CCR building on the CCS infrastructure, the settings prefix search.remote makes less sense as the namespace for these remote cluster settings than does a more general namespace like cluster.remote. This commit replaces these settings with cluster.remote with a fallback to the deprecated settings search.remote.
1 parent 39e3bd9 commit d71ced1

File tree

30 files changed

+527
-230
lines changed

30 files changed

+527
-230
lines changed

docs/reference/modules/cross-cluster-search.asciidoc

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ remote clusters that should be connected to, for instance:
3838

3939
[source,yaml]
4040
--------------------------------
41-
search:
41+
cluster:
4242
remote:
4343
cluster_one: <1>
4444
seeds: 127.0.0.1:9300
@@ -58,7 +58,7 @@ following:
5858
PUT _cluster/settings
5959
{
6060
"persistent": {
61-
"search": {
61+
"cluster": {
6262
"remote": {
6363
"cluster_one": {
6464
"seeds": [
@@ -94,7 +94,7 @@ because we'll use them later.
9494
{
9595
"acknowledged" : true,
9696
"persistent": {
97-
"search": {
97+
"cluster": {
9898
"remote": {
9999
"cluster_one": {
100100
"seeds": [
@@ -129,7 +129,7 @@ A remote cluster can be deleted from the cluster settings by setting its seeds t
129129
PUT _cluster/settings
130130
{
131131
"persistent": {
132-
"search": {
132+
"cluster": {
133133
"remote": {
134134
"cluster_three": {
135135
"seeds": null <1>
@@ -309,7 +309,7 @@ boolean `skip_unavailable` setting, set to `false` by default.
309309
PUT _cluster/settings
310310
{
311311
"persistent": {
312-
"search.remote.cluster_two.skip_unavailable": true <1>
312+
"cluster.remote.cluster_two.skip_unavailable": true <1>
313313
}
314314
}
315315
--------------------------------
@@ -391,30 +391,30 @@ GET /cluster_one:twitter,cluster_two:twitter,twitter/_search <1>
391391
[[cross-cluster-search-settings]]
392392
=== Cross cluster search settings
393393

394-
`search.remote.connections_per_cluster`::
394+
`cluster.remote.connections_per_cluster`::
395395

396396
The number of nodes to connect to per remote cluster. The default is `3`.
397397

398-
`search.remote.initial_connect_timeout`::
398+
`cluster.remote.initial_connect_timeout`::
399399

400400
The time to wait for remote connections to be established when the node starts. The default is `30s`.
401401

402-
`search.remote.node.attr`::
402+
`cluster.remote.node.attr`::
403403

404404
A node attribute to filter out nodes that are eligible as a gateway node in
405405
the remote cluster. For instance a node can have a node attribute
406406
`node.attr.gateway: true` such that only nodes with this attribute will be
407-
connected to if `search.remote.node.attr` is set to `gateway`.
407+
connected to if `cluster.remote.node.attr` is set to `gateway`.
408408

409-
`search.remote.connect`::
409+
`cluster.remote.connect`::
410410

411411
By default, any node in the cluster can act as a cross-cluster client and
412-
connect to remote clusters. The `search.remote.connect` setting can be set
412+
connect to remote clusters. The `cluster.remote.connect` setting can be set
413413
to `false` (defaults to `true`) to prevent certain nodes from connecting to
414414
remote clusters. Cross-cluster search requests must be sent to a node that
415415
is allowed to act as a cross-cluster client.
416416

417-
`search.remote.${cluster_alias}.skip_unavailable`::
417+
`cluster.remote.${cluster_alias}.skip_unavailable`::
418418

419419
Per cluster boolean setting that allows to skip specific clusters when no
420420
nodes belonging to them are available and they are searched as part of a

docs/reference/modules/ml-node.asciidoc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ To create a dedicated ingest node when {xpack} is installed, set:
5959
node.master: false <1>
6060
node.data: false <2>
6161
node.ingest: true <3>
62-
search.remote.connect: false <4>
62+
cluster.remote.connect: false <4>
6363
node.ml: false <5>
6464
-------------------
6565
<1> Disable the `node.master` role (enabled by default).
@@ -75,7 +75,7 @@ To create a dedicated coordinating node when {xpack} is installed, set:
7575
node.master: false <1>
7676
node.data: false <2>
7777
node.ingest: false <3>
78-
search.remote.connect: false <4>
78+
cluster.remote.connect: false <4>
7979
node.ml: false <5>
8080
-------------------
8181
<1> Disable the `node.master` role (enabled by default).
@@ -105,7 +105,7 @@ To create a dedicated {ml} node, set:
105105
node.master: false <1>
106106
node.data: false <2>
107107
node.ingest: false <3>
108-
search.remote.connect: false <4>
108+
cluster.remote.connect: false <4>
109109
node.ml: true <5>
110110
xpack.ml.enabled: true <6>
111111
-------------------

docs/reference/modules/node.asciidoc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ To create a dedicated master-eligible node, set:
9393
node.master: true <1>
9494
node.data: false <2>
9595
node.ingest: false <3>
96-
search.remote.connect: false <4>
96+
cluster.remote.connect: false <4>
9797
-------------------
9898
<1> The `node.master` role is enabled by default.
9999
<2> Disable the `node.data` role (enabled by default).
@@ -192,7 +192,7 @@ To create a dedicated data node, set:
192192
node.master: false <1>
193193
node.data: true <2>
194194
node.ingest: false <3>
195-
search.remote.connect: false <4>
195+
cluster.remote.connect: false <4>
196196
-------------------
197197
<1> Disable the `node.master` role (enabled by default).
198198
<2> The `node.data` role is enabled by default.
@@ -220,7 +220,7 @@ To create a dedicated ingest node, set:
220220
node.master: false <1>
221221
node.data: false <2>
222222
node.ingest: true <3>
223-
search.remote.connect: false <4>
223+
cluster.remote.connect: false <4>
224224
-------------------
225225
<1> Disable the `node.master` role (enabled by default).
226226
<2> Disable the `node.data` role (enabled by default).
@@ -260,7 +260,7 @@ To create a dedicated coordinating node, set:
260260
node.master: false <1>
261261
node.data: false <2>
262262
node.ingest: false <3>
263-
search.remote.connect: false <4>
263+
cluster.remote.connect: false <4>
264264
-------------------
265265
<1> Disable the `node.master` role (enabled by default).
266266
<2> Disable the `node.data` role (enabled by default).

qa/ccs-unavailable-clusters/src/test/java/org/elasticsearch/search/CrossClusterSearchUnavailableClusterIT.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -235,8 +235,8 @@ public void testSkipUnavailableDependsOnSeeds() throws IOException {
235235
() -> client().performRequest(request));
236236
assertEquals(400, responseException.getResponse().getStatusLine().getStatusCode());
237237
assertThat(responseException.getMessage(),
238-
containsString("Missing required setting [search.remote.remote1.seeds] " +
239-
"for setting [search.remote.remote1.skip_unavailable]"));
238+
containsString("Missing required setting [cluster.remote.remote1.seeds] " +
239+
"for setting [cluster.remote.remote1.skip_unavailable]"));
240240
}
241241

242242
Map<String, Object> settingsMap = new HashMap<>();
@@ -251,8 +251,8 @@ public void testSkipUnavailableDependsOnSeeds() throws IOException {
251251
ResponseException responseException = expectThrows(ResponseException.class,
252252
() -> client().performRequest(request));
253253
assertEquals(400, responseException.getResponse().getStatusLine().getStatusCode());
254-
assertThat(responseException.getMessage(), containsString("Missing required setting [search.remote.remote1.seeds] " +
255-
"for setting [search.remote.remote1.skip_unavailable]"));
254+
assertThat(responseException.getMessage(), containsString("Missing required setting [cluster.remote.remote1.seeds] " +
255+
"for setting [cluster.remote.remote1.skip_unavailable]"));
256256
}
257257

258258
if (randomBoolean()) {
@@ -304,7 +304,7 @@ private static HttpEntity buildUpdateSettingsRequestBody(Map<String, Object> set
304304
{
305305
builder.startObject("persistent");
306306
{
307-
builder.startObject("search.remote.remote1");
307+
builder.startObject("cluster.remote.remote1");
308308
{
309309
for (Map.Entry<String, Object> entry : settings.entrySet()) {
310310
builder.field(entry.getKey(), entry.getValue());

qa/multi-cluster-search/build.gradle

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ task remoteClusterTest(type: RestIntegTestTask) {
2828
remoteClusterTestCluster {
2929
numNodes = 2
3030
clusterName = 'remote-cluster'
31-
setting 'search.remote.connect', false
31+
setting 'cluster.remote.connect', false
3232
}
3333

3434
remoteClusterTestRunner {
@@ -39,9 +39,9 @@ task mixedClusterTest(type: RestIntegTestTask) {}
3939

4040
mixedClusterTestCluster {
4141
dependsOn remoteClusterTestRunner
42-
setting 'search.remote.my_remote_cluster.seeds', "\"${-> remoteClusterTest.nodes.get(0).transportUri()}\""
43-
setting 'search.remote.connections_per_cluster', 1
44-
setting 'search.remote.connect', true
42+
setting 'cluster.remote.my_remote_cluster.seeds', "\"${-> remoteClusterTest.nodes.get(0).transportUri()}\""
43+
setting 'cluster.remote.connections_per_cluster', 1
44+
setting 'cluster.remote.connect', true
4545
}
4646

4747
mixedClusterTestRunner {

qa/multi-cluster-search/src/test/resources/rest-api-spec/test/multi_cluster/10_basic.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -99,16 +99,16 @@
9999
cluster.get_settings:
100100
include_defaults: true
101101

102-
- set: { defaults.search.remote.my_remote_cluster.seeds.0: remote_ip }
102+
- set: { defaults.cluster.remote.my_remote_cluster.seeds.0: remote_ip }
103103

104104
- do:
105105
cluster.put_settings:
106106
flat_settings: true
107107
body:
108108
transient:
109-
search.remote.test_remote_cluster.seeds: $remote_ip
109+
cluster.remote.test_remote_cluster.seeds: $remote_ip
110110

111-
- match: {transient: {search.remote.test_remote_cluster.seeds: $remote_ip}}
111+
- match: {transient: {cluster.remote.test_remote_cluster.seeds: $remote_ip}}
112112

113113
- do:
114114
search:
@@ -124,16 +124,16 @@
124124
cluster.get_settings:
125125
include_defaults: true
126126

127-
- set: { defaults.search.remote.my_remote_cluster.seeds.0: remote_ip }
127+
- set: { defaults.cluster.remote.my_remote_cluster.seeds.0: remote_ip }
128128

129129
- do:
130130
cluster.put_settings:
131131
flat_settings: true
132132
body:
133133
transient:
134-
search.remote.test_remote_cluster.seeds: $remote_ip
134+
cluster.remote.test_remote_cluster.seeds: $remote_ip
135135

136-
- match: {transient: {search.remote.test_remote_cluster.seeds: $remote_ip}}
136+
- match: {transient: {cluster.remote.test_remote_cluster.seeds: $remote_ip}}
137137

138138
- do:
139139
search:

qa/multi-cluster-search/src/test/resources/rest-api-spec/test/multi_cluster/20_info.yml

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -14,16 +14,16 @@
1414
cluster.get_settings:
1515
include_defaults: true
1616

17-
- set: { defaults.search.remote.my_remote_cluster.seeds.0: remote_ip }
17+
- set: { defaults.cluster.remote.my_remote_cluster.seeds.0: remote_ip }
1818

1919
- do:
2020
cluster.put_settings:
2121
flat_settings: true
2222
body:
2323
transient:
24-
search.remote.test_remote_cluster.seeds: $remote_ip
24+
cluster.remote.test_remote_cluster.seeds: $remote_ip
2525

26-
- match: {transient: {search.remote.test_remote_cluster.seeds: $remote_ip}}
26+
- match: {transient: {cluster.remote.test_remote_cluster.seeds: $remote_ip}}
2727

2828
# we do another search here since this will enforce the connection to be established
2929
# otherwise the cluster might not have been connected yet.
@@ -56,7 +56,7 @@
5656
cluster.put_settings:
5757
body:
5858
transient:
59-
search.remote.test_remote_cluster.seeds: null
59+
cluster.remote.test_remote_cluster.seeds: null
6060

6161
---
6262
"skip_unavailable is returned as part of _remote/info response":
@@ -68,16 +68,16 @@
6868
cluster.get_settings:
6969
include_defaults: true
7070

71-
- set: { defaults.search.remote.my_remote_cluster.seeds.0: remote_ip }
71+
- set: { defaults.cluster.remote.my_remote_cluster.seeds.0: remote_ip }
7272

7373
- do:
7474
cluster.put_settings:
7575
flat_settings: true
7676
body:
7777
transient:
78-
search.remote.remote1.seeds: $remote_ip
78+
cluster.remote.remote1.seeds: $remote_ip
7979

80-
- match: {transient: {search.remote.remote1.seeds: $remote_ip}}
80+
- match: {transient: {cluster.remote.remote1.seeds: $remote_ip}}
8181

8282
- do:
8383
cluster.remote_info: {}
@@ -87,9 +87,9 @@
8787
cluster.put_settings:
8888
body:
8989
transient:
90-
search.remote.remote1.skip_unavailable: true
90+
cluster.remote.remote1.skip_unavailable: true
9191

92-
- is_true: transient.search.remote.remote1.skip_unavailable
92+
- is_true: transient.cluster.remote.remote1.skip_unavailable
9393

9494
- do:
9595
cluster.remote_info: {}
@@ -100,9 +100,9 @@
100100
cluster.put_settings:
101101
body:
102102
transient:
103-
search.remote.remote1.skip_unavailable: false
103+
cluster.remote.remote1.skip_unavailable: false
104104

105-
- is_false: transient.search.remote.remote1.skip_unavailable
105+
- is_false: transient.cluster.remote.remote1.skip_unavailable
106106

107107
- do:
108108
cluster.remote_info: {}
@@ -113,7 +113,7 @@
113113
cluster.put_settings:
114114
body:
115115
transient:
116-
search.remote.remote1.skip_unavailable: null
116+
cluster.remote.remote1.skip_unavailable: null
117117

118118
- match: {transient: {}}
119119

@@ -126,5 +126,5 @@
126126
cluster.put_settings:
127127
body:
128128
transient:
129-
search.remote.remote1.seeds: null
130-
search.remote.remote1.skip_unavailable: null
129+
cluster.remote.remote1.seeds: null
130+
cluster.remote.remote1.skip_unavailable: null

server/src/main/java/org/elasticsearch/common/settings/ClusterSettings.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -273,12 +273,19 @@ public void apply(Settings value, Settings current, Settings previous) {
273273
ElectMasterService.DISCOVERY_ZEN_MINIMUM_MASTER_NODES_SETTING,
274274
TransportSearchAction.SHARD_COUNT_LIMIT_SETTING,
275275
RemoteClusterAware.REMOTE_CLUSTERS_SEEDS,
276+
RemoteClusterAware.SEARCH_REMOTE_CLUSTERS_SEEDS,
276277
RemoteClusterAware.REMOTE_CLUSTERS_PROXY,
278+
RemoteClusterAware.SEARCH_REMOTE_CLUSTERS_PROXY,
277279
RemoteClusterService.REMOTE_CLUSTER_SKIP_UNAVAILABLE,
280+
RemoteClusterService.SEARCH_REMOTE_CLUSTER_SKIP_UNAVAILABLE,
278281
RemoteClusterService.REMOTE_CONNECTIONS_PER_CLUSTER,
282+
RemoteClusterService.SEARCH_REMOTE_CONNECTIONS_PER_CLUSTER,
279283
RemoteClusterService.REMOTE_INITIAL_CONNECTION_TIMEOUT_SETTING,
284+
RemoteClusterService.SEARCH_REMOTE_INITIAL_CONNECTION_TIMEOUT_SETTING,
280285
RemoteClusterService.REMOTE_NODE_ATTRIBUTE,
286+
RemoteClusterService.SEARCH_REMOTE_NODE_ATTRIBUTE,
281287
RemoteClusterService.ENABLE_REMOTE_CLUSTERS,
288+
RemoteClusterService.SEARCH_ENABLE_REMOTE_CLUSTERS,
282289
TransportService.TRACE_LOG_EXCLUDE_SETTING,
283290
TransportService.TRACE_LOG_INCLUDE_SETTING,
284291
TransportCloseIndexAction.CLUSTER_INDICES_CLOSE_ENABLE_SETTING,

0 commit comments

Comments
 (0)