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

简介: Ganglia【部署 01】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
  1. 安装其他依赖
yum -y install rrdtool perl-rrdtool rrdtool-devel
yum -y install apr-devel
  1. 安装ganglia的三大组件
yum -y install ganglia-gmetad 
# 安装ganglia-web时间比较久【也有可能是我的网络不好】
yum -y install ganglia-web
yum install -y ganglia-gmond
  1. 修改配置文件

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

【第 1️⃣ 个配置: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>

【第 2️⃣ 个配置文件:gmetad.conf】

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

【第 3️⃣ 个配置文件: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
}

【第 4️⃣ 个配置文件:/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
  "
  1. 启动一个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

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

点击小图可以看详情:

图例说明:

字段(图表名称) 字段含义
EventPutAttemptCount source尝试写入channel的事件总数量
EventPutSuccessCount 成功写入channel且提交的事件总数量
EventTakeAttemptCount sink尝试从channel拉取事件的总数量。这不意味着每次事件都被返回,因为sink拉取的时候channel可能没有任何数据。
EventTakeSuccessCount sink成功读取的事件的总数量
StartTime channel启动的时间(毫秒)
StopTime channel停止的时间(毫秒)
ChannelSize 目前channel中事件的总数量
ChannelFillPercentage channel占用百分比
ChannelCapacity channel的容量
目录
相关文章
|
4月前
|
SQL 分布式计算 监控
Hadoop-20 Flume 采集数据双写至本地+HDFS中 监控目录变化 3个Agent MemoryChannel Source对比
Hadoop-20 Flume 采集数据双写至本地+HDFS中 监控目录变化 3个Agent MemoryChannel Source对比
82 3
|
4月前
|
Linux 网络安全 Apache
CentOS 7.2配置Apache服务httpd(上)
CentOS 7.2配置Apache服务httpd(上)
368 1
|
19天前
|
Java
CentOS7.8配置Adoptium-Java17运行环境
本指南介绍如何设置清华镜像源并安装 Temurin-17-JRE 运行环境。首先,编辑 `/etc/yum.repos.d/adoptium.repo` 文件,配置清华镜像源。接着,使用 `yum install -y temurin-17-jre` 命令安装 Temurin-17-JRE,并通过 `java --version` 验证安装成功。相关配置和操作界面截图附后。
34 8
|
17天前
|
网络协议 Java 应用服务中间件
centos7环境下tomcat8的安装与配置
本文介绍了在Linux环境下安装和配置Tomcat 8的详细步骤。首先,通过无网络条件下的文件交互软件(如Xftp 6或MobaXterm)下载并解压Tomcat安装包至指定路径,启动Tomcat服务并测试访问。接着,修改Tomcat端口号以避免冲突,并部署Java Web应用项目至Tomcat服务器。最后,调整Linux防火墙规则,确保外部可以正常访问部署的应用。关键步骤包括关闭或配置防火墙、添加必要的端口规则,确保Tomcat服务稳定运行。
|
6月前
|
消息中间件 Linux API
centos7 安装rabbitmq自定义版本及配置
centos7 安装rabbitmq自定义版本及配置
|
3月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
266 2
|
4月前
|
Java jenkins 持续交付
Centos7下docker的jenkins下载并配置jdk与maven
通过上述步骤,您将成功在CentOS 7上的Docker容器中部署了Jenkins,并配置好了JDK与Maven,为持续集成和自动化构建打下了坚实基础。
183 1
|
4月前
|
存储 监控 Linux
在 CentOS 7 中如何对新硬盘进行分区、格式化、挂载及配置最佳实践
本文详细介绍了在 CentOS 7 中如何对新硬盘进行分区、格式化、挂载及配置最佳实践,包括使用 `fdisk` 创建分区、`mkfs` 格式化分区、创建挂载点、编辑 `/etc/fstab` 实现永久挂载等步骤,旨在有效管理服务器磁盘空间,提高系统稳定性和可维护性。
633 1
|
4月前
|
Linux PHP Apache
CentOS 7.2配置Apache服务httpd(下)
CentOS 7.2配置Apache服务httpd(下)
66 1
|
6月前
|
弹性计算 关系型数据库 MySQL
centos7 mysql安装及配置
本文详细介绍了在阿里云服务器ECS上通过yum源安装MySQL 8.0.12的过程,包括更新yum源、下载并安装MySQL源、解决安装过程中可能遇到的问题等步骤。此外,还介绍了如何启动MySQL服务、设置开机自启、配置登录密码、添加远程登录用户以及处理远程连接异常等问题。适合初学者参考,帮助快速搭建MySQL环境。
623 8
centos7 mysql安装及配置