Request routing
editRequest routing
editThe Elastic Cloud proxy service routes traffic from external sources to the deployment, between deployments, and between products within a deployment. For example, it routes API requests from your local machine to your deployment, CCR and CCS requests between your deployments, and communications between Kibana and Elasticsearch. It does not direct the TCP traffic between Elasticsearch nodes, nor does it manage requests starting within Elasticsearch outwards to external sources such as to snapshot repositories.
The Elastic Cloud proxy routes HTTP requests to its deployment’s individual product instances through the product’s endpoint. By default, instances are enabled to route HTTP traffic and will report no special messaging.
It might be helpful to temporarily block upstream requests in order to protect some or all instances or products within your deployment. For example, you might stop request routing in the following cases:
- If another team within your company starts streaming new data into your production Integrations Server without previous load testing, both it and Elasticsearch might experience performance issues. You might consider stopping routing requests on all Integrations Server instances in order to protect your downstream Elasticsearch instance.
- If Elasticsearch is being overwhelmed by upstream requests, it might experience increased response times or even become unresponsive. This might impact your ability to resize components in your deployment and increase the duration of pending plans or increase the chance of plan changes failing. Because every Elasticsearch node is an implicit coordinating node, you should stop routing requests across all Elasticsearch nodes to completely block upstream traffic.
Considerations
edit- Elastic Cloud will automatically set and remove routing blocks during plan changes. Elastic recommends avoiding manually overriding these settings for a deployment while its plans are pending.
- The Elasticsearch API console bypasses Elastic Cloud proxy routing blocks against Elasticsearch to enable administrative tasks while plan changes are pending. You should generally default traffic to the Elasticsearch endpoint. However, if you enable Stop routing requests across all Elasticsearch nodes, you need to use this UI to administer your cluster.
- While Elasticsearch has Stop routing requests set across all nodes, other products with the deployment may become unhealthy. This is because Elasticsearch is a prerequisite for those other products, such as Kibana. In Kibana, this results in a Kibana server is not ready yet message.
- Enabling Stop routing requests does not affect your billing. If needed, you can Stop charges for a deployment by Deleting your deployment.
Stop routing requests
editTo block HTTP requests for an instance, select Stop routing requests under from instance’s menu.
The instance will then report Not routing requests. It will complete existing requested traffic, but not be sent new requests.
Restart routing requests
editTo unblock HTTP requests for an instance, select Start routing requests under from instance’s menu.