热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

2019年DevOps实践中最有价值的8大技能

2019 年 DevOps 实践中最有价值的8大技能作者 | Shane Boulden译者 | 杨雷2019 年,DevOps 越来越普及,想成为 DevOps 工程师的话需要具备哪些技能呢?

2018 年 DevOps 世界出现了一股 Kubernetes 浪潮,几乎每个供应商都开发了自己的 Kubernetes 产品,例如 NetApp Kubernetes,Puppet DevOps 仪表板,RedHat 的 OpenShift 等等。

RedHat 的 DevOps 认证专家 Shane Boulden,列出了 8 条最有价值技能的“DevOps Top 8”,方便 DevOps 从业人员或那些有志成为 DevOps 专家的人员带来一些经验教训。

部署和使用合适的 Kubernetes

Kubernetes 是 DevOps 应用必须掌握的一个平台,允许开发人员和运营商使用相同的 API 管理平台和容器化应用程序。直接学习上游存储库的代码通常的效果会让自己越来越迷茫,建议选择下游的底层从头到尾学习。例如,可以选择 OpenShift 容器平台,以及最新的 OpenShift 迭代,全面地学习 Operator 框架。

配置和管理基于微服务的可扩展应用程序

在 2019 年,部署和管理 Kubernetes 上的应用程序是 DevOps 从业者的基本技能。可以使用命令行工具(如“kubectl”)与 Kubernetes API 进行交互,甚至可以使用自定义脚本直接与 Kubernetes API 进行交互。例如,Python Kubernetes 客户端的' load_incluster_config ',或者下载 API 来使用应用程序内的 pod 元数据。

部署可扩展的监控解决方案,通过产生的指标数据能更好地进行监控性能。例如,Prometheus 和 Grafana。使用 node_exporter 通过 Prometheus 节点可以导出操作系统指标,使用 Micrometer 等库可以导出应用程序级指标。不论是开发人员还是运营商可以使用相同的监控基础架构,提高团队之间的工作效率。

掌握自动化工具

自动化一直是 DevOps 的核心,DevOps 领域的自动化专家能带来更高的可信度。在 2019 年,应该努力获得专家级的自动化工具知识,例如 Ansible,Chef,Puppet 或直接使用 Bash。应该能够与开发人员一起轻松实现配置管理、测试和生产部署等所有方面的自动化,并且希望至少尝试使用“蓝绿”(blue-green)或“金丝雀”(canary)等自动高级部署技术。

Ansible 可以在混合云中实现自动化配置和应用程序配置,利用 Ansible Operators 可以将自动化技能应用到 Kubernetes,并使用 Operator 框架管理复杂和有状态的应用程序。

容器化应用程序的最小化构建

创建基本的 Dockerfile 并调用应用程序“容器化”,如果只懂得这样处理就太落伍了。2019 年的 DevOps 从业者应该掌握如何优化容器化应用程序的构建,最小化容器的镜像文件,最小化运行时的依赖性。构建较小的映像意味着容器注册表中消耗的存储空间更少,并且最大限度地减少容器内的运行时依赖性使潜在攻击的攻击面最小。

不需要在已部署的容器中使用 GCC,但可能需要它来构建 Python 的依赖项。在这种情况下,最好使用多阶段容器构建 -- 不再需要构建一体化的镜像,只要在注册表中为生产部署提供分阶段的强化、精简的 Alpine 基础镜像。

使用多个不同容器 runtime 进行交互

多年来,Docker 一直主导着 Linux 的容器世界,提供了简单的容器图像格式和易于使用的 CLI。Docker 在 2019 年的影响力正在逐渐减弱,它在 2018 年对其产品进行了一系列令人困惑的变化,以便将该平台货币化,其开源项目 Moby 的状态仍不明朗。2018 年还启动了一些新的开源容器计划,例如 CRI-O,现在是 Kubernetes 的默认容器 runtime。对于 2019 年的 DevOps 从业者,Docker 仍然很重要,因为它牢牢扎根于开发人员和 IT 主管的词汇中。应该理解如何在 Docker 和其他容器 runtime 之间进行交互,比如 Docker 的 fat-daemon 模型和 Podman 的 fork/exec 模型,还要掌握它们如何与容器平台(如 Kubernetes)进行交互。

了解并可以管理委派的身份验证和授权

容器化应用程序的兴起意味着管理应用程序身份验证和授权的变化,尝试在容器内部打破 Kerberos 或 FreeIPA 客户端是很痛苦的,导致了许多黑客攻击来让工作正常进行。2019 年将使用 OpenID Connect 和 OAuth 2 等协议来创建易于扩展的应用程序架构,作为 DevOps 从业人员应该乐于使用 OpenID Connect 来提供身份验证,并管理应用程序的多因素验证。

成为操作系统专家级工程师

操作系统的角色在 2019 年没有改变,仍然是所有内容的基础,它决定了 DevOps 平台的成败。无论个人偏好是基于 Debian 还是基于 RedHat,或者是最新的容器优化的操作系统,成为核心操作系统管理和工程方面的专家仍然至关重要。例如,获得 RedHat 认证系统管理员和 RedHat 认证工程师的证书,为开发人员和运营商提供可信的保障,当任何事情发生时,可以直接访问操作系统并解决问题。

掌握最好的学习方式

DevOps 是一个不断变化、不断发展的世界,要努力继续缩短开发人员和运营商之间的反馈循环。随着框架的发展和流程的变化,了解如何最好地学习是很重要的。Shane Boulden 认为,无论是通过实践学习,还是直接阅读手册,都无关紧要,目标是尽可能高效地学习。

英文原文:https://medium.com/@shane.boulden/what-does-it-mean-to-be-a-devops-practitioner-in-2019-12f8f190b89e



推荐阅读
  • k8s(十一)helm安装premetheus
    1prometheus基础知识1.1prometheus简介Prometheus是一套开源的系统监控报警框架。和Kubernetes类似,它也发源于Google的Borg体系,其原 ... [详细]
  • 自动化部署服务——AWS CodeDeploy 快速入门
    https:amazonaws-china.comcnblogschinagetting-started-with-codedeploy作为DevOps和微服务的深入践行者 ... [详细]
  • 以下内容|尾部_quarkus实战之一:准备工作
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了quarkus实战之一:准备工作相关的知识,希望对你有一定的参考价值。欢迎访问我的GitHub ... [详细]
  • 局限性_Scrum框架的局限性
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Scrum框架的局限性相关的知识,希望对你有一定的参考价值。在很多工作坊的讨论中, ... [详细]
  • kafkamanager(cmak)安装及使用
    1.软件下载kafka-manager工具目前改名为cmak,下载地址为:https:github.comyahooCMAKreleasestag3.0.0.5现在 ... [详细]
  • Mac下Flutter安装AndroidStudio配置
    补一个Mac下Flutter安装AndroidStudio配置(官网地址:https:flutter.devdocsget-startedinstallmacos)1.下载安装包; ... [详细]
  • python 鸭子类型_Python中的鸭子输入是什么?
    python鸭子类型Python遵循EAFP(比许可更容易请求宽恕)而不是LBYL(跨越式)。EAFP的Python哲学在某 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • 开发笔记:DevOps Gitlab环境部署
    本文由编程笔记#小编为大家整理,主要介绍了DevOpsGitlab环境部署相关的知识,希望对你有一定的参考价值。DevOps介绍 ... [详细]
  • Ubuntu下怎么安装docker-ce
    这篇文章主要介绍“Ubuntu下怎么安装docker-ce”,在日常操作中,相信很多人在Ubuntu下怎么安装docker-ce问题上存在疑惑,小编查阅了各式资料,整 ... [详细]
  • 大幅|大盘_OPLG:新一代云原生可观测最佳实践
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了OPLG:新一代云原生可观测最佳实践相关的知识,希望对你有一定的参考价值。简介: ... [详细]
  • kubeadm构建k8s之Prometheusoperated监控(0.18.1)
       介绍:    大家好,k8s的搭建有许多方式,也有许多快速部署的,为了简化部署的复杂度,官方也提供了开源的kubeadm快速部署,最新1.10.x版本已经可以实现部署集群,  ... [详细]
  • docker 多物理机容器_Docker(1) 什么是 Docker
    ​1|0学习Docker前的必备知识1|1环境配置的烦恼软件开发最大的麻烦事之一,就是环境配置相信每位编程初学者都会在环境配置上倒腾很久,而作为老师也会 ... [详细]
  • 从零到devops(除了docker还有什么容器)
    2月9日,在云栖计算之旅线下沙龙上,阿里云容器服务团队的高级研发工程师mmddy分享了《基于容器技术的DevOps探索》。首先介绍了DevOps和CD,接着分析了Docker如何打 ... [详细]
  • 解析rainbond以应用为中心的架构设计原理_java
    这篇文章主要为大家介绍了rainbond以应用为中心的架构设计实现及原理解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多 ... [详细]
author-avatar
rgx-秀_550
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有