CentOS 5.5 安装Graphite

CentOS 5.5 安装Graphite


1.系统信息汇总

[root@cc-monitor conf]# uname -a

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/Linux


[root@cc-monitor conf]# python -V

Python 2.4.3


[root@cc-monitor conf]# getenforce

Disabled
 


2.安装Graphite依赖包


添加额外的源

除了CentOS源base、updates、extra之外,再添加两个源:epel和rpmforge。

# 安装epel源

wget  Fedora-epel/5/i386/epel-release-5-4.noarch.rpm

yum install epel-release-5-4.noarch.rpm

# 安装rpmforge源

wget 

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/

python manage.py syncdb

chown -R apache:apache /opt/graphite/


 


6.启动服务和程序


service httpd start

/opt/graphite/bin/carbon-cache.py start

安装已经完成。在浏览器中使用: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 

cd node-v0.8.7

./configure

make

make install


#验证安装是否成功

[root@cc-monitor statsd-2.0.1]# node -v

v0.8.7


#安装statsd

git clone

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 &

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/19580.html