parent
4219f8e062
commit
b8db32b7fd
|
@ -57,11 +57,23 @@ Client client = TransportClient.builder().settings(settings).build();
|
|||
//Add transport addresses and do something with the client...
|
||||
--------------------------------------------------
|
||||
|
||||
The client allows sniffing the rest of the cluster, which adds data nodes
|
||||
into its list of machines to use. In this case, note that the IP addresses
|
||||
used will be the ones that the other nodes were started with (the
|
||||
"publish" address). In order to enable it, set the
|
||||
`client.transport.sniff` to `true`:
|
||||
The Transport client comes with a cluster sniffing feature which
|
||||
allows it to dynamically add new hosts and remove old ones.
|
||||
When sniffing is enabled the the transport client will connect to the nodes in its
|
||||
internal node list, which is built via calls to addTransportAddress.
|
||||
After this, the client will call the internal cluster state API on those nodes
|
||||
to discover available data nodes. The internal node list of the client will
|
||||
be replaced with those data nodes only. This list is refreshed every five seconds by default.
|
||||
Note that the IP addresses the sniffer connects to are the ones declared as the 'publish'
|
||||
address in those node's elasticsearch config.
|
||||
|
||||
Keep in mind that list might possibly not include the original node it connected to
|
||||
if that node is not a data node. If, for instance, you initially connect to a
|
||||
master node, after sniffing no further requests will go to that master node,
|
||||
but rather to any data nodes instead. The reason the transport excludes non-data
|
||||
nodes is to avoid sending search traffic to master only nodes.
|
||||
|
||||
In order to enable sniffing, set `client.transport.sniff` to `true`:
|
||||
|
||||
[source,java]
|
||||
--------------------------------------------------
|
||||
|
|
Loading…
Reference in New Issue