翼度科技»论坛 云主机 LINUX 查看内容

ELK日志收集记录

4

主题

4

帖子

12

积分

新手上路

Rank: 1

积分
12
logstash在需要收集日志的服务器里运行,将日志数据发送给es
在kibana页面查看es的数据
es和kibana安装:
Install Elasticsearch with RPM | Elasticsearch Guide [8.8] | ElasticConfiguring Elasticsearch | Elasticsearch Guide [8.8] | ElasticInstall Kibana with RPM | Kibana Guide [8.8] | Elastic
  1. rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
  2. cat << EOF >/etc/yum.repos.d/elasticsearch.repo
  3. [elasticsearch]
  4. name=Elasticsearch repository for 8.x packages
  5. baseurl=https://artifacts.elastic.co/packages/8.x/yum
  6. gpgcheck=1
  7. gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
  8. enabled=0
  9. autorefresh=1
  10. type=rpm-md
  11. EOF
  12. yum install -y --enablerepo=elasticsearch elasticsearch<br><br># 安装完成后,在终端里可以找到es的密码<br># 修改密码:'/usr/share/elasticsearch/bin/elasticsearch-reset-password -u elastic'<br># config file: /etc/elasticsearch/elasticsearch.yml<br># network.host: 0.0.0.0 允许其他服务器访问<br># http.port 修改成可以外部访问的端口<br><br># 启动es<br><em id="__mceDel">systemctl start elasticsearch.service<br><br></em><em><em><em><em><em><em># 测试是否可以访问:curl --cacert /etc/elasticsearch/certs/http_ca.crt -u elastic https://localhost:es_host<br># 如果要在其他服务器里访问的话,需要先把证书移过去:</em></em></em></em></em></em><em><em>/etc/elasticsearch/certs/http_ca.crt,直接复制证书的内容,在客户端保存成一个证书文件即可<br># 在客户端里测试是否可以访问:</em></em><em id="__mceDel"><em><em><em><em><em><em>curl --cacert path_to_ca.crt -u elastic https://localhost:es_host</em></em></em></em></em></em></em>
复制代码
  1. <em><em><em><em><em><em>
  2. # install kibana
  3. cat << EOF >/etc/yum.repos.d/kibana.repo
  4. [kibana-8.x]
  5. name=Kibana repository for 8.x packages
  6. baseurl=https://artifacts.elastic.co/packages/8.x/yum
  7. gpgcheck=1
  8. gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
  9. enabled=1
  10. autorefresh=1
  11. type=rpm-md
  12. EOF
  13. <br># kibana和es可以安装到同一台服务器
  14. yum install -y kibana
  15. # /etc/kibana/kibana.yml 修改server.port为外部可以访问的端口,server.host修改为0.0.0.0允许其他服务器访问,elasticsearch部分的可以先不用设置,
  16. # root用户使用:/usr/share/kibana/bin/kibana --allow-root
  17. systemctl start kibana.service
  18. # 首次打开kibana页面需要添加elastic的token,使用如下命令生成token
  19. # /usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s kibana<br># 登录的时候也需要es的用户名和密码<br># 登录成功之后,</em></em></em></em></em></em><em id="__mceDel"><em id="__mceDel">/etc/kibana/kibana.yml的底部会自动添加elasticsearch的连接信息</em></em>
复制代码
需要收集日志的服务器里安装logstash:
  1. rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
  2. cat <<EOF > /etc/yum.repos.d/logstash.repo
  3. [logstash-8.x]
  4. name=Elastic repository for 8.x packages
  5. baseurl=https://artifacts.elastic.co/packages/7.x/yum
  6. gpgcheck=1
  7. gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
  8. enabled=1
  9. autorefresh=1
  10. type=rpm-md
  11. EOF
  12. yum install -y logstash
  13. ln -s /usr/share/logstash/bin/logstash /usr/bin/logstash
  14. # install filebeat
  15. rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch
  16. cat <<EOF > /etc/yum.repos.d/filebeat.repo
  17. [elastic-8.x]
  18. name=Elastic repository for 8.x packages
  19. baseurl=https://artifacts.elastic.co/packages/8.x/yum
  20. gpgcheck=1
  21. gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
  22. enabled=1
  23. autorefresh=1
  24. type=rpm-md
  25. EOF
  26. yum install -y filebeat<br>ln -s /usr/share/filebeat/bin/filebeat /usr/bin/logstash
  27. #filebeat->logstash->ES
  28. #filebeat从具体目录里拿文件的内容发送给logstash,logstash将数据发送给es
  29. <br>midr -m 777 -p /data/logstash<br>
  30. cat <<EOF >/data/logstash/filebeat.conf
  31. filebeat.inputs:
  32. - type: log
  33.   paths:
  34.     - /your_log_path/*.log
  35. output.logstash:
  36.   hosts: ["127.0.0.1:5044"]
  37. EOF
  38. cat <<EOF >/data/logstash/logstash.conf
  39. # Sample Logstash configuration for creating a simple
  40. # Beats -> Logstash -> Elasticsearch pipeline.
  41. input {
  42.   beats {
  43.     port => 5044
  44.     client_inactivity_timeout => 600
  45.   }
  46. }
  47. filter{
  48.   mutate{
  49.     remove_field => ["agent"]
  50.     remove_field => ["ecs"]
  51.     remove_field => ["event"]
  52.     remove_field => ["tags"]
  53.     remove_field => ["@version"]
  54.     remove_field => ["input"]
  55.     remove_field => ["log"]
  56.   }
  57. }
  58. output {
  59.   elasticsearch {
  60.     hosts => ["https://es_ip_address:es_port"]
  61.     index => "log-from-logstash"
  62.     user => "es_user_name"
  63.     password => "es_password"
  64.     ssl_certificate_authorities => "path_to_es_http_ca.crt"
  65.   }
  66. }
  67. EOF<br>
  68. #es_http_ca.crt的内容和es服务器里的/etc/elasticsearch/certs/http_ca.crt内容相同
  69. #filter里移除一些不必要的字段
  70. #启动
  71. logstash -f /data/logstash/logstash.conf >/dev/null 2>&1 &
  72. filebeat -e -c /data/logstash/filebeat.conf >/dev/null 2>&1 &
复制代码
  1. 启动之后,filebeat.conf里配置的日志路径里可以copy一些文件做测试,或者已经有一些日志文件的话,都可以在kabana里看到配置的index被自动创建:<br>
复制代码

 创建一个DataView就可以查看index里的文档内容:

 在Discover里选择配置的dataview查看数据:

 
  1.  
复制代码
来源:https://www.cnblogs.com/huizit1/p/17494824.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具