目錄
1、Elastic Search搭建
1.1、壓縮包的解壓
1.2、將檔案夾移動到/usr/local目錄下
1.3、組態檔的修改
1.4、創建elk用戶并授權
1.5、Elastic Search環境啟動
1.6、環境啟動驗證
1.7、常見問題解決
2、Kibana搭建
2.1、壓縮包的解壓
2.2、將檔案夾移動到/usr/local目錄下
2.3、組態檔的修改
2.4、elk用戶權限授權
2.5、Kibana環境啟動
2.6、環境啟動驗證
2.7、常見問題解決
3、Logstash搭建
3.1、壓縮包的解壓
3.2、將檔案夾移動到/usr/local目錄下
3.3、組態檔的修改
3.4、創建elk用戶并授權
3.5、Logstash環境啟動
3.6、環境啟動驗證
網上ELK環境搭建的教程比較多,但是都或多或少存在一些問題,本文通過實際經歷,一步步完成Linux系統下ELK環境的搭建,
關于ELK的具體含義,在此不再贅述,本文的部署環境資訊如下所示:
System:CentOS 6.7
Java:1.8.0_144
Elastic Search版本:7.12.0
Kibana版本:7.12.0
Logstash版本:7.12.0
Elastic Search、Kibana部署地址:192.168.24.52
Logstash部署地址:192.168.2.248
下載地址為:https://www.elastic.co/cn/downloads,可通過wget方式下載,也可以直接下載相應的安裝包,
先來一張最終效果展示圖:

1、Elastic Search搭建
1.1、壓縮包的解壓
tar -zxvf elasticsearch-7.12.0-linux-x86_64.tar.gz
1.2、將檔案夾移動到/usr/local目錄下
mv elasticsearch-7.12.0 /usr/local/elasticsearch
1.3、組態檔的修改
主要修改的檔案為elasticsearch.yml,
cd /usr/local/elasticsearch/config
vim elasticsearch.yml
主要修改的內容如下所示,尤其需要注意的是,一定要設定node.name,否則后續Kibana可能會報master_not_discovered錯誤,
# 節點名稱
node.name: node-1
# 地址
network.host: 0.0.0.0
# 服務埠
http.port: 9200
# 集群配置
cluster.initial_master_nodes: ["node-1"]
# 域限制
http.cors.enabled: true
# 域限制
http.cors.allow-origin: "*"
1.4、創建elk用戶并授權
因ELK無法使用root用戶啟動,因此需要創建新的用戶,并對新的用戶進行授權,
useradd elk
chown -R elk. /usr/local/elasticsearch
完成授權后,需要切換到elk用戶,
su elk
1.5、Elastic Search環境啟動
sh /usr/local/elasticsearch/bin/elasticsearch -d
1.6、環境啟動驗證
控制臺輸出成功之后,可以訪問9200埠,查看是否啟動成功,
{
"name": "node-1",
"cluster_name": "elasticsearch",
"cluster_uuid": "oFUUY6DXTgmRgiGRYDt25A",
"version": {
"number": "7.12.0",
"build_flavor": "default",
"build_type": "tar",
"build_hash": "78722783c38caa25a70982b5b042074cde5d3b3a",
"build_date": "2021-03-18T06:17:15.410153305Z",
"build_snapshot": false,
"lucene_version": "8.8.0",
"minimum_wire_compatibility_version": "6.8.0",
"minimum_index_compatibility_version": "6.0.0-beta1"
},
"tagline": "You Know, for Search"
}
1.7、常見問題解決
因為環境搭建時,并沒有出現問題,在此只是摘錄一些別人可能碰到的問題,
1)max_map_count數量65520太小
修改系統組態檔,sudo vi /etc/sysctl.conf,添加:
vm.max_map_count=655360
生效配置:
sysctl -p
再次啟動es,即可解決,
2)中文分詞插件ik
2、Kibana搭建
在進行安裝包解壓,組態檔修改時,最好切換回root用戶,
su root
2.1、壓縮包的解壓
tar -zxvf kibana-7.12.0-linux-x86_64.tar.gz
2.2、將檔案夾移動到/usr/local目錄下
mv kibana-7.12.0 /usr/local/kibana
2.3、組態檔的修改
主要修改的檔案為kibana.yml,
cd /usr/local/kibana
vim kibana.yml
主要修改的內容如下所示:
# 服務埠
server.port: 5601
# 服務地址
server.host: "0.0.0.0"
# Elastic Search服務地址,修改為實際的主機地址即可
elasticsearch.hosts: ["http://192.168.24.52:9200"]
# 用戶名密碼,如果未啟用驗證的話,就沒有太大意義
elasticsearch.username: "kibana_system"
elasticsearch.password: "admin123"
# 超時時間
elasticsearch.requestTimeout: 120000
2.4、elk用戶權限授權
chown -R elk. /usr/local/kibana
完成授權后,需要切換到elk用戶,
su elk
2.5、Kibana環境啟動
前臺啟動:
/usr/local/kibana/bin/kibana
后臺啟動:
nohup /usr/local/kibana/bin/kibana &
2.6、環境啟動驗證
瀏覽器打開如下地址:http://192.168.24.52:5601,出現如下頁面的話,就表示Kibana正常啟動,

2.7、常見問題解決
1)Kibana啟動時,提示x-pack master_not_discovered錯誤
查看Elastic Search組態檔中,是否配置了node.name,
2)libstdc++.so.6相關問題
curl -O http://ftp.gnu.org/gnu/glibc/glibc-2.18.tar.gz
tar zxf glibc-2.18.tar.gz
cd glibc-2.18/
mkdir build
cd build/
../configure --prefix=/usr
make -j2
make install
3、Logstash搭建
Logstash本次部署在了業務系統服務器上,主要進行業務系統日志的采集,
在進行安裝包解壓,組態檔修改時,最好切換回root用戶,
su root
3.1、壓縮包的解壓
tar -zxvf logstash-7.12.0-linux-x86_64.tar.gz
3.2、將檔案夾移動到/usr/local目錄下
mv logstash-7.12.0 /usr/local/logstash
3.3、組態檔的修改
cd /usr/local/logstash/config
根據logstash-sample.conf檔案復制出一份新的組態檔logstash.conf:
cp logstash-sample.conf /usr/local/logstash/config/logstash.conf
vim logstash.conf
主要修改的內容如下所示:
input {
file {
path => ["/tmp/test-log1.log","/tmp/test-log2.log"]
type => "system"
start_position => beginning
}
}
output {
elasticsearch {
action => "index"
hosts => ["http://192.168.24.52:9200"]
index => "test-log"
#user => "elastic"
#password => "changeme"
}
}
input用來宣告輸入資訊,主要的內容為:
path:日志檔案的絕對路徑
start_position:開始讀取的位置
output用來宣告輸出資訊,主要的內容為:
action:表示行為,本次配置的是創建索引
hosts:Elastic Search環境地址
index:索引的名稱
3.4、創建elk用戶并授權
因ELK無法使用root用戶啟動,因此需要創建新的用戶,并對新的用戶進行授權,
useradd elk
chown -R elk. /usr/local/logstash
完成授權后,需要切換到elk用戶,
su elk
3.5、Logstash環境啟動
cd /usr/local/logstash/bin
./logstash -f ../config/logstash.conf
3.6、環境啟動驗證
ps aux | grep logstash
如果行程啟動成功,則表示Logstash啟動成功,
之后,切換到Elastic Search頁面,從Management選單中進入“Stack Management”,查看索引是否存在,

如果索引存在的話,即可在Discover中配置相應的規則,查詢并展示索引中的資料,

以上即為ELK環境搭建程序,不算太難,只要細心即可,如環境搭建程序中遇到問題,可咨詢筆者共同解決,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/277491.html
標籤:其他
上一篇:正則運算式初學
下一篇:int型溢位問題
