• 搭建单机ELK——基于Elasticsearch 7.3.0


    1 准备工作

    1.1 下载安装包

    安装包下载地址:https://www.elastic.co/cn/downloads/

    这里下载并将安装包统一解压后的目录结构如下:

    1.2 修改文件限制

    #vi /etc/security/limits.conf
    
    #修改内容
    * hard nofile 65536
    * soft nproc 65536
    * hard nproc 65536
    * soft memlock unlimited
    * hard memlock unlimited

    1.3 调整进程数

    #vi /etc/security/limits.d/20-nproc.conf
    
    #调整内容
    * soft nproc 4096
    root soft nproc unlimited

     1.4 调整虚拟内存&最大并发连接

    #vi /etc/sysctl.conf
    #修改内容
    vm.max_map_count=655360
    fs.file-max=655360

    1.5 jdk版本

    Elasticsearch5之后要求适配jdk版本在8及以上,理论上与Elasticsearch7适配的jdk版本为11,这里依旧使用jdk8。

    1.6 用户及权限配置

    elk使用root用户启动是失败的,需要配置一个非root用户来启动elk的各组件。这里使用admin用户,需要赋予其各组件安装目录的操作权限。

    2 部署Elasticsearch

    2.1 修改配置

    [admin@yrjk elk]$ cd elasticsearch-7.3.0/config/
    [admin@yrjk config]$ ls
    elasticsearch.keystore  elasticsearch.yml  jvm.options  log4j2.properties  role_mapping.yml  roles.yml  users  users_roles
    [admin@yrjk config]$ vi elasticsearch.yml 

    新增如下配置

    cluster.name: zang #设置集群的名字,要小写
    node.name: node-1 #设置节点的名字
    network.host: 0.0.0.0 #设置ip地址,使外界可以访问es
    http.port: 9200 #设置对外服务的端口,默认是9200
    #设置在集群中的所有节点名称,这个节点名称就是之前所修改的,当然你也可以采用默认的也行,目前是单机,放入一个节点即可
    cluster.initial_master_nodes: ["node-1"]
    bootstrap.memory_lock: false
    bootstrap.system_call_filter: false
    #解决跨域问题
    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"

    2.2 启动

    [admin@yrjk elk]$ cd elasticsearch-7.3.0/bin
    [admin@yrjk bin]$ sh elasticsearch &

    2.3 检查是否启动成功

    访问 http://192.168.177.120:9200/ ,出现如下信息即为启动成功。

    3 部署Logstash

    3.1 修改配置

    [admin@yrjk elk]$ cd logstash-7.3.0/config/
    [admin@yrjk config]$ vi logstash.yml 

    新增如下配置

    path.data: /hsdata/elk/logstash-7.3.0/data
    path.logs: /hsdata/elk/logstash-7.3.0/logs

    新建配置文件logstash.conf,并配置

    [admin@yrjk elk]$ cd logstash-7.3.0/config/
    [admin@yrjk config]$ vi logstash.conf 
    input {
        file {
            path => "/hsdata/elk/mylog/*.log"
            start_position => beginning
        }
    }
    filter {
    
    }
    output {
        elasticsearch {
        hosts => "localhost:9200"
        }
    
    }

    3.2 启动

    [admin@yrjk elk]$ cd logstash-7.3.0/bin/
    [admin@yrjk bin]$ sh logstash -f /hsdata/elk/logstash-7.3.0/config/logstash.conf &

    3.3 检查

    日志输出如下即为启动成功

    4 部署Kibana 

    4.1 修改配置

    [admin@yrjk elk]$ cd kibana-7.3.0-linux-x86_64/config/
    [admin@yrjk config]$ ls
    kibana.yml
    [admin@yrjk config]$ vi kibana.yml 

    新增如下配置

    server.host: 0.0.0.0
    elasticsearch.hosts: ["http://192.168.177.120:9200"]
    i18n.locale: "zh-CN"

    4.2 启动

    [admin@yrjk elk]$ cd kibana-7.3.0-linux-x86_64/bin/
    [admin@yrjk bin]$ ls
    kibana  kibana-keystore  kibana-plugin
    [admin@yrjk bin]$ sh kibana &

    4.3 登录操作

    访问服务器的5601端口,进入系统进行查看。

  • 相关阅读:
    C#跨平台物联网通讯框架ServerSuperIO(SSIO)正式开源... 1
    神秘值分解(Singular Value Decomposition)
    mysql的sql执行计划详解(非常有用)
    springweb flux websocket
    springweb flux 服务器推送事件
    nodejs-express 报错View is not a constructor
    深入理解 Laravel Eloquent(三)——模型间关系(关联)
    Laravel 校验规则之字段值唯一性校验
    Notice: Trying to get property of non-object problem(PHP)解决办法 中间件只能跳转不能返任何数据
    慕客网laravel学习笔记
  • 原文地址:https://www.cnblogs.com/zjfjava/p/12099897.html
Copyright © 2020-2023  润新知