美文网首页Linux
Linux下搭建ELK

Linux下搭建ELK

作者: 神小六 | 来源:发表于2020-05-13 15:48 被阅读0次

    前面我们已经在Windows下搭建了ELK,但是Windows不可能一直开着机,每次用到ELK需要把软件都重新跑一遍,所以我们需要把ELK搭建在Linux下,这样我们就不需要查看日志的时候每次都跑下程序

    1、下载ELK(保持版本一致)

    首先说一下我用的Linux版本是Ubuntu
    Elasticsearch官网elasticsearch-6.3.0.tar
    kibana-6.3.0
    logstash-6.3.0.tar
    下载完后上传文件到Linux里

    2、解压

    我们把下载下载的文件全部解压到一个文件夹里

    tar -zxvf elasticsearch-6.3.0.tar.gz          
    tar -zxvf kibana-6.3.0-linux-x86_64.tar.gz
    tar -zxvf logstash-6.3.0.tar.gz
    

    3、安装elasticsearch

    我们去elasticsearch里的config文件夹下编辑elasticsearch.yml

    # ---------------------------------- Network -----------------------------------
    #
    # Set the bind address to a specific IP (IPv4 or IPv6):
    #
    network.host: 0.0.0.0           ##服务器ip 本机
    #
    #network.host: 192.168.0.1
    #
    # Set a custom port for HTTP:
    #
    http.port: 9200                 ##服务端口
    #
    #http.port: 9200
    #
    # For more information, consult the network module documentation.
    

    修改好后我们去启动elasticsearch,elasticsearch启动不能使用root账户,可以先去创建个账户然后去启动elasticsearch

    /home/java/elk/elasticsearch-6.3.0/bin/elasticsearch   #命令窗运行
    

    然后报了max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]错误,这是因为服务器的最大线程数不够Elasticsearch启动要求最大线程数
    可以参考 elasticsearch启动常见错误
    修改好以后发现还是不行,这里就要说一个Ubuntu很坑爹的事情,修改了limits.conf文件后CentOS是不需要重启服务器就能生效的,Ubuntu就需要重启后文件才能生效,还有修改limits.conf的时候别的教程一般都是直接写*的但是在Ubuntu里就需要写账户名

    java              soft    nofile          65536
    java              hard    nofile          65536
    

    重启后我们去启动elasticsearch

    /home/java/elk/elasticsearch-6.3.0/bin/elasticsearch  -d    #后台线程运行
    

    然后我们用

    ps -ef | grep elasticsearch 
    

    查看elasticsearch进程


    image.png

    去网页上验证下是不是启动成功


    image.png
    这样就OK了,如果需要关闭的话只要kill -9 2004杀掉进程就好了

    4、安装logstash

    新建配置文件

    cd logstash-6.4.2/config
    
    vim logstash.conf
    
    input {
       tcp {
          port => 9601
          codec => json_lines
       }
    }
    output{
       elasticsearch {
          hosts => ["localhost:9200"]
          # 为传入的日志索引命名
          index => "java-log-%{+YYYY.MM.dd}"
       }
    }
    

    然后启动logstash

    /home/java/elk/logstash-6.3.0/bin/logstash -f /home/java/elk/logstash-6.3.0/config/logstash.conf     ##命令窗形式
    nohup /home/java/elk/logstash-6.3.0/bin/logstash -f /home/java/elk/logstash-6.3.0/config/logstash.conf &> run.log & ##后台线程形式
    

    5、安装kibana

    kibana的安装就很简单,只要你安装了elasticsearch跟logstash就直接运行就可以

    nohup /home/java/elk/kibana-6.3.0-linux-x86_64/bin/kibana &> run.log &
    

    这里我遇到了一个问题,启动kibana后没有报错信息但是去网页看就是未响应,然后就去kibana里的配置文件里查看


    image.png

    这里之前是localhost,所以一直访问不到,写了服务器路径后就可以在浏览器里直接访问


    image.png

    相关文章

      网友评论

        本文标题:Linux下搭建ELK

        本文链接:https://www.haomeiwen.com/subject/sxggnhtx.html