1. 程式人生 > >ELK第一步ubuntu16安裝Elasticsearch

ELK第一步ubuntu16安裝Elasticsearch

嗯,公司要建一個基於ELK的日誌分析平臺,我先做下技術儲備

  1. 安裝jdk jdk安裝比較簡單,但是有一點要注意es的啟動不能以root來進行,所以要提前建立一個使用者,jdk在root好用不一定在使用者中也好用,在使用前可以試一試java -version在這裡插入圖片描述 如果沒有出現可能是jdk環境變數配置的問題,我之前遇到了這個問題按照一些部落格重新設定了環境變數如我參考的部落格但是沒有成功,如果也有遇到同樣問題的可以參考這個部落格,如果不成功可以像我這樣直接在使用者中再安一個java,雖然比較笨,但也能解決問題。

  2. 安裝es 然後是去官網下載es,然後將其傳到伺服器,建一個資料夾es存放下好的tar包。 在這裡插入圖片描述

    選擇MACOS/Linux下載就ok。 然後解壓es並且進入準備執行一下試試 如果出現Exception in thread “main” java.nio.file.AccessDeniedException: 這是因為使用者沒有許可權在root下給他許可權就好了 解決方法: chown linux使用者名稱 elasticsearch安裝目錄 -R 然後再啟動試試

在這裡插入圖片描述 嗯,果然出了一些問題說檔案最大的開啟數是65535,而es需要65536。。。。我們要切回到root下修改檔案最大開啟數vi /etc/security/limits.conf修改如下四個引數為65536

在這裡插入圖片描述 再次啟動只剩下一個問題了 在這裡插入圖片描述

這次是elasticsearch使用者擁有的記憶體許可權太小,至少需要262144;

vi /etc/sysctl.conf 

新增一條

vm.max_map_count=263000

然後執行

sysctl -p

再次啟動es 在這裡插入圖片描述 成功啟動了,接下來可以試著訪問他的9200埠在這裡插入圖片描述 訪問沒有成功 但是本機訪問成功了 在這裡插入圖片描述 應該是埠問題了,我們先開啟es的yml配置

vi conf/elasticsearch.yml

然後新增這倆條

network.bind_host: 0.0.0.0 
network.publish_host: 127.0.0.1 

再次啟動訪問試試,還是失敗了,由於我是使用阿里雲ecs,所以可能是安全組策略問題,我進入我的阿里雲控制檯並且添加了一條新的安全組策略開放9200埠 在這裡插入圖片描述

再次用瀏覽器訪問 在這裡插入圖片描述 ojbk,真的是很麻煩啊。最後一句,為什麼1024程式設計師節大家 的慶祝方式不是放假,都是寫1024行程式碼慶祝?硬核過節??