Flume【部署 02】Flume监控工具Ganglia的安装与配置(CentOS 7.5 在线安装系统监控工具Ganglia + 权限问题处理 + Flume接入监控配置 + 图例说明)

简介: 【2月更文挑战第17天】Flume【部署 02】Flume监控工具Ganglia的安装与配置(CentOS 7.5 在线安装系统监控工具Ganglia + 权限问题处理 + Flume接入监控配置 + 图例说明)

Ganglia是一款为HPC(高性能计算) 集群设计的可扩展性的分布式监控系统,它可以监视和显示集群中节点的各种状态信息,他由运行在各个节点上的gmond守护进程来采集 CPU、内存、磁盘利用率、I/O负载、网络流量情况等方面的数据。然后汇总到gmetad守护进程下,使用rrdtool存储数据,然后将历史数据以曲线方式通过PHP页面呈现。这里用来监控Flume的运行信息。

1. 安装配置

  1. 安装epel软件源和httpd、php服务
    yum install epel-release
    yum -y install httpd php
    
  2. 安装其他依赖
    yum -y install rrdtool perl-rrdtool rrdtool-devel
    yum -y install apr-devel
    
  3. 安装ganglia的三大组件
    yum -y install ganglia-gmetad 
    # 安装ganglia-web时间比较久【也有可能是我的网络不好】
    yum -y install ganglia-web
    yum install -y ganglia-gmond
    
  4. 修改配置文件

【养成好习惯,修改配置文件前先备份一下,正所谓有备无患 :smirk: 这里要修改4个配置文件】

【第 :one: 个配置:ganglia.conf】

这里解决了Web页面报:You don't have permission to access /ganglia on this server. 的问题。

vim /etc/httpd/conf.d/ganglia.conf
# 原内容
Alias /ganglia /usr/share/ganglia

<Location /ganglia>
  Order deny,allow
  Deny from all
  Allow from 127.0.0.1
  Allow from ::1
  # Allow from .example.com
</Location>

# 修改后
Alias /ganglia /usr/share/ganglia

<Location /ganglia>
 Require all granted
</Location>

【第 :two: 个配置文件:gmetad.conf】

vim /etc/ganglia/gmetad.conf
# 配置数据源 名称 IP地址
data_source "tcloud_source" tcloud

【第 :three: 个配置文件:gmond.conf】

vim /etc/ganglia/gmond.conf
# 修改后的模样
cluster {
   
   
 name = "tcloud_source"
 owner = "unspecified"
 latlong = "unspecified"
 url = "unspecified"
}
udp_send_channel {
   
   
 host = tcloud
 port = 8649
 ttl = 1
}
udp_recv_channel {
   
   
 port = 8649
 bind = tcloud
 retry_bind = true
}

【第 :four: 个配置文件:/etc/selinux/config】

vim /etc/selinux/config
# 配置这两项
SELINUX=disabled
SELINUXTYPE=targeted
# selinux修改需要重启才能生效 临时生效命令
[root@tcloud ~]# setenforce 0
setenforce: SELinux is disabled

2. 启动验证

# 启动 httpd 服务
[root@tcloud ~]# systemctl start httpd.service
# 启动 gmetad 服务
[root@tcloud ~]# systemctl start gmetad.service
# 启动 gmond 服务
[root@tcloud ~]# systemctl start gmond.service

访问 http://tcloud/ganglia 进行验证

在这里插入图片描述
如果出现以上权限问题,修改/var/lib/ganglia目录的权限:

chmod -R 777 /var/lib/ganglia

成功页面为:

在这里插入图片描述

3. 监控测试

1) 修改 ${FLUME_HOME}/conf/flume-env.sh配置

vim /usr/local/flume/conf/flume-env.sh
# 添加一下配置【添加的时候不要换行】这里是为了大家看得清楚
    JAVA_OPTS="
    -Dflume.monitoring.type=ganglia 
    -Dflume.monitoring.hosts=tcloud:8649 
    -Xms100m -Xmx200m
    "

2) 启动一个Flume任务进行测试【我们用 付诸实践 01 里的第一个进行举例】需要注意的是要增加一些监控参数。

# 1.启动
[root@tcloud ~]# flume-ng agent \
-n a1 \
-c conf \
-f /home/flume/test/test-exec-memory-logger.properties \
-Dflume.root.logger=INFO,console \
-Dflume.monitoring.type=ganglia \
-Dflume.monitoring.hosts=tcloud:8649
# 2.发送数据进行测试
[root@tcloud ~]# echo "Test" >> /tmp/log.txt
[root@tcloud ~]# echo "Ganglia" >> /tmp/log.txt

页面显示【云服务器性能不行,为了截这张图等了很久 :traffic_light:】:

在这里插入图片描述点击小图可以看详情:

在这里插入图片描述
图例说明:

字段(图表名称) 字段含义
EventPutAttemptCount source尝试写入channel的事件总数量
EventPutSuccessCount 成功写入channel且提交的事件总数量
EventTakeAttemptCount sink尝试从channel拉取事件的总数量。这不意味着每次事件都被返回,因为sink拉取的时候channel可能没有任何数据。
EventTakeSuccessCount sink成功读取的事件的总数量
StartTime channel启动的时间(毫秒)
StopTime channel停止的时间(毫秒)
ChannelSize 目前channel中事件的总数量
ChannelFillPercentage channel占用百分比
ChannelCapacity channel的容量
目录
相关文章
|
数据采集 消息中间件 监控
Flume数据采集系统设计与配置实战:面试经验与必备知识点解析
【4月更文挑战第9天】本文深入探讨Apache Flume的数据采集系统设计,涵盖Flume Agent、Source、Channel、Sink的核心概念及其配置实战。通过实例展示了文件日志收集、网络数据接收、命令行实时数据捕获等场景。此外,还讨论了Flume与同类工具的对比、实际项目挑战及解决方案,以及未来发展趋势。提供配置示例帮助理解Flume在数据集成、日志收集中的应用,为面试准备提供扎实的理论与实践支持。
613 1
|
SQL 分布式计算 监控
Hadoop-20 Flume 采集数据双写至本地+HDFS中 监控目录变化 3个Agent MemoryChannel Source对比
Hadoop-20 Flume 采集数据双写至本地+HDFS中 监控目录变化 3个Agent MemoryChannel Source对比
223 3
|
数据采集 消息中间件 存储
Flume 快速入门【概述、安装、拦截器】
Apache Flume 是一个开源的数据采集工具,用于从各种数据源(如日志、网络数据、消息队列)收集大规模数据,并将其传输和加载到数据存储系统(如 HDFS、HBase、Hive)。Flume 由数据源(Source)、通道(Channel)、拦截器(Interceptor)和接收器(Sink)组成,支持灵活配置以适应不同的数据流处理需求。安装 Flume 包括解压软件包、配置环境变量和调整日志及内存设置。配置文件定义数据源、通道、拦截器和接收器,拦截器允许预处理数据。Flume 适用于构建数据管道,整合分散数据到中心存储系统,便于分析和报告。
2492 3
|
XML 数据格式
Flume【付诸实践 01】flume1.9.0版 配置格式说明+常用案例分享(ExecSource+SpoolingDirectorySource+HDFSSink+AvroSourceSink)
【2月更文挑战第19天】Flume【付诸实践 01】flume1.9.0版 配置格式说明+常用案例分享(ExecSource+SpoolingDirectorySource+HDFSSink+AvroSourceSink)
383 1
|
监控 网络协议 Unix
centos7 zabbix安装客户端agent -配置监控远程主机 在需要监控的电脑上安装
centos7 zabbix安装客户端agent -配置监控远程主机 在需要监控的电脑上安装
587 0
|
消息中间件 存储 SQL
Flume【基础知识 01】简介 + 基本架构及核心概念 + 架构模式 + Agent内部原理 + 配置格式(一篇即可入门Flume)
【2月更文挑战第18天】Flume【基础知识 01】简介 + 基本架构及核心概念 + 架构模式 + Agent内部原理 + 配置格式(一篇即可入门Flume)
4238 0
|
缓存 关系型数据库 MySQL
百度搜索:蓝易云【CentOS8服务器安装MySQL报错:no match mysql-community-server】
现在,你已经成功安装了MySQL服务器并解决了"no match mysql-community-server"的报错问题。祝你使用愉快!
458 1
|
Linux 数据库管理 Python
CentOS7编译安装Python3.10(含OpenSSL1.1.1安装),创建虚拟环境,运行Django项目(含sqlite版本报错)
CentOS7编译安装Python3.10(含OpenSSL1.1.1安装),创建虚拟环境,运行Django项目(含sqlite版本报错)
2068 4
|
缓存 Linux 编译器
【C++】CentOS环境搭建-安装log4cplus日志组件包及报错解决方案
通过上述步骤,您应该能够在CentOS环境中成功安装并使用log4cplus日志组件。面对任何安装或使用过程中出现的问题,仔细检查错误信息,对照提供的解决方案进行调整,通常都能找到合适的解决之道。log4cplus的强大功能将为您的项目提供灵活、高效的日志管理方案,助力软件开发与维护。
561 0
|
网络协议 Linux
CentOS7 yum安装报错“Could not resolve host: mirrorlist.centos.org;"之解决办法(换源)
CentOS7 yum安装报错“Could not resolve host: mirrorlist.centos.org; Name or service not known“之解决办法(换源)