首先查看一下logstash的日志,我這里日志報(bào):
Logstash could not be started because there is already another instance using the configured data directory?
然后logstash啟動(dòng)失敗,重啟也是一樣。這個(gè)問題需要再logstash下/data目錄下查看是否存在 .lock 文件,如果存在把它刪除。默認(rèn)位置是在/data下,如果不是可以查看配置文件或者在logstash目錄下使用find命令查找。
這樣logstash就成功啟動(dòng)了,這時(shí)候如果你的conf文件沒有問題就能夠在elasticsearch-head里查看到對應(yīng)的index。但是這時(shí)應(yīng)該會(huì)多一個(gè)未分配的副本,所以elasticsearch的狀態(tài)應(yīng)該是黃色的。但是這個(gè)問題并不影響我們在kibana里查看數(shù)據(jù)。在kibana里手動(dòng)搜索index名稱,將其添加進(jìn)kibana就可以進(jìn)行下一步操作了。當(dāng)然前提是你的index里有數(shù)據(jù),不然kibana里是不會(huì)出現(xiàn)這個(gè)index的。
現(xiàn)在說一下怎么解決上面提到的elasticsearch的問題.有分析可知是因?yàn)閑lasticsearch默認(rèn)會(huì)創(chuàng)建一個(gè)index副本,而副本沒有主機(jī)可以分配導(dǎo)致的,因?yàn)槲覀儽緛砭椭挥幸慌_(tái)服務(wù)器,而不是一個(gè)集群。那么我們可以重新設(shè)置一下分片和副本數(shù)。通過下面的命令:
curl -XPUT 'http://yourip:9200/_template/template_http_request_record' -H 'Content-Type: application/json' -d '{"index_patterns": ["*"],"settings": {"number_of_shards": 1,"number_of_replicas": 0}}'
這樣執(zhí)行完刪除原來的index,重新接受數(shù)據(jù)創(chuàng)建index就會(huì)發(fā)現(xiàn)沒有多余的副本,elasticseach狀態(tài)為綠色。