Prerequisites
editPrerequisites
editBefore completing this tutorial, set up cross-cluster replication to connect two clusters and configure a follower index.
In this tutorial, kibana_sample_data_ecommerce
is replicated from clusterA
to clusterB
.
resp = client.cluster.put_settings( persistent={ "cluster": { "remote": { "clusterA": { "mode": "proxy", "skip_unavailable": "true", "server_name": "clustera.es.region-a.gcp.elastic-cloud.com", "proxy_socket_connections": "18", "proxy_address": "clustera.es.region-a.gcp.elastic-cloud.com:9400" } } } }, ) print(resp)
response = client.cluster.put_settings( body: { persistent: { cluster: { remote: { "clusterA": { mode: 'proxy', skip_unavailable: 'true', server_name: 'clustera.es.region-a.gcp.elastic-cloud.com', proxy_socket_connections: '18', proxy_address: 'clustera.es.region-a.gcp.elastic-cloud.com:9400' } } } } } ) puts response
const response = await client.cluster.putSettings({ persistent: { cluster: { remote: { clusterA: { mode: "proxy", skip_unavailable: "true", server_name: "clustera.es.region-a.gcp.elastic-cloud.com", proxy_socket_connections: "18", proxy_address: "clustera.es.region-a.gcp.elastic-cloud.com:9400", }, }, }, }, }); console.log(response);
### On clusterB ### PUT _cluster/settings { "persistent": { "cluster": { "remote": { "clusterA": { "mode": "proxy", "skip_unavailable": "true", "server_name": "clustera.es.region-a.gcp.elastic-cloud.com", "proxy_socket_connections": "18", "proxy_address": "clustera.es.region-a.gcp.elastic-cloud.com:9400" } } } } }
resp = client.ccr.follow( index="kibana_sample_data_ecommerce2", wait_for_active_shards="1", remote_cluster="clusterA", leader_index="kibana_sample_data_ecommerce", ) print(resp)
const response = await client.ccr.follow({ index: "kibana_sample_data_ecommerce2", wait_for_active_shards: 1, remote_cluster: "clusterA", leader_index: "kibana_sample_data_ecommerce", }); console.log(response);
### On clusterB ### PUT /kibana_sample_data_ecommerce2/_ccr/follow?wait_for_active_shards=1 { "remote_cluster": "clusterA", "leader_index": "kibana_sample_data_ecommerce" }
Writes (such as ingestion or updates) should occur only on the leader index. Follower indices are read-only and will reject any writes.