在 IT 领域,一直存在着通才和专才之间的拉锯战。刻板印象中的系统管理员 99% 的情况下都属于通才。然而,站点可靠性工程师 (SRE) 角色是专门化的,它源于最早认识到真正规模的公司之一:Google 的需求。最终,这两个角色对于他们运营基础设施的应用程序有着相同的目标:为应用程序的用户提供良好的体验。然而,这两个角色的起点却截然不同。
系统管理员:中立善良的化身
系统管理员通常从入门级的桌面和网络支持开始,逐步成长到现在的职位,并随着时间的推移掌握了大多数系统管理员共有的广泛技能。到了那时,这些系统管理员了解他们负责的所有系统和应用程序。他们知道服务器一上的应用程序需要在每隔一个星期二重启,或者服务器九上的服务会在星期三崩溃,而且没有任何错误。他们已经微调了他们的监控,使其忽略不重要的东西,即使是每月第三个星期日发生的错误,尽管它被标记为致命错误。
简而言之,系统管理员知道如何维护和照顾运行您业务核心的服务器。这些系统管理员已经成长为使用自动化来处理他们管理的所有服务器上的例行任务。他们喜欢模板、黄金镜像和标准,但也足够灵活,可以仅对出现错误的服务器进行参数更改,然后记录关于为什么该服务器现在是唯一配置的原因。
系统管理员很棒,但他们也有一些怪癖。首先,没有神圣的干预,您就无法获得 root 访问权限,并且他们所做的任何不是他们自己想法的更改都必须按照他们正在使用的应用程序供应商的要求进行记录,然后仍然会进行复核。
服务器是他们的领地,没有人会乱动他们的东西。
SRE:灭霸会感到自豪
与成为系统管理员的道路相反,SRE 同样可能来自开发背景或系统管理员背景。SRE 职位更接近您在应用程序开发环境中发现的生命周期。
随着组织的发展并引入 DevOps 概念,例如DevOps 概念,例如持续集成和持续交付 (CI/CD),通常会在如何跨多个环境运行这些不可变的应用程序,同时使其能够扩展以满足业务需求方面存在技能差距。这就是 SRE 的世界。是的,系统管理员可以学习额外的工具,但在规模化的情况下,这很容易变成一个全职职位才能跟上。专家是有意义的。
SRE 使用基础设施即代码等概念来生成模板,这些模板被调用来部署应用程序将运行的环境,目标是每个应用程序及其环境都可以通过按一下按钮完全重现。因此,系统测试中服务器一上的应用程序一将具有与生产中服务器十五上使用的完全相同的二进制文件,但环境特定的变量(如密码和数据库连接字符串)除外。
SRE 还会根据配置更改完全销毁环境并重建它。对任何系统都没有情感依恋。每个系统只是一个数字,并相应地进行标记和生命周期管理,甚至例行的服务器补丁也是通过重新部署整个应用程序堆栈来完成的。
结论
在某些情况下,尤其是在大型基于 DevOps 的环境中运行时,SRE 提供的关于如何处理任何规模的专业技能绝对具有优势。而且每次他们遇到困难时,他们都会寻求友好的邻居系统管理员——或者在糟糕的一天 (BOFH)——的帮助,以获得那些精湛的故障排除技能,以及系统管理员赖以为任何他们所属的组织提供价值的广泛经验。
评论已关闭。