2013-01-04 63 views
1

我想配置我的工作站上的ElasticSearch與遠程Mongo數據庫上的大型集合。我安裝了河,但我無法完成工作。我是這樣的配置元素:彈性搜索與遠程Mongodb

curl -XPUT 'http://localhost:9200/_river/mongodb/_meta' -d '{ 
"type": "mongodb", 
"mongodb": { 
"host":"10.42.210.214", 
"port":"27017", 
"login":"admin", 
"password":"something", 
    "db": "somedb", 
    "collection": "somecollection" 
}, 
"index": { 
    "name": "mongoindex", 
    "type": "somecollection" 
} 
}' 

當我通過搜索:

http://localhost:9200/somecollection/_search?query=matchAll&pretty=true 

...它說:

{ "error" : "IndexMissingException[[somecollection] missing]", "status" : 404 } 

我怎樣才能使它指數東西/調試問題?

回答

1

您確定Elasticsearch的答案是no collection

我很想看到由ES發送的結果。

順便說一句,你啓用了mongodb replica set

+0

它說:{ 「錯誤」: 「IndexMissingException [somecollection]失蹤]」, 「狀態」:404 } – Gomoku7

+0

這是不是 「沒有收藏」 有點不同! :-)那麼你是否在Mongo上啓用副本集?彈性搜索日誌中的任何內容? – dadoonet

+0

副本沒有設置...對不起。而且我的配置不正確:有一個「服務器」元素,其中包含「主機」和「端口」,另一個名爲「憑證」的地方有「用戶」(不是登錄名)和「密碼」。由於副本是問題的一部分,我認爲你的接受者是接受者的一部分。 THKS。 – Gomoku7

0

您應該使用http://localhost:9200/mongoindex/_search?query=matchAll&pretty=true來進行搜索。看看mongoindex