ELK搭建簡單說明

ELK搭建簡單說明


簡單說明

  • 周天陪孩子學習,自己簡單研究了下如何處理
  • 不是很系統,僅是能夠展示部分文件的日誌.
  • 需要有很多坑需要進行填充.

搭建模式

  • 自己採取rpm包方式進行搭建
183 機器上面安裝上 kibana 以及 ES
180 的機器上面安裝logstash
181 的機器也是安裝logstash 
兩臺機器用於發送數據到ES然後交由kinaba顯示
暫時沒有使用filebeat. 感覺不如loki好用

遇到的問題以及解決

  • logstash 啓動報錯
1. 遇到問題
WARNING: Could not find logstash.yml which is typically located in $LS_HOME/config or /etc/logstash. You can specify the path using --path.settings. Continuing using the defaults
2. 解決問題的方式
ln -s /etc/logstash /usr/share/logstash/config

獲取安裝介質

  • 本次使用的安裝介質如下:
elasticsearch-7.14.0-x86_64.rpm
filebeat-7.9.1-x86_64.rpm
kibana-7.14.0-x86_64.rpm
logstash-7.14.0-x86_64.rpm

安裝ES


  • 目標機器183
  • 注意需要創建目錄 /data/eslog 以及 /data/esdata
  • 注意需要賦予權限chown elasticsearch:elasticsearch /data -R
修改配置文件
vim /etc/elasticsearch/elasticsearch.yml
需要修改的事項:
#集羣名
cluster.name: es_server
#node名
node.name: appnode01
#數據目錄
path.data: /data/esdata
#日誌目錄
path.logs: /data/eslog
network.host: 0.0.0.0
http.port: 9200
#集羣master需要和node名設置一致
cluster.initial_master_nodes: ["appnode01"]
  • 設置完成之後啓動ES
  • systemctl enable elasticsearch && systemctl restart elasticsearch

安裝ElasticSearch的head插件

  • 這個插件應該不是必須,不過便於進行查看ES的信息
  • 注意修改配置文件ElasticSearch纔可以訪問head.
修改配置文件:
vim /etc/elasticsearch/elasticsearch.yml
在最後面添加內容爲:
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-methods: OPTIONS, HEAD, GET, POST, PUT, DELETE
http.cors.allow-headers: "X-Requested-With, Content-Type, Content-Length, X-User"

安裝ES插件

  • 獲取安裝介質
wget  https://github.com/mobz/elasticsearch-head/archive/master.zip
wget https://nodejs.org/dist/v10.15.0/node-v10.15.0-linux-x64.tar.xz
注意存放路徑: 
可以也放在/data 路徑下
對兩個文件進行解壓縮即可.
注意需要將node的bin文件夾路徑放置到 環境變量了裏面去
需要在 elasticsearch-head-master 路徑下執行安裝
npm install -g grunt-cli
npm install -g grunt
注意不能隨意更換下載好的路徑,不然那安裝好的modular可能會失效.

安裝ES插件

  • 修改配置文件
  • 注意需要修改head插件的配置,不然無法進行連接
vim /data/elasticsearch-head-master/Gruntfile.js
在keepalive:true的後面添加一個 逗號
然後添加 hostname: * 
注意需要保持yaml文件的配置, 注意空格等信息.
vim /data/elasticsearch-head-master/_site/app.js 
可以查找 9200 的字樣,然後將地址修改爲自己的ES的地址
this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://10.110.82.183:9200";
以上爲示例.

安裝ES插件

  • 下載另外一個文件
 wget https://github.com/Medium/phantomjs/releases/download/v2.1.1/phantomjs-2.1.1-linux-x86_64.tar.bz2
注意需要將這個文件放置到
/tmp/phantomjs 目錄下
可以使用其他機器下載,避免文件下載不到安裝失敗.

安裝ES插件

  • 啓動
cd /data/elasticsearch-head-master
npm install 
# 注意可能需要執行較長的時間
之後在當前目錄下運行
grunt server &
  • 10.110.82.183:9200 可以看到head插件

安裝ES插件

  • 可以進行查看
  • 注意裏面可以有不同的內容
    image

安裝Kibana

  • 也是使用rpm包進行安裝
  • 需要修改配置文件
vim /etc/kibana/kibana.yml
注意需要修改的內容主要如下:
server.port: 5601
server.host: "0.0.0.0"
server.name: "kibana01"
elasticsearch.hosts: ["http://10.110.82.183:9200"]
kibana.index: ".kibana"
  • 啓動kibana即可 systemctl enable kibana && systemctl restart kibana
  • 可以使用 10.110.82.183:5601 進行查看.

安裝logstash查看日誌

  • 也是使用rpm包進行安裝,可以自定義一個配置文件用於發送數據
ln -s /etc/logstash /usr/share/logstash/config
vim /etc/logstash/conf.d/file.conf 
內容爲:
 input{
  file{
    path => ["/app/server/log/app.log"]
    type => "app-log"
    start_position => "beginning"
  }
}

filter{

}

output{
  elasticsearch{
    hosts => ["10.110.82.183:9200"]
    index => "app-log-%{+YYYY.MM}"
  }
}

  • 然後可以使用後臺方式啓動
nohup /usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/file.conf &

Kibana進行日誌展示


  • 可以登錄9100 查看ES的head能夠看到新增的一個logstash信息
  • 可以登錄5601 進行設置 方式如下:
  • 第一步打開界面 使用kibana的設置
    image

Kibana進行日誌展示

  • 進入管理設置, 選擇Stack管理
  • 注意需要進入具體的設置界面
    image

Kibana進行日誌展示

  • 需要進入右側的 Create index.
  • 注意需要下面有前綴信息.
    image

Kibana進行日誌展示

  • 設置好只有可以進入控制面板查看discover 進行查看日誌
  • 注意可以有不同的index進行展示.
    image

Kibana進行日誌展示

  • 進入下一個界面就可以正常展示日誌信息了
  • 注意可以點擊查看具體信息,也可以通過下拉列表更改log
    image
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章