kibana/x-pack/plugins/cross_cluster_replication
Mikhail Shustov b3a9754394
[Core] Explicit typings for request handler context (#88718)
* move context to server part. couple with RequestHandlerContext

Context implementation will be simplified in follow-up.

* adopt core code

* adopt bfetch code

* adopt data code

* adopt search examples

* adopt vis_type_timelion

* adopt vis_type_timeseries

* adopt plugin functional tests

* adopt actions

* adopt alerting plugin

* adopt APM plugin

* adopt beats_management

* adopt case plugin

* adopt cross_cluster_replication

* adopt data_enhanced

* adopt event_log

* adopt global_search

* adopt index_management

* adopt infra

* adopt licensing

* adopt lists

* adopt logstash

* adopt reporting

* adopt observability

* adopt monitoring

* adopt rollup

* adopt so tagging

* adopt security

* adopt security_solutions

* adopt watcher

* adopt uptime

* adopt spaces

* adopt snapshot_restore

* adopt features changes

* mute error when null used to extend context

* update docs

* small cleanup

* add type safety for return type

* refactor registerRouteHandlerContext type

* update docs

* update license header

* update docs

* fix type error. fetch body does not accept array of strings

* fix telemetry test

* remove unnecessary ts-ignore

* address comments

* update docs
2021-01-21 15:20:22 +01:00
..
common
public
server [Core] Explicit typings for request handler context (#88718) 2021-01-21 15:20:22 +01:00
jest.config.js
kibana.json
README.md

Cross-Cluster Replication

Quick steps for testing cross-cluster replication

You can run a local cluster and simulate a remote cluster within a single Kibana directory.

  1. Start your "local" cluster by running yarn es snapshot --license=trial and yarn start to start Kibana.
  2. Start your "remote" cluster by running yarn es snapshot --license=trial -E cluster.name=europe -E transport.port=9400 in a separate terminal tab.
  3. Index a document into your remote cluster by running curl -X PUT http://elastic:changeme@localhost:9201/my-leader-index --data '{"settings":{"number_of_shards":1,"soft_deletes.enabled":true}}' --header "Content-Type: application/json". Note that these settings are required for testing auto-follow pattern conflicts errors (see below).

Now you can create follower indices and auto-follow patterns to replicate the my-leader-index index on the remote cluster that's available at 127.0.0.1:9400.

Auto-follow pattern conflict errors

You can view conflict errors by creating two auto-follow patterns with overlapping patterns (e.g. my* and my-*) that will both capture the my-leader-index index on your remote cluster. Run the curl command to create my-leader-index2 on your remote cluster, since auto-follow patterns don't replicate existing indices.

Now, when you open the details flyout of one of the auto-follow patterns you will see a list of recent errors.

image