• ELK+RabbitMq搭建日志系统


    环境准备

    1. 三台服务器

             10.1.34.215

             10.1.34.216

             10.1.34.217

    2. 全部关闭防火墙和selinux

             systemctl stop firewalld &&  systemctl stop firewalld

             sed -i 's/=enforcing/=disabled/g' /etc/selinux/config  && setenforce 0

    3. 全部配置系统环境

             vim /etc/security/limits.conf 添加以下四行 注:星号不可少

             * soft nofile 65536

             * hard nofile 131072

             * soft nproc 2048

             * hard nproc 4096

    此处有可能会涉及到启动报错

    max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]

    报错的话 将数值改一下即可

              vim /etc/sysctl.conf  添加这行

              vm.max_map_count=655360

              source  /etc/profile  刷新环境

    4. 全部安装java环境

              这里注意查看一下centos有没有原生的jdk

              rpm -qa | grep jdk

              yum -y remove +上面出来的两段  分别删除

    然后解压自己的java配置环境变量

            vim /etc/profile

            export JAVA_HOME=/usr/local/jdk/jdk1.8.0_251  

            export PATH=$JAVA_HOME/bin:$PATH

            export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

    这块注意一个配置完之后  java进行一个软连接

            ln -s /usr/local/jdk/jdk1.8.0_251/bin/java   /usr/local/bin/java

    5. 安装node.js

        因为head插件是用node.js开发的,所以需要此环境

        https://nodejs.org/en/download/releases/ 选择先前的版本较好注意选择xz版本的

              tar -Jxf node-v10.15.3-linux-x64.tar.xz

             vim /etc/profile

             PATH=$PATH:/usr/local/node/node-v10.15.3-linux-x64/bin

             source /etc/profile

             node -v

    6. 安装head插件 10.1.34.215

             wget  https://github.com/mobz/elasticsearch-head/archive/master.zip

             unzip master.zip && mv elasticsearch-head-master/ /usr/local/elasticsearch-head

             cd /usr/local/elasticsearch-head

             npm install -g cnpm --registry=https://registry.npm.taobao.org

             cnpm install -g grunt-cli

             cnpm install -g grunt

             cnpm install grunt-contrib-clean

             cnpm install grunt-contrib-concat

             cnpm install grunt-contrib-watch

             cnpm install grunt-contrib-connect

             cnpm install grunt-contrib-copy

             cnpm install grunt-contrib-jasmine

             vim /usr/local/elasticsearch-head/Gruntfile.js

    后台启动grunt server &

             cd /usr/local/elasticsearch-head

             nohup grunt server &    /   npm run start & 或者nohup  npm run start >/dev/null 2>&1 &

    打开浏览器访问10.1.34.215:9100,可以看到head页面

    7. 准备安装包  自己对应版本

    下载es

    https://www.elastic.co/cn/downloads/past-releases#elasticsearch

     下载kibana

    https://www.elastic.co/cn/downloads/past-releases#kibana

    下载logstash

    https://www.elastic.co/cn/downloads/past-releases#logstash

    8.  elasticsearch安装

          全部创建用户elk 

          useradd elk

          全部安装elasticsearch

          tar zxf elasticsearch-6.7.1.tar.gz

          chown -R elk:elk /usr/local/elasticsearch/elasticsearch-6.7.1  给elk用户增加es权限

    全部修改配置

          vim /usr/local/elasticsearch/config/elasticsearch.yml

            解决bootstrap.memory_lock: true报错

            vim /etc/security/limits.conf

            baoshan soft memlock unlimited

            baoshan hard memlock unlimited

            vim /etc/sysctl.conf

            vm.swappiness=0

            reboot 重启

            切换到elk用户  

            切换到es安装目录

            ./bin/elastcsearch -d  后台启动

            期间如果报error='Cannot allocate memory' (errno=12)# There is insufficient memory for the Java Runtime Environment to continue.

            或者elasticsearch启动过程中被自动killed

            到es安装目录下

            cd config 

            vim jvm.options

    9. 安装kibana

            解压安装包

            config目录下修改

            vim kibana.yml添加以下内容

            server.port: 5601               #监听端口

            server.host: "0.0.0.0"              #监听IP

            elasticsearch.hosts: ["http://10.1.34.215:9200","http://10.1.34.216:9200","http://10.1.34.217:9200"]       #     集群es地址

            logging.dest: /usr/local/kibana/logs/kibana.log                 #日志路径

            kibana.index: ".kibana"                 #默认索引

    然后增加日志输出文件

           mkdir /usr/local/kibana/logs && touch /usr/local/kibana/logs/kibana.log

    后台启动 ./bin/kibana & 

    访问http://10.1.34.215:5601/

    10. 安装logstash

          解压安装包

          切换到config下修改logstash.yml

          path.data: /usr/local/logstash/logstash-6.3.2/data

          path.logs: /usr/local/logstash/logstash-6.3.2/logs

          logstash启动时需要指定输入与输出的方式,此处要实现的效果是从Rabbitmq中获取数据输出至es中存储,因此创建rabbitmq.conf文件:

         cd ogstash-6.3.2/

         touch rabbitmq.conf

        

    指定配置文件并启动:./bin/logstash -f rabbitmq.conf,访问http://ip:9600出现一些关于logstash的配置信息即表示安装成功

    11.安装RabbitMQ

               下载RabbitMQ的rpm:

                wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.14/rabbitmq-server-3.6.14-1.el7.noarch.rpm

                yum -y install rabbitmq-server-3.6.14-1.el7.noarch.rpm

                注:如果报:Requires: socat则更新源

                wget –no-cache http://www.convirture.com/repos/definitions/rhel/6.x/convirt.repo -O /etc/yum.repos.d/convirt.repo

                yum install socat

                启动rabbitmq服务:  

                后台运行:service rabbitmq-server start

    安装插件 

                启动web管理界面

                rabbitmq-plugins enable rabbitmq_management

                如果提示找不到,使用查看插件名称

                rabbitmq-plugins list

                增加访问用户,默认用户guest只能本地访问。

                rabbitmqctl add_user admin admin

    设置角色: 

                 rabbitmqctl set_user_tags admin administrator

    设置默认vhost("/")访问权限

                 rabbitmqctl set_permissions -p "/" admin "." "." ".*"

                  浏览器访问:http://IP:15672

                  用户名admin,密码admin进行登录

                  最好登录console的时候,删除默认账户guest

                  rabbitmqctl delete_user guest

     注意本机用的时候关闭防火墙

    登录进去rabbmq之后可以去看一下队列  应该有上面rabbitmq.conf里设置的那一个队列了

    至此环境搭建完毕,可以与java后台进行关联

  • 相关阅读:
    迈安
    sql 迈安
    Python开发环境02 Windows平台命令行方式
    Python开发环境01 Mac平台命令行方式
    Python简史03 Python启示录
    Python简史02 Python的诞生
    Python简史01 Python的起源
    图书爬虫的进展
    爬虫方面的进展
    最近的进展
  • 原文地址:https://www.cnblogs.com/innocenter/p/13255032.html
Copyright © 2020-2023  润新知