Linux高可用服务器集群解决方案让IT系统管理员可以从容应对集群

Linux是一种开源操作系统,它支持各类硬件平台,Linux服务器全球著名,它和Windows之间最主要的差别在于,Linux服务器默认情况下通常不提供GUI(图形用户界面),而是命令行界面,它的主要目的是高效处理非交互式进程,响应时间并不是这么重要,相反,还能长时间处理高负载才是最关键的。

Linux高可用服务器集群解决方案让IT系统管理员可以从容应对许多常见的硬件和软件故障,允许多台计算机一起工作,为关键服务正常运行提供保障,系统管理员可以不中断服务执行维护和升级。

Linux服务器有各类用途,如Web服务器或分支机构内部服务器,CMS或CRS服务器,文件服务器(为Windows和/或Linux用户服务),VoIP电话服务器,短信或域名服务器,数据库服务器,云估算配置中的基础设施节点等。

Linux功能丰富、强大、灵活,你可以用它完成各类任务,在这篇文章中,我们将讨论一些增强Linux服务器性能的方法。

在选择文件系统后,有一些内核和挂载选项可能会影响到它的性能表现,其中一个内核设置是扶梯算法,通过调整扶梯算法,系统可以平衡低延后需求,搜集足够的数据,以有效地组织对c盘的读和写恳求。

每台服务器上都运行着许多守护进程或服务,而具有嘲讽意味的是,有好多一般不是必需的,这种服务没有发挥作用,但却消耗了宝贵的显存和CPU时间。据悉,它们可能将服务器放在危险窘境,多运行一个服务就等于多向黑客打开一扇长驱直入的门,因而,你应当将它们从服务器移除,禁用它们最大的用处是可以推动启动时间,释放显存。另外,你可以降低CPU须要处理的进程数,禁用它们的另一个用处是提高服务器的安全性,由于越少的守护进程意味着可被功击和借助的漏洞越少。

下边是一些应当被禁用的Linux守护进程,默认情况下,它们都是手动运行的:

序号守护进程描述

1Apmd中级电源管理守护进程

2Nfslock用于NFS文件锁定

3IsdnISDNModerm支持

4Autofs在后台手动挂载文件系统(如手动挂载CD-ROM)

5Sendmail电邮传输代理

6XfsXWindow的字体服务器

通常说来,Linux服务器是不须要GUI的,所有管理任务都可以在命令行下完成,因而最好关闭GUI,重定向X显示或通过一个Web浏览器界面显示。为了禁用GUI,“initlevel(启动级别)”应该被设置为3(命令行登陆),而不是5(图形登入),假如须要GUI,可以随时运行startx步入图形用户界面。

在服务器软件包中有太多被启动的功能或模块实际上是不须要的(如Apache中的许多功能模块),仔细查看Apache配置文件,确定FrontPage支持或其它额外的模块是否真的要用到,假如不须要,应当毫不迟疑地从服务器禁用掉,这样有助于提升系统显存可用量,腾出更多资源给这些真正须要的软件,让它们运行得更快。

在Linux中,有许多流行的控制面板,如Cpanel,Plesk,Webmin和phpMyAdmin等,相信每位Linux中级用户都很喜欢这种控制面板,并且,禁用掉那些软件包可以释放出大概120MB显存,因而,我强烈建议禁用掉那些控制面板,除非它们真的须要用到,它们可以通过PHP脚本(虽然有些不安全),或命令行命令启用,这样做后,显存使用量大概可以增长30-40%。

有许多种方式改善服务器的Exim性能,其中一个办法是使用DNS缓存守护进程,它可以减少解析DNS记录须要的带宽和CPU时间,DNS缓存通过去除每次都从根节点开始查找DNS记录的需求,因而改善网路性能,Djbdns是一个十分强悍的DNS服务器,它具有DNS缓存功能,Djbdns比BINDDNS服务器更安全,性能更好,可以直接通过cr.yp.to/下载,或通过RedHat提供的软件包获得。

为了提升备份文件或敏感信息的安全,许多Linux系统管理员还会使用gpg进行加密,在使用gpg时,最好指定gpg使用AES256加密算法,AES256使用256位秘钥,它是一个开放的加密算法,日本国家安全局(NSA)都使用它保护机密信息,没有哪些比它更安全的了。

安全是选择远程备份服务最重要的诱因,大多数系统管理员都担心两件事:(黑客)可以删掉备份文件,不能从备份恢复系统。

为了保证备份文件100%的安全,备份服务公司提供远程备份服务器,使用scp脚本或RSYNC通过SSH传输数据,这样,没有人可以直接步入和访问远程系统,为此,也没有人可以从备份服务删掉数据。在选择远程备份服务提供商时,最好从多个方面了解其服务强健性,假如可以,可以亲自测试一下。

为了顺利和成功运行企业应用程序,如数据库服务器,可能须要更新一些默认的内核参数设置,比如,2.4.x系列内核消息队列参数msgmni有一个默认值(比如,共享显存,或shmmax在RedHat系统上默认只有33554432字节),它只容许有限的数据库并发联接,下边为数据库服务器更好地运行提供了一些建议值(来自IBMDB2支持网站):

kernel.shmmax=268435456(32位)kernel.shmmax=1073741824(64位)kernel.msgmni=1024fs.file-max=8192kernel.sem=”25032000321024″

优化TCP合同有助于提升网路吞吐量,跨广域网的通讯使用的带宽越大,延后时间越长时,建议使用越大的TCPLinux大小,以增强数据传输速度,TCPLinux大小决定了发送主机在没有收到数据传输确认时,可以向接收主机发送多少数据。

使用ext4文件系统代替ext3

在文件系统启动配置文件fstab中使用noatime选项,假如使用了外部储存,这个挂载选项可以有效改善性能。

Linux限制了任何进程可以打开的文件描述符数目,默认限制是每进程1024,这种限制可能会妨碍基准测试顾客端(如httperf和apachebench)和Web服务器本身获得最佳性能,Apache每位联接使用一个进程,因而不会遭到影响,但单进程Web服务器,如Zeus是每联接使用一个文件描述符,因而很容易受默认限制的影响。

打开文件限制是一个可以用ulimit命令调整的限制,ulimit-aS命令显示当前的限制,ulimit-aH命令显示硬限制(在未调整/proc中的内核参数前,你不能降低限制)。

Linux第三方应用程序性能方法

对于运行在Linux上的第三方应用程序,一样有许多性能优化方法,这种方法可以帮助你提升Linux服务器的性能,减少运行成本。

为了给MySQL分配更多的显存,可设置MySQL缓存大小,要是MySQL服务器实例使用了更多显存,就降低缓存大小,假若MySQL在恳求增多时停滞不动,就降低MySQL缓存

检测Apache使用了多少显存,再调整StartServers和MinSpareServers参数,以释放更多的显存,将有助于你节约30-40%的显存。

下边是一些增强Linux服务器监控和故障排除的方法:

增强系统效率最好的办法是找出造成整体速率增长的困局并解决掉,下边是找出系统关键困局的一些基本方法:

●当小型应用程序,如OpenOffice和Firefox同时运行时,计算机可能会开始变慢,显存不足的出现机率更高。

●如果启动时真的很慢,可能是应用程序初次启动须要较长的加载时间,一旦启动好后运行就正常了,否则很可能是硬碟太慢了。

●CPU负载持续很高,显存也够用,但CPU借助率很低,可以使用CPU负载剖析工具监控负载时间。

使用几个命令就可以管理Linux系统的性能了,下边列举了5个最常用的Linux性能命令,包括top、vmstat、iostat、free和sar,它们有助于系统管理员快速解决性能问题。

01top

Top命令除了显示了当前内核服务的任务,还显示了许多关于主机状态的统计数据,默认情况下,它每隔5秒手动更新一次显示的数据(这个时间间隔是可以配置的),通过top命令,我们可以获知几个结果,如:当前正常运行时间,系统负载,进程数目和显存使用率,据悉,这个命令也显示了这些使用最多CPU时间的进程(包括每位进程的各类信息,如运行用户,执行的命令等)。

02vmstat

Vmstat命令提供当前CPU、IO、进程和显存使用率的快照,它和top命令类似,手动更新数据,如:

$vmstat10

03iostat

Iostat命令(在Ubuntu,RedHat/Fedora上包含在sysstat软件包中)提供三个报告:CPU借助率、设备借助率和网路文件系统借助率,不加任何参数运行时,iostat将显示这三个报告,使用-c,-d和-h参数可以分别独立显示这三个报告。

04free

Free命令显示主显存和交换空间的显存统计数据,指定-t参数可以显示总显存数目linux web服务器,指定-b参数可以按字节为单位进行显示,使用-m则以兆为单位显示,默认情况下是以千字节为单位的。

Free命令也可以使用-s参数加一个延后时间(单位:秒)连续运行,如:

$free-s5

05sar

Sar命令搜集,查看和记录性能数据,这个命令比后面几个命令历史更悠久,它可以搜集和显示较长周期的数据。

其它

下边是一些归类为其它的性能方法:

当一台机器处于运行中时,最好是将系统日志置于显存中,当系统关掉时再将其复制到硬碟,当你运行一台开启了syslog功能的电脑笔记本或联通设备时,ramlog可以帮助你增强系统电瓶或联通设备闪存驱动器的寿命,使用ramlog的一个用处是,不用再害怕某个守护进程每隔30秒向syslog发送一条消息,置于曾经,硬碟必须随时保持运转,这样对硬碟和电瓶都不好。

在显存中界定出固定大小的空间保存日志文件,这意味着电脑笔记本光驱不用仍然保持运转,只有当某个守护进程须要写入日志时才运转,注意ramlog使用的显存空间大小是固定的,否则系统显存会很快被用光,假如电脑使用固态硬碟,可以分配50-80MB显存给ramlog使用,ramlog可以减轻许多写入周期,极大地增强固态硬碟的使用寿命。

尽可能使用静态内容代替动态内容,假如你在生成天气预告,或其它每隔1小时就必须更新的数据,最好是写一个程序,每隔1小时生成一个静态的文件,而不是让用户运行一个CGI动态地生成报告。

为动态应用程序选择最快最合适的API,CGI可能最容易编程,但它会为每位恳求形成一个进程,一般linux web服务器,这是一个成本很高,且毋须要的过程,FastCGI是更好的选择,和Apache的mod_perl一样,都可以极大地提升应用程序的性能。

© 版权声明
THE END
喜欢就支持一下吧
点赞166赞赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容