如何在Ubuntu 14.04服务器怎么使用上安装并使用Graphite

先看看百度百科是怎么介紹

Graphite 是一个Python写的web应用采用django框架,Graphite用来进行收集服务器怎么使用所有的即时状态用户请求信息,Memcached命中率RabbitMQ消息服务器怎么使用的状态,Unix操莋系统的负载状态Graphite服务器怎么使用大约每分钟需要有4800次更新操作,Graphite采用简单的文本协议和绘图功能可以方便地使用在任何操作系统上

百度百科讲的还算是比较清楚了,Graphite是用来监控系统的 比如操作系统,缓存服务系统等但是监控的数据怎么得到呢?Graphite并不负责它只负責显示,数据哪里来人家不care你只要按照他的数据格式给它,Graphite就可以机智的用漂亮的页面显示给你不过不用担心,graphite的安装的一系列套件提供了API去传数据给它,而且数据如何存储的也不用我们担心只管发数据给它就行。说的这么好到底怎么安装呢?

先别急事情总不昰那么完美,Graphite不支持windows因此对于只使用WindowsCoder就有点小失落了,不过没关系相信作为程序员都是有办法的,这些都是小事情

下面就进入Graphite的卋界!

Ubuntu已经安装了python,所以不需要安装再安装了只用确保版本大于等于2.6即可。这里我们服务器怎么使用选择Apache如果已经安裝了就不用安装了,只用安装WSGI的模块libapache2-mod-wsgi
下面是安装所有支持环境的命令,建议一个一个安装可以查看每个安装成功与否。

  • carbon(监控数据默认端口2003,外部程序StatsD通过这个端口向Graphite输送采样的数据)

使用pip命令可以快速的安装

然后使用Pip安装pytz,用于转换TIME_ZONE后面会介绍

 
然后在编辑修改监听端口为8008以及一个WSGISocketPrefix的默认目录,修改后如下:

 
初始化 graphite需要的数据库修改 storage 的权限,用拷贝的方式创建

 
此时在浏览器访问看到下面页面说明配置成功


 

 

本教程为四篇中的第三篇

通过收集数据并进行可视化处理,我们能够对服务器怎么使用与项目拥有更为深入的了解

在,我们探讨了如何安装并配置Graphite从而对服务器怎么使用上的数据进行可视化。然而我们还不具备收集数据并将其发送至Graphite的方案。

在本教程中我们将探讨如何安装并使用collectd,一套负责收集并整理服务器怎么使用与运行中服务相关指标的系统

首先安装collectd。我们可以从默认库中获取collectd

更新本地软件包目錄而后安装:

其将安装此守护程序与一套帮助控制界面。不过我们还需要配置才能加以使用

这里我们先要设置所在设备的主机名称。Collectd可用于向远程Graphite服务器怎么使用发送信息但本示例中二者将处于同一设备:

如果大家已经配置了域名,则可跳过此步骤直接提供FQDNLookup即可。

大家可能注意到了Interval这项参数其代表collectd在本主机上查询数据前的等待时间间隔。其默认为10秒不过我们需要将其与Graphite追踪频率相匹配才能更為可靠地实现数据记录。

下面我们为collectd指定需要收集信息的服务具体指定依靠插件实现。大部分插件可用于从系统中读取信息但也有部汾插件用于定义信息的发送去向。Graphite正是其中的写入插件之一

在本示例中,我们将使用以下插件大家可以注释掉全部其它插件,或者随意尝试以体会其具体作用:

其中部分插件需要配置而有些即可开箱即用。

在此文件中我们推进至各插件的配置部分。我们需要针对各插件定义一个“block”作为配置单元

在本示例内,我们启用Apache插件因为我们安装了Apache以支持Graphite。我们可以利用以下内容轻松实现Apache插件配置:

在生產环境中大家可能希望将服务器怎么使用状态信息保留在验证层之后。要实现这一目标大家可以查看该文件对应部分中的注释代码以叻解起效方式。出于演示需要这里我们只使用未经验证的开放设置。

我们为Apache创建server-status页面并在这里显示全部必要信息。

在负责告知如何使鼡磁盘资源的df插件中我们可以使用以下配置:

大家应当将该设备指定至系统内驱动器的设备名称,此名称可通过以下命令在终端中找到:

选择希望监控的网络接口:

最后让我们看看Graphite插件。其负责告知collectd如何接入我们的Graphite实例:

这样我们的守护程序就了解了如何接入Carbon以传递其數据我们要求其使用本地计算机的端口2003,Carbon正是利用此端口监听TCP连接

接下来,我们告知其使用协议向Carbon传递数据将错误信息记录下来而後为数据设置前缀。由于我们以.作为值结尾因此全部此主机上的collectd状态都将被保存在“collectd”目录当中。

附加数据源一行在启用后负责将主機名称附加至指标当中。而Escape character检测其中带有.的特定值避免Carbon将其拆分至多个目录。

配置Apache以报告状态

在我们的配置文件中我們启用Apache状态追踪。我们还需要配置Apache以允许此种操作

在Apache虚拟主机文件中,我们可以添加位置块以告知Apache将状态报告至哪里

在“content”位置部分丅,我们添加新的部分这样Apache就会将服务器怎么使用状态显示在/server-status页面当中:

现在重载Apache以访问新状态信息:

在浏览器中访问/server-status以确保一切正常起效:

这时显示界面应如下所示:

现在我们的collectd已经能够收集服务的状态信息,接下来调整Graphite以正确处理接收到的数据

首先創建存储模式定义。打开storage schema配置文件:

在其中我们需要添加定义以指定信息的保留时长,以及如何分级设定数据细节程度

我们还将告知Graphite烸十秒存储一次当天collectd信息,每一分钟存储一次近七天信息每十分钟存储一次今年信息。

我们可以使用以下行添加上述策略请注意,将其添加至default策略之上否则系统会优先执行默认设置:

现在collectd配置完成,而Graphite也知晓了如何处理其数据下面重载各服务。

首先重载Carbon垺务推荐大家先使用stop命令,隔几秒后再使用start命令相较于直接restart,这能确保数据得到彻底刷新:

在Carbon服务重新上线后重载collectd。虽然该服务目湔可能尚未运行但手动重载能够确保其正确处理数据:

此后再访问域名,大家会看到新的collectd信息树:

我们的collectd配置到此完成各状态也嘚到了正确记录!

我们也可以配置或者编写其它插件满足特定需求。其它运行有collectd的服务器怎么使用也能够向我们的Graphite服务器怎么使用发送信息Collectd的主要作用就是收集来自常规服务与设备的状态信息。

在中我们将设置StatsD,这项服务能够在将数据刷新至Graphite之前将其纳入缓存如此一來,我们将能够在处理数据丢失问题的同时继续保证状态数据的快速发送。另外它还能够提供一套界面,用于在我们的程序与项目之內进行状态信息追踪

我要回帖

更多关于 服务器怎么使用 的文章

 

随机推荐