我正在嘗試使用elasticsearch和Kibana進行logstash工作。我擁有所有最新版本,但在遇到一些問題後,我意識到我需要安裝較早版本的彈性搜索(即0.20.6),以便它能夠與最新版本的logstash一起正常工作。所以,我下載了舊版本,做了舊版本(v.0.90.x)的0,並安裝了新版本(v.0.20.6)。我試圖啓動它。它開始,但然後給我重複錯誤,如:如何刪除elasticsearch?
[2013-07-29 14:24:04,718][WARN ][indices.cluster ] [Dansen Macabre] [blog][2] failed to start shard
org.elasticsearch.indices.recovery.RecoveryFailedException: [blog][2]: Recovery failed from [Blob][UCFJzrBxQHOYOohF6scQMw][inet[/10.1.10.52:9300]] into [Dansen Macabre][-GzBNHLJSc2Do5DNTsn1jw][inet[/10.1.10.52:9301]]
at org.elasticsearch.indices.recovery.RecoveryTarget.doRecovery(RecoveryTarget.java:293)
at org.elasticsearch.indices.recovery.RecoveryTarget.access$300(RecoveryTarget.java:62)
at org.elasticsearch.indices.recovery.RecoveryTarget$2.run(RecoveryTarget.java:163)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
Caused by: org.elasticsearch.transport.RemoteTransportException: [Blob][inet[/10.1.10.52:9300]][index/shard/recovery/startRecovery]
Caused by: org.elasticsearch.index.engine.RecoveryEngineException: [blog][2] Phase[1] Execution failed
at org.elasticsearch.index.engine.robin.RobinEngine.recover(RobinEngine.java:1123)
at org.elasticsearch.index.shard.service.InternalIndexShard.recover(InternalIndexShard.java:526)
at org.elasticsearch.indices.recovery.RecoverySource.recover(RecoverySource.java:116)
at org.elasticsearch.indices.recovery.RecoverySource.access$1600(RecoverySource.java:60)
at org.elasticsearch.indices.recovery.RecoverySource$StartRecoveryTransportRequestHandler.messageReceived(RecoverySource.java:328)
at org.elasticsearch.indices.recovery.RecoverySource$StartRecoveryTransportRequestHandler.messageReceived(RecoverySource.java:314)
at org.elasticsearch.transport.netty.MessageChannelHandler$RequestHandler.run(MessageChannelHandler.java:265)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
Caused by: org.elasticsearch.indices.recovery.RecoverFilesRecoveryException: [blog][2] Failed to transfer [25] files with total size of [3.7kb]
at org.elasticsearch.indices.recovery.RecoverySource$1.phase1(RecoverySource.java:226)
at org.elasticsearch.index.engine.robin.RobinEngine.recover(RobinEngine.java:1116)
... 9 more
Caused by: java.io.FileNotFoundException: /Users/CiC/BigData/elasticsearch-0.90.2/data/elasticsearch/nodes/0/indices/blog/2/index/_1_es090_0.doc (No such file or directory)
at java.io.RandomAccessFile.open(Native Method)
at java.io.RandomAccessFile.<init>(RandomAccessFile.java:233)
at org.apache.lucene.store.FSDirectory$FSIndexInput.<init>(FSDirectory.java:410)
at org.apache.lucene.store.NIOFSDirectory$NIOFSIndexInput.<init>(NIOFSDirectory.java:123)
at org.apache.lucene.store.NIOFSDirectory.openInput(NIOFSDirectory.java:80)
at org.apache.lucene.store.RateLimitedFSDirectory.openInput(RateLimitedFSDirectory.java:99)
at org.elasticsearch.index.store.Store.openInputRaw(Store.java:271)
at org.elasticsearch.indices.recovery.RecoverySource$1$1.run(RecoverySource.java:171)
... 3 more
正如你所看到的,它仍然試圖尋找v.0.90.x安裝。我localhost:9200
顯示以下的輸出:
{
"ok" : true,
"status" : 200,
"name" : "Blob",
"version" : {
"number" : "0.90.2",
"snapshot_build" : false,
"lucene_version" : "4.3.1"
},
"tagline" : "You Know, for Search"
}
如何解決這個使用v.0.20.6?
它的工作!非常感謝你! :) – CodingInCircles
imotov,我重新做了整件事情,但是當我嘗試登錄到logstash以存儲在ES中時,出現'ClusterBlockException - 被[SERVICE_UNAVAILABLE/1/state not recovered/initialized]阻塞; [ SERVICE_UNAVAILABLE/2/no master];:在處理客戶端http流量,關閉連接時發生logstash錯誤和Caught異常[id:0x99214945,/127.0.0.1:56084:> /127.0.0.1:9200] java.lang .IllegalArgumentException:ES中的空文本錯誤。到底是怎麼回事?我甚至嘗試過'flush'和'delete',但似乎沒有任何效果。請幫忙。謝謝! – CodingInCircles
它看起來像一個配置問題給我。這個錯誤意味着logstash中的Elasticsearch客戶端無法加入elasticsearch集羣。我會建議詢問一個單獨的問題,包括來自客戶端和elasticsearch服務器的日誌文件以及elasticsearch配置。 – imotov