How to do cross cluster performance testing,
Once the cross cluster setup is finalized, from the cluster that which can access the other clusters should be the target to run the rally track. So give it as host.
Before starting the performance testing , it’s better go to the dev tools of cluster which has the access to the other cluster indices search access and run below query to check the connectivity.
GET technology-child:agtr.*/_search?size=0
{
“query”: {
“match_all”: {}
}
}
Here technology-child means the external cluster.
agtr means the index pattern in that cluster
then run the below command to run in no hub mode.
/usr/local/bin/esrally --track-path=/home/username/samfiles --target-hosts=https://elasticsearch-myparent.tools/ --pipeline=benchmark-only --client-options="use_ssl:true,verify_certs:false,basic_auth_user:'username',basic_auth_password:'password',timeout:120" &
Here is the track.json
{
"version": 2,
"description": "Tutorial benchmark for Rally Search",
"indices": [
{
"name": "technology-child:agtr.*",
"types": [ "docs" ]
}
],
"schedule": [
{
"operation": {
"operation-type": "cluster-health",
"request-params": {
"wait_for_status": "green"
}
}
},
{
"operation": {
"name": "term-search",
"operation-type": "search",
"body": {
"query": {
"term": {
"body": "Lago"
}
}
}
},
"clients": 8,
"warmup-iterations": 100,
"iterations": 12000,
"target-throughput": 20
}
]
}
To monitor it lo on to technology-child cluster and observe