免费网站模板 带后台,网站做推广 建设哪种类型合适,营业执照 网站开发,江门天日志管理系统有很多#xff0c;比如ELK,Graylog#xff0c;LokiGrafanaPromtail
适用场景#xff1a;
1.如果需求复杂#xff0c;服务器资源不受限制#xff0c;推荐使用ELK#xff08;Logstash Elasticsearch Kibana#xff09;方案#xff1b;
2.如果需求仅是将…日志管理系统有很多比如ELK,GraylogLokiGrafanaPromtail
适用场景
1.如果需求复杂服务器资源不受限制推荐使用ELKLogstash Elasticsearch Kibana方案
2.如果需求仅是将不同服务器上的日志采集上来集中展示和检索且需要一个轻量级的框架那使用PLGPromtail Loki Grafana最合适不过了。
3.Graylog专注于日志管理内置报警功能可配置当系统发生异常时下发邮件进行通知。
三者对比如下所示 从左到右分别是 ELK Graylog Loki Grafana Promtail
资源消耗 高 中 低
部署复杂度 高 中 低
查询能力 强 中 弱
可视化能力强Kibana 丰富 一般 强Grafana 丰富
适合场景大规模日志复杂查询和分析中小型项目快速部署中等日志量轻量化监控
Graylog是一款开源的日志管理系统具备强大的过滤和搜索能力。
特点和适用场景
适合中小型企业、日志量不大或希望快速部署日志管理平台的团队。强调日志的聚合、报警、和简单分析。可按需轻量配置仅分析核心日志。
下面介绍下它的安装
1. 准备环境
安装 Docker 和 Docker Compose 安装 Docker sudo yum install -y yum-utils sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum install -y docker-ce docker-ce-cli containerd.io sudo systemctl start docker sudo systemctl enable docker 安装 Docker Compose 1. sudo curl -L https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose 2. sudo chmod x /usr/local/bin/docker-compose 3. docker-compose --version 2. 创建数据目录
为持久化存储 MongoDB 和 Elasticsearch 数据创建本地目录 mkdir -p /opt/graylog/mongo/data mkdir -p /opt/graylog/elasticsearch/data mkdir -p /opt/graylog/graylog 设置权限确保 Docker 有权限写入 sudo chown -R 1000:1000 /opt/graylog/elasticsearch/data sudo chown -R 1000:1000 /opt/graylog/mongo/data sudo chown -R 1000:1000 /opt/graylog/graylog 3. 创建 Docker Compose 配置文件 version: 3 services: mongo: image: mongo:5.0 container_name: mongo restart: always volumes: - /opt/graylog/mongo/data:/data/db elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:7.10.2 container_name: elasticsearch environment: - discovery.typesingle-node - bootstrap.memory_locktrue ulimits: memlock: soft: -1 hard: -1 mem_limit: 2g volumes: - /opt/graylog/elasticsearch/data:/usr/share/elasticsearch/data restart: always graylog: image: graylog/graylog:5.0 container_name: graylog environment: - GRAYLOG_PASSWORD_SECRET生成的密码密钥 - GRAYLOG_ROOT_PASSWORD_SHA2你的密码的 SHA-256 值 - GRAYLOG_HTTP_BIND_ADDRESS0.0.0.0:9000 depends_on: - mongo - elasticsearch volumes: - /opt/graylog/graylog:/usr/share/graylog/data ports: - 9000:9000 - 12201:12201/udp restart: always 替换占位符
生成密码密钥 (GRAYLOG_PASSWORD_SECRET) pwgen -N 1 -s 96 如果没有pwgen则先执行下面的命令安装 sudo yum install -y epel-release sudo yum install -y pwgen 再生成密码密钥 pwgen -N 1 -s 96 生成管理员密码哈希 (GRAYLOG_ROOT_PASSWORD_SHA2)下面的yourpassword需替换为具体密码 echo -n yourpassword | sha256sum 将生成的值填入 docker-compose.yml 的 GRAYLOG_PASSWORD_SECRET 和GRAYLOG_ROOT_PASSWORD_SHA2。
4. 启动服务
启动 Docker Compose
运行以下命令启动容器 docker-compose up -d 查看容器状态
确保所有容器都在运行 docker ps 5. 访问 Graylog
打开浏览器访问 http://服务器IP:9000。使用以下登录 用户名admin密码在 GRAYLOG_ROOT_PASSWORD_SHA2 中生成的原始密码。
6. 防火墙配置
如果使用防火墙确保开放必要的端口 sudo firewall-cmd --add-port9000/tcp --permanent sudo firewall-cmd --add-port12201/udp --permanent sudo firewall-cmd --reload 7. 日志和数据持久化检查
检查 Graylog 日志 docker logs graylog 数据持久化验证
MongoDB 数据存储在 /opt/graylog/mongo/data。Elasticsearch 数据存储在 /opt/graylog/elasticsearch/data。Graylog 配置和数据存储在 /opt/graylog/graylog。
8. 停止和重启服务
停止服务 docker-compose down 重启服务 docker-compose up -d Graylog总内存需求 测试环境低日志量、少并发 总消耗约 4 GB1 GB Graylog 512 MB MongoDB 2 GB Elasticsearch。 小型生产环境中等日志量、适度并发 总消耗约 6 GB1.5 GB Graylog 1 GB MongoDB 4 GB Elasticsearch。 大型生产环境高日志量、高并发 总消耗可能在 8 GB - 16 GB 或更高。
内存优化建议 Elasticsearch 调优 配置堆内存大小 编辑 /etc/elasticsearch/jvm.options 或 Docker Compose 的 ES_JAVA_OPTS 环境变量 -Xms2g -Xmx2g -Xmx2g 建议分配总系统内存的 50%但不要超过 32 GB。
2.Graylog Server 调优
配置 Graylog 的 JVM 堆内存大小 编辑 /etc/graylog/server/server.conf 或 Docker Compose 的 GRAYLOG_SERVER_JAVA_OPTS GRAYLOG_SERVER_JAVA_OPTS-Xms512m -Xmx1g 3.MongoDB 调优
使用 wiredTiger 存储引擎默认优化内存利用率。
4.日志清理
配置日志保留时间减少 Elasticsearch 的索引压力。 拓展关于Loki Grafana Promtail安装和使用可参考
轻量级日志系统docker-compose搭建LokiGrafanaPromtail配置、部署查询全流程_docker compose loki-CSDN博客
使用 Loki、Loki4j、Grafana 和 Spring Boot 搭建一个轻量级、简单、易用的 Java 日志系统_loki springboot-CSDN博客
PromtailLokiGrafana搭建轻量级日志管理平台 - C3Stones - 博客园