海运的博客

PHP动态编译添加snmp模块

发布时间:May 19, 2012 // 分类:PHP // No Comments

因程序原因需临时添加snmp支持,不想重新编译php,可动态编译添加snmp模块。
进入PHP源码扩展目录:

cd php-5.2.17/ext/snmp
/usr/local/php/bin/phpize 
./configure --with-php-config=/usr/local/php/bin/php-config
make
make install

加载模块:

cat >> /usr/local/php/etc/php.ini <<EOF
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/"
extension=snmp.so
EOF

重新加载配置文件,查看snmp.so是否加载。

php -m

Apache配置301重定向

发布时间:May 19, 2012 // 分类:Apache // No Comments

网站目录或网页出现变动要使用301重定向转移权重,有时域名也要将www.haiyun.me重定向到www.haiyun.me,本文记录下Apaceh下301重定向方法,Nginx下301重定向请参考:https://www.haiyun.me/archives/nginx-301.html
1.使用RedirectMatch和Redirect重定向,这两个命令使用方法相似,RedirectMatch支持正则表达式,可以批量重定向。
使用语法:

Redirect [status] URL URL
RedirectMatch [status] regex URL

[status]可用参数:

permanent 返回永久性重定向状态码(301),表示此资源的链接变动是永久性的。
temp 返回临时性重定向状态码(302),默认值。
seeother 返回一状态码(303),表示此资源已经被替代。
gone 返回状态码(410),表示此资源已经被永久性地删除了。如果指定了这个状态码,则URL参数将被忽略。

应用示例:

Redirect permanent /index.html https://www.haiyun.me/index.php
RedirectMatch 301 (.*).gif$ https://www.haiyun.me/$1.jpg

2.使用URL重写模块mod_rewrite重定向

RewriteEngine on
rewritecond %{http_host} ^www.haiyun.me [nc] #定义主机名变量,匹配执行下条规则。
rewriterule ^/(.*)$ https://www.haiyun.me/$1 [r=301,nc] #301重定向到www.haiyun.me,nc不区分大小写。

SNMP管理工具之snmpnetstat查看服务器网络状态

发布时间:May 19, 2012 // 分类:系统监控 // No Comments

snmpnetstat类似于netstat命令,用于通过snmp协议查看远程服务器网络状态。
使用语法:

snmpnetstat [common options] [-Ca] [-Cn] [-Cs] [-Cp protocol] AGENT

常用参数:

-Ca 输出所有连接
-Ci 输出所有网络接口统计数据
-CI 输出指定网络接口统计数据
-Cn IP地址方式输出
-Cp 输出TCP协议
-Cs 输出各种协议统计数据
-Cr 输出路由表

应用示例:
查看远程服务器所有TCP连接:

snmpnetstat -v 2c -c public -Canp tcp  www.haiyun.me

输出结果:

Active Internet (tcp) Connections (including servers)
Proto Local Address          Remote Address         (state)
tcp   *.22                   *.*                   LISTEN
tcp   *.80                   *.*                   LISTEN
tcp   *.111                  *.*                   LISTEN
tcp   *.443                  *.*                   LISTEN
tcp   *.3306                 *.*                   LISTEN
tcp   127.0.0.1.25           *.*                   LISTEN
tcp   127.0.0.1.199          *.*                   LISTEN
tcp   192.168.1.2.22         192.168.1.16.3817     ESTABLISHED
tcp   192.168.1.2.22         192.168.1.16.23730    ESTABLISHED

Cacti监控TCP连接状态

发布时间:May 19, 2012 // 分类:Cacti // No Comments

Cacti服务端新建TCP状态获取脚本:

wget https://www.haiyun.me/download/tcp-connections.zip
unzip tcp-connections.zip

修改get_tcp_connections脚本目录:

CACTIDIR=/cactipath/scripts

修改cacti_graph_template_tcp_connections.xml模板内脚本路径:

/bin/bash /var/www/htdocs/cacti/scripts/get_tcp_connections

然后在Cacti界面导入cacti_graph_template_tcp_connections.xml模板。
TCP连接状态监控效果如下:
cacti监控tcp连接.png

用Cacti监控Nginx状态

发布时间:May 18, 2012 // 分类:Cacti // No Comments

此方案需先开启Nginx状态监控Cacti服务器安装数据获取脚本:

wget https://www.haiyun.me/download/cacti-nginx.tar.gz
tar zxvf cacti-nginx.tar.gz
cd cacti-nginx
cp get_nginx_clients_status.pl cactipath/scripts/
cp get_nginx_socket_status.pl cactipath/scripts/
chmod 0755 cactipath/scripts/get_nginx_socket_status.pl
chmod 0755 cactipath/scripts/get_nginx_clients_status.pl

测试数据获取:

perl get_nginx_clients_status.pl https://www.haiyun.me/nginx_status
nginx_active:2 nginx_reading:0 nginx_writing:1 nginx_waiting:1 

如出现no (LWP::UserAgent not found)需安装perl组件:

yum -y install perl-libwww-perl

Cacti管理界面导入xml模板,相关主机添加Nginx Clients Stat、Nginx Sockets Stat模板。
Nginx监控效果图如下:
cacti监控nginx状态.png

分类
最新文章
最近回复
  • opnfense: 谢谢博主!!!解决问题了!!!我之前一直以为内置的odhcp6就是唯一管理ipv6的方式
  • liyk: 这个方法获取的IPv6大概20分钟之后就会失效,默认路由先消失,然后Global IPV6再消失
  • 海运: 不好意思,没有。
  • zongboa: 您好,請問一下有immortalwrt設定guest Wi-Fi的GUI教學嗎?感謝您。
  • 海运: 恩山有很多。
  • swsend: 大佬可以分享一下固件吗,谢谢。
  • Jimmy: 方法一 nghtp3步骤需要改成如下才能编译成功: git clone https://git...
  • 海运: 地址格式和udpxy一样,udpxy和msd_lite能用这个就能用。
  • 1: 怎么用 编译后的程序在家里路由器内任意一台设备上运行就可以吗?比如笔记本电脑 m参数是笔记本的...
  • 孤狼: ups_status_set: seems that UPS [BK650M2-CH] is ...
归档