The Mirages

樱桃沟夹事

nginx也算是可以根据来源IP来进行负载均衡了。
nginx默认安装就是支持geo模块的。
安装完成后编辑nginx.conf这个主配置文件如下:


 user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; pid logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; geo $cncip { default 1; #未定义IP的默认为1 include cnc.conf; #包含进cnc.conf文件 } server { listen 80; server_name www3.zauc.com; location / { if ($cncip) { rewrite ^ http://www.baidu.com; #未定义在cnc.conf文件中的IP重定向到www,baidu.com } root /home/zauc/web; index index.wml index.html; } } } 

然后创建cnc.conf文件如下
#192.168.30.0/24 0;
192.168.21.0/24 0;

nginx 的wiki对于这个模块的说明在http://wiki.codemongers.com/NginxHttpGeoModule有粗略的说明。我们可以发现在nginx.conf主控制文件内也可以进行分类。

首先是在一开始定义好


 geo $country { default no; include conf/geo.conf; 127.0.0.0/24 us; 127.0.0.1/32 ru; 10.1.0.0/16 ru; 192.168.1.0/24 uk; } 
阅读全文 »

这个是apache2.2以后增加的新的特性。

首先我们这边有2个域名。一个是www.timo.com还有一个是mail.timo.com这两个域名。同时www.zauc.com内网有2台机器 (192.168.0.10和192.168.0.11),当然也可以是外网.mail.zauc.com这个域名的内网IP为 (192.168.0.20)

要使用proxy和blance一定要在编译的时候加入proxy和blance.


 ./configure --prefix=/usr/local/apache2 --enable-mods-shared=all --enable-modules=all --enable-proxy --enable-proxy-connect --enable-proxy-ftp --enable-proxy-http --enable-proxy-ajp --enable-proxy-balancer --enable-vhost-alias make make install

安装完成后在extra/httpd-vhosts.conf中进行如下配置。


 ServerAdmin [email protected] ServerName www.timo.com ProxyPass / balancer://www.timo.com/ ErrorLog "logs/www.timo.com-error_log" CustomLog "logs/www.timo.com-access_log" common
阅读全文 »

首先是下载awstats,这个现在是有中文网站了
解压后后放到/usr/local下
然后运行tools/awstats_configure.pl
按照提示进行配置,主要是网站的名字配置

然后是是nginx进行配置,如果是APACHE或者是IIS就不用这样麻烦了。
首先是配置nginx的日志格式

1
2
3
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" $http_x_forwarded_for';

这个要注意其中的标点和空格。

在nginx上跑awstats需要支持fastcgi和perl才可以
fastcgi这个安装方法很多,一般是编译php5的时候直接放进去就可以了。当然我们现在为了方便就直接使用nginx-fcgi脚本http://www.nginx.eu/nginx-fcgi.html

使用脚本前需要安装下列perl模块

阅读全文 »

cacti本身自带了很多监控插件,如cpu,系统负载,磁盘等等。但是对于一些服务我们就必须另外找插件了。
现在我这边有用到的有nginx, apache, mysql, memcached, iis这几种

先说nginx插件。
http://forums.cacti.net/about26458.html
首先要在被监控服务器的nginx.conf文件中加上如下内容

location /nginx_status { 
  stub_status on;
  # disable access_log if requared 
  access_log off; 
  #allow XX.YY.AA.ZZ;
  #allow YY.ZZ.JJ.CC;
  #deny all;
  }

最后再重启下nginx就可以了。上面内容可以根据自己需求进行更改的。

在监控服务器上

 cp get_nginx_clients_status.pl /scripts/
 cp get_nginx_socket_status.pl /scripts/
 chmod 0755 /scripts/get_nginx_socket_status.pl
 chmod 0755 /scripts/get_nginx_clients_status.pl
阅读全文 »

vsftpd虚拟用户安装手册 目的:所有帐户存在一个文件内,而不是系统内。每个虚拟帐户都可以拥有自己独立的目录 安装过程不说了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
#cat vsftpd.conf

# Example config file /etc/vsftpd.conf
#
# The default compiled in settings are fairly paranoid. This sample file
# loosens things up a bit, to make the ftp daemon more usable.
# Please see vsftpd.conf.5 for all compiled in defaults.
#
# READ THIS: This example file is NOT an exhaustive list of vsftpd options.
# Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's
# capabilities.
#
listen=YES
# Allow anonymous FTP? (Beware - allowed by default if you comment this out).
anonymous_enable=NO
#
# Uncomment this to allow local users to log in.
local_enable=YES
use_localtime=YES
#
# Uncomment this to enable any form of FTP write command.
write_enable=YES
#
# Default umask for local users is 077. You may wish to change this to 022,
# if your users expect that (022 is used by most other ftpd's)
local_umask=022
#
# Uncomment this to allow the anonymous FTP user to upload files. This only
# has an effect if the above global write enable is activated. Also, you will
# obviously need to create a directory writable by the FTP user.
anon_upload_enable=YES
#
# Uncomment this if you want the anonymous FTP user to be able to create
# new directories.
anon_mkdir_write_enable=YES
#
# Activate directory messages - messages given to remote users when they
# go into a certain directory.
dirmessage_enable=YES
#
# Activate logging of uploads/downloads.
xferlog_enable=YES
#
# Make sure PORT transfer connections originate from port 20 (ftp-data).
connect_from_port_20=YES
#
# If you want, you can arrange for uploaded anonymous files to be owned by
# a different user. Note! Using "root" for uploaded files is not
# recommended!
#chown_uploads=YES
#chown_username=www
#
# You may override where the log file goes if you like. The default is shown
# below.
xferlog_file=/var/log/vsftpd.log
#
# If you want, you can have your log file in standard ftpd xferlog format
#xferlog_std_format=YES
#
# You may change the default value for timing out an idle session.
idle_session_timeout=600
#
# You may change the default value for timing out a data connection.
data_connection_timeout=120
#
# It is recommended that you define on your system a unique user which the
# ftp server can use as a totally isolated and unprivileged user.
#nopriv_user=ftpsecure
#
# Enable this and the server will recognise asynchronous ABOR requests. Not
# recommended for security (the code is non-trivial). Not enabling it,
# however, may confuse older FTP clients.
#async_abor_enable=YES
#
# By default the server will pretend to allow ASCII mode but in fact ignore
# the request. Turn on the below options to have the server actually do ASCII
# mangling on files when in ASCII mode.
# Beware that on some FTP servers, ASCII support allows a denial of service
# attack (DoS) via the command "SIZE /big/file" in ASCII mode. vsftpd
# predicted this attack and has always been safe, reporting the size of the
# raw file.
# ASCII mangling is a horrible feature of the protocol.
#ascii_upload_enable=YES
#ascii_download_enable=YES
#
# You may fully customise the login banner string:
#ftpd_banner=Welcome to blah FTP service.
#
# You may specify a file of disallowed anonymous e-mail addresses. Apparently
# useful for combatting certain DoS attacks.
#deny_email_enable=YES
# (default follows)
#banned_email_file=/etc/vsftpd.banned_emails
#
# You may specify an explicit list of local users to chroot() to their home
# directory. If chroot_local_user is YES, then this list becomes a list of
# users to NOT chroot().
#chroot_list_enable=YES
# (default follows)
#chroot_list_file=/etc/vsftpd.chroot_list
#
# You may activate the "-R" option to the builtin ls. This is disabled by
# default to avoid remote users being able to cause excessive I/O on large
# sites. However, some broken FTP clients such as "ncftp" and "mirror" assume
# the presence of the "-R" option, so there is a strong case for enabling it.
#ls_recurse_enable=YES
chroot_local_user=YES
#secure_chroot_dir=/home/pplive/res
guest_enable=YES
guest_username=virtual_user
user_config_dir=/etc/vsftpd_user_conf
user_sub_token=$USER

还需要安装的软件是db4-util,根据各自系统不同来进行安装

首先是建立一个ftp总的帐户

useradd virtual_user -d /home/ftp/ -s /sbin/nologin

vi /etc/vsftpd/vsftpd_login
tom       //用户名
123       //密码

#建立用户数据库
db_load -T -t hash -f vsftpd_login /etc/vsftpd/vsftpd_login.db

#改变文件属性
chmod 600 /etc/vsftp/vsftpd_login.db

建立PAM文件,告诉系统你要使用自己的数据库了)
看看另一个文件vsftpd.pam,它有两行内容:

阅读全文 »

http://www.hiadmin.com/cacti%E8%BF%9B%E9%98%B6%E5%BA%94%E7%94%A8%E4%B8%80%EF%BC%9A%E6%B1%87%E6%80%BB%E6%B5%81%E9%87%8F%E5%9B%BE-%E5%B0%86%E6%95%B0%E6%8D%AE%E5%90%88%E5%B9%B6%E5%90%8E%E4%BD%9C%E5%9B%BE/ 上面是我参考的原文。 但是我需要的是数据的合并,并不是像原文中那种独立展示的。 在add items中原文如下: data source:数据来源就是你要汇总的流量之一; color:选择颜色这里可以任意选择; Graph Item Type:图形(我选择的是AREA区域类型,要累加的流量图请选择stack) CDEF Function:这里一定要选择“Turn bytes into Bits” 在第二项中Graph Item Type中,原文中说如果要累加的话要使用stack,但是在实践过程中我发现,在第一个item必须使用AREA,而不是stack,第二个开始启用stack类型。

mysql的master和slave是一般系统上经常使用到的一个。 但是这个模式有个很大的问题,slave机器一直都是通过单线程模式来运行,这个其实就已经算是瓶颈了。 第二,涉及到网络环境,如果交换机网络广播较多,或者跨交换机,那同步的速度也还是非常慢的。 第三,slave机器CPU和内存起码得跟master一样才行。 第四:sql语句优化,以及数据库的优化。经常查看下slow log会是很有帮助的。其实这个是最重要的对于数据库层面的同步。如果在master 经常通过show full processlist会出现语句,那只能说明SQL写的太烂了。 第五:数据库引擎的选择,这个要根据业务类型来选择。 第六:是选择state replication还是row replication还是混合也是根据自己的业务类型来选择,可以通过监控线程中是select还是update以及insert多来考虑。 http://forums.mysql.com/read.php?26,225394,225394 这里介绍了一种新的replication方式。但是国内还甚少看到有人用这个,所以出了问题一般也就在mail list中找答案了。 同时mysql已经准备发布replication的第二版本,已经能够支持多线程了。试目以待

关于闹运会 4年一届的闹运会终于快要开了,终于轮到北京了。 和很多人一样当年申办成功的时候是非常的兴奋,但是随着时间的临近这种感觉是越来越没有了。 这个闹运会给全国人民和北京人民闹的不可开交。 蒙特利尔奥运会是个很好的教材 ,这个城市76年举办的奥运会,终于在2006年12月把因为举办奥运会的贷款还清。 当然我们国家根本不需要考虑这个,我们的政府是十分有钱的,反正怎么花都不需要还的,到需要换的时候直接跟老毛一样再次打劫就行。 但 是其它的呢? 北京因为举办奥运会而变的天更蓝了吗?水更清了吗?交通不拥挤了吗?看看每年的沙尘暴如期而至,永定河依然是那么的绿,果然是绿色奥运啊。交通呢?有多少 线路的空调公交车去支援奥运了,老百姓只好在大热天里坐没有空调的了。有多少奥迪公车去支援奥运了,于是我们的官老爷只好换车了,当然成本还是让他人承 担。 当然好处还是很多的,比如让好多志愿者可以到处显摆了,你坐公交地铁拿出你的证可以免费,那其它地方难道也有好处,这下北京公交系统可完了,这下少赚了好多了,当然最后有国家给你补贴呢。 好了不说表面的了,也不抨击什么了。 从以上各个方面我们可以看到社会主义的好处。那就是可以集中全国的力量去干一件事情,而且大多可以完成的不错。比如我们的两弹一星什么。当然这个也是专制社会的特征,国家让你干啥你就干啥,这种社会如日本通过军事等手段推行维新,快速现代化等等。 但是问题也是明显存在的,这种完成任务的方法和手段并不能让人内心去真正接受。日本虽然很现代,但是他们根本没有学到西方的民主风气,他们的思想是依然的 如此传统。我们虽然有原子弹,虽然进太空,虽然奥运金牌可以超过俄罗斯,德国,英国,法国,但是我们国民的体质并不会因为这个而提高。我们GDP虽然也很 高,但是国民还是很穷,我们虽然每年GDP增长的很快,但是国民工资只有倒退。大学毕业生的工资一年一年下降,还好意思说普及大学教育。

是06年不知道哪里看到的,我本人是不会写出这样的文字的。 刚刚走上社会的年轻人,充满了蓄势待发的豪情、青春的朝气、前卫的思想,梦想着丰富的待遇和轰轰烈烈的事业。可是,社会毕竟是一所包罗万象、喧嚣复杂的大学校,这里没有寒暑假,拒绝虚假和肤浅,更拒绝空想和庸碌,难以预告何时开课何时放学。 如何在涉世之初少走弯路,有一个好的开端,开始一番成功的事业?以下是一些先行者积累的10条有益的涉世忠告。好好地遵循、把握这些忠告和建议吧,比起所学的课堂课程来,它毫不逊色! 1. 买个闹钟,以便按时叫醒你。贪睡和不守时,都将成为你工作和事业上的绊脚石,任何时候都一样。不仅要学会准时,更要学会提前。就如你坐车去某地,沿途的风 景很美,你忍不住下车看一看,后来虽然你还是赶到了某地,却不是准时到达。”闹钟”只是一种简单的标志和提示,真正灵活、实用的时间,掌握在每个人的心 中。 2. 如果你不喜欢现在的工作,要么辞职不干,要么就闭嘴不言。初出茅庐,往往眼高手低,心高气傲,大事做不了,小事不愿做。不要养成挑三拣四的习惯。不要雨天烦打伞,不带伞又怕淋雨,处处表现出不满的情绪。记住,不做则已,要做就要做好。 3. 每个人都有孤独的时候。要学会忍受孤独,这样才会成熟起来。年轻人嘻嘻哈哈、打打闹闹惯了,到了一个陌生的环境,面对形形色色的人和事,一下子不知所措起 来,有时连一个可以倾心说话的地方也没有。这时,千万别浮躁,学会静心,学会忍受孤独。在孤独中思考,在思考中成熟,在成熟中升华。不要因为寂寞而乱了方 寸,而去做无聊无益的事情,白白浪费了宝贵的时间。 4. 走运时要做好倒霉的准备。有一天,一只狐狸走到一个葡萄园外,看见里面水灵灵的葡萄垂涎欲滴。可是外面有栅栏挡着,无法进去。于是它一狠心绝食三日,减肥 之后,终于钻进葡萄园内饱餐一顿。当它心满意足地想离开葡萄园时,发觉自己吃得太饱,怎么也钻不出栅栏了。相信任何人都不愿做这样的狐狸。退路同样重要。 饱带干粮,晴带雨伞,点滴积累,水到渠成。有的东西今天似乎一文不值,但有朝一日也许就会身价百倍。 5. 不要像玻璃那样脆弱。有的人眼睛总盯着自己,所以长不高看不远;总是喜欢怨天尤人,也使别人无比厌烦。没有苦中苦,哪来甜中甜?不要像玻璃那样脆弱,而应像水晶一样透明,太阳一样辉煌,腊梅一样坚强。既然睁开眼睛享受风的清凉,就不要埋怨风中细小的沙粒。 6. 管住自己的嘴巴。不要谈论自己,更不要议论别人。谈论自己往往会自大虚伪,在名不副实中失去自己。议论别人往往陷入鸡毛蒜皮的是非口舌中纠缠不清。每天下 班后和你的那些同事朋友喝酒聊天可不是件好事,因为,这中间往往会把议论同事、朋友当做话题。背后议论人总是不好的,尤其是议论别人的短处,这些会降低你 的人格。 7. 机会从不会”失掉”,你失掉了,自有别人会得到。不要凡事在天,守株待兔,更不要寄希望于”机会”。机会只不过是相对于充分准备而又善于创造机会的人而言 的。也许,你正为失去一个机会而懊悔、埋怨的时候,机会正被你对面那个同样的”倒霉鬼”给抓住了。没有机会,就要创造机会,有了机会,就要巧妙地抓住。 8. 若电话老是不响,你该打出去。很多时候,电话会给你带来意想不到的收获,它不是花瓶,仅仅成为一种摆设。交了新朋友,别忘了老朋友,朋友多了路好走。交际的一大诀窍就是主动。好的人缘好的口碑,往往助你的事业更上一个台阶。 9. 千万不要因为自己已经到了结婚年龄而草率结婚。想结婚,就要找一个能和你心心相印、相辅相携的伴侣。不要因为放纵和游戏而恋爱,不要因为恋爱而影响工作和事业,更不要因一桩草率而失败的婚姻而使人生受阻。感情用事往往会因小失大。 10. 写出你一生要做的事情,把单子放在皮夹里,经常拿出来看。人生要有目标,要有计划,要有提醒,要有紧迫感。一个又一个小目标串起来,就成了你一生的大目标。生活富足了,环境改善了,不要忘了皮夹里那张看似薄薄的单子。

出处:Linux系统管理手册

笔记:Zauc

syslog是xnix最为重要和最有特点的一个工具。它几乎可以把你想记录的日志都记录下来。系统默认的记录位置一般为/var/log/下。

但是每个发行版本默认所记录的内容各不相同,但是大体以下几个日志是肯定有的

文件

程序

阅读全文 »
0%