题 系统管理员的绩效指标?


我在dot com工作,我们团队的一部分职责是维护生产Web应用程序和服务器场。直到最近我们的部门才开始创建,现在我们有大量的补丁修补服务器,并实施监控和备份。

为了开始使用这个怪物,我们将其分解为各个阶段,作为第一阶段的一部分,我们在几台服务器上重新安装操作系统,从旧的Redhat 8(非fedora 8)操作系统安装中更新它们。作为webapp,服务器需要运行apache和php。记录需要编译到这些程序中的模块,并记录用于编译的旧构建过程。

作为系统管理员,你们在那里期望记录什么,你应该记录什么?既然需要更新构建过程和文档,那么布局需要完成的项目的最佳方法是什么?应该将步骤定义为sys-admin工作的一部分,还是技术经理工作的一部分?这部分是“高级unix工程师”与初级工程师的资格吗?如果这会影响您的绩效评估,您希望在评估此类项目的绩效时遵循什么标准?

编辑: 该应用程序正在不断发展。其中大部分是用PHP4编写的,并继续在PHP4上运行,但是,作为Web服务运行的新代码运行为PHP5。所以在同一个盒子上有php4和PHP5安装。每个构建所需的模块都记录在案。系统管理员有该文档。


5
2017-10-26 19:02




serverfault.com/questions/11615/... - l0c0b0x
“你们那里的人们希望有什么记录” - 太少了。 “你应该记录什么?” - 一切。 :) - John Gardeniers


答案:


如果这是一个独特的问题,你如何衡量问题是在于人还是问题?

如果你的一半人被杀/被解雇等等,你应该记录部门运行所需的一切......如果你需要用新的管理员重建部门,他们应该能够让新的东西再次运行与您的文档位置。

在实践中......嘿!是的,对。如果文档在大多数地方甚至创建都是最新的,那么你很幸运。

如果您正在管理怪物任务,那么您需要与管理员见面并询问事情的进展情况以及尝试的内容。如果在这三个星期里他一直受到这个问题的困扰而且它没有得到解决,是因为他没有在努力吗?他试图纠正这个问题是什么?

你无法对这个问题进行微观管理,或者他可能会开始与你作斗争。系统管理员需要有足够的工作自由,而不会觉得他每一步都被仔细检查。但如果项目或任务真的远远落后,那么你就有了合理的关注。向他询问是否有他需要的东西以完成工作,或者问题是他难以克服。

好书: 管理人类 作者:Michael Lopp。

性能应基于IT问题的处理能力,以满足用户的需求,以及维护服务器和基础架构问题。您不可能将问题简化为“每天解决X问题”或“编写X行代码”来衡量每个员工。

也许你可以从团队中的其他人那里获得意见,以获得关于彼此如何做或主要需求的反馈。优秀的技术人员希望与优秀的技术人员合作。他们不想与“快乐和善良”但不称职的人合作。如果这意味着一切运作良好而且那个傻瓜知道他的东西,那么他们会和一个讨厌和他们一起呆在房间里的脾气暴躁的笨蛋一起工作。


8
2017-10-26 19:14



+1。作为一个系统管理员是技术精英。 - Sam Halicke
那么在技术精英中,如果你继续工作,其他技术人员会投票吗? - Zak
@ Zak-如果他们讨厌你,他们会找到一种方法让你离开这份工作......或者企业的营业额很高,直到有人胜任这个职位或其他不称职的人填补这个职位,使他们整体无效。 - Bart Silverstrim
@ zak-它还取决于工作环境......对于技术人员来说,这完全取决于尊重。如果他们互相尊重(而且往往是技术精英)那么你就会有一个他们喜欢工作的地方。如果没有,你的团队将往往是无效和敌对的。在人们彼此相关的方式中,技术导向的部门与大多数其他部门的动态非常不同。 - Bart Silverstrim
@zak - 我的意思或多或少是Bart上面所说的,这都是关于尊重的。人们会关注他们团队中真正的黑客,更重要的是,他们开始向他们学习。这促进了相互尊重和指导的态度 - 每个人都很开心。相反的是,高级管理员不受尊重,并且会遭到团队中每个人的不服从和怀疑,这让每个人都无处可去。此外,我们的技术人员喜欢被认可;表明我们所做的工作很有价值。在一个不称职的高级管理员的阴影下,它可以使整个团队看起来很糟糕。 - Sam Halicke


旧东西(遗产)可能很难:
如果我读得正确,你就拥有旧的软件版本,并试图让它在最近的操作系统建筑上运行。红帽8现在已经7年了,所以我想说应用程序也应该更新(也许这些模块从那以后还没有更新)。所以你说的话听起来像是一团糟。

记录和期望:
这取决于,但你真的应该列出你期望的一般。让你想要的一切都很清楚。然后,您应该能够信任管理员,并且如果由于某种原因他们不能更新您。您可以与他们签到,并确保他们正在做这些事情。系统管理是奇怪的,因为它在不同位置之间变化很大,因此可能需要一些时间才能让他们了解您对它们的期望。

我的推荐,沟通!:
我想我们不能告诉你这些是不是硬问题。开发人员不应该远离系统管理员,因此如果您遇到问题,请让您信任的开发人员与管理员坐下来帮助他解决这些问题。该开发人员应该能够提供一些反馈。

关于更新一切:
一些可能有用或可能没用的想法:

  • 这用了多少钱?也许将它虚拟化并忘记它会更好:-P
  • 申请有多复杂?可能它更便宜,只需重建它就花更少的时间吗?这也可以追溯到更新应用程序,也许如果这些模块已经过时,那些部分应该被取出并重新编码。如果可以的话,它还可以回到通信,团队系统管理员和开发人员一起来寻求最佳解决方案。

5
2017-10-26 19:17



它是遗留的,但它只是php4代码需要php4构建才能在Apache服务器上运行。没有什么比调用OS特定的调用更能导致PHP代码本身失败;只是没有正确的PHP二进制构建,因此代码将无法运行,因为库调用失败。(即syck_load)。绝对不会重建应用程序更便宜..这需要几个月。 - Zak
如果这么简单,为什么你没有建造它,Zak?听起来像你是一名试图管理技术人员的非技术经理。退出对您的员工感到沮丧并将其重定向到镜像所属的位置。然后去聘请技术经理。 - toppledwagon
谢谢你的评论推翻了。我结束了自己建造它。我放弃了其他10件事,因为它拖延了其他3个项目。它花了我2天,但不是3周。那么现在怎么办? - Zak


我要说如果你的系统管理员在3周后无法完成自定义操作系统安装,他/她就会无能为力,否则你会让他/她感到困惑,从而导致无休止的延迟。在您描述的场景中,基本/基础工作流应该是:管理和/或部署团队提供需求和依赖关系列表。这些要求包括时间范围,可扩展性,容错性,健壮性,可用性阈值等。依赖性将涵盖需要在服务器上运行的应用程序,以及可选的支持这些应用程序所需的软件。除非您对软件和软件版本有非常具体的已知需求,否则系统管理员可能会处理后者。无论哪种方式,它都应该记录在案,并通过批准程序,以便“大厅里的人”不能在人们的背后做出改变,最终搞砸了系统管理员的工作流程和期望。一旦将所有信息提供给系统管理员,他/她应该能够提供或多或少的固定时间估计。

从你所说的,听起来这个人甚至没有测试构建,看看是否一切正常。在理想的环境中,将有一组测试脚本,以便通过运行所述脚本来验证构建是否正确。他们不仅会验证功能,还会验证是否包含了正确的软件版本(包括系统和应用程序库)。在较大的环境中,让整个团队专注于性能测试的情况并不少见,因此一旦部署了服务器及其安装的应用程序,您就可以确保它的功能和扩展性能,如果不是更好的话而不是在实验室或临时环境中。这是另一回事:临时环境是关键。您可以制定适当的策略,要求服务器从实验室环境转换到登台环境,最后转移到生产环境。

我不介意系统管理员是否需要时间仔细研究,以便在服务器投入生产时,它可以完美运行。我曾经认识一个那样做的人。不是他不称职;相反,他意识到部署失败的严重性,所以他花了一点时间让100%确定一切都是犹太人。到目前为止,他的声誉几乎无可挑剔,我建议他到任何系统管理团队。然而,在琐碎的任务上反复滑倒应该会引发橙色(非红色)标志。一个基本的系统管理员应该知道他的操作系统和常用的应用程序库,因此在构建系统时,他/她心中很少有关于使用哪个操作系统以及要部署哪些库和应用程序的问题。至于为一组自定义应用程序构建的自定义服务器,我需要大约1-2天才能完成基本安装和配置(以及性能调整,强化等)。之后,它将取决于需要安装的内容。软件需求的数量越多,构建,安装和测试所需的时间就越多,也许这就是阻碍系统管理员的问题。但是,我不能肯定地说,因为你没有提供足够的信息。

我希望有所帮助。

迈克尔


2
2017-10-26 19:34





上面的好答案。我特别要强调Bart的帖子中的这一点:

如果你的一半人被杀/被解雇等等,你应该记录部门运行所需的一切......如果你需要用新的管理员重建部门,他们应该能够让新的东西再次运行与您的文档位置。

这是 绝对至关重要 对于某些商业惯例而言,它应该是一项要求,而不是一种选择。如果“唯一知道重要系统XYZ的人”退出你,或者必须被解雇,该怎么办?人是人 - 这些事情确实发生了。记录主要系统和流程,任何特殊要求,警告,哪些服务器负责什么。这至少是基础 - 大多数体面的管理员会在他们的工作中找出较小的细节。

然而,如上所述,在“现实生活中”,你确实很幸运能够创建这些文档,更不用说当前和正确了。如果可行的话,IMO值得将管理员从项目中拉出来并让他跟踪它的文档。

希望事情顺利进行。


1
2017-10-26 19:25





根据你对事情如何运作的简要解释,这个人可能会吓坏你,因为听起来你的IT环境是一场噩梦。

我愿意打赌,你的SA从开发/业务部门类型的人那里得到的指示也是可怕的。让某人坐在提交请求的人和正在工作的人之间。让他们拒绝那些没有意义的请求和文件正在做的事情。

爱因斯坦说:“疯狂一遍又一遍地做同样的事情并期待不同的结果”


1
2017-10-26 20:27



我们正如我上面提到的那样,为了限制范围的原因而进行了分阶段的设置。该项目的所有部分都是在redhat 8服务器上运行PHP4应用程序并使其在更新的CentOS服务器上运行。那里 是 适合所有测试的舞台环境,所以它不像火试验...... - Zak
@Zak - 真正了解的唯一方法就是与部门会面。我们不知道你的环境(工作)是什么样的......管理层可能有10,000英尺的视野并且单向看东西,但是在战壕中有一种非常不同的氛围。您需要与您的员工合作,以找出问题的真正含义。这就是为什么他们首先被雇用到这个位置,对吗? :-) - Bart Silverstrim


我为初创公司做了很多系统管理工作,我不得不说旧文档比没有文档更糟糕。我无法计算我查看现有系统文档的时间,以了解如何将事物拼接在一起只是为了发现系统已完全重新构建。

当系统管理员离开公司并且他们的最后任务是记录系统时,通常会出现这种情况。只需一只脚出门,所产生的信息质量往往很差。如果系统管理员没有立即更换(通常情况下),系统通常由最不适合和/或初级开发人员管理(因为他有时间)。这意味着系统可能会失去同步,无法记录,并且 - 在更糟糕的情况下 - 因机器而异(对于一组与其他应用程序不同的Web应用程序集群来说真正的痛苦)。

我厌恶wiki语法,但我喜欢系统文档驻留在wiki中,所以我至少有一个时间戳和一个谁记录了什么和什么时间的名称。 MediaWiki安装很容易设置和完善系统的东西。

至于你的sr有多好。系统管理员是,很难说。我们很多人都很糟糕,我们中的很多人只是在完成工作后逐渐消失。我们都有糟糕的日子。

不久前我花了很多时间(比如 )试图让Ganglia在64位机器上编译,但发现它是链接中的一个错误。我相信我对那些人来说看起来像个完全白痴......

大多数人根据我的经验,系统管理员是相当不错的编码员。确定编译选项以使事情发挥作用应该不是问题,除非它是不明显的。听起来你的系统管理员拥有完成这项工作所需的一切,但魔鬼在细节中。

我的建议 - 直接问问题是什么。并查看其他人建议的“管理人类”一书 - 这非常好。


1
2017-10-26 21:50