本篇文章是「DevOps云学堂」与你共同进步的第 63篇
1. 技术很简单,人却充满挑战
人重于流程重于工具。除非你能得到你想要帮助的人的支持,否则还有什么意义呢?DevOps 的主要目标之一是提高组织开发人员和整个组织的生活质量,开发可保护、改进和加速他们日常工作的核心平台和工具。无论是通过实施新的 CI/CD 工具、自动化还是架构平台,只要您心中有“以人为本”的方法,您总会产生积极的影响。
2.GitOps 就是出路
如果您不使用某种形式的 IAC
来构建基础设施,请不要担心,因为您将陷入痛苦的境地。话虽如此,即使您使用 IAC 构建基础设施,如果许多工程师能够手动更改基础设施,随着时间的推移,您也会陷入痛苦的境地!IAC 是最好的第一步,但部署GitOps
工具(例如 argocd 或 Crossplane
具有类似的内置功能)是令人惊奇的下一步。GitOps 工具可确保部署到云环境的 IAC 是实际运行的。这些工具不断检查实时环境并将其与 IAC 进行比较,如果它发现更改(即有人在 AWS 控制台中手动进行更改),它会将其更改回 IAC。这可确保每项变更均通过 IAC 进行管理。诚然,这使得凌晨 3 点的事件响应变得更具挑战性……但事实并非如此。
3. Yaml 很酷,而且可以学习编码
作为 DevOps 工程师,您可能会处理大量(我的意思是真的很多!)YAML/JSON 代码,并且您将处理相当多的“无代码”解决方案。尽管如此,还是要学习编码…… 了解几种不同编程语言的基础知识对于 DevOps 工程师来说是一笔巨大的财富!这绝对是无价之宝!能够帮助开发团队在事件期间调试应用程序问题,了解公司应用程序的工作原理,针对组织内部存在的任何数量的问题构建自己的定制解决方案,构建平台级工具,甚至为“无代码”做出贡献您使用的开源工具。了解公司使用的语言基础知识至关重要。增进至少在某一方面的理解会更好……
4. 12因素应用程序
云中的有状态应用程序将成为您生存的祸根。如果您确实希望组织中的任何应用程序都为云做好准备,请推动12 因素应用程序框架。https://12factor.net/ 如果没有,那么让我们先解决这个问题。每当我有新的初级到中级工程师加入我的团队时,我发现我最终向他们展示的首要原则之一就是 12 因素应用程序。每当他们与团队及其应用程序合作,或者为平台/组织开发自己的内部工具时,我都会确保 12 要素应用程序在开发过程中处于他们的首要考虑位置。如果你能拥有这种心态,你就会对组织产生有意义的影响。
5.不要停止学习!
众所周知,技术是一个不断变化的领域,但由于某种原因,云和基础设施工具空间似乎比其他领域变化得更快一些!也许是因为它的广阔,但总有一些新的东西需要学习、理解并可能为您的组织/平台部署。新的基础设施资源总是由云提供商推动,然后开源社区不断开发管理这些资源的新工具!AWS 证书的有效期只有 3 年,这是有原因的,环境变化如此之快,如果您不及时了解我们在该领域提供的内容,您就会落后。订阅时事通讯、观看 YouTube 教程、浏览媒体,只要保持热情,您就会做得很好。
文章翻译 https://storkey.medium.com/5-learnings-from-5-years-in-devops-fc1a05d12865