我有我的服務器上運行elasticsearch端口9200代理通過80。我有一條駱駝路線,需要將文件索引到此服務器。駱駝elasticsearch訪問端口80
是否支持camel-elasticsearch插件?即通過非9300端口訪問彈性搜索?
據我所知,端口9300使用本地elasticsearch傳輸協議。
我在這裏有什麼選擇?我可以通過Apache代理9300嗎?我不確定這是否有效。
或者camel-elasticsearch插件是否支持http傳輸?請幫忙。謝謝。
我有我的服務器上運行elasticsearch端口9200代理通過80。我有一條駱駝路線,需要將文件索引到此服務器。駱駝elasticsearch訪問端口80
是否支持camel-elasticsearch插件?即通過非9300端口訪問彈性搜索?
據我所知,端口9300使用本地elasticsearch傳輸協議。
我在這裏有什麼選擇?我可以通過Apache代理9300嗎?我不確定這是否有效。
或者camel-elasticsearch插件是否支持http傳輸?請幫忙。謝謝。
你是指港口,它是的HTTP port:
http.port
綁定端口範圍。默認爲9200-9300
。
http.publish_port
是HTTP客戶端與此節點通信時應該使用的端口。當羣集節點位於 代理或防火牆的後面並且http.port不能從外部的 直接尋址時很有用。默認爲通過http.port分配的實際端口。
http.bind_host
將HTTP服務綁定到的主機地址。默認爲http.host
(如果設置)或network.bind_host
。
http.publish_host
要發佈的HTTP客戶端連接到的主機地址。默認爲http.host
(如果設置)或network.publish_host
。
http.host
用於將http.bind_host
和http.publish_host
默認設置爲http.host
或network.host
。
所以,你真的不需要代理,您可以直接在端口80
elasticsearch聽如果你已經在端口80上運行的過程;那麼你可以代理連接到9200(並保留彈性搜索作爲默認值)。
的Java客戶端運輸--->的Apache HTTP代理(80)----> ES(9300)可以 我做到這一點?據我所知,Java傳輸客戶端使用非http協議? ]
該協議與端口無關。
只需將80
改爲InetSocketTransportAddress
即可。完整的示例請參閱documentation。
據我所知,9200是elasticsearch的http端口,可以通過端口80代理。但我的問題是,如果我要在防火牆外使用Elasticsearch Java API(使用端口9300的傳輸客戶端),我有什麼選擇? – user1189332
我不知道你在這裏問什麼。如果您擔心端口9300可能會阻止您的_client_,則將您的客戶端配置爲在端口80上查詢;這是你想要做什麼,並卡住? –
'Java傳輸客戶端---> Apache HTTP代理(80)----> ES(9300)[我可以這樣做嗎?據我所知,Java傳輸客戶端使用非HTTP協議? ]' – user1189332