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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章