我从网上下载图像与泊坞窗安装Elasticsearch并运行以下命令来启动:
docker run -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:5.5.3
使用传送客户来访问它。
Settings settings = Settings.builder()
.put("cluster.name", "docker-cluster").build();
TransportClient client = new PreBuiltTransportClient(settings);
client.addTransportAddress(new InetSocketTransportAddress(new InetSocketAddress(my-elastic, 9300)));
我什么也不做,但我得到了一个错误NoNodeAvailableException:
NoNodeAvailableException[None of the configured nodes are available: [{#transport#-1}{9VJdNJv9S7O3Pchx2z2wEg}{my-elastic}{192.168.99.100:9300}]]
我应该怎么做才能解决这个问题?
启动日志:
my-elastic | [2017-11-01T07:45:52,040][INFO ][o.e.n.Node ] [] initializing ...
my-elastic | [2017-11-01T07:45:52,178][INFO ][o.e.e.NodeEnvironment ] [h-M1oJa] using [1] data paths, mounts [[/usr/share/elasticsearch/data (/dev/sda1)]], net usable_space [8.3gb], net total_space [17.8gb], spins? [possibly], types [ext4]
my-elastic | [2017-11-01T07:45:52,179][INFO ][o.e.e.NodeEnvironment ] [h-M1oJa] heap size [1.9gb], compressed ordinary object pointers [true]
my-elastic | [2017-11-01T07:45:52,184][INFO ][o.e.n.Node ] node name [h-M1oJa] derived from node ID [h-M1oJaUTY-G0ezl-89-cw]; set [node.name] to override
my-elastic | [2017-11-01T07:45:52,185][INFO ][o.e.n.Node ] version[5.5.2], pid[1], build[b2f0c09/2017-08-14T12:33:14.154Z], OS[Linux/4.4.52-boot2docker/amd64], JVM[Oracle Corporation/OpenJDK 64-Bit Server VM/1.8.0_141/25.141-b15]
my-elastic | [2017-11-01T07:45:52,185][INFO ][o.e.n.Node ] JVM arguments [-Xms2g, -Xmx2g, -XX:+UseConcMarkSweepGC, -XX:CMSInitiatingOccupancyFraction=75, -XX:+UseCMSInitiatingOccupancyOnly, -XX:+AlwaysPreTouch, -Xss1m, -Djava.awt.headless=true, -Dfile.encoding=UTF-8, -Djna.nosys=true, -Djdk.io.permissionsUseCanonicalPath=true, -Dio.netty.noUnsafe=true, -Dio.netty.noKeySetOptimization=true, -Dio.netty.recycler.maxCapacityPerThread=0, -Dlog4j.shutdownHookEnabled=false, -Dlog4j2.disable.jmx=true, -Dlog4j.skipJansi=true, -XX:+HeapDumpOnOutOfMemoryError, -Des.path.home=/usr/share/elasticsearch]
my-elastic | [2017-11-01T07:45:54,225][INFO ][o.e.p.PluginsService ] [h-M1oJa] loaded module [aggs-matrix-stats]
my-elastic | [2017-11-01T07:45:54,225][INFO ][o.e.p.PluginsService ] [h-M1oJa] loaded module [ingest-common]
my-elastic | [2017-11-01T07:45:54,225][INFO ][o.e.p.PluginsService ] [h-M1oJa] loaded module [lang-expression]
my-elastic | [2017-11-01T07:45:54,225][INFO ][o.e.p.PluginsService ] [h-M1oJa] loaded module [lang-groovy]
my-elastic | [2017-11-01T07:45:54,225][INFO ][o.e.p.PluginsService ] [h-M1oJa] loaded module [lang-mustache]
my-elastic | [2017-11-01T07:45:54,225][INFO ][o.e.p.PluginsService ] [h-M1oJa] loaded module [lang-painless]
my-elastic | [2017-11-01T07:45:54,226][INFO ][o.e.p.PluginsService ] [h-M1oJa] loaded module [parent-join]
my-elastic | [2017-11-01T07:45:54,226][INFO ][o.e.p.PluginsService ] [h-M1oJa] loaded module [percolator]
my-elastic | [2017-11-01T07:45:54,226][INFO ][o.e.p.PluginsService ] [h-M1oJa] loaded module [reindex]
my-elastic | [2017-11-01T07:45:54,226][INFO ][o.e.p.PluginsService ] [h-M1oJa] loaded module [transport-netty3]
my-elastic | [2017-11-01T07:45:54,226][INFO ][o.e.p.PluginsService ] [h-M1oJa] loaded module [transport-netty4]
my-elastic | [2017-11-01T07:45:54,226][INFO ][o.e.p.PluginsService ] [h-M1oJa] no plugins loaded
my-elastic | [2017-11-01T07:45:57,851][INFO ][o.e.d.DiscoveryModule ] [h-M1oJa] using discovery type [zen]
my-elastic | [2017-11-01T07:45:59,062][INFO ][o.e.n.Node ] initialized
my-elastic | [2017-11-01T07:45:59,062][INFO ][o.e.n.Node ] [h-M1oJa] starting ...
my-elastic | [2017-11-01T07:45:59,376][INFO ][o.e.t.TransportService ] [h-M1oJa] publish_address {127.0.0.1:9300}, bound_addresses {[::1]:9300}, {127.0.0.1:9300}
my-elastic | [2017-11-01T07:46:02,520][INFO ][o.e.c.s.ClusterService ] [h-M1oJa] new_master {h-M1oJa}{h-M1oJaUTY-G0ezl-89-cw}{dYFfXS4vToOMMfAEWy57ig}{127.0.0.1}{127.0.0.1:9300}, reason: zen-disco-elected-as-master ([0] nodes joined)
my-elastic | [2017-11-01T07:46:02,588][INFO ][o.e.h.n.Netty4HttpServerTransport] [h-M1oJa] publish_address {172.18.0.8:9200}, bound_addresses {[::]:9200}
my-elastic | [2017-11-01T07:46:02,591][INFO ][o.e.n.Node ] [h-M1oJa] started
我可以访问http://192.168.99.100:9200与邮差。
{
"name": "-v9MHhY",
"cluster_name": "docker-cluster",
"cluster_uuid": "Ig6tY10oSc6hAbpLqo9fcg",
"version": {
"number": "5.5.3",
"build_hash": "9305a5e",
"build_date": "2017-09-07T15:56:59.599Z",
"build_snapshot": false,
"lucene_version": "6.6.0"
},
"tagline": "You Know, for Search"
}
远程登录192.168.99.100:9200是OK。
远程登录192.168.99.100:9300是OK。
远程登录才能访问这两个端口。
而我使用的弹簧boot2.0.0M5。 elasticsearch的缺省版本为5.5.3。