centos7 部署 ELK 日誌系統
===============================================
2017/12/17_第1次修改 ccb_warlock
===============================================
ELK(elasticsearch、logstash、kibana)可以作為日誌收集及分析的一整套系統,通過阿裏的普及也有越來越多的公司在使用,使用下來功能還可以,這裏整理記錄一個部署手冊。
為了方便,將ELK都部署在一臺os裏。
一、環境準備
操作系統:centos7(CentOS-7-x86_64-Minimal-1708)
CPU:1核
內存:4G
可以在你的windows上安裝Bitvise SSH Client遠程執行命令行和傳輸文件。
1.1 安裝vim、wget
yum install -y vim wget
二、安裝Java環境
2.1 部署java文件
根據官方的描述,
Elasticsearch要求是java8以上。
Logstash要求是Java 8,不支持Java 9。
官網:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
進入後,選擇“Accept License Agreement”,選擇下載“jdk-8u151-linux-x64.tar.gz”;
將下載的jdk-8u151-linux-x64.tar.gz上傳到/root目錄下。
# 解壓到/usr/local/下
cd
tar -zxvf jdk-8u151-linux-x64.tar.gz -C /usr/local/
2.2 設置java環境變量
# 修改profile文件
vim /etc/profile
在最後添加下面的內容,wq保存。
export JAVA_HOME=/usr/local/jdk1.8.0_151 export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$PATH
# 讓profile文件立即生效
source /etc/profile
# 可以用下面的命令查看java的環境變量是否生效
java -version
出現下面的內容就說明java的jdk已經部署完成。
2.3 刪除/root下的安裝包(非必要,用於生產環境建議刪除)
rm -rf /root/jdk-8u151-linux-x64.tar.gz
三、部署elasticsearch
3.1 yum安裝elasticsearch
# 獲取rpm包
wget https://artifacts.elastic.co/downloads/logstash/logstash-6.1.0.rpm
# 安裝
rpm -ivh elasticsearch-6.1.0.rpm
#查找安裝路徑
rpm -ql elasticsearch
一般是裝在/usr/share/elasticsearch/下。
3.2 設置data的目錄
# 創建/data/es-data目錄,用於elasticsearch數據的存放
mkdir -p /data/es-data
# 修改該目錄的擁有者為elasticsearch
chown -R elasticsearch:elasticsearch /data/es-data
3.3 設置log的目錄
# 創建/data/es-log目錄,用於elasticsearch日誌的存放
mkdir -p /log/es-log
# 修改該目錄的擁有者為elasticsearch
chown -R elasticsearch:elasticsearch /log/es-log
3.4 修改配置文件elasticsearch.yml
vim /etc/elasticsearch/elasticsearch.yml
根據下面的內容進行修改,wq保存。
#設置data存放的路徑為/data/es-data path.data: /data/es-data #設置logs日誌的路徑為/log/es-log path.logs: /log/es-log #設置內存不使用交換分區 bootstrap.memory_lock: false #配置了bootstrap.memory_lock為true時反而會引發9200不會被監聽,原因不明 #設置監聽的網絡地址為0.0.0.0 network.host: 0.0.0.0 #開啟監聽的端口為9200 http.port: 9200 #增加新的參數,為了讓elasticsearch-head插件可以訪問es (5.x版本,如果沒有可以自己手動加) http.cors.enabled: true http.cors.allow-origin: "*"
3.5 啟動elasticsearch
# 啟動
systemctl start elasticsearch
# 查看狀態
systemctl status elasticsearch
# 設置開機啟動
systemctl enable elasticsearch
3.6 開啟9200端口
firewall-cmd --add-port=9200/tcp --permanent
firewall-cmd --reload
3.7 測試安裝是否成功
# 安裝net-tools
yum install -y net-tools
# 檢查9200是否有監聽
netstat -antp |grep 9200
休息了,明天再寫。。
centos7 部署 ELK 日誌系統