热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Ganglia的安装

Ganglia是UCBerkeley发起的一个开源集群监视项目,设计用于测量数以千计的节点。Ganglia的核心包含gmond、gmetad以及一个Web前端。主要是

Ganglia是UC Berkeley发起的一个开源集群监视项目,设计用于测量数以千计的节点。Ganglia的核心包含gmond、gmetad以及一个Web前端。主要是用来监控系统性能,如:cpu 、mem、硬盘利用率, I/O负载、网络流量情况等,通过曲线很容易见到每个节点的工作状态,对合理调整、分配系统资源,提高系统整体性能起到重要作用。

 

Ganglia的安装,可以使用yum和rpm来进行,对于刚装的系统需要分别执行以下几个命令,来完成初始化安装:

Java代码  收藏代码
  1. yum install –y wget apr-devel apr-util check-devel cairo-devel pango-devel libxml2-devel rpmbuild glib2-devel dbus-devel freetype-devel fontconfig-devel gcc-c++ expat-devel python-devel libXrender-devel rrdtool*  
  2.   
  3. rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm  
  4. rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm  
  5.  rpm -ivh http://github.com/downloads/jmxtrans/jmxtrans/jmxtrans-20121016.145842.6a28c97fbb-0.noarch.rpm  
  6.   
  7. yum install ganglia*  

yum install –y wget apr-devel apr-util check-devel cairo-devel pango-devel libxml2-devel rpmbuild glib2-devel dbus-devel freetype-devel fontconfig-devel gcc-c++ expat-devel python-devel libXrender-devel rrdtool*rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpmrpm -ivh http://github.com/downloads/jmxtrans/jmxtrans/jmxtrans-20121016.145842.6a28c97fbb-0.noarch.rpmyum install ganglia*


安装完成后,即可配置。

1, 修改ganglia的conf配置,
    修改 /etc/ganglia/gmetad.conf,数据源的配置
    data_source "solr cluster" 127.0.0.1
集群IP,可以设置多个IP地址,也可以设置多个数据源。


2,修改 /etc/ganglia/gmond.conf的配置,把name对应起来
cluster {
  name = "solr cluster"
  owner = "unspecified"
  latlong = "unspecified"
  url = "unspecified"
}
3,修改/etc/httpd/conf.d/ganglia.conf,Apache的配置,不拦截ganglia的数据包
  Alias /ganglia /usr/share/ganglia

 
    Order deny,allow
    Allow  from all
    Allow from 192.168.46.21
    Allow from ::1
    # Allow from .example.com
 



4,cd  /var/lib/jmxtrans
配置jmxtrans
添加solr.json

solr.json的配置如下:

Java代码  收藏代码
  1. {  
  2.     "servers" : [  
  3.     {  
  4.         "host" : "192.168.46.23",  
  5.         "alias" : "solr23",  
  6.         "port" : "3000",  
  7.         "queries" : [  
  8.         {  
  9.             "obj" : "java.lang:type=Memory",  
  10.             "resultAlias""solr23.heap",  
  11.             "attr" : [ "HeapMemoryUsage""NonHeapMemoryUsage" ],  
  12.             "outputWriters" : [  
  13.              {  
  14.                  "@class" : "com.googlecode.jmxtrans.model.output.GangliaWriter",  
  15.                  "settings" : {  
  16.                      "groupName" : "Solr-JVM",  
  17.                      "host" : "239.2.11.71",  
  18.                      "port" : "8649"  
  19.                  }  
  20.              }]  
  21.         },  
  22.         {  
  23.             "obj" : "java.lang:name=CMS Old Gen,type=MemoryPool",  
  24.             "resultAlias""solr23.cmsoldgen",  
  25.             "attr" : [ "Usage" ],  
  26.             "outputWriters" : [  
  27.              {  
  28.                  "@class" : "com.googlecode.jmxtrans.model.output.GangliaWriter",  
  29.                  "settings" : {  
  30.                      "groupName" : "Solr-JVM",  
  31.                      "host" : "239.2.11.71",  
  32.                      "port" : "8649"  
  33.                  }  
  34.              }]  
  35.         },  
  36.         {  
  37.             "obj" : "java.lang:type=GarbageCollector,name=*",  
  38.             "resultAlias""solr23.gc",  
  39.             "attr" : [ "CollectionCount""CollectionTime" ],   
  40.             "outputWriters" : [  
  41.              {  
  42.                  "@class" : "com.googlecode.jmxtrans.model.output.GangliaWriter",  
  43.                  "settings" : {  
  44.                      "groupName" : "Solr-JVM",  
  45.                      "host" : "239.2.11.71",  
  46.                      "port" : "8649"  
  47.                  }  
  48.              }]  
  49.         },  
  50.         {  
  51.             "obj" : "java.lang:type=Threading",  
  52.             "resultAlias""solr23.threads",  
  53.             "attr" : [ "DaemonThreadCount""PeakThreadCount""ThreadCount""TotalStartedThreadCount" ],  
  54.             "outputWriters" : [  
  55.              {  
  56.                  "@class" : "com.googlecode.jmxtrans.model.output.GangliaWriter",  
  57.                  "settings" : {  
  58.                      "groupName" : "Solr-JVM",  
  59.                      "host" : "239.2.11.71",  
  60.                      "port" : "8649"  
  61.                  }  
  62.              }]  
  63.         },  
  64.         {  
  65.             "obj" : "solr/collection1:type=queryResultCache,id=org.apache.solr.search.LRUCache",  
  66.             "resultAlias""solr23.queryCache",  
  67.             "attr" : [ "warmupTime","size","lookups","evictions","hits","hitratio","inserts","cumulative_lookups","cumulative_hits","cumulative_hits","cumulative_hitratio","cumulative_inserts","cumulative_evictions" ],  
  68.             "outputWriters" : [  
  69.             {  
  70.                 "@class" : "com.googlecode.jmxtrans.model.output.GangliaWriter",  
  71.                 "settings" : {  
  72.                     "groupName" : "Solr-JVM",  
  73.                     "host" : "239.2.11.71",  
  74.                     "port" : "8649"  
  75.                 }  
  76.             }]  
  77.         },  
  78.         {  
  79.             "obj" : "solr/collection1:type=searcher,id=org.apache.solr.search.SolrIndexSearcher",  
  80.            "resultAlias""solr23.searcher",  
  81.             "attr" : [ "maxDoc","numDocs","warmupTime" ],  
  82.             "outputWriters" : [  
  83.             {  
  84.                 "@class" : "com.googlecode.jmxtrans.model.output.GangliaWriter",  
  85.                 "settings" : {  
  86.                     "groupName" : "Solr-JVM",  
  87.                     "host" : "239.2.11.71",  
  88.                     "port" : "8649"  
  89.                 }  
  90.             }]  
  91.         }]  
  92.     }]  
  93. }  

{"servers" : [{"host" : "192.168.46.23","alias" : "solr23","port" : "3000","queries" : [{"obj" : "java.lang:type=Memory","resultAlias": "solr23.heap","attr" : [ "HeapMemoryUsage", "NonHeapMemoryUsage" ],"outputWriters" : [{"@class" : "com.googlecode.jmxtrans.model.output.GangliaWriter","settings" : {"groupName" : "Solr-JVM","host" : "239.2.11.71","port" : "8649"}}]},{"obj" : "java.lang:name=CMS Old Gen,type=MemoryPool","resultAlias": "solr23.cmsoldgen","attr" : [ "Usage" ],"outputWriters" : [{"@class" : "com.googlecode.jmxtrans.model.output.GangliaWriter","settings" : {"groupName" : "Solr-JVM","host" : "239.2.11.71","port" : "8649"}}]},{"obj" : "java.lang:type=GarbageCollector,name=*","resultAlias": "solr23.gc","attr" : [ "CollectionCount", "CollectionTime" ], "outputWriters" : [{"@class" : "com.googlecode.jmxtrans.model.output.GangliaWriter","settings" : {"groupName" : "Solr-JVM","host" : "239.2.11.71","port" : "8649"}}]},{"obj" : "java.lang:type=Threading","resultAlias": "solr23.threads","attr" : [ "DaemonThreadCount", "PeakThreadCount", "ThreadCount", "TotalStartedThreadCount" ],"outputWriters" : [{"@class" : "com.googlecode.jmxtrans.model.output.GangliaWriter","settings" : {"groupName" : "Solr-JVM","host" : "239.2.11.71","port" : "8649"}}]},{"obj" : "solr/collection1:type=queryResultCache,id=org.apache.solr.search.LRUCache","resultAlias": "solr23.queryCache","attr" : [ "warmupTime","size","lookups","evictions","hits","hitratio","inserts","cumulative_lookups","cumulative_hits","cumulative_hits","cumulative_hitratio","cumulative_inserts","cumulative_evictions" ],"outputWriters" : [{"@class" : "com.googlecode.jmxtrans.model.output.GangliaWriter","settings" : {"groupName" : "Solr-JVM","host" : "239.2.11.71","port" : "8649"}}]},{"obj" : "solr/collection1:type=searcher,id=org.apache.solr.search.SolrIndexSearcher","resultAlias": "solr23.searcher","attr" : [ "maxDoc","numDocs","warmupTime" ],"outputWriters" : [{"@class" : "com.googlecode.jmxtrans.model.output.GangliaWriter","settings" : {"groupName" : "Solr-JVM","host" : "239.2.11.71","port" : "8649"}}]}]}]
}




配置完成后,需要依次,启动如下服务:

Java代码  收藏代码
  1. service httpd start  //启动apache服务  
  2. /etc/init.d/gmetad start   //启动绘图服务  
  3. /etc/init.d/gmond start   //启动数据收集服务  
  4. 这个放在solr前执行  jmx  
  5. /etc/init.d/jmxtrans start  //启动jmx  
  6. /home/solr/start-solr.sh  //启动solr   

service httpd start //启动apache服务
/etc/init.d/gmetad start //启动绘图服务
/etc/init.d/gmond start //启动数据收集服务
这个放在solr前执行 jmx
/etc/init.d/jmxtrans start //启动jmx
/home/solr/start-solr.sh //启动solr


注意,solr启动的jetty的jar需要加上JMX的监控参数,内容如下:

Java代码  收藏代码
  1. java -Djava.rmi.server.hostname=192.168.46.23    -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=3000 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -jar start.jar   

java -Djava.rmi.server.hostname=192.168.46.23 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=3000 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -jar start.jar



最后需要注意一点,为了防止访问apache服务出错,
如果出现:There was an error collecting ganglia data (127.0.0.1:8652): fsockopen error: Permission denied  .  错误,我们需要进行以下的设置:

Java代码  收藏代码
  1. (1):临时可以使用命令setenforce 0来关闭selinux而不需要重启,刷新页面,即可访问!  
  2. (2):永久的使用,需要关闭selinux:vi /etc/selinux/config,把SELINUX=enforcing改成SELINUX=disable;需要重启机器。  

(1):临时可以使用命令setenforce 0来关闭selinux而不需要重启,刷新页面,即可访问!
(2):永久的使用,需要关闭selinux:vi /etc/selinux/config,把SELINUX=enforcing改成SELINUX=disable;需要重启机器。


一切完成后,我们就是访问我们本机的ip地址,看到的界面如下所示:





到此,我们的单机监控solr的demo,就部署成功了,以同样的方式,我们还可以对hadoop进行监控,另外我们还可以配置多个datasource来监控多个应用。



推荐阅读
  • 求助:在CentOS 5.8系统上安装PECL扩展遇到问题
    在 CentOS 5.8 系统上尝试安装 APC 扩展时遇到了问题,具体表现为 PECL 工具无法正常工作。为了确保顺利安装,需要解决 PECL 的相关依赖和配置问题。建议检查 PHP 和 PECL 的版本兼容性,并确保所有必要的库和开发工具已正确安装。此外,可以尝试手动下载 APC 扩展的源代码并进行编译安装,以绕过 PECL 工具的限制。 ... [详细]
  • 用阿里云的免费 SSL 证书让网站从 HTTP 换成 HTTPS
    HTTP协议是不加密传输数据的,也就是用户跟你的网站之间传递数据有可能在途中被截获,破解传递的真实内容,所以使用不加密的HTTP的网站是不 ... [详细]
  • 在CentOS 7环境中安装配置Redis及使用Redis Desktop Manager连接时的注意事项与技巧
    在 CentOS 7 环境中安装和配置 Redis 时,需要注意一些关键步骤和最佳实践。本文详细介绍了从安装 Redis 到配置其基本参数的全过程,并提供了使用 Redis Desktop Manager 连接 Redis 服务器的技巧和注意事项。此外,还探讨了如何优化性能和确保数据安全,帮助用户在生产环境中高效地管理和使用 Redis。 ... [详细]
  • 在Linux系统中避免安装MySQL的简易指南
    在Linux系统中避免安装MySQL的简易指南 ... [详细]
  • 为了在Hadoop 2.7.2中实现对Snappy压缩和解压功能的原生支持,本文详细介绍了如何重新编译Hadoop源代码,并优化其Native编译过程。通过这一优化,可以显著提升数据处理的效率和性能。此外,还探讨了编译过程中可能遇到的问题及其解决方案,为用户提供了一套完整的操作指南。 ... [详细]
  • 数字图书馆近期展出了一批精选的Linux经典著作,这些书籍虽然部分较为陈旧,但依然具有重要的参考价值。如需转载相关内容,请务必注明来源:小文论坛(http://www.xiaowenbbs.com)。 ... [详细]
  • 在 CentOS 7 中,为了扩展可用软件包的数量,通常需要配置多个第三方软件源。这些第三方源包括 EPEL、Nux Dextop 和 ELRepo 等,它们提供了大量官方源中未包含的软件包,从而增强了系统的功能性和灵活性。通过正确配置这些源,用户可以轻松安装和管理更多种类的软件,满足不同的需求。 ... [详细]
  • 一、Tomcat安装后本身提供了一个server,端口配置默认是8080,对应目录为:..\Tomcat8.0\webapps二、Tomcat8.0配置多个端口,其实也就是给T ... [详细]
  • HTTP(HyperTextTransferProtocol)是超文本传输协议的缩写,它用于传送www方式的数据。HTTP协议采用了请求响应模型。客服端向服务器发送一 ... [详细]
  • 本文详细介绍了如何在 Linux 系统上安装 JDK 1.8、MySQL 和 Redis,并提供了相应的环境配置和验证步骤。 ... [详细]
  • 单片微机原理P3:80C51外部拓展系统
      外部拓展其实是个相对来说很好玩的章节,可以真正开始用单片机写程序了,比较重要的是外部存储器拓展,81C55拓展,矩阵键盘,动态显示,DAC和ADC。0.IO接口电路概念与存 ... [详细]
  • 本文将详细介绍如何在Webpack项目中安装和使用ECharts,包括全量引入和按需引入的方法,并提供一个柱状图的示例。 ... [详细]
  • 如何在Linux服务器上配置MySQL和Tomcat的开机自动启动
    在Linux服务器上部署Web项目时,通常需要确保MySQL和Tomcat服务能够随系统启动而自动运行。本文将详细介绍如何在Linux环境中配置MySQL和Tomcat的开机自启动,以确保服务的稳定性和可靠性。通过合理的配置,可以有效避免因服务未启动而导致的项目故障。 ... [详细]
  • Android 构建基础流程详解
    Android 构建基础流程详解 ... [详细]
  • 本文详细介绍了在Linux系统上编译安装MySQL 5.5源码的步骤。首先,通过Yum安装必要的依赖软件包,如GCC、GCC-C++等,确保编译环境的完备。接着,下载并解压MySQL 5.5的源码包,配置编译选项,进行编译和安装。最后,完成安装后,进行基本的配置和启动测试,确保MySQL服务正常运行。 ... [详细]
author-avatar
短暂的幸福2
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有