This is a K8s + Docker demonstration of cross-cluster functionality available in Elasticsearch (ES).
- Builds a single ES node + Kibana cluster in K8s.
- Builds a second single ES node + Kibana cluster in Docker.
- Configures both clusters as remote clusters to each other.
- Sets up a cross-cluster replication (CCR) scenario and demonstrates the data replication via a Nodejs client.
- Sets up a cross-cluster search (CCS) scenario and demonstrates the search across both clusters via a Python client.
- Linux OS - Mac users have reported issues that appear to be docker-network related.
- Docker
- Docker Compose
- go
- Kind
- helm
- kubectl
- jq
- python3
- nodejs
git clone git@github.com:joeywhelan/elastic-crosscluster.git && cd elastic-crosscluster./start.sh- Update the WEST_IP var to the IP address assigned to the westcluster-es-http service
cd src/javascript
npm install
node ccr_test.js- Update the WEST_IP var to the IP address assigned to the westcluster-es-http service
cd src/python
pip install elasticsearch
python3 ccs_test.py./stop.sh