For investors
股价:
5.36 美元 %For investors
股价:
5.36 美元 %认真做教育 专心促就业
DevOps工程师是目前互联网行业中的一个热门招聘岗位,下面我们就通过案例分析来了解一下,DevOps工程师都需要具备哪些技能。
敏捷开发原则
这也是现代开发世界中重要的技能之一(特别是在远程协作开发场景之下)。其中不仅包括区分Kanban与Scrum间的差异,同时也要求我们能够与团队顺畅沟通、了解客户价值、跟踪时间进度,以及整理出易于理解的工作日志、独立报告与清晰说明文档的能力。
自动化+万物即代码
大家应该尽快摆脱手动操作的困扰。时至今日,几乎一切日常工作都对应着自动化工具。如果找不到现成的工具,您也可以使用Python及bash自行编写。例如,如果需要创建虚拟机镜像,请使用Packer。如果需要配置10台以上的主机,请使用Ansible。如果您在GoogleCloudPlatform中创建Kubernertes集群,或者需要在Amazon上使用CDN,请使用Terraform以简化操作流程。总而言之,从通过网络加载新的裸机服务器到在现有集群中部署新容器,一切都应以自动化方式进行。另外,您编写的代码应该具有可复制性与幂等性,提交内容必须经过跟踪程序的审核,且严格遵循以上要求。
云与混合架构
目前,我们发现大多数企业都不会只使用一家云服务供应商(为了避免供应商锁定问题)。没错,一切不该简单粗暴地交给云方案处理,我们可以将服务中的不同部分运行在AWS、Heroku以及其他IaaS、PaaS与SaaS之上。请努力找到理想的解决方案,并保证能够在特定时段内完成不同平台之间的服务迁移。另外,也别忘了之前提到的自动化原则,自动化程度越高、迁移难度就越低。
可扩展性与高可用性要求
重要的是意识到企业能够在特定时段内承受怎样的停机与数据丢失影响。明确这一点之后,大家会发现长达24个小时的资源停机假设将毫无意义。另外,资源哪怕只宕机一个小时,造成的损失就可能高于一整年的完整热备份服务使用成本。借助云服务与容器化技术,扩大系统规模变得愈发轻松。但是,基础设施与服务本身也需要为这种灵活扩展能力做好准备(这里再次向本地对象存储开炮,这简直就是麻烦的终极根源)。
监控与警报
为了及时做出回顾、预测与响应,我们当然有必要收集系统、应用程序及业务中的一切可用指标。这些指标就像团队的眼睛,而且无法通过单一监控解决方案全面实现。每种云服务或平台都提供自己的一组可用指标与警报,但大家还需要结合需求使用Librato或Datadog等外部系统,或者在Prometheus上构建自定义监控服务。总之,一切选择都应该以合理的预算、时间及任务需求为基础。
安全性
安全保障确实不是DevOps工程师的核心职责。但是,大家必须掌握相关安全基础知识。端点上部署SSL,策略中没有*号,不存在公开或可写入的存储桶、分区需要进行加密,注意部署封闭的防火墙、安全组以及多因素验证等等。另外,DevOps还应该与安全部门合作,在实现流程自动化的同时快速在服务中应用新的安全策略。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。