From 0a3ba27d2730fd2de189e42b199eb6a26c804ab7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Edu=20Gonz=C3=A1lez=20de=20la=20Herr=C3=A1n?=
<25320357+eedugon@users.noreply.github.com>
Date: Tue, 7 Oct 2025 09:00:23 +0200
Subject: [PATCH 1/7] ipv6 support for remote addresses added
---
.../_snippets/rcs-kibana-api-snippet-self.md | 30 +++++++++++++++++
.../ec-remote-cluster-self-managed.md | 24 ++------------
.../ece-remote-cluster-self-managed.md | 33 +++----------------
.../remote-clusters-api-key.md | 13 +++++---
.../remote-clusters/remote-clusters-cert.md | 9 +++--
5 files changed, 52 insertions(+), 57 deletions(-)
create mode 100644 deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md
diff --git a/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md b/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md
new file mode 100644
index 0000000000..07ce24b395
--- /dev/null
+++ b/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md
@@ -0,0 +1,30 @@
+
+% EC - SELF / ECE - SELF
+1. Open the {{kib}} main menu, and select **Stack Management > Data > Remote Clusters > Add a remote cluster**.
+2. In **Select connection type**, choose the authentication mechanism you prepared earlier (**API keys** or **Certificates**), and click **Next**.
+
+3. In **Add connection information**, fill in the following fields:
+
+ * **Remote cluster name**: This *cluster alias* is a unique identifier that represents the connection to the remote cluster and is used to distinguish local and remote indices.
+
+ When using API key authentication, this alias must match the **Remote cluster name** you configured when adding the API key in the Cloud UI.
+ * **Remote address**: Enter the endpoint of the remote self-managed cluster, including the hostname, FQDN, or IP address, and the port. Both IPv4 and IPv6 ({applies_to}`stack: ga 9.2`) addresses are supported.
+
+ ::::{tip}
+ Use the correct port for your authentication method:
+ * **API keys**: Use the port configured in the remote cluster interface of the remote cluster (defaults to `9443`).
+ * **TLS Certificates**: Use the {{es}} transport port (defaults to `9300`).
+ ::::
+
+ * **Configure advanced options** (optional): Expand this section if you need to customize additional settings.
+ * **TLS server name**: Specify a value if the certificate presented by the remote cluster is signed for a different name than the remote address.
+ * **Socket connections**: Define the number of connections to open with the remote cluster.
+
+ For a full list of available client connection settings, refer to [remote cluster settings reference](elasticsearch://reference/elasticsearch/configuration-reference/remote-clusters.md#remote-cluster-proxy-settings).
+
+4. Click **Next**.
+5. In **Confirm setup**, click **Add remote cluster** (you have already established trust in a previous step).
diff --git a/deploy-manage/remote-clusters/ec-remote-cluster-self-managed.md b/deploy-manage/remote-clusters/ec-remote-cluster-self-managed.md
index ba88126f11..0a98acd8aa 100644
--- a/deploy-manage/remote-clusters/ec-remote-cluster-self-managed.md
+++ b/deploy-manage/remote-clusters/ec-remote-cluster-self-managed.md
@@ -221,28 +221,8 @@ On the local cluster, add the remote cluster using {{kib}} or the {{es}} API.
### Using {{kib}} [ec_using_kibana_4]
-1. Open the {{kib}} main menu, and select **Stack Management > Data > Remote Clusters > Add a remote cluster**.
-2. Enable **Manually enter proxy address and server name**.
-3. Fill in the following fields:
-
- * **Name**: This *cluster alias* is a unique identifier that represents the connection to the remote cluster and is used to distinguish local and remote indices.
-
- When using API key authentication, this alias must match the **Remote cluster name** you configured when adding the API key in the Cloud UI.
- * **Proxy address**: This value can be found on the **Security** page of the {{ech}} deployment you want to use as a remote.
-
- ::::{tip}
- If you’re using API keys as security model, change the port to `9443`.
- ::::
-
- * **Server name**: This value can be found on the **Security** page of the {{ech}} deployment you want to use as a remote.
-
- ::::{note}
- If you’re having issues establishing the connection and the remote cluster is part of an {{ece}} environment with a private certificate, make sure that the proxy address and server name match with the the certificate information. For more information, refer to [Administering endpoints in {{ece}}](/deploy-manage/deploy/cloud-enterprise/change-endpoint-urls.md).
- ::::
-
-4. Click **Next**.
-5. Click **Add remote cluster** (you have already established trust in a previous step).
-
+:::{include} _snippets/rcs-kibana-api-snippet-self.md
+:::
### Using the {{es}} API [ec_using_the_elasticsearch_api_4]
diff --git a/deploy-manage/remote-clusters/ece-remote-cluster-self-managed.md b/deploy-manage/remote-clusters/ece-remote-cluster-self-managed.md
index cca11e1893..be55db8ba7 100644
--- a/deploy-manage/remote-clusters/ece-remote-cluster-self-managed.md
+++ b/deploy-manage/remote-clusters/ece-remote-cluster-self-managed.md
@@ -220,39 +220,14 @@ On the local cluster, add the remote cluster using {{kib}} or the {{es}} API.
### Using {{kib}} [ece_using_kibana_4]
-1. Open the {{kib}} main menu, and select **Stack Management > Data > Remote Clusters > Add a remote cluster**.
-2. Enable **Manually enter proxy address and server name**.
-3. Fill in the following fields:
-
- * **Name**: This *cluster alias* is a unique identifier that represents the connection to the remote cluster and is used to distinguish local and remote indices.
-
- When using API key authentication, this alias must match the **Remote cluster name** you configured when adding the API key in the Cloud UI.
- * **Proxy address**: This value can be found on the **Security** page of the {{ece}} deployment you want to use as a remote.
-
- ::::{tip}
- If you’re using API keys as security model, change the port into `9443`.
- ::::
-
- * **Server name**: This value can be found on the **Security** page of the {{ece}} deployment you want to use as a remote.
-
- :::{image} /deploy-manage/images/cloud-enterprise-ce-copy-remote-cluster-parameters.png
- :alt: Remote Cluster Parameters in Deployment
- :screenshot:
- :::
-
- ::::{note}
- If you’re having issues establishing the connection and the remote cluster is part of an {{ece}} environment with a private certificate, make sure that the proxy address and server name match with the the certificate information. For more information, refer to [Administering endpoints in {{ece}}](/deploy-manage/deploy/cloud-enterprise/change-endpoint-urls.md).
- ::::
-
-4. Click **Next**.
-5. Click **Add remote cluster** (you have already established trust in a previous step).
+:::{include} _snippets/rcs-kibana-api-snippet-self.md
+:::
+% ECE locals only
::::{note}
-This configuration of remote clusters uses the [Proxy mode](/deploy-manage/remote-clusters/remote-clusters-self-managed.md#proxy-mode) and it requires that the allocators can communicate via http with the proxies.
+This configuration of remote clusters uses the [Proxy mode](/deploy-manage/remote-clusters/remote-clusters-self-managed.md#proxy-mode) and requires the ECE allocators to be able to connect to the remote address endpoint.
::::
-
-
### Using the {{es}} API [ece_using_the_elasticsearch_api_4]
To configure a deployment as a remote cluster, use the [cluster update settings API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-cluster-put-settings). Configure the following fields:
diff --git a/deploy-manage/remote-clusters/remote-clusters-api-key.md b/deploy-manage/remote-clusters/remote-clusters-api-key.md
index 9144ec25ad..3f90621c1b 100644
--- a/deploy-manage/remote-clusters/remote-clusters-api-key.md
+++ b/deploy-manage/remote-clusters/remote-clusters-api-key.md
@@ -148,21 +148,26 @@ If a remote cluster is part of an {{ech}} (ECH) deployment, the remote cluster s
You must have the `manage` cluster privilege to connect remote clusters.
::::
-
The local cluster uses the [remote cluster interface](elasticsearch://reference/elasticsearch/configuration-reference/networking-settings.md) to establish communication with remote clusters. The coordinating nodes in the local cluster establish [long-lived](elasticsearch://reference/elasticsearch/configuration-reference/networking-settings.md#long-lived-connections) TCP connections with specific nodes in the remote cluster. {{es}} requires these connections to remain open, even if the connections are idle for an extended period.
+### Using {{kib}}
+
To add a remote cluster from Stack Management in {{kib}}:
1. Select **Remote Clusters** from the side navigation.
2. Enter a name (*cluster alias*) for the remote cluster.
-3. Specify the {{es}} endpoint URL, or the IP address or host name of the remote cluster followed by the remote cluster port (defaults to `9443`). For example, `cluster.es.eastus2.staging.azure.foundit.no:9443` or `192.168.1.1:9443`.
+3. Specify the {{es}} endpoint URL, the IP address, or host name of the remote cluster, followed by the remote cluster port (defaults to `9443`). For example, `cluster.es.eastus2.staging.azure.foundit.no:9443` or `192.168.1.1:9443`.
+
+ Both IPv4 and IPv6 ({applies_to}`stack: ga 9.2`) addresses are supported.
+
+### Using the {{es}} API
+
+Alternatively, use the [cluster update settings API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-cluster-put-settings) to add a remote cluster. You can also use this API to dynamically configure remote clusters for *every* node in the local cluster. To configure remote clusters on individual nodes in the local cluster, define static settings in [`elasticsearch.yml`](/deploy-manage/stack-settings.md) for each node.
::::{note}
If the remote cluster is part of an {{ech}}, {{ece}}, or {{eck}} deployment, configure the connection to use `proxy`. The default `sniff` mode doesn't work in these environments. Refer to the [connection modes](/deploy-manage/remote-clusters/remote-clusters-self-managed.md#sniff-proxy-modes) description for more information.
::::
-Alternatively, use the [cluster update settings API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-cluster-put-settings) to add a remote cluster. You can also use this API to dynamically configure remote clusters for *every* node in the local cluster. To configure remote clusters on individual nodes in the local cluster, define static settings in [`elasticsearch.yml`](/deploy-manage/stack-settings.md) for each node.
-
The following request adds a remote cluster with an alias of `cluster_one`. This *cluster alias* is a unique identifier that represents the connection to the remote cluster and is used to distinguish between local and remote indices.
```console
diff --git a/deploy-manage/remote-clusters/remote-clusters-cert.md b/deploy-manage/remote-clusters/remote-clusters-cert.md
index 53591dfe9e..d68f6c8b3e 100644
--- a/deploy-manage/remote-clusters/remote-clusters-cert.md
+++ b/deploy-manage/remote-clusters/remote-clusters-cert.md
@@ -58,14 +58,19 @@ Before using {{ccr}} or {{ccs}} with secured {{es}} clusters, complete the follo
You must have the `manage` cluster privilege to connect remote clusters.
::::
-
The local cluster uses the [transport interface](elasticsearch://reference/elasticsearch/configuration-reference/networking-settings.md) to establish communication with remote clusters. The coordinating nodes in the local cluster establish [long-lived](elasticsearch://reference/elasticsearch/configuration-reference/networking-settings.md#long-lived-connections) TCP connections with specific nodes in the remote cluster. {{es}} requires these connections to remain open, even if the connections are idle for an extended period.
+### Using {{kib}}
+
To add a remote cluster from Stack Management in {{kib}}:
1. Select **Remote Clusters** from the side navigation.
2. Enter a name (*cluster alias*) for the remote cluster.
-3. Specify the {{es}} endpoint URL, or the IP address or host name of the remote cluster followed by the transport port (defaults to `9300`). For example, `cluster.es.eastus2.staging.azure.foundit.no:9300` or `192.168.1.1:9300`.
+3. Specify the {{es}} endpoint URL, the IP address, or host name of the remote cluster followed by the transport port (defaults to `9300`). For example, `cluster.es.eastus2.staging.azure.foundit.no:9300` or `192.168.1.1:9300`.
+
+ Both IPv4 and IPv6 ({applies_to}`stack: ga 9.2`) addresses are supported.
+
+### Using the {{es}} API
Alternatively, use the [cluster update settings API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-cluster-put-settings) to add a remote cluster. You can also use this API to dynamically configure remote clusters for *every* node in the local cluster. To configure remote clusters on individual nodes in the local cluster, define static settings in [`elasticsearch.yml`](/deploy-manage/stack-settings.md) for each node.
From 19566432bbafc1dfac9189f79eebefc9c5ebaa3a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Edu=20Gonz=C3=A1lez=20de=20la=20Herr=C3=A1n?=
<25320357+eedugon@users.noreply.github.com>
Date: Tue, 7 Oct 2025 09:12:22 +0200
Subject: [PATCH 2/7] ipv6 support for remote addresses added
---
.../remote-clusters/_snippets/rcs-kibana-api-snippet-self.md | 1 -
1 file changed, 1 deletion(-)
diff --git a/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md b/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md
index 07ce24b395..cc62c6ae14 100644
--- a/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md
+++ b/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md
@@ -3,7 +3,6 @@ This snippet is in use in the following locations:
- ece-remote-cluster-self-managed.md
- ec-remote-cluster-self-managed.md
-->
-% EC - SELF / ECE - SELF
1. Open the {{kib}} main menu, and select **Stack Management > Data > Remote Clusters > Add a remote cluster**.
2. In **Select connection type**, choose the authentication mechanism you prepared earlier (**API keys** or **Certificates**), and click **Next**.
From f4a081fef2627f2222739559eeb8d7391ddb88ff Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Edu=20Gonz=C3=A1lez=20de=20la=20Herr=C3=A1n?=
<25320357+eedugon@users.noreply.github.com>
Date: Tue, 7 Oct 2025 10:38:03 +0200
Subject: [PATCH 3/7] ipv6 syntax added and elasticsearch api method fixed
---
.../rcs-elasticsearch-api-snippet-self.md | 42 +++++++++
.../_snippets/rcs-kibana-api-snippet-self.md | 6 +-
.../ec-remote-cluster-self-managed.md | 79 +----------------
.../ece-remote-cluster-self-managed.md | 88 ++-----------------
4 files changed, 54 insertions(+), 161 deletions(-)
create mode 100644 deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md
diff --git a/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md b/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md
new file mode 100644
index 0000000000..ec336b0b4b
--- /dev/null
+++ b/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md
@@ -0,0 +1,42 @@
+
+To configure a deployment as a remote cluster, use the [cluster update settings API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-cluster-put-settings). Configure the following fields:
+
+* `mode`: `proxy`
+* `proxy_address`: Enter the endpoint of the remote self-managed cluster, including the hostname, FQDN, or IP address, and the port. Both IPv4 and IPv6 ({applies_to}`stack: ga 9.2`) addresses are supported.
+
+ ::::{note}
+ Use the correct port for your authentication method:
+ * **API keys**: Use the port configured in the remote cluster interface of the remote cluster (defaults to `9443`).
+ * **TLS Certificates**: Use the {{es}} transport port (defaults to `9300`).
+
+ When using an IPv6 address ({applies_to}`stack: ga 9.2`), enclose it in square brackets followed by the port number. For example: `[2001:db8::1]:9443`.
+ ::::
+
+* `server_name`: Specify a value if the certificate presented by the remote cluster is signed for a different name than the proxy_address.
+
+This is an example of the API call to `_cluster/settings`:
+
+```json
+PUT /_cluster/settings
+{
+ "persistent": {
+ "cluster": {
+ "remote": {
+ "alias-for-my-remote-cluster": {
+ "mode":"proxy",
+ "proxy_address": "a542184a7a7d45b88b83f95392f450ab.192.168.44.10.ip.es.io:9300",
+ "server_name": "a542184a7a7d45b88b83f95392f450ab.192.168.44.10.ip.es.io"
+ }
+ }
+ }
+ }
+}
+```
+
+::::{note}
+When using API key authentication, the cluster alias must match the one you configured when adding the API key in the Cloud UI.
+::::
\ No newline at end of file
diff --git a/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md b/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md
index cc62c6ae14..8c74aeef87 100644
--- a/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md
+++ b/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md
@@ -13,10 +13,12 @@ This snippet is in use in the following locations:
When using API key authentication, this alias must match the **Remote cluster name** you configured when adding the API key in the Cloud UI.
* **Remote address**: Enter the endpoint of the remote self-managed cluster, including the hostname, FQDN, or IP address, and the port. Both IPv4 and IPv6 ({applies_to}`stack: ga 9.2`) addresses are supported.
- ::::{tip}
+ ::::{note}
Use the correct port for your authentication method:
* **API keys**: Use the port configured in the remote cluster interface of the remote cluster (defaults to `9443`).
- * **TLS Certificates**: Use the {{es}} transport port (defaults to `9300`).
+ * **TLS Certificates**: Use the {{es}} transport port (defaults to `9300`).
+
+ When using an IPv6 address ({applies_to}`stack: ga 9.2`), enclose it in square brackets followed by the port number. For example: `[2001:db8::1]:9443`.
::::
* **Configure advanced options** (optional): Expand this section if you need to customize additional settings.
diff --git a/deploy-manage/remote-clusters/ec-remote-cluster-self-managed.md b/deploy-manage/remote-clusters/ec-remote-cluster-self-managed.md
index 0a98acd8aa..04c25ca90f 100644
--- a/deploy-manage/remote-clusters/ec-remote-cluster-self-managed.md
+++ b/deploy-manage/remote-clusters/ec-remote-cluster-self-managed.md
@@ -226,83 +226,8 @@ On the local cluster, add the remote cluster using {{kib}} or the {{es}} API.
### Using the {{es}} API [ec_using_the_elasticsearch_api_4]
-To configure a deployment as a remote cluster, use the [cluster update settings API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-cluster-put-settings). Configure the following fields:
-
-* `mode`: `proxy`
-* `proxy_address`: This value can be found on the **Security** page of the {{ech}} deployment you want to use as a remote. Also, using the API, this value can be obtained from the {{es}} resource info, concatenating the field `metadata.endpoint` and port `9400` using a semicolon.
-
- ::::{tip}
- If you’re using API keys as security model, change the port into `9443`.
- ::::
-
-
-* `server_name`: This value can be found on the **Security** page of the {{ech}} deployment you want to use as a remote. Also, using the API, this can be obtained from the {{es}} resource info field `metadata.endpoint`.
-
-This is an example of the API call to `_cluster/settings`:
-
-```json
-PUT /_cluster/settings
-{
- "persistent": {
- "cluster": {
- "remote": {
- "alias-for-my-remote-cluster": {
- "mode":"proxy",
- "proxy_address": "a542184a7a7d45b88b83f95392f450ab.192.168.44.10.ip.es.io:9400",
- "server_name": "a542184a7a7d45b88b83f95392f450ab.192.168.44.10.ip.es.io"
- }
- }
- }
- }
-}
-```
-
-::::{note}
-When using API key authentication, the cluster alias must match the one you configured when adding the API key in the Cloud UI.
-::::
-
-### Using the {{ecloud}} RESTful API [ec_using_the_elasticsearch_service_restful_api_4]
-
-::::{note}
-This section only applies if you’re using TLS certificates as cross-cluster security model and when both clusters belong to the same organization. For other scenarios, the [{{es}} API](#ec_using_the_elasticsearch_api_4) should be used instead.
-::::
-
-
-```sh
-curl -H 'Content-Type: application/json' -X PUT -H "Authorization: ApiKey $EC_API_KEY" https://api.elastic-cloud.com/api/v1/deployments/$DEPLOYMENT_ID/elasticsearch/$REF_ID/remote-clusters -d '
-{
- "resources" : [
- {
- "deployment_id": "$DEPLOYMENT_ID_REMOTE",
- "elasticsearch_ref_id": "$REF_ID_REMOTE",
- "alias": "alias-your-remote",
- "skip_unavailable" : true
- }
- ]
-}'
-```
-
-`DEPLOYMENT_ID_REMOTE`
-: The ID of your remote deployment, as shown in the Cloud UI or obtained through the API.
-
-`REF_ID_REMOTE`
-: The unique ID of the {{es}} resources inside your remote deployment (you can obtain these values through the API).
-
-Note the following when using the {{ecloud}} RESTful API:
-
-1. A cluster alias must contain only letters, numbers, dashes (-), or underscores (_).
-2. To learn about skipping disconnected clusters, refer to the [{{es}} documentation](/solutions/search/cross-cluster-search.md#skip-unavailable-clusters).
-3. When remote clusters are already configured for a deployment, the `PUT` request replaces the existing configuration with the new configuration passed. Passing an empty array of resources will remove all remote clusters.
-
-The following API request retrieves the remote clusters configuration:
-
-```sh
-curl -X GET -H "Authorization: ApiKey $EC_API_KEY" https://api.elastic-cloud.com/api/v1/deployments/$DEPLOYMENT_ID/elasticsearch/$REF_ID/remote-clusters
-```
-
-::::{note}
-The response will include just the remote clusters from the same {{ecloud}} organization. In order to obtain the whole list of remote clusters, use {{kib}} or the [{{es}} API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-cluster-remote-info) directly.
-::::
+:::{include} _snippets/rcs-elasticsearch-api-snippet-self.md
+:::
## Configure roles and users [ec_configure_roles_and_users_4]
diff --git a/deploy-manage/remote-clusters/ece-remote-cluster-self-managed.md b/deploy-manage/remote-clusters/ece-remote-cluster-self-managed.md
index be55db8ba7..b8466f7292 100644
--- a/deploy-manage/remote-clusters/ece-remote-cluster-self-managed.md
+++ b/deploy-manage/remote-clusters/ece-remote-cluster-self-managed.md
@@ -217,96 +217,20 @@ You can now connect remotely to the trusted clusters.
On the local cluster, add the remote cluster using {{kib}} or the {{es}} API.
-
-### Using {{kib}} [ece_using_kibana_4]
-
-:::{include} _snippets/rcs-kibana-api-snippet-self.md
-:::
-
% ECE locals only
::::{note}
This configuration of remote clusters uses the [Proxy mode](/deploy-manage/remote-clusters/remote-clusters-self-managed.md#proxy-mode) and requires the ECE allocators to be able to connect to the remote address endpoint.
::::
-### Using the {{es}} API [ece_using_the_elasticsearch_api_4]
-
-To configure a deployment as a remote cluster, use the [cluster update settings API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-cluster-put-settings). Configure the following fields:
-
-* `mode`: `proxy`
-* `proxy_address`: This value can be found on the **Security** page of the {{ece}} deployment you want to use as a remote. Also, using the API, this value can be obtained from the {{es}} resource info, concatenating the field `metadata.endpoint` and port `9300` using a semicolon.
-
- ::::{tip}
- If you’re using API keys as security model, change the port into `9443`.
- ::::
-
-
-* `server_name`: This value can be found on the **Security** page of the {{ece}} deployment you want to use as a remote. Also, using the API, this can be obtained from the {{es}} resource info field `metadata.endpoint`.
-
-This is an example of the API call to `_cluster/settings`:
-
-```json
-PUT /_cluster/settings
-{
- "persistent": {
- "cluster": {
- "remote": {
- "alias-for-my-remote-cluster": {
- "mode":"proxy",
- "proxy_address": "a542184a7a7d45b88b83f95392f450ab.192.168.44.10.ip.es.io:9300",
- "server_name": "a542184a7a7d45b88b83f95392f450ab.192.168.44.10.ip.es.io"
- }
- }
- }
- }
-}
-```
-
-::::{note}
-When using API key authentication, the cluster alias must match the one you configured when adding the API key in the Cloud UI.
-::::
-
-### Using the {{ece}} RESTful API [ece_using_the_elastic_cloud_enterprise_restful_api_4]
-
-::::{note}
-This section only applies if you’re using TLS certificates as cross-cluster security model and when both clusters belong to the same ECE environment. For other scenarios, the [{{es}} API](#ece_using_the_elasticsearch_api_4) should be used instead.
-::::
-
-
-```sh
-curl -k -H 'Content-Type: application/json' -X PUT -H "Authorization: ApiKey $ECE_API_KEY" https://$COORDINATOR_HOST:12443/api/v1/deployments/$DEPLOYMENT_ID/elasticsearch/$REF_ID/remote-clusters -d '
-{
- "resources" : [
- {
- "deployment_id": "$DEPLOYMENT_ID_REMOTE",
- "elasticsearch_ref_id": "$REF_ID_REMOTE",
- "alias": "alias-your-remote",
- "skip_unavailable" : true
- }
- ]
-}'
-```
-
-`DEPLOYMENT_ID_REMOTE`
-: The ID of your remote deployment, as shown in the Cloud UI or obtained through the API.
-
-`REF_ID_REMOTE`
-: The unique ID of the {{es}} resources inside your remote deployment (you can obtain these values through the API).
-
-Note the following when using the {{ece}} RESTful API:
-
-1. A cluster alias must contain only letters, numbers, dashes (-), or underscores (_).
-2. To learn about skipping disconnected clusters, refer to the [{{es}} documentation](/solutions/search/cross-cluster-search.md#skip-unavailable-clusters).
-3. When remote clusters are already configured for a deployment, the `PUT` request replaces the existing configuration with the new configuration passed. Passing an empty array of resources will remove all remote clusters.
+### Using {{kib}} [ece_using_kibana_4]
-The following API request retrieves the remote clusters configuration:
+:::{include} _snippets/rcs-kibana-api-snippet-self.md
+:::
-```sh
-curl -k -X GET -H "Authorization: ApiKey $ECE_API_KEY" https://$COORDINATOR_HOST:12443/api/v1/deployments/$DEPLOYMENT_ID/elasticsearch/$REF_ID/remote-clusters
-```
+### Using the {{es}} API [ece_using_the_elasticsearch_api_4]
-::::{note}
-The response includes just the remote clusters from the same ECE environment. In order to obtain the whole list of remote clusters, use {{kib}} or the [{{es}} API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-cluster-remote-info) directly.
-::::
+:::{include} _snippets/rcs-elasticsearch-api-snippet-self.md
+:::
## Configure roles and users [ece_configure_roles_and_users_4]
From 70bc48d58853fe8140bc202ad9c8dd278b73920a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Edu=20Gonz=C3=A1lez=20de=20la=20Herr=C3=A1n?=
<25320357+eedugon@users.noreply.github.com>
Date: Tue, 7 Oct 2025 10:43:24 +0200
Subject: [PATCH 4/7] ipv6 syntax added and elasticsearch api method fixed
---
.../_snippets/rcs-elasticsearch-api-snippet-self.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md b/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md
index ec336b0b4b..bb6b27c847 100644
--- a/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md
+++ b/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md
@@ -3,7 +3,7 @@ This snippet is in use in the following locations:
- ece-remote-cluster-self-managed.md
- ec-remote-cluster-self-managed.md
-->
-To configure a deployment as a remote cluster, use the [cluster update settings API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-cluster-put-settings). Configure the following fields:
+To configure a self-managed cluster as a remote cluster, use the [cluster update settings API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-cluster-put-settings). Configure the following fields:
* `mode`: `proxy`
* `proxy_address`: Enter the endpoint of the remote self-managed cluster, including the hostname, FQDN, or IP address, and the port. Both IPv4 and IPv6 ({applies_to}`stack: ga 9.2`) addresses are supported.
From ca6ea73315b4b2b36df82b3cfe8ca8ee2dc1ff38 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Edu=20Gonz=C3=A1lez=20de=20la=20Herr=C3=A1n?=
<25320357+eedugon@users.noreply.github.com>
Date: Tue, 7 Oct 2025 11:40:57 +0200
Subject: [PATCH 5/7] note integrated into text
---
.../_snippets/rcs-elasticsearch-api-snippet-self.md | 4 +---
.../remote-clusters/_snippets/rcs-kibana-api-snippet-self.md | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md b/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md
index bb6b27c847..2d8a13cc76 100644
--- a/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md
+++ b/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md
@@ -8,13 +8,11 @@ To configure a self-managed cluster as a remote cluster, use the [cluster update
* `mode`: `proxy`
* `proxy_address`: Enter the endpoint of the remote self-managed cluster, including the hostname, FQDN, or IP address, and the port. Both IPv4 and IPv6 ({applies_to}`stack: ga 9.2`) addresses are supported.
- ::::{note}
- Use the correct port for your authentication method:
+ Make sure you use the correct port for your authentication method:
* **API keys**: Use the port configured in the remote cluster interface of the remote cluster (defaults to `9443`).
* **TLS Certificates**: Use the {{es}} transport port (defaults to `9300`).
When using an IPv6 address ({applies_to}`stack: ga 9.2`), enclose it in square brackets followed by the port number. For example: `[2001:db8::1]:9443`.
- ::::
* `server_name`: Specify a value if the certificate presented by the remote cluster is signed for a different name than the proxy_address.
diff --git a/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md b/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md
index 8c74aeef87..28a4d629fd 100644
--- a/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md
+++ b/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md
@@ -13,13 +13,11 @@ This snippet is in use in the following locations:
When using API key authentication, this alias must match the **Remote cluster name** you configured when adding the API key in the Cloud UI.
* **Remote address**: Enter the endpoint of the remote self-managed cluster, including the hostname, FQDN, or IP address, and the port. Both IPv4 and IPv6 ({applies_to}`stack: ga 9.2`) addresses are supported.
- ::::{note}
- Use the correct port for your authentication method:
+ Make sure you use the correct port for your authentication method:
* **API keys**: Use the port configured in the remote cluster interface of the remote cluster (defaults to `9443`).
* **TLS Certificates**: Use the {{es}} transport port (defaults to `9300`).
When using an IPv6 address ({applies_to}`stack: ga 9.2`), enclose it in square brackets followed by the port number. For example: `[2001:db8::1]:9443`.
- ::::
* **Configure advanced options** (optional): Expand this section if you need to customize additional settings.
* **TLS server name**: Specify a value if the certificate presented by the remote cluster is signed for a different name than the remote address.
From c32e091b07b6f320ebb0b6e0a5b3862902796994 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Edu=20Gonz=C3=A1lez=20de=20la=20Herr=C3=A1n?=
<25320357+eedugon@users.noreply.github.com>
Date: Tue, 7 Oct 2025 20:59:29 +0200
Subject: [PATCH 6/7] Update
deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md
Co-authored-by: florent-leborgne
---
.../_snippets/rcs-elasticsearch-api-snippet-self.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md b/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md
index 2d8a13cc76..8eb4c61cce 100644
--- a/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md
+++ b/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md
@@ -12,7 +12,7 @@ To configure a self-managed cluster as a remote cluster, use the [cluster update
* **API keys**: Use the port configured in the remote cluster interface of the remote cluster (defaults to `9443`).
* **TLS Certificates**: Use the {{es}} transport port (defaults to `9300`).
- When using an IPv6 address ({applies_to}`stack: ga 9.2`), enclose it in square brackets followed by the port number. For example: `[2001:db8::1]:9443`.
+ When using an IPv6 address, enclose it in square brackets followed by the port number. For example: `[2001:db8::1]:9443`.
* `server_name`: Specify a value if the certificate presented by the remote cluster is signed for a different name than the proxy_address.
From 1033308415aff91c42fbd9f9d761150f3418d75c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Edu=20Gonz=C3=A1lez=20de=20la=20Herr=C3=A1n?=
<25320357+eedugon@users.noreply.github.com>
Date: Wed, 8 Oct 2025 08:36:47 +0200
Subject: [PATCH 7/7] applies_to badges removed
---
.../_snippets/rcs-elasticsearch-api-snippet-self.md | 2 +-
.../remote-clusters/_snippets/rcs-kibana-api-snippet-self.md | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md b/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md
index 8eb4c61cce..444b10d36a 100644
--- a/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md
+++ b/deploy-manage/remote-clusters/_snippets/rcs-elasticsearch-api-snippet-self.md
@@ -6,7 +6,7 @@ This snippet is in use in the following locations:
To configure a self-managed cluster as a remote cluster, use the [cluster update settings API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-cluster-put-settings). Configure the following fields:
* `mode`: `proxy`
-* `proxy_address`: Enter the endpoint of the remote self-managed cluster, including the hostname, FQDN, or IP address, and the port. Both IPv4 and IPv6 ({applies_to}`stack: ga 9.2`) addresses are supported.
+* `proxy_address`: Enter the endpoint of the remote self-managed cluster, including the hostname, FQDN, or IP address, and the port. Both IPv4 and IPv6 addresses are supported.
Make sure you use the correct port for your authentication method:
* **API keys**: Use the port configured in the remote cluster interface of the remote cluster (defaults to `9443`).
diff --git a/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md b/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md
index 28a4d629fd..efb399d0c4 100644
--- a/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md
+++ b/deploy-manage/remote-clusters/_snippets/rcs-kibana-api-snippet-self.md
@@ -11,13 +11,13 @@ This snippet is in use in the following locations:
* **Remote cluster name**: This *cluster alias* is a unique identifier that represents the connection to the remote cluster and is used to distinguish local and remote indices.
When using API key authentication, this alias must match the **Remote cluster name** you configured when adding the API key in the Cloud UI.
- * **Remote address**: Enter the endpoint of the remote self-managed cluster, including the hostname, FQDN, or IP address, and the port. Both IPv4 and IPv6 ({applies_to}`stack: ga 9.2`) addresses are supported.
+ * **Remote address**: Enter the endpoint of the remote self-managed cluster, including the hostname, FQDN, or IP address, and the port. Starting with {{kib}} 9.2, this field also supports IPv6 addresses.
Make sure you use the correct port for your authentication method:
* **API keys**: Use the port configured in the remote cluster interface of the remote cluster (defaults to `9443`).
* **TLS Certificates**: Use the {{es}} transport port (defaults to `9300`).
- When using an IPv6 address ({applies_to}`stack: ga 9.2`), enclose it in square brackets followed by the port number. For example: `[2001:db8::1]:9443`.
+ When using an IPv6 address, enclose it in square brackets followed by the port number. For example: `[2001:db8::1]:9443`.
* **Configure advanced options** (optional): Expand this section if you need to customize additional settings.
* **TLS server name**: Specify a value if the certificate presented by the remote cluster is signed for a different name than the remote address.