Graylog 是与 ELK 可以相提并论的一款集中式日志管理方案,支持数据收集、检索、可视化 

Graylog 架构
- Graylog 负责接收来自各种设备和应用的日志,并为用户提供 Web 访问接口。
- Elasticsearch 用于索引和保存 Graylog 接收到的日志。
- MongoDB 负责保存 Graylog 自身的配置信息。

实操

安装Openjdk
- yum -y install java-1.8.0-openjdk-headless.x86_64
- java -version
安装Mongodb
- 配置Mongndb的yum源
- vim /etc/yum.repos.d/mongodb-org-4-0.repo
[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb- org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc
- yum repolist - 安装Mongdb并启动服务设置为开机自启动
- yum -y install mongodb-org
   - systemctl enable mongod.service
- systemctl start mongod.service
- systemctl status mongod.service
安装Elasticsearch
- rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
- vim /etc/yum.repos.d/elasticsearch.repo
[elasticsearch-6.x]
name=Elasticsearch repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/oss-6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
- yum repolist
- yum -y install elasticsearch-oss
- vim /etc/elasticsearch/elasticsearch.yml
cluster.name: graylog
action.auto_create_index: false
- systemctl enable elasticsearch.service
- systemctl start elasticsearch.service
- systemctl status elasticsearch.service
安装Graylog
- rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-3.0-repository_latest.rpm
- yum -y install graylog-server
- yum -y install epel-release
- yum -y install pwgen
- pwgen -N 1 -s 96
# 注意上一条命令执行之后会有一个字符串的密码出来(1)
- echo -n "Enter Password: " && head -1 </dev/stdin | tr -d '\n' | sha256sum | cut -d" " -f1
# 注意上一条命令执行之后会有一个字符串的密码出来(2)
- vim /etc/graylog/server/server.conf
password_secret = # 注意上一条命令执行之后会有一个字符串的密码出来(1)
  root_username = admin
  root_password_sha2 = # 注意上一条命令执行之后会有一个字符串的密码出来(2)
root_timezone = Asia/Shanghai
http_bind_address = 127.0.0.1:9000
http_publish_uri = http://自己的IP:9000/
http_enable_cors = true
http_enable_gzip = true
http_enable_tls = false
elasticsearch_hosts = http://127.0.0.1:9200 - systemctl enable graylog-server.service
- systemctl start graylog-server.service
- systemctl status graylog-server.service
使用Nginx做反向代理
- yum -y install nginx
- echo '' > /etc/nginx/nginx.conf
- vim /etc/nginx/nginx.conf
user nobody;
worker_processes 4;
events {
  worker_connections  1024;
}
http {
  include mime.types;
  default_type application/octet-stream;
  client_max_body_size 100m;
  log_format main '$remote_addr - $remote_user [$time_local] "$request" '
                   '$status $body_bytes_sent "$http_referer" '
                   '"$http_user_agent" "$http_x_forwarded_for"';
  sendfile on;
  keepalive_timeout 65;
  gzip on;
  gzip_min_length 256;
  gzip_buffers 16 8k;
  gzip_comp_level 6;
  gzip_vary on;
  gzip_types
      text/xml application/xml application/atom+xml application/rss+xml application/xhtml+xml image/svg+xml
      text/javascript application/javascript application/x-javascript
      text/x-json application/json application/x-web-app-manifest+json
      text/css text/plain text/x-component
      font/opentype application/x-font-ttf application/vnd.ms-fontobject
      image/x-icon;
  include /etc/nginx/conf.d/*.conf;
}
[root@dev-of-runfa-33 ~]# vim /etc/nginx/conf.d/www.conf
server
{
  listen 80 default_server;
  listen [::]:80 default_server ipv6only=on;
  server_name 自己主机的IP;

  location /graylog/
  {
    proxy_set_header Host $http_host;
    proxy_set_header X-Forwarded-Host $host;
    proxy_set_header X-Forwarded-Server $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Graylog-Server-URL http://$server_name/graylog/;
    rewrite ^/graylog/(.*)$ /$1 break;
    proxy_pass http://127.0.0.1:9000;
  }
}

- systemctl enable nginx
- systemctl start nginx
- systemctl status nginx
测试
# 主页 : http://自己主机的IP/graylog
# REST API 主页: http://自己主机的IPgraylog/api

Graylog的更多相关文章

  1. CentOS 搭建Graylog集群详解

    1. Graylog2 简介 Graylog 是一个简单易用.功能较全面的日志管理工具,相比 ELK 组合, 优点: 部署维护简单,一体化解决方案,不像ELK三个独立系统集成. 查相比ES json语 ...

  2. 部署 Graylog 日志系统 - 每天5分钟玩转 Docker 容器技术(92)

    Graylog 是与 ELK 可以相提并论的一款集中式日志管理方案,支持数据收集.检索.可视化 Dashboard.本节将实践用 Graylog 来管理 Docker 日志. Graylog 架构 G ...

  3. 如何用 Graylog 管理日志?- 每天5分钟玩转 Docker 容器技术(93)

    上一节已经部署好了 Graylog,现在学习如何用它来管理日志. 首先启动测试容器. docker run -d \ --log-driver=gelf \ --log-opt gelf-addres ...

  4. GrayLog + Logspout + Docker 实现分布式日志聚合

    前提条件:你的服务器上已经安装了Docker和Docker Compose 一.安装GrayLog(Docker方式) version: '2' services: mongodb: image: m ...

  5. SpringBoot使用Graylog日志收集

    本文介绍SpringBoot如何使用Graylog日志收集. 1.Graylog介绍 Graylog是一个生产级别的日志收集系统,集成Mongo和Elasticsearch进行日志收集.其中Mongo ...

  6. 使用 opendistro for elasticsearch 做为graylog的后端存储

    graylog 是一个很不错的日志分析.收集.报警平台,包好了丰富的插件,同时内部的架构设计很不错 input 组件很多,使用stream.pipeline可以方便的进行数据处理,可以同时3.0 对于 ...

  7. ASP.NET Core中使用Graylog记录日志

    以下基于.NET Core 2.1 定义GrayLog日志记录中间件: 中间件代码: public class GrayLogMiddleware { private readonly Request ...

  8. Graylog日志管理系统---搜索查询方法使用简介

    Elasticsearch 是一个基于 Lucene 构建的开源.分布式.提供 RESTful 接口的全文搜索引擎 一.Search页面的各位置功能介绍: 1.日志搜索的时间范围 为了使用方便,预设有 ...

  9. ASP.NET Core 中使用 GrayLog 记录日志

    使用 UDP 协议发送日志 自定义好的查询 key 存储数据,尽量不要使用 graylog2-server 服务端格式化日志再存储 Ubuntu 安装服务端 sudo apt-get update & ...

  10. Log4net 日志传到 graylog监控

    graylog是java的一个日志监控插件.存储用的是mongoDB,效率还是挺高的.不过嘛,文档太少了,安装和配置都很不容易. 官网:http://www.graylog.org/ 在graylog ...

随机推荐

  1. Tensorflow学习教程------简单练一波,线性模型

    #coding:utf-8 import tensorflow as tf import numpy as np #使用numpy 生成100个随机点 x_data = np.random.rand( ...

  2. IE8Get请求中文不兼容:encodeURI的使用

    IE8Get请求中文不兼容:encodeURI的使用 在开发过程中遇到在IE8下,请求出错. 后发现Get请求中含有中文字符. 使用js自带的encodeURI函数对中文进行编码,问题解决. enco ...

  3. BZOJ 3170 [Tjoi2013]松鼠聚会

    题解:切比雪夫距离转化为曼哈顿距离 枚举源点,横纵坐标互不影响,分开考虑,前缀和优化 横纵分开考虑是一种解题思路 #include<iostream> #include<cstdio ...

  4. 未能加载文件或程序集“MySql.Data”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)

    未能加载文件或程序集“MySql.Data”或它的某一个依赖项.找到的程序集清单定义与程序集引用不匹配. (异常来自 HRESULT:0x80131040) 说明: 执行当前 Web 请求期间,出现未 ...

  5. sys.path.append()加入当前目录为环境变量

    当我们导入一个模块时:import  xxx,默认情况下python解析器会搜索当前目录.已安装的内置模块和第三方模块,搜索路径存放在sys模块的path中: >>> import  ...

  6. scrapy 在pycharm中调试 不用到命令行中启动爬虫方法

    (目录结构如上图) 在主目录中加入main.py,在其中加入代码,运行此文件就可以运行整个爬虫: # -*- coding: utf-8 -*- __author__='pasaulis' #在程序中 ...

  7. TCP三次握手和四次挥手相关

    客户端A 服务端BSYN (建立连接位标识 1为建立联机) ACK (确认位标识 1为确认) seq (一个随机顺序码) ack(一个确认号码,通常为seq+1) 三次握手:1.A 发起建立 连接 的 ...

  8. PCB上LED指示灯电流、电压总结

    一般指示灯正常发光的电流在10~20mA,低电流LED灯的工作电流在2mA一下,亮度和普通的一样. 压降                    电流 红色         1.82~1.88V     ...

  9. 使用sklearn做特征工程

    1 特征工程是什么? 有这么一句话在业界广泛流传:数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已.那特征工程到底是什么呢?顾名思义,其本质是一项工程活动,目的是最大限度地从原始数据中 ...

  10. What is the maximum length of a URL in different browsers?

    https://stackoverflow.com/questions/417142/what-is-the-maximum-length-of-a-url-in-different-browsers ...