Request routing to elastic nodes

My need: Have around 60K documents totalling 300MB. There will be writes/updates but volume wouldn't be high. GET requests would be high and I need to ensure high availability and high performance.

My prototype design: I have a Java client (microservice containers on Kubernetes) and using org.elasticsearch.client.RestClient to fire http requests to the elasticsearch node using IP address of the node (RestClient.builder(new HttpHost(elasticsearchHost, elasticsearchPort, "http"))).

Production design: After going through documentation, I thought I can have 3 nodes with 2 master eligible nodes (each node has 1 shard and 1 replica; each node - 16GB RAM, 6VCPUs). I am NOT planning to segregate master, node and ingest nodes as my document volume is not too high.

Problem statement: How do I modify my RestClient to send the http requests in a load balanced way (round robin fashion) to each of three nodes.

As this is my first venture into elasticsearch, I seek guidance from experts in this forum to validate if my production configuration looks optimized, and also how do I get to a solution over my problem statement.

That's bad, see Important Configuration Changes | Elasticsearch: The Definitive Guide [2.x] | Elastic

Pretty sure our clients handle load balancing if you list multiple hosts.

Thank. I realized I could add multiple IPs in the RestClient call leaving it to handle the load balancing.