找回密码
 立即注册
首页 业界区 安全 待完善

待完善

终秀敏 3 小时前
目录

  • 一.ElasticStack及EFK架构梳理

    • 1.什么是ElasticStack
    • 2.EFK架构图解

  • 二.ElasticSearch环境部署

    • 1.ElasticSearch单点部署
    • 2.ElasticSearch集群部署

  • 三.ES集群术语及DSL语句初体验

    • 1.ES集群的相关术语
    • 2.ES相关的面试题❗️
    • 3.ES集群的DSL语句初体验

  • 四.Kibana组件部署

    • 1.部署kibana组件
    • 2.kibana基础使用

  • 五.Filebeat环境部署实战

    • 1.部署Filebeat环境
    • 2.Filebeat采集文本日志实战
    • 3.练习-Filebeat采集nginx案例

  • 六.EFK架构采集nginx实战案例

    • 1.EFK架构采集nginx日志

      • 步骤演示:如何添加一个索引来访问

    • 2.Filebeat模块管理实战

      • 2.1 查看模块
      • 2.2 启动模块
      • 2.3 禁用模块
      • 2.4 底层逻辑验证

    • 3.filebeat基于模块采集nginx日志

      • 3.1 准备nginx的访问日志
      • 3.2 编写Filebeat的模块文件
      • 3.3 编写Filebeat的配置文件
      • 3.4 启动Filebeat实例
      • 3.5 kibana查询相关的字段
      • 3.6 过滤数据


  • 七.Filebeat多实例

    • 1.什么是Filebeat多实例
    • 2.实战案例⭐

  • 八.今日内容回顾及作业

    • 1.今日内容回顾
    • 2.今日作业
    • 3.扩展作业


一.ElasticStack及EFK架构梳理

1.什么是ElasticStack
  1. ElasticStack是elastic公司推出的一系列技术栈。
  2. 早期ElasticStack的前身,有一个很火的名词叫ELK,代表的是该公司的三款日志采集方案的技术栈。
  3.         - ElasticSearch
  4.                 是一款分布式高可用的数据库,主要作用就是存储和检索数据。
  5.                 简称ES集群。
  6.         - Logstash
  7.                 是一款日志分析处理工具,主要对数据进行过滤,处理,转换等相关操作,将处理后的数据写入ES集群。
  8.         - Kibana
  9.                 需要链接ES集群,可以图形化查询ES集群数据。简化查询过程。
  10.                
  11. 后来,logstash相对来说比较重量级,业界开始使用其他的日志采集工具进行替代(比如Fluentd,Flume等),官方也推出了轻量级解决方案,beats组件,其中比较出名的就是Filebeat,主要是用于日志文件采集。
  12. 于是起名字就成了一个问题,有的公司使用ELFK架构,EFK架构,ELK架构,后来官方将elk stack更名为elasticstack。
  13. 官方文档:
  14.         https://www.elastic.co/cn/
  15. "ES8-"版本技术文档:
  16.         https://www.elastic.co/guide/index.html
复制代码
2.EFK架构图解
  1. 如图所示,EFK架构是业界目前主流的一种日志采集解决方案。
复制代码
二.ElasticSearch环境部署

1.ElasticSearch单点部署
  1. 环境准备:ubantu操作系统
  2. 10.0.0.91        elk1
  3. 10.0.0.92        elk2
  4. 10.0.0.93        elk3
  5. 为避免权限问题,进入系统后均用root用户操作❗️
  6. 1.进入ubantu系统
  7. 2.设置root密码
  8. sudo passwd root        #设置密码为1
  9. 3.切换到root用户
  10. su - root
复制代码
  1.         1.下载ES软件包
  2.         kylin环境和centos环境
  3. wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.29-x86_64.rpm
  4.         ubantu环境
  5. wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.29-amd64.deb
  6. [root@elk91 ~]# wget http://192.168.14.253/Resources/ElasticStack/softwares/ES7/7.17.29/elasticsearch-7.17.29-amd64.deb
  7.         2.安装并解压ES软件包
  8. [root@elk91 ~]# ll elasticsearch-7.17.29-amd64.deb
  9. -rw-r--r-- 1 root root 325488012 Aug 27  2025 elasticsearch-7.17.29-amd64.deb
  10. [root@elk91 ~]# dpkg -i elasticsearch-7.17.29-amd64.deb
  11.         3.修改ES的配置文件
  12. [root@elk91 ~]# vim /etc/elasticsearch/elasticsearch.yml
  13. # 对外暴露ES的IP地址
  14. network.host: 0.0.0.0
  15. # 表示当前ES是一个单点,而非集群
  16. discovery.type: single-node
  17.         4.启动ES服务
  18. [root@elk91 ~]# systemctl start elasticsearch.service
  19. [root@elk91 ~]# ss -ntl | egrep "92|300"                        #        可能会有几秒的延迟才会显示出来
  20. LISTEN 0      4096               *:9300            *:*         
  21. LISTEN 0      4096               *:9200            *:*   
  22. 端口说明:
  23.         9200:
  24.                 支持http|https协议,主要是集群外部提供服务的端口。       
  25.         9300:
  26.                 使用的是tcp协议,主要是用于ES集群数据内部传输的端口。
  27.         5.测试验证
  28. [root@elk91 ~]# curl 10.0.0.91:9200
  29. {
  30.   "name" : "elk91",
  31.   "cluster_name" : "elasticsearch",
  32.   "cluster_uuid" : "QtOwSp-jTMms3YweEq47-Q",
  33.   "version" : {
  34.     "number" : "7.17.29",
  35.     "build_flavor" : "default",
  36.     "build_type" : "deb",
  37.     "build_hash" : "580aff1a0064ce4c93293aaab6fcc55e22c10d1c",
  38.     "build_date" : "2025-06-19T01:37:57.847711500Z",
  39.     "build_snapshot" : false,
  40.     "lucene_version" : "8.11.3",
  41.     "minimum_wire_compatibility_version" : "6.8.0",
  42.     "minimum_index_compatibility_version" : "6.0.0-beta1"
  43.   },
  44.   "tagline" : "You Know, for Search"
  45. }
  46. [root@elk91 ~]# curl 10.0.0.91:9200/_cat/nodes
  47. 10.0.0.91 8 97 5 0.09 0.10 0.04 cdfhilmrstw * elk91
复制代码
2.ElasticSearch集群部署

[code]        1.停止ES单点[root@elk91 ~]# systemctl stop elasticsearch.service [root@elk91 ~]# ss -ntl | egrep "92|300"        2.修改ES的配置文件[root@elk91 ~]# vim /etc/elasticsearch/elasticsearch.yml[root@elk91 ~]# egrep -v "^#|^$" /etc/elasticsearch/elasticsearch.yml cluster.name: oldboyedu-linux102-clusterpath.data: /var/lib/elasticsearchpath.logs: /var/log/elasticsearchnetwork.host: 0.0.0.0discovery.seed_hosts: ["10.0.0.91", "10.0.0.92","10.0.0.93"]cluster.initial_master_nodes: ["10.0.0.91", "10.0.0.92","10.0.0.93"]相关参数说明        cluster.name                指定集群的名称,ES所有节点必须指定同样的名称,否则无法加入集群。        path.data:                数据存储路径。        path.logs:                日志存储路径。        network.host:                对外监听的地址。        discovery.seed_hosts:                分布式集群的主机列表。        cluster.initial_master_nodes                参数master选举的列表。                        3.清空之前的数据[root@elk91 ~]# rm -rf /var/{log,lib}/elasticsearch/*[root@elk91 ~]# ll /var/{log,lib}/elasticsearch/                        #        必须显示以下内容,才算成功!/var/lib/elasticsearch/:total 8drwxr-s---  2 elasticsearch elasticsearch 4096 Oct 29 11:36 ./drwxr-xr-x 61 root          root          4096 Oct 29 10:08 ..//var/log/elasticsearch/:total 8drwxr-s---  2 elasticsearch elasticsearch 4096 Oct 29 11:36 ./drwxrwxr-x 10 root          syslog        4096 Oct 29 10:08 ../        4.分发软件包(确保elk91的根目录下有这个压缩包)[root@elk91 ~]# scp elasticsearch-7.17.29-amd64.deb 10.0.0.92:~[root@elk91 ~]# scp elasticsearch-7.17.29-amd64.deb 10.0.0.93:~        ——————————————————————————无法传输解决方案——————————————————————————优先配置1:①.更改ssh配置文件,允许远程登录vim /etc/ssh/sshd_config,将 PermitRootLogin 改为 yes。②.重启 SSH 服务systemctl restart ssh。③.注意❗️三台机器都需要更改配置❗️即10.0.0.91-elk1 , 10.0.0.92-elk2 , 10.0.0.93-elk3        额外配置2:(启动ES服务时可能会用到)如果还是不能使用scp,就配置一下文件权限Elasticsearch 不能使用 root 用户运行,它必须使用 elasticsearch 用户。如果数据目录或日志目录的归属权不对,也会启动失败。# 确保数据目录和日志目录属于 elasticsearch 用户sudo chown -R elasticsearch:elasticsearch /var/lib/elasticsearchsudo chown -R elasticsearch:elasticsearch /var/log/elasticsearchsudo chown -R elasticsearch:elasticsearch /etc/elasticsearch注意❗️三台机器都需要更改配置❗️即10.0.0.91-elk1 , 10.0.0.92-elk2 , 10.0.0.93-elk3———————————————————————————————————————————————————————————————————        5.其他节点安装ES服务[root@elk92 ~]# dpkg -i elasticsearch-7.17.29-amd64.deb [root@elk93 ~]# dpkg -i elasticsearch-7.17.29-amd64.deb         6.同步配置文件[root@elk91 ~]# scp /etc/elasticsearch/elasticsearch.yml 10.0.0.92:/etc/elasticsearch/[root@elk91 ~]# scp /etc/elasticsearch/elasticsearch.yml 10.0.0.93:/etc/elasticsearch/        7.同时启动ES服务【否则可能会脑裂】#        小窍门:使用Alt加上数字键
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

相关推荐

您需要登录后才可以回帖 登录 | 立即注册