给 DevOps 初学者的入门指南 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Imshaha
V2EX    DevOps

给 DevOps 初学者的入门指南

  •  
  •   Imshaha 2016-09-28 14:28:54 +08:00 10092 次点击
    这是一个创建于 3298 天前的主题,其中的信息可能已经有所发展或是发生改变。

    当我们谈到 DevOps 时,可能讨论的是:流程和管理,运维和自动化,架构和服务,以及文化和组织等等概念。那么,到底什么是"DevOps"呢?

    什么是 DevOps

    随着软件发布迭代的频率越来越高,传统的「瀑布型」(开发测试发布)模式已经不能满足快速交付的需求。 2009 年左右 DevOps 应运而生,简单地来说,就是更好的优化开发(DEV)、测试(QA)、运维(OPS)的流程,开发运维一体化,通过高度自动化工具与流程来使得软件构建、测试、发布更加快捷、频繁和可靠。

    flow.ci

    关于 DevOps 是什么, DevOps 的合著者 John Willis 写了一个非常好的帖子,在这里.

    Devops 的好处与价值

    2016 DevOps 新趋势调查报告显示, 74% 的公司在尝试接受 DevOps ,那么 Devops 有哪些好处与价值呢?

    • 代码的提交直接触发:消除等待时间,快速反馈

    • 每个变化对应一个交付管道:使问题定位和调试变得简单

    • 全开发流程高效自动化:稳定,快速,交付结果可预测

    • 持续进行自动化回归测试:提升交付质量

    • 设施共享并按需提供:资源利用最大化

    以上可以看出, DevOps 的好处更多基于在于持续部署与交付,这是对于业务与产品而言。而 DevOps 始于接受 DevOps 文化与技术方法论,它是部门间沟通协作的一组流程和方法,有助于改善公司组织文化、提高员工的参与感。

    Devops 与持续集成

    DevOps 是一个完整的面向 IT 运维的工作流,以 IT 自动化以及持续集成( CI )、持续部署( CD )为基础,来优化程式开发、测试、系统运维等所有环节。

    纵观各个 DevOps 实践公司的技术资料,最全面最经典的是 flickr 的10+ deploys per day最佳实践提到的 DevOps Tools 的技术关键点:

    1.Automated infrastructure (自动化,系统之间的集成) 2.shared version control ( SVN 共享源码) 3.one step build and deploy (持续构建和部署) 4.feature flags (主干开发) 5.Shared metrics 6.IRC and IM robots (信息整合) 

    以上的技术要点由持续集成 /部署一线贯穿,主干开发是进行持续集成的前提,自动化以及代码周边集中管理是实施持续集成的必要条件。毫无疑问, DevOps 是持续集成思想的延伸,持续集成 /部署是 DevOps 的技术核心,在没有自动化测试、持续集成 /部署之下, DevOps 就是空中楼阁。

    我们做了一款 Hosted 持续集成产品 flow.ci ,它融入了 workflow 机制的持续集成( CI )服务,也可以理解为自动化流程平台,除了集成代码、编译、测试之外,还可以集成常用的工具、灵活自定义流程,帮助你们塑造一个更优秀智能的 DevOps 环境。

    flow.ci

    DevOps 的技术栈与工具链

    Everything is Code , DevOps 也同样要通过技术工具链完成持续集成、持续交付、用户反馈和系统优化的整合。Elasticbox 整理了 60+ 开源工具与分类,其中包括版本控制&协作开发工具、自动化构建和测试工具、持续集成&交付工具、部署工具、维护工具、监控,警告&分析工具等等, 补充了一些国内的服务,可以让你更好的执行实施 DevOps 工作流。

    • 版本控制&协作开发: GitHub 、 GitLab 、 BitBucket 、 SubVersion 、 Coding 、 Bazaar

    • 自动化构建和测试:Apache Ant 、 Maven 、 Selenium 、 PyUnit 、 QUnit 、 JMeter 、 Gradle 、 PHPUnit

    • 持续集成&交付:Jenkins 、 Capistrano 、 BuildBot 、 Fabric 、 Tinderbox 、 Travis CI 、 flow.ci 、 Continuum 、 LuntBuild 、 CruiseControl 、 Integrity 、 Gump 、 Go

    • 容器平台: Docker 、 Rocket 、 Ubuntu ( LXC )、第三方厂商如( AWS/阿里云)

    • 配置管理: Chef 、 Puppet 、 CFengine 、 Bash 、 Rudder 、 Powershell 、 RunDeck 、 Saltstack 、 Ansible

    • 微服务平台: OpenShift 、 Cloud Foundry 、 Kubernetes 、 Mesosphere

    • 服务开通: Puppet 、 Docker Swarm 、 Vagrant 、 Powershell 、 OpenStack Heat

    • 日志管理: Logstash 、 CollectD 、 StatsD

    • 监控,警告&分析: Nagios 、 Ganglia 、 Sensu 、 zabbix 、 ICINGA 、 Graphite 、 Kibana

    flow.ci

    顺便再分享一个 DevOps BookMarks,涉及了 DevOps 方方面面的工具和内容,有兴趣的同学可以去学习下。

    DevOps 最佳实践

    自 2009 年提出 DevOps 的概念起,很多公司都开始实施 DevOps ,国外比较著名的有 Amazon 、 Google 、 Facebook 等,国内著名的有百度、华为、阿里等。 Amazon 是 DevOps 最佳实践的最有说服力的代表之一。这是 Amazon 在 Why We Need DevOps 一个月的 DevOps 快照:

     11.6 seconds: 平均部署时长 (工作日) 1,079: 一小时的最大部署量 10,000: 主机平均并发接收部署量 30,000: 主机最高并发接收部署量 

    从早期的大型 SOA (Service Oriented Architecture)到 DevOps 文化的形成, Amazon 的每个工程师都可以完全独立地编写代码,测试代码,版本管理,部署上线,服务监测等任务。这套内部强大的 DevOps 文化最终形成核聚变, Amazon 一跃成为世界级别的云服务领导者 Amazon Web Services (AWS)。

    除了 Amazon 外还有一些国内外的 DevOps 实践公司,一起来看看。

    • flickr

    最全面最经典的是 flickr 的10+ deploys per day,简直是 DevOps 教科书般的存在。

    • 百度

    百度技术团队是如何利用 DevOps ,来看看解密百度持续交付方法与实践

    • Netflix

    解密 Netflix 技术团队在整个 DevOps 过程中使用的部署工具和服务.

    How We Build Code at Netflix.

    • Etsy

    2009 年, Etsy 建立自己的工具来更好更快地部署发布,「 Etsy 如何应用 DevOps 」值得一读。

    • LinkedIn

    2009 年, LinkedIn 团队就开始使用自动化部署工具,用于管理在 1000+节点环境下发布上千个应用 /服务的复杂性。这是 LinkedIn 自己造的轮子 >>Deployment and Monitoring Automation with glu.

    • Airbnb

    Airbnb 作为第三方平台公司,需要迅速发布多个小型部署。关于 Airbnb 的数据和基础设施,可以参考这个slides

    • Starbucks

    星巴克的 DevOps 计划>> Starbucks Announces #DevOpsTogether.

    Ancestry.com 是 DevOps 运动的早期采用者,是 Continuous Delivery 和 DevOps 运动的先锋。想了解更多关于他们的过程、迁移和 DevOps 文化,不妨查看一下他们的系列文章http://blogs.ancestry.com/techroots/category/devops/

    DevOps = Culture + Tools

    如果想整个业务部署 DevOps ,不但需要软性要求即从上而下的培养 DevOps 文化自上而下地进行探索,也有硬性工具链要求,才能获得更高质量的软件交付。

    最后,不论你是技术 Leader ,还是一名 Dev 、 QA 或 Ops ,实现全面的 DevOps 非常理想化也十分有挑战,希望这份 DevOps 初学者指南是一个好的开始:)


    24 条回复    2019-09-29 20:36:12 +08:00
    ssoftlns
        1
    ssoftlns  
       2016-09-28 14:37:08 +08:00
    这么漂亮的妹纸 支持一下!
    yongSir
        2
    yongSir  
       2016-09-28 14:39:58 +08:00
    如果头像是本人的话
    本帖要火
    felmoon
        3
    felmoon  
       2016-09-28 14:44:42 +08:00
    严肃点 都是进来学习的
    Imshaha
        4
    Imshaha  
    OP
       2016-09-28 17:12:19 +08:00
    @ssoftlns ha 谢谢!
    @yongSir 是本人,但帖子没火=.=!
    mobyride
        5
    mobyride  
       2016-09-28 18:00:28 +08:00
    很有收获!~
    damonzheng
        6
    damonzheng  
       2016-09-28 18:06:53 +08:00
    转载的? 这帖子貌似见过
    v166ex
        7
    v166ex  
       2016-09-28 18:24:23 +08:00
    Mark
    wizardforcel
        8
    wizardforcel  
       2016-09-28 18:26:32 +08:00
    要火~
    AdamMaggie
        9
    AdamMaggie  
       2016-09-28 18:32:03 +08:00 via Android
    mark ,最近刚好在折腾这些东西
    tinkerer
        10
    tinkerer  
       2016-09-28 19:00:38 +08:00
    自从围上围巾后没换过头像...口亨。
    不过有干货。
    ywgx
        11
    ywgx  
       2016-09-28 21:51:33 +08:00
    说到 DevOps , 那么第一个问题, 你们技术同学 申请登录线上机器权限流程是否顺畅 ?

    xabcloud.com 提供业界专业的企业级解决方案,拿起手中的电话,赶快 订购吧
    yingling
        12
    yingling  
       2016-09-28 21:56:42 +08:00
    我只想问妹子可以约吗?
    hmli
        13
    hmli  
       2016-09-28 22:01:46 +08:00
    @ywgx
    你司官网好丑
    ywgx
        14
    ywgx  
       2016-09-28 22:48:32 +08:00 via iPhone
    @hmli 喜欢简约
    rootooroot
        15
    rootooroot  
       2016-09-28 22:52:05 +08:00
    看到头像就进来了
    mingyun
        16
    mingyun  
       2016-09-28 23:07:57 +08:00
    我看头像进来的
    messense
        17
    messense  
       2016-09-28 23:19:59 +08:00
    有需要 self hosted CI for BitBucket 可以看看我厂开源的 badwolf 哦

    t/307297

    https://github.com/bosondata/badwolf
    zizifu
        18
    zizifu  
       2016-09-28 23:29:30 +08:00
    @rootooroot 同样看到头像进来的~
    jonechenug
        19
    jonechenug  
       2016-09-29 08:27:21 +08:00 via Android
    这个月在 infoq 看了同样的内容
    tmackan
        20
    tmackan  
       2016-09-29 13:55:48 +08:00
    要 要 要 要 要 要
    Imshaha
        21
    Imshaha  
    OP
       2016-10-10 15:03:20 +08:00
    Imshaha
        22
    Imshaha  
    OP
       2016-10-10 15:09:22 +08:00
    @tinkerer
    @AdamMaggie
    @mobyride
    谢谢支持!
    jiangbingo
        23
    jiangbingo  
       2018-05-08 16:25:06 +08:00
    自动化测试一枚, 前来学习~
    cv1441
        24
    cv1441  
       2019-09-29 20:36:12 +08:00
    头像吸引人
    /div>
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     860 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 21:12 PVG 05:12 LAX 14:12 JFK 17:12
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86