1,先來看一下ELK的基礎架構圖和數據流向。
FileBeat,從Web服務器蒐集日誌,通過LogStash 得5044端口,傳輸給LogStash做日誌得過濾操作
LogStash,接收來自FileBeat的日誌,做日誌分析、過濾,通過ElasticSearch 的9200端口,傳輸給ElasticSearch做存儲、索引 (9300端口是ES集羣間通訊使用)
Kibana,與ELasticSearch 9200端口通訊,做數據展示
2,配置安裝ELK套件之前,先做一下Linux 系統的優化,和JDK 1.8 的安裝(二進制包)
2.1 # vim /etc/sysctl.conf
fs.file-max=65535 vm.max_map_count = 262144
其中,第一個參數fs.file-max主要是配置系統最大打開文件描述符數,建議修改爲65535或者更高
第二個參數vm.max_map_count影響Java線程數量,用於限制一個進程可以擁有的VMA(虛擬內存區域)的大小
系統默認是65530,建議修改成262144或者更高 (此項非必須,我沒加運行正常)
2.2 # vim /etc/security/limits.conf
* soft nproc 65536 * hard nproc 65536 * soft nofile 65536 * hard nofile 65536 * soft memlock unlimited * hard memlock unlimited
調整進程最大打開文件描述符(nofile)、最大用戶進程數(nproc)和最大鎖定內存地址空間(memlock)
2.3 # vim /etc/security/limits.d/20-nproc.conf
* soft nproc 65536 root soft nproc unlimited
2.1~2.3
執行 # sysctl –p 或者重啓系統生效
2.4 安裝JDK 1.8 並配置環境變量
官網下載 jdk-8u192-linux-x64.tar.gz
解壓到 /usr/local/ 目錄,並且創建軟連接
# ln –s /usr/local/jdk1.8.0_192 /usr/local/java
在 /etc/profile.d/ 目錄下面新建path.sh 的腳本文件,並且添加x,可執行權限
# source /etc/profile.d/path.sh # java –verson (驗證安裝是否成功)
寫的不好、歡迎指正:VX:85862870