Posts for: #AI

libfetion短信通知与nagios整合

由于安装了nagios,就比较希望服务器出现状况的时候,我能够及时收到报警信息——飞信这时就是最好的选择了。

1、激活手机上的飞信

移动飞信下载地址:http://www.fetion.com.cn/,激活后,记住密码。

2、下载编译sendsms小程序

参见BLOG:http://blog.solrex.cn/articles/diy-free-weather-forecast-sms.html

sendsms实际上用了libfetion的库:http://libfetion.cn/Linux_demoapp_download.html

感谢这两位开发者。

在编译sendsms的时候遇到了问题,提示“__stack_chk_fail_local”,在libfetion论坛上也有人问起:

http://www.libfetion.cn/bbs/viewthread.php?tid=120&extra=page%3D1

解决方法很简单,将Makefile里CPP = g++后面加上-fstack-protector即可。

使用时发现,如果用手机号码,对方可能会收不到信息(sendsms作者代码中说可能是libfetion的bug),改用fetion号码就好了。

顺便提一句,本来我是想用“飞信机器人”的:http://www.it-adv.net/。

可是在debian上一运行就出现:/lib/tls/i686/cmov/libc.so.6: version `GLIBC_2.4’ not found,放弃了。

3、配置nagios调用

编译好的sendsms我放到了/usr/local/fetion下面,同时在该目录下使用一个脚本sms.sh:

#!/bin/sh

/usr/local/fetion/sendsms -f 442103729 -p mypassword “$1”

在/usr/local/nagios/etc/objects/commands.cfg中新增:

#host notify by sms

define command {

command_name    notify-host-by-sms

command_line    /usr/local/fetion/sms.sh “Host $HOSTSTATE$ alert for $HOSTNAME$! on ‘$DATETIME$’">/dev/null 2>&1

}

#service notify by sms

define command {

command_name    notify-service-by-sms

command_line    /usr/local/fetion/sms.sh “’$HOSTADDRESS$’ $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$">/dev/null 2>&1

}

在/usr/local/nagios/etc/objects/contacts.cfg中将service_notification_commands和host_notification_commands都新增sms提醒项目:

service_notification_commands   notify-service-by-email,notify-service-by-sms

host_notification_commands      notify-host-by-email,notify-host-by-sms

测试:/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

[阅读全文]

nagios监控系统安装(1)

nagios http://www.nagios.org

完整的nagios中包含几个组成部分:

1、nagios软件本身,必须安装;

2、plugins,必须安装,是nagios用来监测远程主机运行状况的一系列小程序,安装后默认在/usr/local/nagios/libexec下;

3、npre,非必需,如果希望对机器的磁盘、进程、负载等状况进行监测并报警,那么就需要在该机器上安装;

4、ndoutils,非必需,将nagios的数据保存到mysql数据库中。

一篇不错的文章在:http://www.linuxtone.org/viewthread.php?tid=514,我学习了他的方法。

Nagios官网文档中有在Ubuntu下的安装指南,Debian基本相同:http://nagios.sourceforge.net/docs/3_0/quickstart-ubuntu.html。

我准备采用的应用程序路径都是默认的,如:

/usr/local/nginx

/usr/local/nagios

1、安装前的一些准备

安装部分软件:apt-get install build-essential libgd2-xpm-dev libssl-dev openssl libkrb5-dev

安装好web服务器,我用的是nginx,可以采用apache会更方便。

2、准备用户、用户组

/usr/sbin/useradd -m nagios

/usr/sbin/groupadd nagcmd

/usr/sbin/usermod -a -G nagcmd nagios

/usr/sbin/usermod -a -G nagcmd www-data

3、安装nagios

到http://www.nagios.org/download/download.php下载最新的Nagios和Nagios plugins。

解压后,进入nagios目录:

./configure –with-command-group=nagcmd

make all

make install

make install-init

make install-config

make install-commandmode

进入nagios plugins目录:

./configure –with-nagios-user=nagios –with-nagios-group=nagios

make

make install

4、配置nginx支持perl fcgi

nginx要支持perl fcgi,可以采用脚本perl-fcgi.pl如下:

#!/usr/bin/perl

use FCGI;

#perl -MCPAN -e ‘install FCGI’

[阅读全文]

nagios监控系统安装(2)

6、设置监控报警

需要调整的文件包括:

/usr/local/nagios/etc/objects/contacts.cfg

/usr/local/nagios/etc/objects/commands.cfg

a./usr/local/nagios/etc/objects/contacts.cfg

这里面是联系人、分组的信息,简单配置contact项目如下:

define contact{

        contact_name                    nagiosadmin

        use                             generic-contact

        service_notification_period     24x7

        host_notification_period        24x7

        service_notification_options    w,u,c,r

        host_notification_options       d,u,r

        alias                           Nagios Admin

        service_notification_commands   notify-service-by-email,notify-service-by-sms

        host_notification_commands      notify-host-by-email,notify-host-by-sms

        email                           [email protected]       ; «***** CHANGE THIS TO YOUR EMAIL ADDRESS ******

        }

b./usr/local/nagios/etc/objects/commands.cfg

这里配置了各种plugins的用法、命令等,可以好好看看这份文件,在其中做的事情包括了,定义发sms和通过邮件发报警信息,其中sms信息的细节建议参见《libfetion短信通知与nagios整合》:

#host notify by sms

define command {

command_name    notify-host-by-sms

command_line    /usr/local/fetion/sms.sh “Host $HOSTSTATE$ alert for $HOSTNAME$! on ‘$DATETIME$’">/dev/null 2>&1

}

#service notify by sms

define command {

command_name    notify-service-by-sms

command_line    /usr/local/fetion/sms.sh “$HOSTADDRESS$ $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$">/dev/null 2>&1

[阅读全文]

cacti监控系统安装

现在托管的服务器数量在增加,前段时间,已经不断出现各种由于系统管理水平不够,导致的服务器当机、系统不稳定等事件。

因此最近决定安装cacti和nagios这两套开源服务器监控的软件系统,对我们的服务器系统进行监控和报警。

cacti http://www.cacti.net/

这里是精简的安装指南:

http://www.cacti.net/downloads/docs/html/unix_configure_cacti.html

我在debian的安装过程如下:

1、安装辅助软件

apt-get install rrdtool snmp ttf-dejavu libmysql++-dev

2、配置web服务器和安装php

可以参照文章:http://hi.baidu.com/wulujia/blog/item/c6aba7efbb95ef11fcfa3c67.html

3、导入mysql数据库

mysqladmin -u root -p create cacti

mysql -uroot -p cacti <cacti.sql

mysql -uroot -p

mysql>grant all privileges on cacti.* to m1@localhost identified by ‘password’;

mysql> flush privileges;

4、编辑include/config.php文件,填入相关数据库信息,类似如下:

$database_type = “mysql”;

$database_default = “cacti”;

$database_hostname = “localhost”;

$database_username = “cactiuser”;

$database_password = “cacti”;

5、设置目录权限

chmod 777 rra/ log/

6、在/etc/crontab下新建一行,内容如下:

*/5 *   * * *   root    /usr/local/php-fcgi/bin/php /home/web/cacti/poller.php > /dev/null 2>&1

[阅读全文]

鲍尔默邮件详解微软云计算服务平台

最近没有想法,只转文章吧,转载些我觉得重要的文章。

在正在举办的微软“专业开发人员大会”上,微软CEO史蒂夫·鲍尔默(Steve Ballmer)周二写邮件给用户,阐述了微软的云计算平台Azure以及微软的数字化战略,Word、Excel、PowerPoint等软件基于云计算的网络版本等。**

**

**

**

  以下是鲍尔默的邮件正文:

  邮件发送人:史蒂夫·鲍尔默(Steve Ballmer)

**  发送时间:2008年10月28日 下午2:38**

**  主题:下一个技术革命平台**

  在过去十年间,信息技术给全世界带来了翻天覆地的变化。这种变化改变了人们体验世界的方式,并让我们可以与他人分享。这种变化也清除了技术之间的障碍,使我们可以跨越空间与别人交流并获取信息。这种变化也缩短了创新从灵感转变为现实的过程。

  带来这些改变的许多技术已经在使用,也有一些受到了极大的关注,“云计算”就是其中一个例子,这种计算方式可以将各种不同的存储以及计算能力互相连接到大型的数据中心,社交网站则是改变了人们与亲朋好友之间交往方式的另外一个例证。

  更有许多产品和技术,对于我们而言已经司空见惯:手机的数量几乎是数码相机的两倍、随处可见的大屏幕纯平显示器以及高清电视、免提汽车娱乐系统以及导航系统等等,不胜枚举。

  目前缺乏的,是可以将这些产品进行无缝链接,使彼此可以突破设备差别和位置限制传递信息、交流以及计算的能力。今天,许多我们直觉上认为很简单 的事情,依然非常难以实现。例如,为什么我们不能在家中的电脑上很轻松地访问到在工作时创建的文件?为什么所有用户与我们共享的信息不能在一个单独的应用 程序中直接访问到?为什么日程表无法自动地将家庭与工作日程合并在一起?

  本周,在洛杉矶举办的“专业开发人员大会”(PDC)上,我们与软件开发人员分享了一系列新的平台技术,这些技术可以突破上述限制。如果你订阅 了微软高管定期发送给用户的邮件,我希望与你分享自己对这些技术可能带来的影响的看法。如果开发人员开始利用这些技术创建全新的体验,他们可以在电脑与手 机、媒体播放器、汽车以及我们从未想到过的地方进行连续的信息与交流。

  新的云计算平台

  在PDC上,我们宣布推出Windows Azure的早期预览版本。Windows Azure让开发人员不仅可以通过“云”和企业数据中心创建应用程序,更可以跨域PC、网络以及手机开发应用。我们也首次分享了Windows 7和Windows Server 2008 R2的预测试版代码,Windows 7是下一代Windows桌面操作系统,将充分利用软件和硬件的发展,帮助清除信息、用户以及设备之间的障碍。

  我们也发布了Office网络版应用程序的预览版,这将是Word、Excel、PowerPoint以及OneNote的重量级版本,这些程 序都将能在浏览器中使用。Office网络版应用程序将是下一个Office版本的组成部分,以后用户可以在桌面、手机以及浏览器中以同样熟悉的方式查 看、编辑、共享信息,并在不同的平台间进行文档的协同工作。

  Windows Azure是Azure服务平台(Azure Services Platform)的组成部分,该平台包括了微软数据中心网络中的一系列存储、计算和网络基础服务。借助Azure服务平台,开发人员可以创建在“云”中 运行的应用,并可将现在的应用加以扩展,使之可以利用以“云”为基础的性能优势。Azure服务平台为商业和个人应用程序提供了基础,可以为用户轻松而安 全地在“云”中存储和共享信息,并在任意位置的任意设备中进行访问实现了统一的方式。

  Windows Azure并不是企业在自己的服务器上运行的软件,该服务运行在微软不断扩大的数据中心网络中,是一个帮助企业对当前以及未来的真实商业环境做出反应的平 台。Windows Azure技术也有些已经转换为产品,例如Windows Server 2008和系统中心虚拟机管理员(System Center Virtual Machine Manager),都可以让企业及微软的合作伙伴创建自己的“云”架构。

  Windows Azure可以让企业对不同的情境做出反应,例如,借助网络向用户提供广泛的信息并互相沟通,与合作伙伴甚至竞争对手整合运营以满足用户需求,增加对新机 会做出快速反应的能力,让员工随时保持快速且高效的工作。这些情境不仅限于企业,也广泛存在于学校、政府、社团组织等多种机构中。

  传统的技术架构创建以及计算性能实现方法,很难根据情境发生的变化进行调整,或调整成本极其高昂。为了应对峰值时的需求,企业不得不购买足够多 的服务器并寻找放置空间、配备使之运行的电力,并安排足够的人力进行管理。另外,为了防止局部问题影响整个系统,还需要在不同的位置进行备份。企业还要解 决用户类型及各国税收政策不同的问题。

  为了满足跨国企业的需求,Azure服务平台从根本上提供了配置服务与性能的新方式,可以让企业根据自己的需求选择在“云”里需要用到的性能, 减少了企业为应对需求峰值进行基础建设时大量的一次性投资。该服务平台也可以让开发人员创建在“云”中运行的应用,为员工、合作伙伴以及不同量级的用户在 全世界各地,利用不同的设备共享信息与互相交流创造可能。

  “软件加服务”和选择的力量

  Azure服务平台反映了我们的一个信念:对于开发人员、企业以及用户而言,选择是非常重要的。同时,该平台也基于我们的另外一个信念,不管是 在现在还是将来,传递价值的关键在于将运行在PC、服务器以及各种设备上的软件的优势与运行在网络上的各种服务的优势加以整合,我们将之称为“软件加服务 ”。

  我们的“软件加服务”方式可以让人们充分地利用当今设备的各种优越性能。无可否认,挖掘借助浏览器访问网络并获取信息与服务的潜力有很多好处,但用户希望在电脑、手机以及媒体播放器中得到的交互体验,仍取决于运行在性能强大的处理器上的复杂软件。

  这种丰富的用户体验只有在以下情况下才会得以提高:多核处理器拓展了用户设备的计算性能,或者新的编程语言可以开发新一代应用程序,能让用户以语音、触摸以及手势等更为自然的方式与数字技术进行互动。

  “软件加服务”也意识到,对于大多数企业而言,构建IT基础架构的理想方式是,在企业内部运行及管理的应用程序和在“云”中运行与管理的应用程序之间,找到一个正确的平衡点。

  这种平衡更多地取决于企业自身。例如,一个金融服务公司可以选择在自己的数据中心中维护客户数据,以保护这些客户个人信息的安全,他们也可以将 提供电子邮件等服务的IT系统外包。这种平衡也可能随时间而发生改变。一个企业可能在今年多数时候运行自己的网络交易系统,但在购物旺季期间,将应对额外 需求的任务外包出去。通过“软件加服务”,企业可以在自己的服务器和“云”之间快速而且流畅地移动应用程序。

[阅读全文]