系统管理员职责:9项关键任务

系统管理员负责广泛的职责,但这些是最重要的。
572 位读者喜欢这个。
Tools for the sysadmin

opensource.com

系统管理员对于组织及其网络运营中心和数据中心的可靠和成功运营至关重要。系统管理员必须精通系统的底层平台(即 Windows、Linux),并熟悉多个领域,包括网络、备份、数据恢复、IT 安全、数据库操作、中间件基础知识、负载均衡等等。系统管理员的任务不仅限于服务器管理、维护和维修,还包括任何支持生产环境平稳运行且客户和最终用户抱怨最少(或没有)的功能。

尽管系统管理员的职责清单似乎无穷无尽,但有些职责比其他职责更重要。如果您担任系统管理员角色(或希望有一天担任),请确保您已准备好遵循这些最佳实践。

文档

文档记录了系统管理员如何记录资产,包括硬件和软件类型、数量和许可证。如果生产环境中出现任何问题,文档有助于识别可能涉及的硬件、虚拟机、设备、软件等。

硬件清单

维护所有物理和虚拟服务器的列表,其中包含以下详细信息

  • 操作系统: Linux 或 Windows,带版本的虚拟机监控程序
  • 内存: 物理服务器中的 DIMM 插槽
  • CPU: 逻辑 CPU 和虚拟 CPU
  • 硬盘: 硬盘类型和大小
  • 外部存储 (SAN/NAS): 存储的制造商和型号,以及管理 IP 地址和接口 IP 地址
  • 开放端口: 服务器端为传入流量开放的端口
  • IP 地址: 管理和接口 IP 地址,以及 VLAN
  • 工程设备: 例如,Exalogic、PureApp 等。

软件清单

  • 配置的应用程序: 例如,Oracle WebLogic、IBM WebSphere Application Server、Apache Tomcat、Red Hat JBoss 等。
  • 第三方软件: 任何未随已安装操作系统一起提供的软件

许可证详细信息

维护物理服务器和虚拟机 (VM) 的许可证数量和详细信息,包括 Windows 许可证、Linux 操作系统订阅以及虚拟机监控程序主机的许可证限制。

服务器健康检查

  • 正在运行的进程: 检查占用资源超出预期的进程,并采取措施微调应用程序(在应用程序团队的帮助下)。
  • CPU 使用率: 持续监控和检查关键进程(如“java”、“http”、“mysql”等)的 CPU 使用率,以确保它们消耗的 CPU 资源不超过预期。 如果是这样,请与应用程序团队协调,在应用程序级别检查并对其进行微调。 同时分析操作系统参数,如“Ulimits”。
  • 内存使用率: 检查内存使用率并在需要时清除缓存。
  • 僵尸进程: 检查进程表中 PID 仍然存在的已终止进程。 僵尸进程会降低服务器性能,因此请查找并终止任何存在的僵尸进程。
  • 负载平均值: 如果您遇到性能问题,请检查负载平均值并调整服务器性能。
  • 磁盘/SAN/NAS 使用率: 检查外部连接存储的 I/O 报告,以跟踪和检查读/写操作的速度。 如果发现任何问题,请立即与存储和网络团队协调以纠正问题。

备份和灾难恢复计划

与备份团队沟通,并向他们提供备份的数据和客户端优先级。 生产服务器的建议备份标准是

  • 增量备份: 每天,周一至周五
  • 完全备份: 周六和周日
  • 灾难恢复演练: 每月(最好)或每季度(如有必要)与备份团队执行一次恢复模拟演练,以确保在出现问题时可以恢复数据。

补丁

必须及时实施针对已知漏洞的操作系统补丁。 补丁有很多类型和级别,包括

  • 安全
  • 严重
  • 中等

发布补丁后,检查错误或漏洞详细信息,以查看它如何应用于您的系统(例如,漏洞是否影响您系统中的硬件?),并在需要时采取任何必要的操作来应用补丁。 确保交叉验证应用程序与补丁或升级的兼容性。

应用程序兼容性

在任何应用程序上线之前,请检查其与您的硬件和操作系统的兼容性,并确保进行负载测试(在应用程序团队的支持下)。

服务器加固

Linux

  • 设置 BIOS 密码: 这可以防止用户更改 BIOS 设置。
  • 设置 GRUB 密码: 这可以阻止用户更改 GRUB 引导加载程序。
  • 拒绝 root 访问权限: 拒绝 root 访问权限可最大限度地减少入侵的可能性。
  • Sudo 用户: 创建 sudo 用户并分配有限的权限来调用命令。
  • TCP wrappers: 这是保护服务器免受黑客攻击的武器。 为 SSH 守护进程应用规则,仅允许受信任的主机访问服务器,并拒绝所有其他主机。 对 FTP、SSH 文件传输协议等其他服务应用类似的规则。
  • Firewalld/iptables: 为服务器的传入流量配置 firewalld 和 iptables 规则。 包括特定端口、源 IP 和目标 IP,并允许、拒绝、拒绝公共区域和私有区域的 ICMP 请求等。
  • 防病毒软件: 安装防病毒软件并定期更新病毒定义。
  • 安全和审计日志: 定期并在需要时检查日志。
  • 轮换日志: 将日志保留有限的时间,例如“7 天”,以保持足够的磁盘空间以实现完美运行。

Windows

  • 设置 BIOS 密码: 这可以防止用户更改 BIOS 设置。
  • 防病毒软件: 安装防病毒软件并定期更新病毒定义。
  • 配置防火墙规则: 防止未经授权的方访问您的系统。
  • 拒绝管理员登录: 限制用户进行可能增加系统漏洞的更改的能力。

使用 syslog 服务器

通过在环境中配置 syslog 服务器以记录系统和应用程序日志,在发生入侵或问题时,系统管理员可以检查以前的和实时的日志以诊断和解决问题。

自动化

许多系统管理员任务(例如服务器健康检查、资源利用率、备份触发器、传输文件和日志等)必须在特定时间完成。 因此,系统管理员必须编写脚本或使用外部工具,并将它们配置为 cron 作业,以便在适当的时间自动执行任务。

监控工具

安装和配置 Nagios、HP 等实时监控工具,以监控您的 IT 基础设施并发出有关潜在问题的警报。

结论

虽然这些是系统管理员负责的最重要的任务,但该角色远不止此列表中的职责。

例如,系统管理员必须与多个团队协调以解决问题、与客户沟通并更新客户、保持 100% 正常运行时间、与审计团队进行讨论、准备每周/每月/每季度报告、使用适当的工具持续监控服务器和服务,并维护硬件控制台并响应任何触发的警报。

对于与 Web 托管、应用程序和服务器中断以及其他关键 IT 运营问题相关的问题,系统管理员始终是数据中心或网络运营中心内的单一联络点 (SPOC)。

您认为系统管理员还有哪些其他基本任务或最佳实践? 请在评论中分享您的意见。

接下来阅读什么
User profile image.
Alok Sharma 出生于印度斋浦尔 (Jaipur)。 Alok 拥有马尔维亚国立理工学院 (M.N.I.T),斋浦尔的 VLSI 设计硕士学位 (M.Tech.)。 Alok 曾在高等技术机构研究实验室和其他 IT 组织担任 Linux 系统管理员,并以主管身份管理服务器团队。

7 条评论

非常好的列表,谢谢。 这是一个很好的模板,供新的系统管理员用作起点。

老实说,我认为这篇文章现在不太符合目标。

例如,“维护服务器列表?” 如果您维护一台服务器和大约十几台 PC,这是一种不错的方法。 即使是一家小商店也有太多设备需要手动管理。 此外,维护部署到第三方服务的容器镜像的需求又如何呢? 更好的建议是,“学习如何使用自动发现工具以及如何将它们与您的 CMDB 集成。”

自动化——“……编写脚本或使用外部工具……” 更好的建议是,学习基础设施即代码的概念。 学习使用 Ansible 等工具而不是手动执行任何任务。 学习如何使用 git 等版本控制系统来管理您的 playbook、配置文件、脚本等。

我想在这里表达的观点是,IT 世界正在以惊人的速度变化。 Agile 和 DevOps 实践正在渗透到每个组织。 本文概述的实践根本不符合这个新世界。 如果系统管理员想要保持相关性,就必须适应。

感谢您的反馈。
我想提一下,并非每个系统管理员都是 Ansible、deveops 等方面的专家/能手,因为通常系统管理员有 L1、L2、L3 级别,职责级别不同,如文档编制、监控、工单处理、升级处理等。
并且客户端位置的系统管理员必须遵循来自客户端的指示,并受到约束和最少的工具和资源。 例如,在许多组织中,补丁是手动的,而在某些组织中,补丁可能是自动化的。
自动发现工具是一种选择,但可以通过从虚拟环境(如 VMware)导出数据来简单地完成清单,物理服务器也可以这样做。 仍然有许多组织不使用容器化环境,而是仅使用私有云。
集成、自动发现、使用什么、如何使用、何时使用仅由客户决定,系统管理员必须遵守并遵循指示,尽最大努力使事情变得更好。
所以,重点是,这篇文章是关于系统管理员“待办事项”的通用文章,而不是针对特定或自定义环境。
如何做只能由服务提供商和客户协议决定,同时考虑到资源限制。

回复 作者 sgtrock

我既同意也不同意您的观点。 :) 是的,承包商系统管理员必须适应客户的实践。 但是,撰写本文而不提及行业正在发生的事情以及它对工作产生的变革性影响,至少会让读者对情况有一个不完整的了解。

例如,我为一家相当大的美国公司(接近 100,000 名员工)工作。 我们今天才刚刚开始采取初步措施采用 DevOps 实践,但对于我们所有人来说,很明显,如果您没有登上 Agile/DevOps 列车,您很可能会被碾压。 尽管如此,我们的许多竞争对手和供应商已经领先我们多年,我们已经非常落后了。

换句话说,我认为,任何关于系统管理员实践的文章,如果不讨论真正具有变革意义的转变对他们在不久的将来从事工作的方式的影响,都是对读者的不负责任。

这一切都说得通吗?

回复 作者 aloksharma08

这一切都说得通吗?

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 获得许可。
© . All rights reserved.