• windows2016_x64搭建ELK(datasource->filebeat->logstash->elasticsearch->kibana)


    windows2016_x64搭建ELK(datasource->filebeat->logstash->elasticsearch->kibana)

    1. 本文示例日志程序基于asp.net core 3.0+nlog
    2. ELK相关程序如下图:

    3. 日志组件推荐:
    java: logback、lo4j
    asp.net: log4net、nlog
    

    客户端安装和运行

    1. 下载filebeat安装包 filebeat7.5.1
    2. 编辑filebeat.yml,简易版配置如下:
    filebeat.inputs:
    - type: log
      enabled: true
      paths:
        #- /var/log/*.log
        - F:logsxxx*.log
    
    filebeat.config.modules:
      # Glob pattern for configuration loading
      path: ${path.config}/modules.d/*.yml
    
      # Set to true to enable config reloading
      reload.enabled: false
    
    output.logstash:
      # logstash地址和端口
      hosts: ["192.168.3.43:5044"]
    
    processors:
      - add_host_metadata: ~
      - add_cloud_metadata: ~
      - add_docker_metadata: ~
      - add_kubernetes_metadata: ~
    
    1. 运行程序并生成日志(window7_x64|192.168.3.42:8090),日志文件名:log-2020-01-08.log
    2012-01-08 10:21:41.5296|0|INFO|logfile|windows service start... 
    2012-01-08 11:03:03.5926|0|INFO|logfile|windows service end... 
    2012-01-08 11:04:18.2756|0|INFO|logfile|windows service start... 
    2012-01-08 11:04:26.7556|0|INFO|logfile|测试0 
    
    1. filebeat包文件根目录执行程序:filebeat -e -c filebeat.yml
    D:devopsfilebeat-7.5.1-windows-x86_64>filebeat -e -c filebeat.yml
    ...
    2020-01-08T14:06:16.038+0800    INFO    [monitoring]...
    
    1. 更多信息详见 filebeat官方文档

    服务端安装和运行

    1. 安装JDK并配置环境变量,本文elasticsearch版本7.5.1需JDK11+。JDK11
    JAVA_HOME: C:Program Filesjdk-11.0.5
    CLASSPATH: .;%JAVA_HOME%lib;%JAVA_HOME%lib	ools.jar;%JAVA_HOME%libdt.jar
    PATH追加: %JAVA_HOME%in;%JAVA_HOME%jrein;
    
    1. CMD-> java -version 检测JDK
    java version "11.0.5" 2019-10-15 LTS
    Java(TM) SE Runtime Environment 18.9 (build 11.0.5+10-LTS)
    Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.5+10-LTS, mixed mode)
    
    1. 配置elasticsearch环境变量
    ES_HOME:C:Program Fileselasticsearch-7.5.1
    PATH追加:%ES_HOME%in;
    
    1. 编辑/config/elasticsearch.yml,简易版配置如下:
    cluster.name: elasticsearch-application
    node.name: node-1
    network.host: 192.168.3.41
    http.port: 9200
    cluster.initial_master_nodes: ["node-1"]
    # 配置head cors
    http.cors.enabled: true
    http.cors.allow-origin: "*"
    node.master: true
    node.data: true
    

    5.运行 elasticsearch7.5.1inelasticsearch.bat, 访问 192.168.3.41:9200, 显示如下JSON字符串表示部署成功。

    {
      "name" : "node-1",
      "cluster_name" : "elasticsearch-application",
      "cluster_uuid" : "MUOnu8JbTTe7bT1ru3Vb7Q",
      "version" : {
        "number" : "7.5.1",
        "build_flavor" : "default",
        "build_type" : "zip",
        "build_hash" : "3ae9ac9a93c95bd0cdc054951cf95d88e1e18d96",
        "build_date" : "2019-12-16T22:57:37.835892Z",
        "build_snapshot" : false,
        "lucene_version" : "8.3.0",
        "minimum_wire_compatibility_version" : "6.8.0",
        "minimum_index_compatibility_version" : "6.0.0-beta1"
      },
      "tagline" : "You Know, for Search"
    }
    
    • 安装 elasticsearch-head插件
    1. es5以上版本安装head需要安装node和grunt。下载nodejs并安装。
    2. 添加nodejs环境变量
    path追加:C:Program Files
    odejs;
    
    1. 安装完成用cmd执行 node -v可查看版本号->v10.15.0
    2. 执行 npm install -g grunt-cli 安装grunt ,安装完成后执行grunt -version查看是否安装成功,会显示安装的版本号
    3. https://github.com/mobz/elasticsearch-head中下载head插件,选择下载zip
    4. 解压到指定文件夹下,G:elasticsearch-7.5.1elasticsearch-head-master 进入该文件夹,编辑Gruntfile.js 在对应的位置加上hostname:'*'
    connect: {
    	server: {
    		options: {
    			hostname:"*",
    			port: 9100,
    			base: '.',
    			keepalive: true
    		}
    	}
    }
    
    1. 在D:elasticsearch-7.5.1elasticsearch-head-master 下执行npm install 安装完成后(Receiving 100%)。
    2. 执行grunt server 或者npm run start 运行head插件,如果不成功重新安装grunt。
    3. 重新运行 elasticsearch7.5.1inelasticsearch.bat,访问192.168.3.41:9100 出现elasticsearch head 页面则表示安装成功,如下图:
    1. 编辑/kibana-7.5.1-windows-x86_64/config/kibana.yml,简易版配置如下:
    server.port: 9101
    server.host: "0.0.0.0"
    elasticsearch.hosts: ["http://192.168.3.41:9200"]
    
    1. 运行kibana-7.5.1-windows-x86_64inkibana.bat,访问192.168.3.40:9101,成功出现kibana页面则表示部署成功。
    1. 在Windows中logstash执行路径不能有空格
    2. 编辑D:/logstash-7.5.1/config/logstash-sample.conf文件,简易版如下:
    input {
      beats {
        port => 5044
      }
    }
    
    output {
      elasticsearch {
        hosts => ["http://192.168.3.41:9200"]
        index => "log-%{+YYYY.MM.dd}"
      }
    }
    
    1. 复制logstash-sample.conf至bin根目录下,执行命令:logstash -f logstash-sample.conf --config.reload.automatic

    运行

    1. 依次运行elasticsearch、kibana、logstash、filebeat、日志log
    2. 在kibana->Disconver中创建日志索引

    其他搭建方式

    • datasource->logstash->elasticsearch->kibana
    • datasource->filebeat->kafka->logstash->elasticsearch->kibana
    • datasource->filebeat->logstash->redis/kafka->logstash-> elasticsearch->kibana
  • 相关阅读:
    热爱自己的工作
    python 类型转换操作
    使用Python实现Telnet远程登录
    使用Python为程序添加右键菜单打开方式
    【Django实例】序言
    【转】Windows右键菜单设置与应用技巧
    【转】浅谈以太网帧格式
    Beyond Compare脚本:比较文件并生成html格式的差异报告
    【转】C语言中的位域、字节序、比特序、大小端
    【转】tcpdump抓取TCP/IP数据包分析
  • 原文地址:https://www.cnblogs.com/lenovo_tiger_love/p/12166908.html
Copyright © 2020-2023  润新知