• elk搭建的详细步骤以及说明


    更新太快参考官网

    https://www.elastic.co/guide/en/elasticsearch/reference/7.7/rpm.html#rpm-repo

    一:准备工作

    1.准备一台虚拟机

    192.168.175.222      elk-node2

    2.关闭防火墙以及selinux

    命令:systemctl stop firewalld       #关闭firewall防火墙

    命令:iptables  -F                        #清除iptables防火墙规则

    命令:setenforce 0      #临时有效,重启无效

    命令:vim /etc/selinux/config         #selinux的配置文件路径

    3.部署java环境

    将tar包解压到 /usr/local下 版本为jdk-8u211-linux-x64.tar.gz     #路径为/usr/local/jdk1.8.0_211(解包后自动生成)

    命令:wget http://192.168.130.150/jdk/jdk-8u211-linux-x64.tar.gz       #下载需要的安装包(可以自己去下载)

    命令:tar xf jdk-8u211-linux-x64.tar.gz -C /usr/local/         #解包到/usr/local,意思是本机用户环境启动

    命令:echo "export JAVA_HOME=/usr/local/jdk1.8.0_211" >> /etc/profile.d/jdk8.sh        #在配置文件里声明路径(指定路径)

    命令:echo "export CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/jar/tools.jar:$JAVA_HOME/jre/lib" >> /etc/profile.d/jdk8.sh       #在配置文件里声明Java变量环境

    命令:echo "export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH" >> /etc/profile.d/jdk8.sh         #在配置文件里声明启动Java变量环境

    命令:echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib" >> /etc/profile.d/jdk8.sh            #在配置文件里声明启动Java变量环境路径

    命令:chmod +x /etc/profile.d/jdk8.sh       #给Java变量环境添加执行权限

    命令:source /etc/profile.d/jdk8.sh          #重启环境

    命令:java -version            #查看Java变量环境

    (注意:上面的命令可以直接做成脚本,不过执行完脚本之后,要重新source一下才可以,因为脚本内的java环境已经重启,本地电脑的环境并没有重启)

     现在准备工作已经差不多了,接下来就是搭建elk

    二:搭建elk

    搭建elasticsearch

    1.配置yum源

    导入GPG key    #GPG公钥

    rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch         #检查机制(类似密钥)

    命令:yum update curl              #如果报错执行一下这个 刷新yum源

    命令:vim /etc/yum.repos.d/elasticsearch.repo        #自定义yum源文件名

    [elasticsearch-6.x]
    name=Elasticsearch repository for 6.x packages
    baseurl=https://artifacts.elastic.co/packages/6.x/yum         #指定包路径
    gpgcheck=1
    gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch     #检查机制
    enabled=1
    autorefresh=1
    type=rpm-md

    安装目录: 

    命令:mkdir /usr/share/elasticsearch     #意思是本机用户共用一定放在这

    命令:yum -y  install elasticsearch         #yum源安装

    2.配置文件的修改

    命令:chkconfig --add elasticsearch     #配置自动启动

    命令:mkdir -p /data/elasticsearch/lib     #指定数据文件路径

    命令:mkdir -p /data/elasticsearch/log      #指定日志文件路径

    命令:chmod 777 -R /data/elasticsearch     #添加目录以及子目录权限,可以让任何数据和日志文件都能收集到

    命令:vim /etc/elasticsearch/elasticsearch.yml           #修改elasticsearch配置文件

    path.data: /data/elasticsearch/lib               #指定数据路径

    path.logs: /data/elasticsearch/log              #指定日志文件路径

    network.host: 0.0.0.0                                 #打开连接端口,允许所有

    修改配置文件

    命令:vim /etc/security/limits.conf          #设置连接次数

    * soft nofile 65536
    * hard nofile 65536          #放在文件最后

    修改配置文件

    命令:vim  /etc/elasticsearch/jvm.options        #设置内存大小配置文件

    -Xms8g
    -Xmx8g                #需要根据自己虚拟机的配置修改,内存的大小

    启动服务service elasticsearch

    命令:service elasticsearch start

    注意:如果启动失败

    请输入命令:tail -F /var/log/messages

    which: no java in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin)

    解决办法:

    命令:vim /etc/sysconfig/elasticsearch

    在配置文件里添加   JAVA_HOME=/usr/local/jdk1.8.0_211   #指定java环境路径

     然后再重启服务

    命令:service elasticsearch restart       #重启

    验证安装:

    命令:curl -X GET "localhost:9200/"

    看见这些就证明验证成功了

    端口配置
    iptables -I INPUT -p tcp --dport 9200 -j ACCEPT            #允许端口9200通过,若清空了防火墙,就无需配置
    service iptables save
    service iptables restart

    好了,现在elasticsearch已经搭建完成了,接下来搭建Logstash

    三:搭建Logstash

    1.先配置yum源

    导入GPG key           #官方签名机制

    命令:rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch     #下载机制

    注意:如果报错,就不用下载了,前面已经下载一次了,如果安装失败,重新下载一次

    如果还是报错

    解决方案:

    命令:wget https://packages.elastic.co/GPG-KEY-elasticsearch --no-check-certificate     #查找相应的GPG密钥,并导入到RPM

    命令:rpm --import GPG-KEY-elasticsearch       #利用RPM下载密钥

    2.新建repo文件

    命令:vim /etc/yum.repos.d/logstash.repo

    [logstash-6.x]
    name=Elastic repository for 6.x packages
    baseurl=https://artifacts.elastic.co/packages/6.x/yum
    gpgcheck=1
    gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
    enabled=1
    autorefresh=1
    type=rpm-md

    3.安装
    命令:yum -y install logstash

    4.测试 加启动 并且 需要持续的启动

    命令:/usr/share/logstash/bin/logstash -e 'input { stdin { } } output {stdout {} }'   #测试logstash

    报错:WARNING:Could not find logstash.yml which is typically located in $LS_HOME/config or /etc/logstash.You can specify the path using --path.settings.

    Continuing using the defaults             #找不到logstash.yml,它通常位于$LS_HOME/config或/etc/logstash中

    报错:Could not find log4j2 configuration at path /usr/share/logstash/cinfig/log4j2.properties. Using default config which logs errors to the console             

    #在路径/usr/share/logstash/config/log4j2.properties.中找不到log4j2配置文件,无法建立控制台,找到log4j2配置文件放入上面路径即可解决报错

    解决办法:

    命令:find / -name logstash.yml -type f           #利用find查找logstash.yml文件所在地

    命令:find / -name log4j2.properties -type f        #利用find查找log4j2.properties文件所在地

    然后创建/usr/share/logstash/config/目录

    命令:mkdir  /usr/share/logstash/config/

    命令:cp -r /etc/logstash/logstash.yml   /usr/share/logstash/config/                  #将配置logstash.yml文件复制到 /usr/share/logstash/config/

    命令:cp -r /etc/logstash/log4j2.properties  /usr/share/logstash/config/                 #将配置log4j2.properties文件复制到 /usr/share/logstash/config/

    命令:vim /usr/share/logstash/config/logstash.yml

    path.data: /data/elasticsearch/lib            #指定文件路径

    path.logs: /data/elasticsearch/log           #指定日志文件路径

     5.创建日志收集规则

    命令:vim /root/file.conf

    input {
        file {
          path => "/var/log/messages"
          type => "system"
          start_position => "beginning"
        }
    }                               #输入规则

    output {
        elasticsearch {
           hosts => ["192.168.1.151:9200"]
           index => "system-%{+YYYY.MM.dd}"
        }
    }                             #输出规则

     6.按照配置好的收集日志的规则去启动logstash

    命令:/usr/share/logstash/bin/logstash -f /root/file.conf

    命令:/usr/share/logstash/bin/logstash -f /root/file.conf &              #后台登录

    注意:配置文件默认目录配置文件拷贝到这下面(/etc/logstash/conf.d/)执行 systemctl restart logstach 是不行的

     只能指定文件启动

    输入命令:ps aux | grep logstash看看服务是否启动

    好了,接下来就安装kibana

    四:安装 Kibana

    导入GPG Key
    命令:rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

    如果失败,就将网站链接在浏览器上输入一遍,然后会自动弹出对话框,然后点击保存文件,

    在命令行内再次输入rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch就可以了

    1.新建repo文件:

    命令:vim  /etc/yum.repos.d/kibana.repo
    [kibana-6.x]
    name=Kibana repository for 6.x packages
    baseurl=https://artifacts.elastic.co/packages/6.x/yum
    gpgcheck=1
    gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
    enabled=1
    autorefresh=1
    type=rpm-md

    2安装
    命令:yum -y  install kibana 

    3.配置
    命令:vim /etc/kibana/kibana.yml
       server.port: 5601             #打开kibana端口
       server.host: "0.0.0.0"              #可以收集所有网段的ip
       elasticsearch.hosts: ["http://localhost:9200"]           #打开节点端口
       i18n.locale: "zh-CN" #最后一行汉化                #可以支持中文,当然了,英语好的不用修改

    4.启动服务

    命令:/usr/share/kibana/bin/kibana             #启动服务

    命令:systemctl restart kibana                    #持续开启服务

    温馨提示:elasticsearch,logstash,kibana启动服务的时候命令行会一直停在那,不能结束,否则后续步骤不能进行,多开几个界面就行了

    或者可以放在后台启动也行,不过个人建议多开几个界面,如果某个服务停了,利于排查故障

    5.在浏览器上访问http://192.168.175.100:5601           

     温馨提示:kibana支持很多可视图插件,如:elasticsearch-head-master,elasticsearch-kopf-master,bigdesk-master(集群插件),根据自己需要安装

    添加索引

     温馨提示:因为是刚刚搭建完毕,所以里面并没有什么数据,只能通过系统文件建立索引,只是为了演示

     温馨提示:kibana的功能很多这里就不一一说明了,最好就是搭建完毕之后,自己随便点点试试,自己摸索摸索,我也在摸索中

    总结:。。。。。。。。。。。(此处省略一万字)

    我每次搭建的时候都会有一些报错,还次次不一样,上面是我总结的常见报错,如果有其他报错,欢迎留言,多多交流

  • 相关阅读:
    Caused by: java.lang.ClassNotFoundException: org.hibernate.annotations.common.reflection.MetadataPro
    Caused by: java.lang.ClassNotFoundException: org.dom4j.DocumentException
    让你的C程序更有效率的10种方法
    c++效率浅析
    Caused by: java.lang.ClassNotFoundException: org.hibernate.engine.FilterDefinition
    Caused by: java.lang.ClassNotFoundException: javax.transaction.TransactionManager
    Caused by: java.lang.NoClassDefFoundError: org/hibernate/cfg/Configuration
    Caused by: java.lang.ClassNotFoundException: org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWo
    Caused by: java.lang.ClassNotFoundException: org.jbpm.pvm.internal.processengine.SpringHelper
    Caused by: java.lang.ClassNotFoundException: org.aopalliance.intercept.MethodInterceptor
  • 原文地址:https://www.cnblogs.com/zgqbky/p/11862720.html
Copyright © 2020-2023  润新知