3个月 新任基础设施工程师认为必要的基础设施知识框架

【目录】

 ①基础设施工程师的角色

 ② 待监控的系统图(7项)

 ③ 确定监测对象紧急程度的标准(4 个等级)

[内容]

很高兴见到你。

我叫水泽义弘,这是我在 Beyond Blog 上的第一篇文章。

2020年8月,我正式成为Beyond的一员。

目前,我们的办公地点位于德岛县三好市的四国办事处。

不,我非常抱歉……

我在波斯猫事务所工作,和井上先生在同一地点,她本人也是一只非常活泼的波斯猫。我一直很感激大家的帮助,包括在奈须猫的事情上。

虽然这是一份简短的概述,但我在文末的“个人简介”部分列出了我的职业经历,如果您感兴趣,请查看。

最近,不知为何,我开始认真地想:“我想变成苔藓”,“我想变成苔藓”。说清楚点,“不是海藻”,“是苔藓”,“是苔藓!”

这很重要。虽然考试不会考,但它极其重要。

说真的,我最近一直在沉思,就像苔藓一样,我意识到我之所以形成这种思维方式,是因为我这些年来与山口先生和苏珊·凯恩的书有过“奇妙的邂逅”。作为一个生活在日益动荡的世界里的“内向者”,我一直都在与他们的书籍进行着这种“奇妙的邂逅”。不过,以后有机会再谈这个吧。

所以,这就是这篇博客的主题。

我的第一篇博文主题是“理解IT基础设施的系统知识”。每个主题都着重于我从阅读《面向软件工程师的IT基础设施监控[实践]入门》(作者:斋藤雄一郎)一书中获得的知识,并着重于我作为一名“新手基础设施工程师”(我从一个没有经验的工程师转行而来)三个月工作期间所感受到的特别必要的要点。

因此,请原谅我目前更多地关注“运营维护”方面,而非“设计施工”方面。未来,我也希望能够撰写一些关于“设计施工”方面的博客文章。


我选择这个主题的原因是,虽然我每天都有很多机会接触到基础设施工作的“内部”,但我常常觉得,无法完全掌握“外部”的整体情况,使我无法理解内部发生的事情。

用烹饪来打个比方,通过日常的家庭烹饪,我逐渐能够烹饪一些特定的菜肴,比如炒蔬菜和汉堡牛排,但我感觉这和我一直以来遇到的困难很相似,因为我还没有完全掌握烹饪的整体框架,也就是烹饪的外在框架,比如“采购食材、切菜、加热、调味和摆盘”。

促使我转变烹饪方式的契机是我接触到了《逻辑烹饪》。具体来说,我从水岛浩的书中了解到“低温慢煮=低至中低火,每分钟升温10°C(蔬菜:最高130°C,肉类和鱼类:最高180°C)”,“盐的用量=食材重量的0.8%”,以及“用刀以30度角切菜”。这些知识帮助我理解了高度可重复的烹饪要素,大大减轻了烹饪的负担。从下个月开始,我打算不仅在家尝试这些方法,还会使用像Hot Cook和Healsio这样的厨房电器。

我有点跑题了,但作为一名基础设施工程师,我开始觉得如果我们现在不实施这个流程,那将是一个巨大的浪费,所以我决定回顾一下基础设施知识的“全貌”。

我撰写本文,希望它能对以下人群有所帮助:

 ① 那些立志成为基础设施工程师的人

 ②几个月前加入公司的新基础设施工程师

 3. 一年后的我

好,我们开始吧。

基础设施工程师的角色

 ①基础设施设计

  →我们会考虑各种因素,以确保我们能够达到客户期望的绩效水平。

   “安全性、冗余性、可用性、可维护性、可靠性”——不太可能导致故障

   该设计非常精细,包含了构建基础设施环境所需的要素。

 ② 基础设施建设

  →根据设计文档构建不易发生故障的基础设施环境。

 3)了解故障警报

  →尽早发现和理解故障警报至关重要。

我们公司使用诸如“Zabbix”和“Datadog”之类的监控工具。

   我们还创建了一个系统,可以在五分钟内提供初步响应。

新员工培训后,我在日常工作中对此深有体会

   具体来说,即使是几秒钟的延迟也会对客户服务产生重大影响。

   想象一下这样的情况:你访问一个你想浏览的网站,但需要等待几秒钟。

   我想你应该能看出这件事影响的严重性。

   在调查原因时,只需几秒钟即可在“访问日志”或其他来源中找到问题所在。

这样一来,找出问题所需的时间将比正常情况下长好几倍

 ④恢复反应

→我们公司的目标是“在发生故障时尽快恢复”。

   我们正在建立一套系统。

具体来说,我们建立了一个系统,其中“基础设施工程师”全年 365 天、每天 24 小时都在现场,
并且我们每天都力求持续改进。

   此外,为了确保与利益相关者的沟通顺畅,我们使用“Chatwork”。

我们使用

 

被监控对象系统图(7)

 ① 实时监控(服务器登录状态)

  →监控是否能够通过 ICMP 协议与目标主机进行 Ping 通信。

 ② 端口运行状态监控(服务器运行状态)

  → 监控特定端口(80、443 等)的通信是否可用。

  →使用 top 或 ps 命令进行检查。

 3)过程存活监测

  → 监控特定进程是否正在运行以及运行次数(Apache、MySQL、Zabbix-agent 等)。

  (1)MySQL

     - 连接数受限于 my.cnf 中的值。

     - 复制延迟仅适用于从服务器。

      原因是当数据从主服务器传输到从服务器时,

      这是因为它用于监测网络延迟。

     ・对于 innoDB 缓冲池,请提前使用 mysqltuner.jp。

请考虑调整或增加实例的物理内存

  →找出负载增加的过程。

 4. 性能监控

  →监控被监控对象的“性能指标”。

  (1)CPU负载平均值

    ⇒CPU平均执行等待状态。

     每 5 秒计算一次,并分别取 1 分钟、5 分钟和 15 分钟的平均值。

     具体来说,您可以使用“top -c”命令来检查这一点。

  (2)CPU空闲

    ⇒CPU可用性。

  (3)CPU I/O等待

    ⇒CPU在输入输出处理期间的等待时间。

 ⑤ 资源监控

  →监控被监控对象的“使用情况”。

  (1)内存使用情况

    ⇒当总容量不足时,Linux 系统中会激活“OOMKiller”程序,此时

     它会尝试通过终止占用大量内存的进程来释放内存。

因此,根据被强制终止的进程,可能会发生系统故障。

     具体来说,您可以使用“free”命令来检查这一点。

  (2)交换使用率

    ⇒ “交换”是指当主内存不足时,将内存内容临时转移到硬盘的过程。

    ⇒ 换位(反复换出/换入)

    (a)“换出”是指当主内存不足时,将未使用的内存页换出。

          将数据从某个区域移动到交换内存,从而释放主内存空间。

    (b)“交换入”是指将交换内存中的内存页重新加载。

请注意,从交换内存读取数据比从主内存读取

它的速度要慢数万倍,并且显著降低整个服务器的性能

  (3)磁盘使用率

    ⇒如果磁盘使用率增加,请删除不太重要的历史日志和二进制文件。

     此外,设置日志轮换机制有助于防止日志膨胀。

 ⑥  外部监测

  → 监控包含您内容的特定网页是否可以访问。

在与用户实际操作相同的条件下,通过负载均衡器

  → 根据 ping 响应时间监控与 Web 服务器的通信路径是否中断。

  → 如果发生丢包,则表示通信速度已达到极限。

网络设备可能出现故障,或者网络设备驱动程序存在

 ⑦ 信息获取

  → 获取有关被监控对象的信息。

  (1)当“系统主机名”的值发生更改时发出通知。

  (2)当“uname 命令”的结果值发生改变时发出通知。

  (3)当“/etc/passwd 文件校验和”的值发生更改时发出通知。

确定监测对象紧急程度的标准(4 个等级)

 ① A级

  ⇒由于服务可能中断,此事必须作为首要任务予以解决。

  (a)实时监测中的警报发生

  (b)港口健康监测期间生成的警报

  (c)外部监控期间(特定客户网站)发生警报

  (d)进程存活监控期间生成的警报(Apache)

  (e)进程存活监控期间生成的警报(MySQL)

 ② B级

  ⇒如果无人处理,服务可能会暂停,因此这是需要优先处理的事情。

  (a)CPU负载平均值警报发生

  (b)CPU空闲警报

  (c) CPU I/O等待警报发生

  (d)内存使用情况警报

  (e)进程运行监控中的警报发生(Zabbix代理)

 ③ C级

  ⇒这不会立即影响服务,但需要尽快做出回应。

  (a)交换使用率警报

  (b)磁盘使用情况警报

 ④ 我排名

  仅作信息通报。将对事件原因展开调查。

  (a)系统主机名变更通知。

  (b)通知“uname 命令”产生的更改。

  (c)“/etc/passwd 文件校验和”的更改通知。

概括

您觉得呢?
它们对了解基础设施运营的整体情况有帮助吗?

自 2020 年 8 月我开始担任基础设施工程师以来,我逐渐意识到这项工作很有意义,因为它让我能够支持我们客户重要的“信息资产”。

然而,与此同时,我每天都感到紧张和焦虑,不断碰壁。说实话,我不知道这三个月我取得了多大的进步,但我认为我唯一能做的就是继续每天努力,一步一个脚印地增加我现在能做的事情。

幸运的是,在我提出并思考了自己的假设之后,总有人愿意倾听我的问题,对此我非常感激。

在此过程中,我希望继续努力工作,成为一名基础设施工程师,为所有利益相关者提供服务。

很抱歉这篇文章这么长,但我终于可以谈谈我作为内向者的经历了。抱歉……

原因是我开始觉得“基础设施工程师”这个职业可能是“内向型人格”能够适应的环境之一。

我现在正处于一个能够自然而然地接受并发展自己内向性格的阶段。然而,直到29岁,我完全没有这种感觉,并且一直否认自己是内向的。

我之所以能够接受这些,是因为我拥有了合适的机遇,但对我来说,这是一段极其艰难的旅程……

因此,如果我能通过担任基础设施工程师的工作来帮助内向者,我个人会非常高兴。

我们知道还有很长的路要走,但希望您能像苔藓一样,以长远的眼光看待我们。非常感谢您一直以来的支持。

如果您觉得这篇文章有用,请点击【点赞】!
0
加载中...
0票,平均分:0.00/10
1,848
X Facebook Hatena书签 口袋

这篇文章的作者

关于作者

水泽义博

【工作经历】
・在一家精密机械物流公司拥有13年的质量控制运营、教育体系改进和业务运营经验。
・在阿根廷定居一年。
・在Beyond科技领域担任基础设施工程师2年,负责云服务器系统的开发、运营和监控。

【资质要求】
・LPIC 3级
・AWS SAA