Create a follower Added in 6.5.0
Create a cross-cluster replication follower index that follows a specific leader index. When the API returns, the follower index exists and cross-cluster replication starts replicating operations from the leader index to the follower index.
Path parameters
-
The name of the follower index.
Query parameters
-
master_timeout string
Period to wait for a connection to the master node.
-
wait_for_active_shards number | string
Specifies the number of shards to wait on being active before responding. This defaults to waiting on none of the shards to be active. A shard must be restored from the leader index before being active. Restoring a follower shard requires transferring all the remote Lucene segment files to the follower index.
Body Required
-
data_stream_name string
If the leader index is part of a data stream, the name to which the local data stream for the followed index should be renamed.
-
The maximum number of outstanding reads requests from the remote cluster.
-
The maximum number of outstanding write requests on the follower.
-
The maximum number of operations to pull per read from the remote cluster.
max_read_request_size number | string
-
max_retry_delay string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value. -
max_write_buffer_count number
The maximum number of operations that can be queued for writing. When this limit is reached, reads from the remote cluster will be deferred until the number of queued operations goes below the limit.
max_write_buffer_size number | string
-
The maximum number of operations per bulk write request executed on the follower.
max_write_request_size number | string
-
read_poll_timeout string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value. -
The remote cluster containing the leader index.
-
settings object
Additional properties are allowed.
Hide settings attributes Show settings attributes object
-
index object
Additional properties are allowed.
-
mode string
routing_path string | array[string]
-
soft_deletes object
Additional properties are allowed.
Hide soft_deletes attributes Show soft_deletes attributes object
-
enabled boolean
Indicates whether soft deletes are enabled on the index.
-
retention_lease object
Additional properties are allowed.
Hide retention_lease attribute Show retention_lease attribute object
-
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.
-
-
-
sort object
Additional properties are allowed.
Hide sort attributes Show sort attributes object
-
field string | array[string]
-
number_of_shards number | string
number_of_replicas number | string
-
number_of_routing_shards number
-
check_on_startup string
Values are
true
,false
, orchecksum
. -
codec string
routing_partition_size number | string
Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.
Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.
hidden boolean | string
-
auto_expand_replicas string
-
merge object
Additional properties are allowed.
Hide merge attribute Show merge attribute object
-
scheduler object
Additional properties are allowed.
Hide scheduler attributes Show scheduler attributes object
max_thread_count number | string
Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.
Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.
max_merge_count number | string
Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.
Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.
-
-
search object
Additional properties are allowed.
Hide search attributes Show search attributes object
-
idle object
Additional properties are allowed.
Hide idle attribute Show idle attribute object
-
after string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.
-
-
slowlog object
Additional properties are allowed.
Hide slowlog attributes Show slowlog attributes object
-
level string
-
source number
-
reformat boolean
-
threshold object
Additional properties are allowed.
Hide threshold attributes Show threshold attributes object
-
query object
Additional properties are allowed.
Hide query attributes Show query attributes object
-
warn string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value. -
info string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value. -
debug string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value. -
trace string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.
-
-
fetch object
Additional properties are allowed.
Hide fetch attributes Show fetch attributes object
-
warn string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value. -
info string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value. -
debug string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value. -
trace string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.
-
-
-
-
-
refresh_interval string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value. -
max_result_window number
-
max_inner_result_window number
-
max_rescore_window number
-
max_docvalue_fields_search number
-
max_script_fields number
-
max_ngram_diff number
-
max_shingle_diff number
-
blocks object
Additional properties are allowed.
Hide blocks attributes Show blocks attributes object
read_only boolean | string
Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.
Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.
read_only_allow_delete boolean | string
Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.
Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.
read boolean | string
Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.
Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.
write boolean | string
Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.
Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.
metadata boolean | string
Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.
Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.
-
max_refresh_listeners number
-
analyze object
Additional properties are allowed.
Hide analyze attribute Show analyze attribute object
max_token_count number | string
Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.
Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.
-
highlight object
Additional properties are allowed.
Hide highlight attribute Show highlight attribute object
-
max_analyzed_offset number
-
-
max_terms_count number
-
max_regex_length number
-
routing object
Additional properties are allowed.
Hide routing attributes Show routing attributes object
-
allocation object
Additional properties are allowed.
Hide allocation attributes Show allocation attributes object
-
enable string
Values are
all
,primaries
,new_primaries
, ornone
. -
include object
Additional properties are allowed.
Hide include attributes Show include attributes object
-
_tier_preference string
-
_id string
-
-
initial_recovery object
Additional properties are allowed.
Hide initial_recovery attribute Show initial_recovery attribute object
-
_id string
-
-
disk object
Additional properties are allowed.
Hide disk attribute Show disk attribute object
threshold_enabled boolean | string
-
-
rebalance object
Additional properties are allowed.
Hide rebalance attribute Show rebalance attribute object
-
Values are
all
,primaries
,replicas
, ornone
.
-
-
-
gc_deletes string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value. -
default_pipeline string
-
final_pipeline string
-
lifecycle object
Additional properties are allowed.
Hide lifecycle attributes Show lifecycle attributes object
-
name string
indexing_complete boolean | string
Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.
Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.
-
origination_date number
If specified, this is the timestamp used to calculate the index age for its phase transitions. Use this setting if you create a new index that contains old data and want to use the original creation date to calculate the index age. Specified as a Unix epoch value in milliseconds.
-
parse_origination_date boolean
Set to true to parse the origination date from the index name. This origination date is used to calculate the index age for its phase transitions. The index name must match the pattern .*-{date_format}-\d+, where the date_format is yyyy.MM.dd and the trailing digits are optional. An index that was rolled over would normally match the full format, for example logs-2016.10.31-000002). If the index name doesn’t match the pattern, index creation fails.
-
step object
Additional properties are allowed.
Hide step attribute Show step attribute object
-
wait_time_threshold string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.
-
-
rollover_alias string
The index alias to update when the index rolls over. Specify when using a policy that contains a rollover action. When the index rolls over, the alias is updated to reflect that the index is no longer the write index. For more information about rolling indices, see Rollover.
prefer_ilm boolean | string
Preference for the system that manages a data stream backing index (preferring ILM when both ILM and DLM are applicable for an index).
-
-
provided_name string
creation_date number | string
Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.
Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.
One of: Time unit for milliseconds
creation_date_string string | number
A date and time, either as a string whose format can depend on the context (defaulting to ISO 8601), or a number of milliseconds since the Epoch. Elasticsearch accepts both as input, but will generally output a string representation.
One of: Time unit for milliseconds
-
uuid string
-
version object
Additional properties are allowed.
Hide version attributes Show version attributes object
-
created string
-
created_string string
-
verified_before_close boolean | string
format string | number
-
max_slices_per_scroll number
-
translog object
Additional properties are allowed.
Hide translog attributes Show translog attributes object
-
sync_interval string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value. -
durability string
Values are
request
,REQUEST
,async
, orASYNC
. flush_threshold_size number | string
-
retention object
Additional properties are allowed.
Hide retention attributes Show retention attributes object
-
-
query_string object
Additional properties are allowed.
Hide query_string attribute Show query_string attribute object
lenient boolean | string Required
Some APIs will return values such as numbers also as a string (notably epoch timestamps). This behavior is used to capture this behavior while keeping the semantics of the field type.
Depending on the target language, code generators can keep the union or remove it and leniently parse strings to the target type.
priority number | string
-
top_metrics_max_size number
-
analysis object
Additional properties are allowed.
Hide analysis attributes Show analysis attributes object
-
analyzer object
-
char_filter object
-
filter object
-
normalizer object
-
tokenizer object
-
-
settings object
Additional properties are allowed.
-
time_series object
Additional properties are allowed.
Hide time_series attributes Show time_series attributes object
start_time string | number
A date and time, either as a string whose format can depend on the context (defaulting to ISO 8601), or a number of milliseconds since the Epoch. Elasticsearch accepts both as input, but will generally output a string representation.
One of: Time unit for milliseconds
-
queries object
Additional properties are allowed.
-
similarity object
Configure custom similarity settings to customize how search results are scored.
-
mapping object
Additional properties are allowed.
Hide mapping attributes Show mapping attributes object
-
coerce boolean
-
total_fields object
Additional properties are allowed.
Hide total_fields attributes Show total_fields attributes object
limit number | string
The maximum number of fields in an index. Field and object mappings, as well as field aliases count towards this limit. The limit is in place to prevent mappings and searches from becoming too large. Higher values can lead to performance degradations and memory issues, especially in clusters with a high load or few resources.
ignore_dynamic_beyond_limit boolean | string
This setting determines what happens when a dynamically mapped field would exceed the total fields limit. When set to false (the default), the index request of the document that tries to add a dynamic field to the mapping will fail with the message Limit of total fields [X] has been exceeded. When set to true, the index request will not fail. Instead, fields that would exceed the limit are not added to the mapping, similar to dynamic: false. The fields that were not added to the mapping will be added to the _ignored field.
-
depth object
Additional properties are allowed.
Hide depth attribute Show depth attribute object
-
limit number
The maximum depth for a field, which is measured as the number of inner objects. For instance, if all fields are defined at the root object level, then the depth is 1. If there is one object mapping, then the depth is 2, etc.
-
-
nested_fields object
Additional properties are allowed.
Hide nested_fields attribute Show nested_fields attribute object
-
limit number
The maximum number of distinct nested mappings in an index. The nested type should only be used in special cases, when arrays of objects need to be queried independently of each other. To safeguard against poorly designed mappings, this setting limits the number of unique nested types per index.
-
-
nested_objects object
Additional properties are allowed.
Hide nested_objects attribute Show nested_objects attribute object
-
limit number
The maximum number of nested JSON objects that a single document can contain across all nested types. This limit helps to prevent out of memory errors when a document contains too many nested objects.
-
-
field_name_length object
Additional properties are allowed.
Hide field_name_length attribute Show field_name_length attribute object
-
limit number
Setting for the maximum length of a field name. This setting isn’t really something that addresses mappings explosion but might still be useful if you want to limit the field length. It usually shouldn’t be necessary to set this setting. The default is okay unless a user starts to add a huge number of fields with really long names. Default is
Long.MAX_VALUE
(no limit).
-
-
dimension_fields object
Additional properties are allowed.
Hide dimension_fields attribute Show dimension_fields attribute object
-
limit number
[preview] This functionality is in technical preview and may be changed or removed in a future release. Elastic will work to fix any issues, but features in technical preview are not subject to the support SLA of official GA features.
-
-
source object
Additional properties are allowed.
Hide source attribute Show source attribute object
-
Values are
DISABLED
,STORED
, orSYNTHETIC
.
-
ignore_malformed boolean | string
-
-
indexing.slowlog object
Additional properties are allowed.
Hide indexing.slowlog attributes Show indexing.slowlog attributes object
-
level string
-
source number
-
reformat boolean
-
threshold object
Additional properties are allowed.
Hide threshold attribute Show threshold attribute object
-
index object
Additional properties are allowed.
Hide index attributes Show index attributes object
-
warn string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value. -
info string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value. -
debug string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value. -
trace string
A duration. Units can be
nanos
,micros
,ms
(milliseconds),s
(seconds),m
(minutes),h
(hours) andd
(days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.
-
-
-
-
indexing_pressure object
Additional properties are allowed.
Hide indexing_pressure attribute Show indexing_pressure attribute object
-
Additional properties are allowed.
Hide memory attribute Show memory attribute object
-
limit number
Number of outstanding bytes that may be consumed by indexing requests. When this limit is reached or exceeded, the node will reject new coordinating and primary operations. When replica operations consume 1.5x this limit, the node will reject new replica operations. Defaults to 10% of the heap.
-
-
-
store object
Additional properties are allowed.
Hide store attributes Show store attributes object
-
allow_mmap boolean
You can restrict the use of the mmapfs and the related hybridfs store type via the setting node.store.allow_mmap. This is a boolean setting indicating whether or not memory-mapping is allowed. The default is to allow it. This setting is useful, for example, if you are in an environment where you can not control the ability to create a lot of memory maps so you need disable the ability to use memory-mapping.
-
curl \
--request PUT http://api.example.com/{index}/_ccr/follow \
--header "Content-Type: application/json" \
--data '"{\n \"remote_cluster\" : \"remote_cluster\",\n \"leader_index\" : \"leader_index\",\n \"settings\": {\n \"index.number_of_replicas\": 0\n },\n \"max_read_request_operation_count\" : 1024,\n \"max_outstanding_read_requests\" : 16,\n \"max_read_request_size\" : \"1024k\",\n \"max_write_request_operation_count\" : 32768,\n \"max_write_request_size\" : \"16k\",\n \"max_outstanding_write_requests\" : 8,\n \"max_write_buffer_count\" : 512,\n \"max_write_buffer_size\" : \"512k\",\n \"max_retry_delay\" : \"10s\",\n \"read_poll_timeout\" : \"30s\"\n}"'
{
"remote_cluster" : "remote_cluster",
"leader_index" : "leader_index",
"settings": {
"index.number_of_replicas": 0
},
"max_read_request_operation_count" : 1024,
"max_outstanding_read_requests" : 16,
"max_read_request_size" : "1024k",
"max_write_request_operation_count" : 32768,
"max_write_request_size" : "16k",
"max_outstanding_write_requests" : 8,
"max_write_buffer_count" : 512,
"max_write_buffer_size" : "512k",
"max_retry_delay" : "10s",
"read_poll_timeout" : "30s"
}
{
"follow_index_created" : true,
"follow_index_shards_acked" : true,
"index_following_started" : true
}