过去15年间,到底是什么真正推动了云计算的革命?

来源 | 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个大家都认识的加密交易所过得怎么样?真香,朕在看了!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/518545.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Flowable 数据库表结构 ACT_RU_VARIABLE

运行时流程变量数据表( act_ru_variable ) 字段名称字段描述数据类型主键为空取值说明ID_ID_nvarchar(64)√主键标识REV_乐观锁int√乐观锁TYPE_类型nvarchar(255)备注9NAME_名称nvarchar(255)变量名称EXECUTION_ID_执行实例IDnvarchar(64)√执行的IDPROC_INST_ID_流程实例IDnv…

支付宝的商业与技术创新双轮驱动 创造数字时代普惠金融“奇迹”

2019年6月28日,在中国国际软件博览会上,蚂蚁金服金融科技产品技术总监杨冰发表主题演讲,分享了蚂蚁金服在过去的十多年里,是如何通过商业创新与技术创新的双轮驱动,创造出数字时代的普惠金融“奇迹”。 蚂蚁金服金融科…

Java-异常02 捕获和抛出异常

ArithmeticException 算术异常 public class Test {public static void main(String[] args) {int a 1;int b 0;try { // try监控区域System.out.println(a/b);} catch (ArithmeticException e){System.out.println("程序出现异常,变量B不能为0");} fi…

Flowable 数据库表结构 ACT_RU_TASK

运行时任务节点表( act_ru_task ) 字段名称字段描述数据类型主键为空取值说明ID_ID_nvarchar(64)√ID_REV_乐观锁int√乐观锁EXECUTION_ID_执行实例IDnvarchar(64)√执行实例IDPROC_INST_ID_流程实例IDnvarchar(64)√流程实例IDPROC_DEF_ID_流程定义IDnvarchar(64)√流程定义ID…

基于Tablestore Tunnel的数据复制实战

前言 数据复制主要指通过互联的网络在多台机器上保存相同数据的副本,通过数据复制方案,人们通常希望达到以下目的:1)使数据在地理位置上更接近用户,进而降低访问延迟;2)当部分组件出现故障时&a…

今天,我要教妹子学会Spring:Aware、异步编程、计划任务

来源 | 沉默王二教妹子学 Spring,没见过这么放肆的标题吧?作者我有一个漂亮如花的妹妹(见封面图,别问我怎么又变了?还不能一天做个梦了?),她叫什么呢?我想聪明的读者能猜…

Java-异常03 自定义异常

// 自定义的异常类 public class MyException extends Exception{// 传递数字 > 10private int detail;public MyException(int a) {this.detail a;}// toString: 异常的打印信息Overridepublic String toString() {return "MyException{" detail };} }public …

Flowable 数据库表结构 ACT_RU_JOB

运行时定时任务数据表( act_ru_job ) 字段名称字段描述数据类型主键为空取值说明ID_标识nvarchar(64)√标识REV_版本int√版本TYPE_类型nvarchar(255)类型LOCK_EXP_TIME_锁定释放时间datetime√锁定释放时间LOCK_OWNER_挂起者nvarchar(255)√挂起者EXCLUSIVE_bit√EXECUTION_ID…

SLS机器学习最佳实战:批量时序异常检测

0.文章系列链接 SLS机器学习介绍(01):时序统计建模SLS机器学习介绍(02):时序聚类建模SLS机器学习介绍(03):时序异常检测建模SLS机器学习介绍(04)…

Teradata应用迁移到AnalyticDB for PostgreSQL指导

AnalyticDB for PostgreSQL(简称:ADB for PG)对Teradata语法有着很好的兼容,将Teradata应用迁移到ADB for PG,只需进行有限的修改。本文介绍将Teradata应用迁移到ADB for PG应该注意的事项。 1 建表语句 我们通过一个…

一张900w的数据表,怎么把原先要花费17s执行的SQL优化到300ms?

来源 | 程序员乔戈里 封图| CSDN下载于视觉中国有一张财务流水表,未分库分表,目前的数据量为9555695,分页查询使用到了limit,优化之前的查询耗时16 s 938 ms (execution: 16 s 831 ms, fetching: 107 ms),按照下文的方…

Flowable 数据库表结构 ACT_RU_IDENTITYLINK

运行时流程人员表( act_ru_identitylink ) 任务参与者数据表。主要存储当前节点参与者的信息。 字段名称字段描述数据类型主键为空取值说明ID_ID_nvarchar(64)√ID_REV_乐观锁int√乐观锁GROUP_ID_组IDnvarchar(64)√组IDTYPE_类型nvarchar(255)√备注7USER_ID_用户IDnvarchar…

浅析基于 Serverless 的前后端一体化框架

概述 Serverless 是一种“无服务器架构”模式,它无需关心程序运行环境、资源及数量,只需要将精力聚焦到业务逻辑上的技术。基于 Serverless 开发 web 应用,架构师总是试图把传统的解决方案移植到 Serverless 上,虽然可以做到既拥…

Java-总结

常用类 集合框架 IO流 多线程 网络编程 GUI 注解与反射 https://www.bilibili.com/video/BV12J41137hu?p80

一文告诉你,如何在 Kubernetes 的容器引擎中运行 KVM 和 VMware VM!

作者 | Gilson Melo译者 | 天道酬勤 责编 | 徐威龙封图| CSDN下载于视觉中国随着微服务的出现,人们通常会问:“是否有可能通过Kubernetes上的微服务在基于内核的虚拟机(KVM)或VMware 中运行我的旧虚拟机,还是需要将它们…

Flowable 数据库表结构 ACT_RU_EXECUTION

运行时流程执行实例表( act_ru_execution ) 字段名称字段描述数据类型主键为空取值说明ID_ID_nvarchar(64)√ID_REV_乐观锁int√乐观锁PROC_INST_ID_流程实例IDnvarchar(64)流程实例IDBUSINESS_KEY_业务主键IDnvarchar(255)√业务主键IDPARENT_ID_父节点实例IDnvarchar(64)√父…

性能压测工具选型对比

本文是《Performance Test Together》(简称PTT)系列专题分享的第二期,该专题将从性能压测的设计、实现、执行、监控、问题定位和分析、应用场景等多个纬度对性能压测的全过程进行拆解,以帮助大家构建完整的性能压测的理论体系&…

adb-基础命令

查看连接 adb devices --查看连接的手机安装APP adb install -r apk在电脑路径 -- 安装APP adb install -r 替换已存在的应用程序,也就是说强制安装 adb install -g 为应用程序授予所有运行时的权限 -l 锁定该应用程序 -r 替换已存在的应用程序&…

大数据架构如何做到流批一体?

阿里妹导读:大数据与现有的科技手段结合,对大多数产业而言都能产生巨大的经济及社会价值。这也是当下许多企业,在大数据上深耕的原因。大数据分析场景需要解决哪些技术挑战?目前,有哪些主流大数据架构模式及其发展&…

一群阿里人如何用 10 年自研洛神云网络平台?技术架构演进全揭秘!

【CSDN 编者按】逍遥子曾说,对阿里人来说「打仗是最好的团建,参加过双 11 的叫战友」,同样,参加过多次双 11 考验的系统技术都会成为真正意义上的基础设施,阿里云飞天系统的云网络平台洛神就是如此。本文作者 —— 阿里…