【51CTO精选译文】一个做什么事情都亲自动手的系统管理员,他浪费的不仅仅是他自己的时间,也是你的时间。那些需要系统管理员重复执行的任务应该被自动化。通过脚本、专用的软件和系统调度把这些任务自动化,可以节省系统管理员的时间,也可以为你节省开支,防止人为错误的发生。这10个系统管理员的任务是自动化的首要目标,它们可以帮助你把日常工作自动化。
51CTO推荐专题:SA,神仙与装机男:运维的工作到底啥样儿?
1、打补丁
只有针对极少数没有提供自动打补丁机制的系统,才应该手动打补丁。Linux和Windows都提供了自动更新的工具,但是如果你想控制你的系统接收哪个补丁,何时接收它们,可以研究一下HP's Data Center Automation Center (HPDCAC)(过去叫做Opsware)。HPDCAC(HP's Data Center Automation Center )不仅仅是一个自动打补丁的应用程序,它可以通过一个单一的,简单的用户界面管理复杂的基础设施。如果你正在找一个存粹的打补丁的解决方案,可以试试Ecora's Patch Manager,它支持无代理的补丁管理。
2、用户和组的维护
你可能使用过Active Directory, LDAP, NIS+或其他的用户和组账户管理软件,但是,你使用过一个真正能令你满意的用户和组账户管理软件吗?它们都不能令你满意的原因是它们都没有提供太多的自动化机制。当然,你可以创建一个用户账户,删除一个用户账户,创建一些组,管理这些组,但是,当涉及到实际的管理任务的时候,你可能就找不到合适的工具了。你不得不通过脚本自己创建一个这样的工具。
在UNIX中,创建脚本来提醒你哪些账户是你希望删除的,让系统把用户的文件拷贝到一个新位置,改变权限,在所有系统中搜索某个用户的任意一些文件,改变这些文件的权限,或者通过从目录服务中删除一个用户账户来删除它们,都是很简单的。可以看看你选择的用户管理工具的附加模块是否提供了这样的功能。例如,微软提供了Active Directory Resource Kit Book和包含了常用的自动化脚本的CD。
3、安全扫描
你应该定期地在你的整个网络中执行自动化的安全扫描,来发现和修复任何一个网络漏洞。扫描的频率和深度和你的网络的复杂性有关。通过编写脚本,你可以创建计划扫描,把扫描的结果发送到数据库,从数据库中提取被发送的扫描报告,然后email给你自己,或者是把这个报告制作成HTML版本,方便在线浏览。有这样的一个工具,它适用于所有的现代操作系统,它就是Nmap。Nmap是一个免费的网络安全扫描器,它是专门为快速地扫描大型的网络和报告漏洞而设计的。
4、磁盘使用率扫描
在用户和系统管理员之间,存在着一场旷日持久的,激烈的“地盘争夺战”,这是一场系统管理员必须要获胜的“战争”。为了达到这个目的,系统管理员可以使用一些“手段”:磁盘空间限额,磁盘分区和磁盘空间扫描。那些扫描主要是定期地对用户的磁盘空间使用率进行检查。在私下里联系系统管理员以前,犯错误的人通常会收到一到两个警告。对于那些磁盘空间的“蚕食者”,通常的补救方法是临时禁用它的账户,删除文件,把文件移动到一个新的位置,或者是扩展磁盘空间的限额。那些定期(大约每周一次)进行的自动化扫描可以防止系统管理员做出粗暴的举动,让用户知道他们的磁盘空间的使用情况。
5、性能监控
如果想要观察单一时间点的系统性能,做一个临时的性能快照是一个好方法。这种方法只能观察到整个性能图像中的一个像素。你需要具有一定的深度和广度的,可以提供性能趋势和高峰值和低估值预测的工具。使用Orca来建立一个这样的系统是很容易的。Orca可以汇编来自于不同数据源(UNIX, Windows, Linux)的性能数据,然后建立一个直观的性能图像。它可以自动地进行数据的收集,计算,图像的生成和显示。
6、文件传输
使用命令行脚本(Windows, UNIX 和 Linux),你可以在主机之间自动地进行文件传输。你无需通过人机对话来完成这个任务。如果你足够聪明,你可以建立各种详细的自动化方案,实际上,不但传输你的文件的过程可以自动化,解压缩,改变权限,移动,拷贝和插入信息到一个数据库中等过程也可以自动化。使用文件传输协议的安全版本(例如:SSH, SFTP, SCP),可以确保任何人都无法从你的网络数据流中窃取重要的密码。
7、代码升级
你如何把测试阶段的代码升级成正式产品,这会对营销活动和其他特定时间段的活动产生很大的影响。手动地把代码从一个环境迁移到另一个环境十分繁琐,而且容易出错,这需要开发者和系统管理员之间的紧密配合才能完成。可以让你的开发者们使用自动化的代码部署系统把代码从一个环境迁移到另一个环境。一些系统管理员使用RSYNC(官方主页:http://rsync.samba.org/)来实现自动化的代码部署,如果和SSH key配合使用,可以让主机之间的文件传输更加安全。
8、高级管理
你可以通过自动化来进行内务管理,重新启动服务和发送维护通知。你可以建立一些脚本,让它们在相对空闲的时间里清除各种临时文件,重新启动你喜欢的服务,通过email发送维护和宕机通知。你会发现,自动化这些任务会让你很难记住你需要在那一天,做哪个列表上的事情。没有必要把这些事情放在日程表中;让系统处理它们。
9、重新启动
是的,你可以把系统重新启动的过程自动化。坐在那里等着系统恢复正常只是在浪费时间。应该在相对空闲的时间让这个过程自动化地进行。不用担心,如果这个系统没有在合适的时间内恢复正常状态,你的自动化监控系统会通知你。
10、恶意软件扫描
你可以通过自动化的流程扫描间谍软件,恶意软件,病毒和其他有害程序。使用脚本,你可以映射和挂载一些驱动器,扫描你的文件系统,当扫描完成的时候中断连接,清除正常的文件的扫描日志,然后把扫描结果发送到一个数据库或一封email中。当你的系统运行良好,而且适合自己做这些事情的时候,你无需手动进行这些扫描。
【编辑推荐】