大数据技术之Flume 数据流监控——Ganglia 的安装与部署(11)

目录

[Flume 数据流监控](#Flume 数据流监控)

[Ganglia 的安装与部署](#Ganglia 的安装与部署)

[Ganglia 组件介绍](#Ganglia 组件介绍)

[1)安装 Ganglia](#1)安装 Ganglia)

[2)在 hadoop12 修改配置文件 /etc/httpd/conf.d/ganglia.conf](#2)在 hadoop12 修改配置文件 /etc/httpd/conf.d/ganglia.conf)

[3)在 hadoop12 修改配置文件 /etc/ganglia/gmetad.conf](#3)在 hadoop12 修改配置文件 /etc/ganglia/gmetad.conf)

[4)在 hadoop12, hadoop13, hadoop14 修改配置文件 /etc/ganglia/gmond.conf](#4)在 hadoop12, hadoop13, hadoop14 修改配置文件 /etc/ganglia/gmond.conf)

[5)在 hadoop12 修改配置文件 /etc/selinux/config](#5)在 hadoop12 修改配置文件 /etc/selinux/config)

[6)启动 Ganglia](#6)启动 Ganglia)

[7)打开网页浏览 Ganglia 页面](#7)打开网页浏览 Ganglia 页面)

[操作 Flume 测试监控](#操作 Flume 测试监控)

[1)启动 Flume 任务](#1)启动 Flume 任务)

[2)发送数据观察 Ganglia 监测图](#2)发送数据观察 Ganglia 监测图)

图例说明:


Flume 数据流监控

Ganglia 的安装与部署

Ganglia 组件介绍

  • gmond (Ganglia Monitoring Daemon): 轻量级服务,安装在每台需要收集指标的机器上,用于收集系统信息如 CPU 使用率、内存、磁盘、网络和活跃进程的数据等。
  • gmetad (Ganglia Meta Daemon): 整合所有信息,并将其以 RRD 格式存储至磁盘的服务。
  • gweb (Ganglia Web): Ganglia 的可视化工具,是一种利用浏览器显示 gmetad 所存储数据的 PHP 前端,在 Web 界面中以图表方式展现集群的运行状态下收集的多种不同指标数据。
1)安装 Ganglia
  • 规划

    • hadoop12: web, gmetad, gmond
    • hadoop13: gmond
    • hadoop14: gmond
  • 在 hadoop12, hadoop13, hadoop14 分别安装 epel-release

    bash 复制代码
    [lzl@hadoop12 flume]$ sudo yum -y install epel-release
  • 在 hadoop12 安装

    bash 复制代码
    [lzl@hadoop12 flume]$ sudo yum -y install ganglia-gmetad 
    [lzl@hadoop12 flume]$ sudo yum -y install ganglia-web
    [lzl@hadoop12 flume]$ sudo yum -y install ganglia-gmond
  • 在 hadoop13 和 hadoop14 安装

    bash 复制代码
    [lzl@hadoop12 flume]$ sudo yum -y install ganglia-gmond
2)在 hadoop12 修改配置文件 /etc/httpd/conf.d/ganglia.conf
复制代码
[lzl@hadoop12 flume]$ sudo vim /etc/httpd/conf.d/ganglia.conf

修改为:

bash 复制代码
# Ganglia monitoring system php web frontend

#
Alias /ganglia /usr/share/ganglia
<Location /ganglia>
    # Require local
    # 通过 windows 访问 ganglia,需要配置 Linux 对应的主机(windows)ip 地址
    Require ip 192.168.9.1
    # Require ip 10.1.2.3
    # Require host example.org
</Location>
3)在 hadoop12 修改配置文件 /etc/ganglia/gmetad.conf
bash 复制代码
[lzl@hadoop12 flume]$ sudo vim /etc/ganglia/gmetad.conf

修改为:

bash 复制代码
data_source "my cluster" hadoop12
4)在 hadoop12, hadoop13, hadoop14 修改配置文件 /etc/ganglia/gmond.conf
bash 复制代码
[lzl@hadoop12 flume]$ sudo vim /etc/ganglia/gmond.conf 

修改为:

bash 复制代码
cluster {
  name = "my cluster"
  owner = "unspecified"
  latlong = "unspecified"
  url = "unspecified"
}

udp_send_channel {
  # 数据发送给 hadoop12
  host = hadoop12
  port = 8649
  ttl = 1
}

udp_recv_channel {
  # 接收来自任意连接的数据
  bind = 0.0.0.0
  retry_bind = true
}
5)在 hadoop12 修改配置文件 /etc/selinux/config
bash 复制代码
[lzl@hadoop12 flume]$ sudo vim /etc/selinux/config

修改为:

复制代码
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled

# SELINUXTYPE= can take one of these two values:
# targeted - Targeted processes are protected,
# mls - Multi Level Security protection.
SELINUXTYPE=targeted

尖叫提示:SELinux 生效需要重启,如果此时不想重启,可以临时生效之:

bash 复制代码
[lzl@hadoop12 flume]$ sudo setenforce 0
6)启动 Ganglia
  • 在 hadoop12, hadoop13, hadoop14 启动

    bash 复制代码
    [lzl@hadoop12 flume]$ sudo systemctl start gmond
  • 在 hadoop12 启动

    bash 复制代码
    [lzl@hadoop12 flume]$ sudo systemctl start httpd
    [lzl@hadoop12 flume]$ sudo systemctl start gmetad
7)打开网页浏览 Ganglia 页面
bash 复制代码
http://hadoop12/ganglia

尖叫提示:如果完成以上操作依然出现权限不足错误,请修改 /var/lib/ganglia 目录的权限:

bash 复制代码
[lzl@hadoop12 flume]$ sudo chmod -R 777 /var/lib/ganglia

操作 Flume 测试监控

1)启动 Flume 任务
bash 复制代码
[lzl@hadoop12 flume]$ bin/flume-ng agent \
-c conf/ \
-n a1 \
-f job/flume-netcat-logger.conf \
-Dflume.root.logger=INFO,console \
-Dflume.monitoring.type=ganglia \
-Dflume.monitoring.hosts=hadoop12:8649
2)发送数据观察 Ganglia 监测图
bash 复制代码
[lzl@hadoop12 flume]$ nc localhost 44444
图例说明:
字段(图表名称) 字段含义
EventPutAttemptCount source 尝试写入 channel 的事件总数量
EventPutSuccessCount 成功写入 channel 且提交的事件总数量
EventTakeAttemptCount sink 尝试从 channel 拉取事件的总数量。
EventTakeSuccessCount sink 成功读取的事件的总数量
StartTime channel 启动的时间(毫秒)
StopTime channel 停止的时间(毫秒)
ChannelSize 目前 channel 中事件的总数量
ChannelFillPercentage channel 占用百分比
ChannelCapacity channel 的容量
相关推荐
ly76897 小时前
Elasticsearch 分片分配与再平衡的底层逻辑:从 allocation decider 到集群扩容抖动
大数据·elasticsearch·搜索引擎·集群扩容·分片分配·磁盘水位线
云风228 小时前
25亿条/小时管道踩坑实录:Hive桶表的4个暗坑,桶裁剪为何静默失效
大数据
FII工业富联科技服务9 小时前
2026年AI技术发展趋势分析:从模型能力突破到工业AI的真实应用
大数据·人工智能·深度学习·机器学习·制造·ai智能体·agentic ai
一隅论数智9 小时前
OWL(Web Ontology Language)介绍与使用举例(二)
大数据·经验分享·笔记·学习·自然语言处理·学习方法·政务
一木 之林9 小时前
DeepSeek Agent 开发(三)
java·大数据·linux
小码哥0689 小时前
Java医院陪诊系统陪护系统陪诊小程序,三端齐全可定制
大数据·小程序·陪诊陪护·陪诊小程序·陪护系统·陪诊系统·陪护小程序
赛博守夜人12 小时前
跨境业务与出海合规之八:面向海外合规监管突击搜查(Dawn Raid)的信息安全应急响应(IR)与合规取证
大数据·数据库
你就是答案 -14812 小时前
2026 企业 AI 办公工具选型指南:匹配业务场景才是核心
大数据·人工智能
成长之路51412 小时前
【数据集】全国省市县三级逐年平均气温数据(excel+shp)1901-2024年
大数据
智圣新创0113 小时前
智圣新创智慧学生社区线上服务平台 高校一站式育人场景数字化升级全域建设指南
大数据·人工智能