当前位置: 首页 > news >正文

我的网站dede网站seo分析报告

我的网站dede,网站seo分析报告,规模以上工业企业个数,专业做网站的公司 郑州在将Graylog部署到生产环境时,我们遇到了一些问题,其中最主要的是无法安装MongoDB并且无法随时重启机器去修改BIOS设置来修复问题 【WARNING: MongoDB 5.0 requires a CPU with AVX support, and your current system does not appear to have that! 】。…

在将Graylog部署到生产环境时,我们遇到了一些问题,其中最主要的是无法安装MongoDB并且无法随时重启机器去修改BIOS设置来修复问题 【WARNING: MongoDB 5.0+ requires a CPU with AVX support, and your current system does not appear to have that! 】。为了寻找一个更可行的解决方案,我们决定将注意力转向另一个强大的日志管理系统:Grafana Loki。同时,我们还使用了nfcolector来收集网络设备的Netflow信息并保存在InfluxDB中。最终,我们通过Grafana将所有这些收集到的日志和数据进行集中展示,为网络设备的日常管理提供了更加美观和直观的界面。这样的架构和工具组合使得我们在网络设备管理和监控方面取得了更好的效果。

架构

在这里插入图片描述

Grafana Loki

Grafana Loki是一个开源日志聚合系统。它允许您收集、存储、浏览和查询大规模分布式日志数据。与传统的日志管理系统相比,Grafana Loki的设计理念更加轻量级和高效。

使用Grafana Loki,您可以通过两个核心组件实现日志管理:Loki和Promtail。

  1. Loki:Loki是Grafana Loki系统的核心,它是一个分布式日志存储系统。Loki与传统的日志存储不同,它使用流水线处理和索引数据,以便在查询时可以快速访问所需的日志数据。Loki使用基于标签的存储模型,并支持水平扩展,使您能够处理大量的日志数据。

  2. Promtail:Promtail是一个日志收集代理,它负责从各个源(如文件、系统日志、容器日志等)收集日志数据,并将其发送到Loki进行存储。Promtail可以与各种各样的日志源进行集成,并支持标准的日志格式,如JSON、GELF等。

Go Netflow Collector(goNfCollector)

goNfCollector帮助您从网络设备中收集Netflow数据。它将所需的所有信息存储在InfluxDB中,以便进行进一步的分析,并使用Grafana进行可视化。

Grafana

Grafana是一个流行的开源数据可视化平台。它提供了强大的数据可视化功能和丰富的插件生态系统,使用户能够创建仪表盘、报表和警报,并对数据进行深入的分析。Grafana与Grafana Loki,InfluxDB等可以结合使用,通过数据源,您可以在Grafana中轻松地创建日志查询和仪表盘,将日志数据与监控数据进行统一展示和分析。

部署

环境说明

  • Ubuntu 22.04
  • Docker version 24.0.5
  • Docker Compose version v2.20.2

1. rsyslog的部署

默认情况下,Rsyslog安装在Ubuntu服务器上。如果没有安装,您可以通过运行以下命令来安装它:

apt install rsyslog -y

修改配置文件 /etc/rsyslog.conf

vim /etc/rsyslog.conf 

以下是最终结果及大概的解释:

# /etc/rsyslog.conf configuration file for rsyslog
#
# For more information install rsyslog-doc and see
# /usr/share/doc/rsyslog-doc/html/configuration/index.html
#
# Default logging rules can be found in /etc/rsyslog.d/50-default.conf#################
#### MODULES ####
#################module(load="imuxsock") # provides support for local system logging
module(load="immark")  # provides --MARK-- message capability# provides UDP syslog reception
module(load="imudp")
input(type="imudp" port="514")# provides TCP syslog reception
module(load="imtcp")
input(type="imtcp" port="514")# provides kernel logging support and enable non-kernel klog messages
module(load="imklog" permitnonkernelfacility="on")$template RemoteLogs,"/var/log/network/%FROMHOST-IP%.log" *
*.*  ?RemoteLogs
& ~###########################
#### GLOBAL DIRECTIVES ####
############################
# Use traditional timestamp format.
# To enable high precision timestamps, comment out the following line.
#
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat# Filter duplicated messages
$RepeatedMsgReduction on#
# Set the default permissions for all log files.
#
$FileOwner syslog
$FileGroup adm
$FileCreateMode 0640
$DirCreateMode 0755
$Umask 0022
$PrivDropToUser syslog
$PrivDropToGroup syslog#
# Where to place spool and state files
#
$WorkDirectory /var/spool/rsyslog#
# Include all config files in /etc/rsyslog.d/
#
$IncludeConfig /etc/rsyslog.d/*.conf
  1. module(load="imudp"): 加载imudp模块,它提供了UDP协议的syslog接收功能。UDP是一种无连接的协议,用于接收远程主机发送的syslog消息。

  2. input(type="imudp" port="514"): 配置UDP syslog的输入。它指定rsyslogd监听本地端口514,以接收UDP syslog消息。

  3. module(load="imtcp"): 加载imtcp模块,它提供了TCP协议的syslog接收功能。与UDP不同,TCP是一种面向连接的协议,可以提供可靠的消息传递。

  4. input(type="imtcp" port="514"): 配置TCP syslog的输入。它指定rsyslogd监听本地端口514,以接收TCP syslog消息。

  5. module(load="imklog" permitnonkernelfacility="on"): 加载imklog模块,它提供了内核日志支持,并允许接收非内核klog消息。klog是内核日志的一种特殊设备。

  6. $template RemoteLogs,"/var/log/network/%FROMHOST-IP%.log" *: 定义了一个名为RemoteLogs的日志模板。它指定了日志的输出位置和格式,这里的意思是将远程主机的日志以IP地址为文件名保存在/var/log/network/目录下。

  7. *.* ?RemoteLogs: 这是一个日志规则,它指定将所有类型的日志消息发送到RemoteLogs模板中定义的输出位置。

  8. & ~: 这是另一个日志规则,它指定丢弃所有匹配的日志消息。这里的作用是防止消息被重复处理。
    这些配置行的作用是配置rsyslogd以接收不同来源的syslog消息,并将它们保存到相应的日志文件中。
    保存完配置后,重启rsyslog服务,并查看状态

systemctl restart rsyslog
systemctl status rsyslog
netstat -nltup | grep 514

2. goNfCollector部署

环境要求:需要安装docker、docker-compose和wget工具。安装过程中需要魔法,否则可能会失败
下载最新版本:通过以下命令将最新版本的脚本文件下载到本地:

wget -O latest.sh https://raw.githubusercontent.com/javadmohebbi/goNfCollector/main/dockerize/build-up-from-github.sh

使脚本文件可执行:通过以下命令给下载的脚本文件赋予执行权限:

chmod +x latest.sh

运行下载的脚本:通过以下命令运行下载的脚本文件:

./latest.sh

在执行过程中,可能会要求输入用户密码。

在执行完成后,脚本会告诉你如何运行容器。但我们不需要通过这个来运行容器。

3. Grafana Loki部署

因为是使用docker环境来部署的,所以就相对就方便很多,仅需要编辑下docker compose文件就可以了,并且将上一步中的influxdb,nfcolector合并到一起并修改下network设置。

version: "3"networks:loki:external: trueservices:loki:image: grafana/loki:2.8.0ports:- "3100:3100"volumes:- loki-config:/etc/lokicommand: -config.file=/etc/loki/local-config.yamlnetworks:- lokipromtail:image: grafana/promtail:2.8.0volumes:- promtail-config:/etc/promtail- /var/log:/var/logcommand: -config.file=/etc/promtail/config.ymlnetworks:- lokigrafana:environment:- GF_PATHS_PROVISIONING=/etc/grafana/provisioning- GF_AUTH_ANONYMOUS_ENABLED=true- GF_AUTH_ANONYMOUS_ORG_ROLE=Admin- GF_INSTALL_PLUGINS=grafana-clock-panel,grafana-simple-json-datasource,agenty-flowcharting-panelentrypoint:- sh- -euc- |mkdir -p /etc/grafana/provisioning/datasourcescat <<EOF > /etc/grafana/provisioning/datasources/ds.yamlapiVersion: 1datasources:- name: Lokitype: lokiaccess: proxyorgId: 1url: http://loki:3100basicAuth: falseisDefault: trueversion: 1editable: falseEOF/run.shimage: grafana/grafana:latestports:- "3000:3000"volumes:- grafana-storage:/var/lib/grafananetworks:- loki# Influx DBinfluxdb:image: influxdb:2.0.7restart: alwaysvolumes:- /docker/nfcollector/vendors/influxdb:/var/lib/influxdb2ports:- "8086:8086"# - "8082:8082"#- "8089:8089"networks:- lokinfcolector:image: javadmohebbi/gonfcollectorrestart: always# network_mode: hostports:- "6859:6859/udp"volumes:- /docker/nfcollector/bin:/opt/nfcollector/bin- /docker/nfcollector/etc:/opt/nfcollector/etc- /docker/nfcollector/var:/opt/nfcollector/var- /docker/nfcollector/vendors:/opt/nfcollector/vendorsnetworks:- lokienvironment:- NFC_DEBUG=true# total number of cpu nfcollector could use- NFC_CPU_NUM=0- NFC_LISTEN_ADDRESS=0.0.0.0- NFC_LISTEN_PORT=6859- NFC_INFLUXDB_HOST=influxdb- NFC_INFLUXDB_PORT=8086- NFC_INFLUXDB_TOKEN=5vqt0q0b4g_lZwNgp7-8GgPq5Nxf3YY37xbVZP_ypeK_G3dwdNlTrAkcKN_Q6QzbmG-Th96lT_65Kp0j2UD1HA==- NFC_INFLUXDB_BUCKET=nfCollector- NFC_INFLUXDB_ORG=OPENINTELLIGENCE- NFC_IP_REPTATION_IPSUM=/opt/nfcollector/vendors/ipsum/ipsum.txt- NFC_IP2L_ASN=/opt/nfcollector/vendors/ip2location/db/IP2LOCATION-LITE-ASN.IPV6.CSV/IP2LOCATION-LITE-ASN.IPV6.CSV- NFC_IP2L_IP=/opt/nfcollector/vendors/ip2location/db/IP2LOCATION-LITE-DB11.IPV6.BIN/IP2LOCATION-LITE-DB11.IPV6.BIN- NFC_IP2L_PROXY=/opt/nfcollector/vendors/ip2location/db/IP2PROXY-LITE-PX10.IPV6.CSV/IP2PROXY-LITE-PX10.IPV6.CSV- NFC_IP2L_LOCAL=/opt/nfcollector/vendors/ip2location/local-db/local.csv- NFC_SOCK_PATH=/opt/nfcollector/var/socket/fw.socketvolumes:loki-config:promtail-config:grafana-storage:

编辑完之后使用命令行检查下yaml设置并启动docker

docker compose config #命令用于验证和查看`docker-compose.yaml`文件的配置。
docker compose up -d #命令用于在后台启动并运行基于`docker-compose.yaml`文件定义的容器组。其中,`-d`标志表示以后台(守护)模式运行容器。

访问Grafana

通过访问http://hostip:3000来访问Grafana平台,初始密码为admin/admin
在这里插入图片描述

后续工作

  1. 将网络设备的日志及netflow转存到对应的服务中。
  2. 在Grafana上对数据进行筛选及展示。

Refernce

[1] https://github.com/javadmohebbi/goNfCollector
[2] https://grafana.com/docs/loki/latest/installation/docker/
[3] https://github.com/grafana/loki
[4] https://github.com/grafana/grafana

http://www.ysxn.cn/news/1522.html

相关文章:

  • 公司网站日常维护外贸网站都有哪些
  • 网易官网建立个人网站廊坊seo网站管理
  • 百度搜索风云榜福州seo代理计费
  • 用友erp软件安卓优化大师清理
  • 国外网店平台有哪些关键词优化难度分析
  • 网站做长连接开发网站的流程
  • 外贸有哪些网站武汉刚刚突然宣布
  • wordpress网站转移网络营销课程ppt
  • 企业融资的意义重庆seo服务
  • 专业网站制作哪家强深圳网络营销推广服务
  • 网站建设与运营总结百度广告收费标准
  • 什么网站做视频最赚钱手机百度2020
  • 网站系统维护要多久网站推广什么意思
  • 唐山网站建设拓店铺如何运营和推广
  • html5 网站测试外链下载
  • 网络营销优化推广推广优化关键词
  • 要想让别人网站卖我的东西怎么做500个游戏推广群
  • 软件app下载大全信息流优化师需要具备哪些能力
  • 黄冈推广平台武汉seo搜索引擎
  • 做网站公司价格多少平面设计主要做什么
  • 国外黄冈网站推广短信营销
  • 江北网站建设价格网站快速优化排名排名
  • 深圳外贸公司排名seo做什么网站赚钱
  • 商城网站制作公司地址做个公司网站大概多少钱
  • 网站维护排名seminar什么意思中文
  • 社交网站开发语言搜索引擎排名
  • ecshop 做企业网站河北百度seo关键词
  • 网站建设没有签定合同搜索引擎优化课程
  • wordpress 视频模板下载地址重庆百度快照优化
  • 做ppt找素材的网站一个人怎么做独立站shopify