最近在linux下搭建了一套ELK環(huán)境,ELK簡單來說,ElasticSearch 作為搜索引擎存儲數(shù)據(jù),Logstash 負責(zé)收集數(shù)據(jù)并輸出給ElasticSearch ,Kibana 可以理解為elasticsearch的顯示面板。
本文搭建的ELK環(huán)境,主要用來收集應(yīng)用系統(tǒng)的日志,是單機版;如果想升級成集群版,可以將ElasticSearch 部署成集群,哪個服務(wù)器需要采集數(shù)據(jù)就安裝Logstash, 顯示面板Kibana可以只安裝在一個服務(wù)器節(jié)點即可。
準(zhǔn)備工作 1.安裝jdk由于ElasticSearch 需要 JDK 環(huán)境,所以要提前安裝好 JDK 。另外,可能jdk的安裝路徑各有不同,所以可以提前給jdk建立一個軟連接 (否則elasticSearch啟動時會報錯)。
which java
如果結(jié)果不是上圖顯示,可以執(zhí)行一下命令
ln -s 執(zhí)行which java所顯示的路徑 /usr/bin/java
2.創(chuàng)建ES用戶通常 ElasticSearch 及kibana 都是不用root去啟動的,所以這里創(chuàng)建一個新用戶 ES。
useradd es
passwd es
創(chuàng)建完用戶之后,要對其進行授權(quán)。下面的 elk安裝 ,我專門建了一個 文件夾,然后將該文件夾授權(quán)給ES用戶,如果操作過程中不小心忘了賦權(quán)限,執(zhí)行不了啟動命令,就再授權(quán)一下。
[root@ELK-slave home]# cd /usr/local/
[root@ELK-slave local]# mkdir elk
[root@ELK-slave local]# chown -R es:es /usr/local/elk
下面進行安裝 ,注意一點,3個軟件這里都是通過安裝包進行部署的,要注意版本的一致性。下面安裝時,可切換到 es用戶。
ElasticSearch在 /usr/local/elk/ 下建立 es文件夾,下載安裝包,并解壓
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.6.2-linux-x86_64.tar.gz
解壓完成后,修改配置文件。配置中要指定數(shù)據(jù)和日志路徑,所以我提前建好文件夾。
修改config目錄下的elasticsearch.yml文件,加入以下內(nèi)容(單機配置)
cluster.name: es
node.name: node-1
path.data: /usr/local/elk/es/data
path.logs: /usr/local/elk/es/log
network.host: 0.0.0.0
http.port: 9200
discovery.seed_hosts: ["192.168.179.129"]
cluster.initial_master_nodes: ["node-1"]
http.cors.enabled: true
http.cors.allow-origin: "*"
配置完成后,執(zhí)行啟動命令
nohup ./elasticsearch >/usr/local/elk/es/run.log 2>&1 &
查看運行日志,并訪問對應(yīng)的鏈接,http://192.168.179.129:9200/
到這里,就啟動成功了。
其實在啟動時,可能會報虛擬內(nèi)存不足、大文件數(shù)太小等問題,所以如果啟動失敗,可以進行以下配置
1.切換root用戶 ,編輯 limits.conf (vi /etc/security/limits.conf),末尾加入以下內(nèi)容
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
2.切換root用戶,修改 sysctl.conf (vi /etc/sysctl.conf),加入如下配置
vm.max_map_count=655360
并執(zhí)行以下命令,使配置生效。
sysctl -p
完成上述配置后,切換到es用戶,重新啟動。
Logstash在 /usr/local/elk/ 下建立 logstash文件夾,下載安裝包,并解壓
wget https://artifacts.elastic.co/downloads/logstash/logstash-7.6.2.tar.gz
logstash通過 input采集數(shù)據(jù),output 輸出數(shù)據(jù),并且支持過濾功能。輸入、輸出都支持多種插件,如標(biāo)準(zhǔn)輸入、文件輸入、kafka 等,輸出包括 elasticsearch 、文件,kafka等等。
為方便,先使用 標(biāo)準(zhǔn)輸入輸出查看下效果,進入bin目錄,執(zhí)行以下命令
./logstash -e 'input { stdin{} } output { stdout{} }'
我們的目的是輸出到 elasticsearch ,所以使用 標(biāo)準(zhǔn)輸入,并輸出到 elasticsearch 再測試一下
./logstash -e 'input { stdin{} } output { elasticsearch { hosts =>["192.168.179.129:9200"] } }'
輸入字符,然后查看對應(yīng)的elasticsearch中是否存在
至此,說明logstash輸出到 elasticsearch沒有問題,這時可以進行正式配置了。logstash啟動時,輸入、輸出的配置都通過配置文件來定義,進入config 目錄,創(chuàng)建 springboot-logstash.conf文件。
這里要采集系統(tǒng)應(yīng)用的日志,輸入采用 文件方式,修改 springboot-logstash.conf 配置
input {
file {
path =>"/usr/local/activity/info.log"
type =>"activity"
start_position =>"beginning"
}
file {
path =>"/usr/local/activityapi/info.log"
type =>"activityapi"
start_position =>"beginning"
}
}
output {
if [type] == "activity" {
elasticsearch {
hosts =>["192.168.179.129"]
index =>"activity-%{+YYYY.MM.dd}"
}
} else if [type] == "activityapi" {
elasticsearch {
hosts =>["192.168.179.129"]
index =>"activityapi-%{+YYYY.MM.dd}"
}
}
}
執(zhí)行啟動命令
nohup ./logstash -f ../config/springboot-logstash.conf --config.reload.automatic 2>&1 &
不同的應(yīng)用(activity、activityapi),建立了不同的索引,并以日為單位做分割,可以查看elasticsearch的索引情況
此時,logstash啟動成功
在 /usr/local/elk/ 下建立 kibana文件夾,下載安裝包,并解壓
wget https://artifacts.elastic.co/downloads/kibana/kibana-7.6.2-linux-x86_64.tar.gz
修改配置文件
server.port: 5601
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://192.168.179.129:9200"]
然后啟動即可,注意,不能使用root用戶啟動,切換到es用戶
nohup ./kibana &
啟動之后,訪問 鏈接 http://192.168.179.129:5601/
kibana安裝之后,做一下配置就可以使用了,先找到管理頁面,點擊 Index Patterns
第一步,定義的 index pattern ,其實和 elasticsearch 對應(yīng)的 index有關(guān),比如上文中 activity 的日志,都是以 activity- 為前綴,我定義 activity-* ,就可以匹配對應(yīng)的所有日期下的日志
第二步,點擊保存
同理,我對 activityapi 也配置對應(yīng)的 index pattern,activityapi* 。
然后點擊discover版塊,可以看到對應(yīng)的數(shù)據(jù)
我們可以通過切換對應(yīng) 的index pattern ,來查看相關(guān)的日志
這就相當(dāng)于,有了一個實時可視化的tail -f 日志工具,并且支持內(nèi)容搜索。
至此,單機版的ELK環(huán)境就搭建完成了。
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
網(wǎng)頁名稱:ELK單機環(huán)境搭建-創(chuàng)新互聯(lián)
文章轉(zhuǎn)載:http://www.rwnh.cn/article4/ddcsoe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、網(wǎng)站導(dǎo)航、虛擬主機、網(wǎng)站策劃、響應(yīng)式網(wǎng)站、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)