应用程序堆栈的复杂性不断提高。 方式,方式。 应用程序堆栈一直很复杂,但从来没有像现在这样。 有这么多的服务,这么多的工具,那么多的可用计算能力,这么多的新技术可以尝试,并且总是需要用新的,更酷的和更优雅的方式解决问题的愿望和压力。 有这么多玩具可以玩,每天都有更多玩具可以玩,玩具箱很难把它们全部包住。

如果您不熟悉stackshare.io ,请查看一下。 这是查看公司正在使用哪些组件来构建其应用程序的好资源。 除了有用之外,还可以很有趣。

花几分钟时间浏览那里的一些堆栈,您会发现人们组装的一些技术集合令人着迷。 这是我特别喜欢的示例:(深呼吸)EC2 S3 Qubole MongoDB Memecached Redis Django Hadoop nginx Cassandra MySQL Google Analytics(分析)SendGrid Route53 Testdroid Varnish Zookeeper。

这就是Web服务器,Web应用程序服务器,缓存代理服务器,发现服务,一些服务即服务以及六个具有各种风格和功能的“数据库”。 (当然,所有这些都是开源的或专有的服务。两者之间的联系往往很少。)

任何人站在白板前写下“ 我们需要六个数据库”的可能性极小! 用紫色的干擦笔,但这就是基础架构快速扩展以满足业务需求时发生的情况。 开发人员判断对错是最好的新工具,然后将其投入生产。 在那一刻,这个很酷的新工具立即变成了旧版应用程序,您必须对其进行处理,直到对其进行重构(ha!),或者直到您退出以执行其他操作并留下下一个可怜的傻瓜来处理它为止。

如何应对

那么开发人员如何应对所有这些复杂性呢? 事实证明,这比人们预期的要好。

强大的nextgen位置感知在线组合赌博/约会/共享经济平台将需要大量不同的服务和组件。 但是每个宏伟的计划都有一个简单的开始,任何超可伸缩的大型解决方案的每个组件都是从一些地方的一些代码开始的。 对于大多数团队来说,那是一些不起眼的开发人员笔记本电脑,以及一个绑定它们的git存储库。

我们谈论的是云计算革命,但我们谈论的笔记本电脑革命却很少。 当今的开发人员笔记本电脑,结合虚拟化和容器化技术的进步,现在允许在笔记本电脑上完全建模复杂的多系统环境。 现在可以安全地使用多个“计算机”,因为这些多个单独的“计算机”都可以在笔记本电脑上轻松实例化。

结果:复杂,多系统应用程序堆栈的开发环境现在可以可靠且可重复地安装在单个笔记本电脑上,并且可以轻松地在整个团队之间共享对任何环境或所有环境的更改,因此每个人都可以快速重建相同的环境。 例如, ceph-ansible是使用由Vagrant构建并由Ansible协调的多个VM在笔记本电脑上部署和测试多节点Ceph群集的工具 ,所有这些都可以通过一个命令来完成: vagrant up 。 Ceph开发人员现在正在使用此工具。

这种复杂的多节点部署已经变得司空见惯,这意味着对机器之间的关系进行建模现在与管理这些单独机器上的内容一样重要。

Docker和Vagrant之所以成功,是因为它们是两种简单的说法:“这是这台机器上的东西,这是启动它的方法。” Ansible两者都取得了成功,因为这是一种简单的说法,即“这是这些机器的交互方式,也是启动它们的方法”。 它们一起使开发人员可以构建复杂的多计算机环境,从而使它们易于描述和重建。

人们常说,DevOps本质上是一场对话。 这可能是对的,但是当每个人都说相同的语言时,这是最成功的对话。 Vagrant,Docker和Ansible之所以能见到成功,是因为它们使人们能够使用相同的建模和部署语言。

简单
开发运维

本文是由Greg Dekoenigsberg协调的Easy DevOps专栏的一部分。 通过open@opensource.com与我们联系,分享您的故事和建议,以及使工具运维,过程,文化,成功和光荣/不光彩的失败,以及有助于使DevOps实用的知识

翻译自: https://opensource.com/business/15/5/why-Docker-Vagrant-and-Ansible

为什么Docker,Vagrant和Ansible等工具比以往更热门相关推荐

  1. docker安装部署ansible并打包

    docker安装部署ansible并打包 前言 部署过程 效果展示 前言 ansible作为一个高效的自动化运维管理工具,在管理服务器和网络设备上有着明显的优势,但是ansible需要在主控端安装相关 ...

  2. 【云原生之Docker实战】使用Docker部署ShowDoc文档工具

    [云原生之Docker实战]使用Docker部署ShowDoc文档工具 一.ShowDoc介绍 1.ShowDoc简介 2.ShowDoc功能 二.检查docker版本 三.检查docker状态 四. ...

  3. Docker swarm集群管理工具

    1. 简介 Docker Swarm 是Docker的集群管理工具,简单方便.易于上手. Swarm集群由以下两个组件构成: Mananger:负责整个集群的管理工作包括集群配置.服务管理等所有跟集群 ...

  4. 群晖NAS教程(十六)、利用Docker安装GitLab管理代码工具

    为了更好的浏览体验,欢迎光顾勤奋的凯尔森同学个人博客 群晖NAS教程(十六).利用Docker安装GitLab管理代码工具 群晖DSM上安装GitLab有两种方式,一种是直接在群晖套件上安装,另一种是 ...

  5. 中秋征文 | 【云原生之Docker】使用docker部署内网穿透工具FRP

    中秋征文 | [云原生之Docker]使用docker部署内网穿透工具FRP 一.卷首语 二.FRP介绍 1.frp简介 2.frp支持的系统 3.本次frp部署目的 三.检查本地docker状态 1 ...

  6. 云原生之使用Docker部署LimeSurvey在线调查工具

    云原生之使用Docker部署LimeSurvey在线调查工具 一.LimeSurvey介绍 1.1 LimeSurvey简介 1.2 LimeSurvey特点 1.3 LimeSurvey使用场景 1 ...

  7. @Docker三剑客(三大编排工具):Compose、Machine和Swarm

    文章目录 Docker 一.Docker三大编排工具: 二.Docker Compose [compose的概述] [compose的核心概念] [安装Docker compose] 三.Docker ...

  8. 【云原生之Docker实战】使用Docker部署excalidraw白板绘图工具

    [云原生之Docker实战]使用Docker部署excalidraw白板绘图工具 一.excalidraw介绍 1.excalidraw简介 2..excalidraw特点 二.检查本地docker状 ...

  9. 【云原生之Docker实战】使用docker部署Notepad个人记事本工具

    [云原生之Docker实战]使用docker部署Notepad个人记事本工具 一.Notepad介绍 1.Notepad简介 2.Notepad功能 二.检查宿主机系统版本 三.检查本地docker环 ...

最新文章

  1. TSC打印机编程C#
  2. XDU 翼讯账号算法
  3. MapReduce Java API实例-统计出现过的单词
  4. tp3 默认模块 默认方法_您需要了解的有关默认方法的所有信息
  5. 编写下载服务器。 第四部分:有效地实现HEAD操作
  6. POJ-3041 匈牙利算法 二分图最大匹配
  7. Linux下Apache安装与配置(详细步骤+代码+验证)
  8. Raki的读paper小记:Sources of Transfer in Multilingual Named Entity Recognition
  9. Spine 1.73+ 和谐版
  10. 设置networkx中每个节点的位置
  11. PHP自学笔记 ---李炎恢老师PHP第一季 TestGuest0.8
  12. L2-029 特立独行的幸福 (25 分) 搜索回溯
  13. c语言兵器谱,程序员兵器谱——那些男人们梦寐以求的终极键盘
  14. 北京新生儿医保办理指南
  15. 光网视与您相约安防工程高级管理人员培训--江苏站
  16. OceanBase | OBCA认证考试
  17. Erlang之父Joe Armstrong近期回顾的一些旧事
  18. Excel vba按照表头字段选择列复制表
  19. PS创建选区的工具-----套索工具组
  20. 谈谈赋能执行力的理解

热门文章

  1. springboot整合alibbaba-dubbo
  2. Hexo+NexT搭建博客笔记
  3. 文件传输-对数据进行加解密的方法!
  4. shell实战训练营Day14
  5. Swift实现UIKit Dynamic动画
  6. ubuntu 安装五笔
  7. atitit,it人怎么样才容易事业成功?? 有以下五种性格的人容易成功
  8. 原型图和设计常犯错误,导致前端页面返工
  9. ImportError: No module named urllib2
  10. kmp算法 php,漫画KMP算法-程序员小灰