红联Linux门户
Linux帮助

CentOS 5.5安装Graphite

发布时间:2014-07-01 15:29:45来源:红联作者:velcbo
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 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.



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/



SetHandler None



# 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/"



SetHandler None



# The graphite.wsgi file has to be accessible by apache. It won't

# be visible to clients because of the DocumentRoot though.



Order deny,allow

Allow from all





配置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

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

作者:ydt619
文章评论

共有 0 条评论