CentOS 5.5 安装Graphitehtml
1.系统信息汇总node
[root@cc-monitor conf]# uname -apython Linux cc-monitor 2.6.18-194.32.1.el5 #1 SMP Wed Jan 5 17:52:25 EST 2011 x86_64 x86_64 x86_64 GNU/Linuxc++ [root@cc-monitor conf]# python -Vgit Python 2.4.3github [root@cc-monitor conf]# getenforceweb Disabledsql |
2.安装Graphite依赖包数据库
添加额外的源apache 除了CentOS源base、updates、extra以外,再添加两个源:epel和rpmforge。 # 安装epel源 wget http://mirrors.sohu.com/fedora-epel/5/i386/epel-release-5-4.noarch.rpm yum install epel-release-5-4.noarch.rpm # 安装rpmforge源 wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm yum install rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm 安装依赖包 依赖包至关多,争取一次搞定 yum -y install bitmap bitmap-fonts Django pycairo python-devel python-ldap python-memcached mod_wsgi python-sqlite2 glibc-devel gcc gcc-c++ git openssl-devel python-zope-interface httpd memcached python-hashlib django-tagging python-twisted python-simplejson 这里仍是作一下简单说明: cairo是graphite的绘图库,是必须的软件。 bitmap-fonts字体也是须要的,不然可能图形显示不正常 python-twisted必须安装rpmforge源的python-twisted-core-8.2.0-1.el5.rf,这也是为何添加rpmforge源的缘由。 mod_wsgi是apache的模块 |
3.安装Graphite组件
Graphite组件包括三个部分:carbon、whisper和graphite-web 下载地址: https://github.com/graphite-project/graphite-web/downloads https://github.com/graphite-project/whisper/downloads https://github.com/graphite-project/carbon/downloads # install graphite-web tar zxvf graphite-web-0.9.10.tar.gz cd graphite-web-0.9.10 python setup.py install cd .. # install whisper tar zxvf whisper-0.9.10.tar.gz cd whisper-0.9.10 python setup.py install cd .. # install carbon tar zxvf carbon-0.9.10.tar.gz cd carbon-0.9.10 python setup.py install |
4.配置apache服务
建立 Graphite 的虚拟主机配置:/etc/httpd/conf.d/graphite.conf,建立方法以下: cat > /etc/httpd/conf.d/graphite.conf Listen 8080 # You may need to manually edit this file to fit your needs. # This configuration assumes the default installation prefix # of /opt/graphite/, if you installed graphite somewhere else # you will need to change all the occurances of /opt/graphite/ # in this file to your chosen install location. <VirtualHost *:8080> ServerName graphite DocumentRoot "/opt/graphite/webapp" # I've found that an equal number of processes & threads tends # to show the best performance for Graphite (ymmv). WSGIDaemonProcess graphite processes=5 threads=5 display-name='%{GROUP}' inactivity-timeout=120 WSGIProcessGroup graphite # You will need to create this file! There is a graphite.wsgi.example # file in this directory that you can safely use, just copy it to graphite.wgsi WSGIScriptAlias / /opt/graphite/conf/graphite.wsgi Alias /content/ /opt/graphite/webapp/content/ <Location "/content/"> SetHandler None </Location> # NOTE: In order for the django admin site media to work you # must change @DJANGO_ROOT@ to be the path to your django # installation, which is probably something like: # /usr/lib/python2.6/site-packages/django Alias /media/ "/usr/lib/python2.4/site-packages/django/contrib/admin/media/" <Location "/media/"> SetHandler None </Location> # The graphite.wsgi file has to be accessible by apache. It won't # be visible to clients because of the DocumentRoot though. <Directory /opt/graphite/conf/> Order deny,allow Allow from all </Directory> </VirtualHost> 配置mod_wsgi模块 在 /etc/httpd/conf.d/wsgi.conf文件中添加如下两行: LoadModule wsgi_module modules/mod_wsgi.so WSGISocketPrefix /var/run/wsgi |
5.配置Graphite
运行如下命令建立配置文件 cd /opt/graphite/conf/ for i in graphite.wsgi carbon.conf storage-schemas.conf storage-aggregation.conf; do cp $i.example $i; done cd /opt/graphite/webapp/graphite/ cp local_settings.py.example local_settings.py 运行如下命令建立数据库: cd /opt/graphite/webapp/graphite/ chown -R apache:apache /opt/graphite/ |
6.启动服务和程序
service httpd start /opt/graphite/bin/carbon-cache.py start 安装已经完成。在浏览器中使用http://ip:8080,使用安装graphite的主机的ip代替。能够访问便可以确定的告诉你CentOS 5安装Graphite成功了 |
7.安装node-js和statsd
#先安装python2.6 yum install bzip2* glibc-devel cd Python-2.6.8 make clean ./configure make make install ln -s /usr/local/bin/python /usr/bin/python #再安装node-js wet http://nodejs.org/dist/node-v0.4.8.tar.gz cd node-v0.8.7 ./configure make make install #验证安装是否成功 [root@cc-monitor statsd-2.0.1]# node -v v0.8.7 #安装statsd git clone http://github.com/etsy/statsd.git cp -R statsd /opt/graphite/ #Create /opt/graphite/statsd/local.js [root@cc-monitor statsd]# cat local.js { graphitePort: 2003 , graphiteHost: "localhost" , port: 8124 } #start nodejs/statsd cd /opt/graphite/statsd nohup /usr/local/bin/node stats.js local.js & |
8.参考文章
http://www.jsxubar.info/centos-5%E5%AE%89%E8%A3%85graphite.html