问题一:ganglia 监控网页可以正常打开,但是加载不到曲线。
这个问题疑惑了我两天,检查有几个关键点:
(1)通过 ps -aux | grep gm 检查gmetad (服务端守护进程)和 gmond(客户端守护进程)是否正常显示。
ganglia 1466 0.0 0.1 4544 2076 ? Ss 17:44 0:07 /usr/sbin/gmond
root 2357 0.1 0.1 75608 1960 ? Sl 18:15 0:24 gmetad
junyu 5028 0.0 0.0 3328 864 pts/1 S+ 23:41 0:00 grep --color=auto gm
(2)测试gmond是否正常的传播数据到gmetad。命令:telnet localhost 8649
Trying ::1...
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<!DOCTYPE GANGLIA_XML [
<!ELEMENT GANGLIA_XML (GRID|CLUSTER|HOST)*>
<!ATTLIST GANGLIA_XML VERSION CDATA #REQUIRED>
……
(3)测试gmond数据是都写到rrd数据库。默认目录是:/var/lib/ganglia/rrds/
如果没有写到,可能是两个问题,文件夹写的权限,是否是root所有(通过chmod 和 chown命令),或者是gmetad没有保存进来。
(4)如果以上都正确,那就是ganglia监控网页没有获取到.rrd数据库文件,这个时候,要检查获取的文件配置。
问题二:gmetad -d9 测试的时候出现,Unable to create tcp_accept_channel. Exiting.
呵呵,这个问题其实就是,你刚才开启的命令没有关掉,有时候stop不顶用的,建议之间killall -9 gmetad ,然后开启就可以啦……
当然还会出现其他问题:比如,http:// localhost:8006
There was an error collecting ganglia data (127.0.0.1:8652): fsockopen error: Connection refused。这个问题很明显就是gmetad不给力啊,参照问题一,自己去解决吧。
常用的方法:
常用命令:
(1)lsof -i:port
(2)netstat -anlp | grep 8651
netstat -ano | grep 8649
-a, --all, --listening display all sockets (default: connected)
-n, --numeric don't resolve names
-o, --timers display timers
-l, --listening display listening server sockets
-p, --programs display PID/Program name for sockets
(3)ps -aux | grep gm
(4)killall -9 gmetad
(5)gmetad
(6)telnet localhost 8649