11月 232010
 

Version 1.0
Author: Falko Timme
Last edited: 02/07/2006

In this HowTo I will show how to install and configure DenyHosts. DenyHosts is a tool that observes login attempts to SSH, and if it finds failed login attempts again and again from the same IP address, DenyHosts blocks further login attempts from that IP address by putting it into /etc/hosts.deny. DenyHosts can be run by cron or as a daemon. In this tutorial I will run DenyHosts as a daemon.

From the DenyHosts web site:

“DenyHosts is a script intended to be run by Linux system administrators to help thwart ssh server attacks.

If you've ever looked at your ssh log (/var/log/secure on Redhat, /var/log/auth.log on Mandrake, etc…) you may be alarmed to see how many hackers attempted to gain access to your server. Hopefully, none of them were successful (but then again, how would you know?). Wouldn't it be better to automatically prevent that attacker from continuing to gain entry into your system?

DenyHosts attempts to address the above… “

This tutorial is based on a Debian Sarge system, however, it should apply to other distributions with almost no modifications.

I want to say first that this is not the only way of setting up such a system. There are many ways of achieving this goal but this is the way I take. I do not issue any guarantee that this will work for you! Continue reading »

10月 132010
 

原文名:What not to do in a server room 作者:Bill Detwiler

你的机房看上去可能很美观,网线和电源线整齐划一,也没有私拉乱接的现象,但不是所有的机房都是这个样子,有些机房不仅没有规划好,在实施时也是一团糟,当你走入这样的机房后就象是进入“地狱”一样,下面我就带你看看机房中最不该出现的混乱情况。

1、服务器堆叠

将服务器安装到轨道上有助于将来维修方便,但偏偏有人直接将服务器进行堆叠,难不成是缺买导轨的那点钱?想象一下当你想抽出最下面那台服务器为其增加内存时的情景,如果你脸不改色,我立即将键盘吃下。

图1服务器要安装到导轨上
Continue reading »

10月 132010
 

作者:Cara Garretson 原文题目:Stupid data center tricks  翻译:吕欣

在导致数据中心故障的所有罪魁祸首中,技术问题所占比例很小,而人为错误却占据了大约70%的份额。由于某员工无意中把两条网线连接到一台错误的网络集线器上,整个校园网络陷入瘫痪状态;一名员工在进入一数据中心时由于路径不熟竟掉入“陷阱”而受伤;在数据中心的温控器设置被人从华氏温度改为摄氏温度后,系统由于过热而宕机。类似情况举不胜举,大多数据中心灾难并非缘自技术问题或自然灾害,而是人为失。

根据数据中心性能研究机构纽约正常运行时间学会(UPTIMEINSTITUTE)所提供的数据,目前人为失误引发了大约70%的数据中心故障。该机构副总裁朱利安·库德里斯基(JulianKudritzki)表示,他们分析了4500起数据中心事故,其中包含400次完全宕机事件,最后得出如上结论。库德里斯基最近还发布了保持数据中心可持续性运营的一套指南。

库德里斯基称,该结论并不令人感到意外,“运营管理是你最大的弱点,但它也是避免宕机的最大机遇。好在你可以对数据中心人员进行重新教育。”

市场研究公司Pund-ITResearch分析师查尔斯·金(CharlesKing)表示,不管是因为大意,还是因为培训不够、最终用户干涉、资金紧张或简单的错误,人为失误是不可避免的。由于当今IT系统日益复杂,数据中心工作人员工作时间过长,一些本来可以避免的小故障却时有发生。而且随着企业越来越依赖于技术来达到自己的商业目标,这些错误已经变得更加危险,让企业付出的代价也越来越高。 Continue reading »

10月 132010
 

从传统来看,服务器根据划分标准的不同,可以分成很多种。比如根据所使用的处理器和体系架构不同,可分为x86服务器、GPU服务器、RISC小型机、大型主机等;根据性能档次的不同,可以分为入门级服务器、工作组级服务器、部门级服务器和企业级服务器;根据机箱外观的不同,可以分为塔式服务器、机架式服务器、刀片式服务器和机柜式服务器;根据操作系统不同,则可以分为Windows服务器、Linux服务器和UNIX服务器;此外,我们还可以根据应用领域、主要功能、CPU颗数等指标进行划分。

不过,随着时代的发展,服务器的划分与选型已经变得不象以前那么单纯了。一方面技术和应用在不断融合,比如今天的UNIX服务器上面跑的不只是 UNIX一种操作系统,还可以跑Linux,甚至是Windows;又比如今天的一台4U机架式服务器可能比42U机柜式服务器性能还要高。另一方面,许多新的技术和应用负载开始出现,如Web2.0、虚拟化、云计算等,对服务器也提出了许多新的不一样的要求。

这些因素使得今天的服务器选型,尤其是中高端产品的选型,变得比以往更加复杂了,许多用户面临这样或那样的困惑,如中高端IT系统究竟该怎样做技术选型?怎样衡量性价比的高低?怎样把握未来的技术走势?选择一家什么样的合作伙伴才能规避未来的风险?等等。

我们知道,今天的中高端服务器市场上有着众多的竞争者,主要包括IBM POWER、HP安腾、Oracle/Sun、富士通SPARC,另外以英特尔新一代至强7500为代表的x86服务器也开始试图进入其中。为此,笔者从应用特征分析、产品技术选型、性价比分析、生态系统比较等多个角度总结了一些经验和建议,希望对用户朋友们在选购这类产品(尤其是非x86架构服务器)时有所帮助。
Continue reading »

9月 172010
 

搞了两天,综合网上优秀BLOG并且联系实际整理了下 Apache Mysql 的优化,虽然不一定适合每一个人,但里面的一些参数自己可以自己琢磨测试.不过Apache感觉不怎么样,爷爷的 15分钟在线 2000多IP就卡得不得了,每天90多W PV 都卡,看了下163他们的网络架构,不管是前端还是源段服务器都全是NGINX,看样子以后还得继续努力学习了,

Apache优化

KeepAlive On

KeepAliveTimeout 10


    StartServers          5
    MinSpareServers       10
    MaxSpareServers      20
    ServerLimit          1000
    MaxClients          1000
    MaxRequestsPerChild   10000

主要优化这几个参数,在服务器完全可以承受访问量的时候建议把KeepAlive设置为 on,但网上很多人设置了on但是KeepAliveTime设置为 3-5秒,我认为这样设置根本就没有效果,还不如KeepAlive设置为off,打开一个网页算快也要2秒,人家不可能看3秒又去打开新页面,所以这样设置个人觉得不科学,至少也要10秒,建议使用默认的15秒,如果服务器压力太大可以尝试KeepAlive设置off,以减少一些无效连接,

并发计算参考公式: Continue reading »

9月 172010
 

变量名说明 Qcache_free_blocks 缓存中相邻内存块的个数。数目大说明可能有碎片。FLUSH QUERY CACHE 会对缓存中的碎片进行整理,从而得到一个空闲块。 Qcache_free_memory 缓存中的空闲内存。 Qcache_hits 每次查询在缓存中命中时就增大。

Qcache_inserts 每次插入一个查询时就增大。命中次数除以插入次数就是不中比率;用 1 减去这个值就是命中率。在上面这个例子中,大约有 87% 的查询都在缓存中命中。 Qcache_lowmem_prunes 缓存出现内存不足并且必须要进行清理以便为更多查询提供空间的次数。这个数字最好长时间来看;如果这个数字在不断增长,就表示可能碎片非常严重,或者内存很少。(上面的 free_blocks 和 free_memory 可以告诉您属于哪种情况)。 Qcache_not_cached 不适合进行缓存的查询的数量,通常是由于这些查询不是 SELECT 语句。 Qcache_queries_in_cache 当前缓存的查询(和响应)的数量。 Qcache_total_blocks 缓存中块的数量。

通常,间隔几秒显示这些变量就可以看出区别,这可以帮助确定缓存是否正在有效地使用。运行 FLUSH STATUS 可以重置一些计数器,如果服务器已经运行了一段时间,这会非常有帮助。

使用非常大的查询缓存,期望可以缓存所有东西,这种想法非常诱人。由于 mysqld 必须要对缓存进行维护,例如当内存变得很低时执行剪除,因此服务器可能会在试图管理缓存时而陷入困境。作为一条规则,如果 FLUSH QUERY CACHE 占用了很长时间,那就说明缓存太大了。 Continue reading »