默認的 elasticsearch.yml 端口是9200,是給tcp提供的。如果想使用 自帶的 TransportClient 需要配置為 tcp 的9300端口。配置方式為: 在/config/elasticsearch.yml 里面添加:
# 設置節點間交互的tcp端口,默認是9300 #transport.tcp.port: 9300
2.自己的問題
還是 elasticsearch.yml的配置問題
自己把 transport.host配置為了 localhost. 之后使用命令
netstat -tlnp|grep 9304 后 看到
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp 0 0 localhost:9304 0.0.0.0:* LISTEN 13842/java
同事說,這個只能本機能訪問到。 之后 telnet ip 9304之后果然是。。。 改為了 0.0.0.0即可。問題解決。
transport.host: 0.0.0.0
transport.tcp.port: 9304
3.Unable to revive connection: http://localhost:9200/
啟動kibana報這個問題:原因是 配置在elasticsearch.yml配置了
network.bind_host: 172.16.145.205