来源 | Ohad Maislish
译者 | 孙薇 责编 | 徐威龙
封图| CSDN下载于视觉中国
虚拟机的兴起
我还记得,我第一次听说虚拟机是在2002年,我们需要一种能够在Windows OS上运行Linux的方法。当头一次看到在VMware Workstation上运行的虚拟机时,我非常震惊。那时候,VMWare ESX及其竞争对手Xen(之后被Citrix收购)才刚兴起。
那时候,如果谁运行一家公司,是需要一个专门的空间来存放自己的物理服务器、交换机、空调以及其他计算机周边的。
最初我们尚不清楚虚拟化将在多大程度上改变IT市场。
云时代的黎明
几年之后,就在2007年,我很幸运地进入了B-Hive网络这家初创公司。幸运的点在于:2008年,我们就被VMWare收购了,得以亲眼目睹大众是如何开始讨论“云”话题的。
然而,VMWare努力构建自己的云,并专注与其他公司合作,基于VMWare的技术来构建云技术中心。
VMWare借助其产品ESX和vCenter(后来的vSphere)与Terremark公司合作,并经历了AWS逐渐壮大的过程(从EC2和S3服务开始)。
IaaS, PaaS, 以及SaaS
大约2010年前后,惊人的事情发生了,许多全新的解决方案飞速更迭,工程师开始更多考虑其软件的运行端。
我的代码将在何处运行?要用EC2实例(IaaS)吗?我要管理自己的服务器,还是干脆用PaaS?Heroku(2010年被Salesforce.com收购,是最元祖的云平台之一),AWS Elastic Beanstalk以及之后的Azure PaaS都是很棒的选择。
甚至,或许我可以不写任何代码,直接用SaaS解决问题。NewRelic,还有之后的SendGrid,Stripe和Auth0(一直)都是不错的方案。
配置管理
同时,团队会编写代码(主要用Bash、Perl和Python等语言编写脚本)来管理不同环境。
没有自动化,就无法管理这些更大更复杂的环境。Chef、Puppet以及后来的Ansible逐渐成为管理不同环境的标准化方式,各个环境有不同的配置。
环境创建仍是不太常用的手动操作,通过配置管理脚本让原本空空如也的基础架构生机勃勃起来。
Docker 和 Kubernetes
2014年左右,Docker让容器更便于使用,各地开发者似乎在一夜之间就热情接受了容器功能。开发者可以编写自己的Dockerfile,并用容器承装他们恰好需要(不多不少)的功能。
每天多次将软件快速部署到生产环境中,成为行业领先公司的常见操作。
编排成千上万的容器,并管理诸如网络、服务发现等内容的挑战,促使Google发布了Kubernetes,开创了云原生计算的时代。
Serverless
2014年,AWS推出了Lambda服务,以替代所有的基础架构。此后,在真正使用计算资源之前再无需支付任何费用了。
只为消费的内容付费,整个系统完全按需运行。
最初,Lambda是用于独立的特定任务的。但如今,我们看到有越来越多的系统用serverless构建整个服务器,而不仅仅将其用在系统的一小部分上。
基础设施即代码(Infrastructure as Code)
从几个单一整体系统,转变为由数百甚至数千个微服务组成云原生的应用,整个成产环境变得更加复杂起来。
AWS/GCP/Azure web界面上的按钮点击是不可扩展的,如果你希望管理这些按键点击,在类似但有轻微差异的环境中运行它们,让你的开发与运营团队保持一致,这是做不到的。
有多款工具可以帮助我们解决这个问题,包括HashiCorp Terraform、AWS CloudFormation以及Pulumi,它们都致力于实现自动化、可重现、可测试和自记录的基础架构。有越来越多各种规模和类型的公司都在使用“基础设施即代码”来管理其云资源。
下一步:对基础设施即代码实现管理
如果要预测的话,我认为基础设施即代码服务会继续增长。各个公司会拓展其基础设施即代码的使用,并辅以更动态的方式,将其用在更多场景中。
挑战会发生变化。主要问题将会转移到如何与公司合作,使用基础设施即代码服务上。一系列新问题会随之产生:如何同步不同基础设施即代码开发者的工作,同步运行?
如何为整个公司非“基础设施即代码服务”的专家提供自助服务?如何管理不同的用户和权限?如何确保访问权限不被滥用,从而触发巨大的云服务商成本?
如何主动降低这些成本,将职责下放给不同的研发部门?如何提供公司所需的管理及可见性?
我们认为,类似env0之类的解决方案会非常重要,以便与公司合作,管理其基础设施即代码服务。鉴于现代软件环境的复杂度及规模,想要靠人类运营单独管理,不依靠广泛的自动化协助,是不现实的。
就像若干年前虚拟机成为行业标准一样,我们希望平台很快也会成为新的标准。
原文:https://hackernoon.com/what-really-propelled-the-cloud-revolution-a-developers-perspective-9lqz378w
同时,欢迎所有开发者扫描下方二维码填写《开发者与AI大调研》,只需2分钟,便可收获价值299元的「AI开发者万人大会」在线直播门票!
推荐阅读:在容器上构建持续部署及最佳实践初探在Kubernetes上部署一个简单的、类PaaS的平台,原来这么容易!全球呼吸机告急!医疗科技巨头美敦力“开源”设计图和源代码互联网之父确诊新冠,一代传奇:任谷歌副总裁、NASA 访问科学家微软为一人收购一公司?破解索尼程序、写黑客小说,看他彪悍的程序人生!2020年,这20个大家都认识的加密交易所过得怎么样?真香,朕在看了!