使用docker搭建es出現logstash無法寫入FORBIDDEN/12/index read-only / allow delete (api)
問題描述
起因是logstash無法將數據寫入到es中,通過查看日誌發現logstash有如下輸入
FORBIDDEN/12/index read-only / allow delete (api)
原因是es的磁盤空間超過了80%(默認值)
解決過程
發現問題
通過查看logstash發現無法向es中寫入數據,索引變成了只讀的狀態,但是通過RestAPI進行測試發現,創建索引是可以的,往以前的索引中寫數據是被禁止的並且有如下內容報錯
FORBIDDEN/12/index read-only / allow delete (api)
查詢資料發現,是因爲es的磁盤空間超過了80%機會將索引編程只讀的狀態.
登錄服務器進行查看磁盤空間有500G+喀什懷疑是Docker容器內部的資源有問題,但是想想也不對docker在默認的情況下使用的資源和主機的資源是一致的
使用esRestAPI進行查看集羣狀態發現總空間只有20G,已用空間達到17G
再次登錄服務器查看
原來使用的是系統盤…也是醉了
解決問題
找到原因解決就比較容易了:
- 更改docker默認文件倉庫;
- 重新創建鏡像;
- 測試查看鏡像可用磁盤大小.
完美解決~~~~