学习 DevOps 的 15 门优秀在线课程

DevOps:提升IT效率的基石

DevOps 如今已成为IT工程师圈子里的热门话题。 这并不奇怪,因为它能帮助企业显著降低成本,并提高应用程序的可靠性。

从初创公司到大型机构,似乎每个人都在拥抱DevOps。这背后有着充分的理由。DevOps 方法的核心在于促进开发(Dev)团队和运维(Ops)团队之间的紧密协作,从而加速并优化产品交付流程。

什么是DevOps?

DevOps 并非简单的工具或技术,而是一种理念,它强调企业中两个至关重要的部门——软件开发团队和IT运维团队——之间的密切合作和信息共享。DevOps 确保了这两个团队之间的有效沟通,从而助力组织在最短的时间内,以最少的问题交付最终产品。

DevOps 如何助力企业?

  • 缩短交付周期:实施DevOps 的主要优势之一是显著缩短软件交付时间。 组织的目标通常是在最短时间内交付软件。 DevOps 采用敏捷原则,保证了软件的快速交付。
  • 增强团队协作:DevOps 强调团队内部的协作,这有助于在软件开发周期的早期识别问题。 团队可以及时采取行动,优化软件。
  • 降低问题复杂性:DevOps 方法通过在产品中提供增量改进,有效降低了问题的复杂性,确保问题不会变得过于棘手。
  • 跨技能发展:采用DevOps 模式的员工通常拥有更高的工作满意度,因为他们能够提升自身能力,掌握新技能。

DevOps 的益处是多方面的。 无论您是经理、开发人员还是运维人员,在当前形势下,学习 DevOps 都是一个明智的选择。

DevOps 技能需求旺盛,以下这些在线资源将帮助您高效地学习它们。

Ansible 入门

这门 Udemy 课程是 Ansible 初学者的理想选择。 它从 Ansible 的基础知识开始,并通过实践练习来加深理解。 更棒的是,您可以直接在浏览器中完成这些练习。

课程涵盖的主要主题包括:

  • Ansible 基础知识介绍
  • YAML 简介(包含练习)
  • 构建 Ansible Inventory 文件(包含练习)
  • 使用 Ansible 自动化配置/Web 服务器部署

课程要求:本课程要求具备 Linux 命令行操作的基本知识。 有 Linux 系统者更佳,但并非必需。

适合人群:系统管理员、云和 DevOps 工程师、自动化工程师,以及任何对学习 Ansible 感兴趣的人。

Terraform

接下来要介绍的是另一门关于使用 Terraform 进行自动化的 Udemy 课程。 Terraform 是适用于所有主流云服务提供商的基础架构自动化工具,对于任何希望深入了解 DevOps 的人来说,掌握它无疑是一个加分项。

这门 10 多小时的课程涵盖以下内容:

  • Terraform 基础知识,包括高级功能。
  • 使用 Terraform 预置 AWS 资源
  • 准备 HashiCorp Terraform 认证
  • 使用 Packer 创建自定义镜像
  • 将 Terraform 与 AWS ECS、Fargate 和 CodePipelines 集成使用
  • 使用 Terraform 应用 DevOps

课程要求:本课程要求您拥有一个 AWS 账户,或创建一个免费的 AWS 账户用于实践练习。

Kubernetes 学习

Kubernetes 是一种容器编排工具,在 DevOps 社区中备受推崇。 它是 DevOps 生命周期中的关键驱动因素,让您可以轻松部署高可靠性的容器化应用程序。

本课程涵盖 Kubernetes 的构建、部署和维护,具体主题包括:

  • Kubernetes 的安装和配置
  • 在 Kubernetes 上设置集群并运行应用程序。
  • 了解 Healthchecks、Secrets、ConfigMaps、放置策略
  • 在 Kubernetes 上部署 Cassandra 集群
  • 了解用户、配额/限制、节点维护
  • 在 Kubernetes 上设置监控
  • 使用具有持久性的卷
  • 使用指标扩展应用程序
  • 使用 Helm 打包应用程序并使用 Jenkins 部署 Helm Charts。
  • 了解使用 kubeless 运行无服务器功能
  • 了解使用 Istio 部署服务网格
  • 使用 Skaffold 进行开发

课程要求:具备 Linux、Docker、AWS 的基本知识将有所帮助,但不是强制性的。 建议访问 Linux 机器和 AWS 账户,但也不是必需的。

DevOps 基础

这门来自 LinkedIn Learning 的 DevOps 课程涵盖了 DevOps 的基础知识。 各种工具都实现了 DevOps 的愿景。 全面了解 DevOps 方法和工具对于奠定坚实的基础至关重要。

课程内容包括:

  • DevOps 运动,重点关注 CAMS 的核心价值(文化、自动化、度量和共享)
  • 组织可以采用的方法和工具,实现向 DevOps 的过渡
  • ITIL、ITSM 和 SDLC 等原则如何融入 DevOps
  • 关于基础设施自动化、持续交付和可靠性工程的探讨
  • 对组织从云过渡到无服务器架构的未来展望

适合人群:任何希望从理论层面了解 DevOps 的人。

AWS DevOps

Whizlabs 提供的 AWS Certified DevOps Engineer Professional 培训,包含超过 13 小时的培训视频、动手实验室,以及 5 次模拟亚马逊 AWS Certified DevOps Engineer Professional 考试的实践测试。

除了 AWS 概念和最佳实践,课程中还涵盖了以下与认证要求相关的重要主题:

  • AWS Codepipeline,代码部署
  • CloudFormation、CloudTrail、Cloudwatch、CloudFront
  • SQS
  • Elastic Beanstalk、Elasticache
  • AWS OpsWork 堆栈
  • EC2、EBS
  • AWS 配置
  • SSM,IT 治理
  • 自动缩放
  • 多区域和多可用区
  • ELB、RDS
  • DevOps 的 A/B 测试和蓝/绿部署
  • Lambda
  • API 网关

适合人群:任何想要准备 AWS Certified DevOps Engineer Professional 考试,或对学习 DevOps 感兴趣,尤其是从 AWS 云角度出发的人。

DevOps 和 SRE

这是 Linux Foundation 提供的入门级课程,旨在学习 DevOps 和站点可靠性工程的最佳实践,涵盖的主题包括 DevOps 方法、云计算、容器和 CI/CD 概念。

本课程的主要内容包括:

  • DevOps 和站点可靠性工程的介绍
  • 云计算
  • 容器技术
  • 基础设施即代码
  • 持续集成/持续交付
  • 可观察性
  • 期末考试(仅限已验证的证书课程)

课程要求:要充分利用本课程,您需要对 Linux 系统和网络、脚本知识、安全性以及虚拟化概念有基本的了解,并具备系统管理和故障排除技能。

适合人群:渴望了解 DevOps / 站点可靠性工程的人。

实施 DevOps

这是 Linux Academy 提供的另一门 DevOps 课程,它介绍了开放容器生态系统中 CI/CD 的基本知识。 它更侧重于帮助那些渴望学习现代开发技术和方法的开发人员,同时让您做好准备,以敏捷的方式快速交付功能。

本课程涵盖的重要概念如下:

  • 持续交付的概念
  • 设置:创建学习环境
  • 使用 Docker 进行容器操作的基础知识
  • 使用 Git 进行修订控制
  • 使用 Jenkins 设置持续集成
  • 使用 Jenkinsfile 的管道即代码
  • 使用 Docker 简化 CI 管道
  • 使用 Docker 打包应用程序
  • 使用 Docker Compose 向开发人员持续交付
  • 持续自动化测试
  • 使用 Kubernetes 大规模运行应用程序
  • 使用 Spinnaker 进行持续部署

课程要求:要参加本课程,您需要具备基本的 Linux 和系统管理知识,并了解软件交付流程。 建议使用 AWS 或 GCP 的云账户进行练习。 您始终可以选择主要云服务提供商的免费套餐。

软件优化

接下来的这门课程是由 Universidades Anáhuac (AnahuacX) 在 edX 上提供的 DevOps 基础课程。 本课程涵盖 DevOps 的基本知识,以及持续集成和持续交付方法、容器化应用程序、软件开发中的自动化流程以及 DevOps 安全和测试的基础知识。

该课程进一步分为两个部分,涵盖以下主题:

DevOps CI/CD 管道:从开发到部署的自动化

  • 使用 Ansible 配置 laaS
  • 使用 Terraform 创建基础设施
  • 使用 Jenkins 进行 CI/CD
  • CI/CD 过程中的测试
  • DevSecOps 简介

DevOps:基础和结构工具

  • DevOps 简介
  • 持续集成/持续部署
  • 基础设施即代码
  • 使用 Docker 在容器中创建应用程序
  • Puppet:宏观视角

课程要求:基本编程知识,可选的基本 Linux 技能和命令行经验。 有 Git 经验者优先。

DevOps 认证

Edureka! 提供深入了解各种流行的 DevOps 工具和 DevOps 交付模型的各个方面的课程。 它是一种基于实践的培训,旨在帮助您成为经过认证的 DevOps 从业者,掌握 DevOps 领域的最佳实践和工具。

课程内容包括:

  • DevOps 概述
  • 使用 Git 进行版本控制
  • Git、Jenkins 和 Maven 的集成
  • 使用 Jenkins 进行持续集成
  • 使用 Selenium 进行持续测试
  • 持续部署:使用 Docker 进行容器化
  • 使用 Docker 进行容器化:生态系统和网络
  • 持续部署:使用 Puppet 进行配置管理
  • 使用 Ansible 进行配置管理
  • 使用 Kubernetes 进行容器化
  • 使用 Nagios 进行持续监控
  • 云上 DevOps 简介

适合人群:以下专业人士适合参加本课程:软件测试人员、系统管理员、解决方案架构师、安全工程师、应用程序开发人员和集成专家。

云开发运营

这门 Udacity 提供的为期 4 个月的纳米学位课程,涵盖了云概念、基础设施即代码、CI/CD 管道以及专注于开发和相关最佳实践的微服务。 课程结束时有实践练习和一个真实的项目,让您能够运用新学的技能。

本课程还为学生提供技术导师支持和职业服务。

本课程涵盖的主要主题包括:

  • 云基础
  • 部署基础设施即代码 (IAC)
  • 构建 CI/CD 管道、监控和日志记录
  • 使用 Kubernetes 的大规模微服务

适合人群:本课程非常适合刚接触 DevOps 领域并希望提升技能的初学者和专业/开发人员。

硕士课程

Simplilearn 为您提供的 DevOps 工程师硕士课程,通过超过 225 小时的应用学习和多个实际项目,为您在 DevOps 领域的职业生涯做好准备。 它涵盖了 DevOps 原则和持续开发与部署概念、配置管理,以及使用 Git、Docker、Jenkins 等 DevOps 工具进行的敏捷软件开发。

在这个 DevOps 工程师培训中,您还将深入了解敏捷和 Scrum 方法的基础知识,以及两个主要的云服务提供商,即亚马逊云服务 (AWS) 和微软 Azure。

该计划包含 7 门深入的课程,完成所有课程后,您将获得 DevOps 硕士证书。

  • DevOps 认证培训
  • Git 和 GitHub 培训
  • Jenkins 的 CI/CD 流水线
  • Docker 认证助理 (DCA) 认证培训课程
  • 认证的 Kubernetes 管理员
  • AWS 上的 DevOps
  • AWS 开发人员助理

DevOps 入门

想找一本入门书籍?

不如在亚马逊上购买这本书,学习如何自动化手动流程、构建框架、管理事件等等。

谷歌认证

通过 Coursera 提供的 SRE 和 DevOps 工程师以及 Google Cloud 专业认证,踏上技能提升和职业发展之路。

免费注册此认证,并学习在 SRE 原则的指导下,如何在 GCP 中监控、排除故障并增强应用程序和基础设施的性能。

通过此认证,您将获得的技能包括:SRE 文化、云计算、GCP、商业价值、Google Compute Engine、Google App Engine、持续交付、Jenkins 软件、Kubernetes、站点可靠性工程和灾难恢复。

该认证计划通过 Qwiklabs 平台提供动手实验室。 它将为您提供应用通过视频讲座所学知识的机会。 完成课程后获得可共享的认证,并按照自己的节奏学习。 完成课程大约需要 3 个月的时间。

CI/CD

以超值的价格,在 Udemy 上学习 DevOps、持续集成 (CI) 和持续部署或交付 (CD) 的概念。 本课程面向这些领域的初学者、分析师、运维人员、开发人员、刚接触 DevOps 的团队经理、软件架构师以及其他想要了解 CI、CD 和 DevOps 模型的专业人士。

本课程将帮助您了解通过实施 DevOps、CI 和 CD,如何提高上市速度和业务收入。 他们使用卡通、动画和强大的插图,以交互的方式解释概念,涵盖了几乎 90% 的课程内容。

他们用清晰的要点解释其余材料,以帮助您更好地理解。 该课程涵盖了与软件开发生命周期的传统方法相关的问题,以及 DevOps、CD 和 CI 如何发展并解决这些问题。

因此,它将为您奠定坚实的基础,在实施阶段为您提供更多帮助。 要开始本课程,您需要对软件开发生命周期有基本的了解。

Whizlabs

在 Whizlabs 上学习 DevOps 并成为认证的专业人士,以加快软件开发速度或获得高薪工作。 这个 DevOps 认证有助于专业人士展示和验证他们在利用 DevOps 工具(包括 Docker、Git、Kubernetes、Jenkins 等)方面的专业知识和技能。

Whizlabs 提供多种 DevOps 认证,例如:

  • Puppet 认证
  • Docker 认证助理
  • Kubernetes 与 Docker 和 AWS
  • OpenShift 基础知识
  • 红帽 OpenShift 管理
  • Ansible 基础知识
  • Git 基础知识
  • 认证的 Kubernetes 管理员
  • Docker Swarm
  • 认证的 Kubernetes 应用程序开发人员
  • Puppet 206
  • 认证的 Jenkins 工程师
  • 带有 Node Js/Dialog Flow 的聊天机器人
  • 使用 Terraform 实现基础设施自动化
  • 使用 GitLab 的 CI/CD
  • HashiCorp 认证的 Terraform 助理

Whizlabs 的认证讲师对考试有着深刻的理解,他们创建的课程可以帮助您为认证考试做好充分的准备。 他们采用独特的考试导向方法,创建易于学习的课程,非常适合自学。

结论

学习 DevOps 不仅仅是一个目标。 DevOps 是一种需要每天在工作中实践才能精进的方法。 因此,一旦您使用上述资源学习了 DevOps,就应该开始实践。

我们希望通过这些资源,帮助您提升自己和业务的持续性,并始终交付最佳的软件。