互联网下半场不可不理解的云原生
在目前快节奏的移动互联网时代,快速把握瞬息万变的市场需求,以最短时间上线自己的应用以抢占市场,成为众多企业在竞争白热化的市场洪流中占有一席之地的制胜利器。天下武功唯快不破,显然传统的开发模式已经无法适应这种快节奏的市场需求,在此背景下催生出敏捷、精益、DevOps等新概念的诞生,尤其以云原生为代表的下一代架构更是进入火箭式发展阶段,以容器、Kubernetes、Serverless等为代表的新技术引领移动互联网进入急速赛道。
云原生不是某个单独的技术,而是技术与管理方法的合集。为便于读者在了解实践云原生架构的方法之前能有一个系统性的思维,在此详解云原生基础架构的代表技术,及利用云原生构建出来的云原生应用的特征。
容器
正如我们现实世界中的集装箱技术加速了贸易全球化的进程,容器技术的出现也解决了微服务架构下大量应用部署的问题,容器的环境自包含特性,可以让我们一次构建,到处运行,其不仅解决了虚拟机所能够解决的问题,同时也能够解决由于资源要求过高虚拟机无法解决的问题。容器的特点主要包括:隔离应用依赖、创建应用镜像并进行复制、创建容易分发的即启即用的应用、支持实例简单、快速地扩展等。
Docker 是当前流行的开源应用容器引擎,基于 Docker 容器化技术,用户可以将微服务及其所需的所有配置、依赖关系和环境变量打包成容器镜像,并轻松移植到全新的安装了 Docker 的服务器节点上,运维人员无须关心底层操作系统,且无须重新配置环境,这使得容器成为部署单个微服务的最理想工具。
不可变的基础设施
在传统的物理服务器或虚拟机部署方式,因其每个都有自己的特征,我们称之为宠物,当部署在宿主机上的应用出现故障,我们需要对症下药,排除问题恢复业务,但是在云原生架构下,我们称部署方式为牲畜,一旦应用部署完成之后,那么这套应用基础设施就不会再修改了。如果需要更新,那么需要现更改公共镜像来构建新服务直接替换旧服务。而我们之所以能够实现直接替换,就是因为容器提供了自包含的环境(包含应用运行所需的所有依赖),所以对于应用而言,完全不需要关心容器发生了什么变化,只需要把容器镜像本身修改即可。因此,对于云友好的基础设施是随时可以替换和更换的,这就是因为容器具有敏捷和一致性的能力,也就是云时代的应用基础设施。
容器编排引擎相关工具有 Kubernetes 、Swarm 等,用以解决容器的管理和调度问题。目前,由 Google 开源的 Kubernetes基本算是统一了容器编排的市场,实现了容器集群的自动化部署、扩缩容和维护等功能。
Kubernetes 与 Docker 相互配合、相辅相成,其中 Docker 是作为 Kubernetes 内部使用的低级别组件,而 Kubernetes 又可以高效管理调度 Docker 集群。
声明式的API
声明式不同于命令式,通过向工具描述自己想要让事物达到的目标终态,然后由这个工具自己内部去计算和实现如何令这个事物达到目标状态。简言之,声明式设计中,描述的是目标状态,其中就为我们极大的简化了实现过程中的异常情况及调度过程,我们只需要关注结果,无论使用什么方式,结果总是朝着我们定义的方向逼近,声明式设计也是一种设计理念,同时也是一种工作模式,它使得系统更加健壮。
微服务
微服务相较于单体应用,将架构进行拆解,解决了单体应用后期难以扩展和低效的开发效率等问题。根据领域模型将巨大的单体分成界限清晰的微服务,并保持每个服务独立可以迭代,具有服务高度自治、高效迭代、易于扩展和支持多语言编程等优点。
在我们享受微服务的灵活、开发的敏捷带来的利好时,对于众多的微服务,在运维、监控、部署、及分布式事务,服务之间的调用也提出了新的挑战。
服务网格
微服务之间该如何实现调用,以及中间的调用策略该如何执行,此刻就需要用到服务网格。目前服务网格架构有侵入式和非侵入式两种架构,区别在侵入式需要在开发框架中进行集成,需要使用SDK来实现一部分功能;非侵入式架构在部署阶段以sidecar模式与业务运行结合,通过接管网络流量实现透明代理,从而实现一系列网络策略及监控,开发者仅需专注业务即可,无需对代码进行修改,这种方式以服务网格(Service Mesh)为代表,让应用更加轻量,目前最火的服务网格技术有Istio、Linkerd、Dubbo Mesh等,将其下沉到基础设施层,用户可以快速编排出复杂环境、复杂依赖关系的应用程序,同时开发者又无须过分关心应用程序的监控、扩展性、服务发现和分布式追踪这些烦琐的事情,从而更专注于自身业务程序开发。
以上为DevOps工程师薛磊的微专栏节选。把握云原生技术,跟上新技术步伐,点击订阅3元专栏《云原生架构实践》!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
边缘计算:下一代创新
企业技术的未来将不仅限于数据中心,甚至不仅限于公共云。边缘计算已普及到物联网,可将处理能力带到任何需要的地方。 与企业技术的其他热门领域一样,边缘计算是一个广泛的体系结构概念,而不是一组特定的解决方案。首先,边缘计算适用于计算能力必须接近行动的低延迟情况,而无论这种活动是工业物联网机器人不断投掷小部件还是传感器持续生产生产中的温度。研究机构Frost&Sullivan公司预测,到2022年,将有90%的工业企业采用边缘计算。 边缘计算是一种分布式计算的形式,它已经超越了数据中心的范围。那么企业应该在未来进行哪些投资?人们知道投资的很大一部分将流向大型公共云提供商,但是企业拥有和运营的硬件和软件并不会消失。那么,为什么不将其物理分布在业务最需要的地方呢? 利用现代服务器的强大功能,可以在本地位置(制造、医疗保健或物流运营所在地)增强企业业务的操作系统,从而可以提供各种业务价值。通常情况下,边缘计算节点从仪器化的操作系统中收集数据块,进行处理,然后仅将结果发送给核心数据中心,从而显著降低了数据传输成本。这些结果中嵌入了过程改进,供应链优化,预测分析等方面的机会。 行业媒体从不同的角...
- 下一篇
微信,终究还是对小学生“下手”了
微信儿童版要来了?近日,这一事件引发关注。 据南方+记者了解到,微信方面正在进行微信儿童版的开发,同时资料显示,腾讯已在今年8月申请了“微信儿童版”商标。 @国是直通车也披露:天眼查数据显示,近日,腾讯科技(深圳)有限公司新增多条商标信息,其中包括多条“微信儿童版”、“WEIXIN FOR KIDS”的商标,商标状态均显示为“商标申请中”。 涉及国际分类包括教育娱乐、科学仪器、网站服务等。 据腾讯公布的二季度财报显示,二季度微信及Wechat的合并月活增至12.06亿,而大量的用户当中,存在着大量的未成年用户,如何能够让未成年人可以更“健康”地使用微信成为了社会各界关注的焦点。 15日,这一话题冲上热搜 引发热议 那网友们好奇什么是儿童版? 有点小期待 @PervCat:现在不就是儿童版吗 @ZRTCC:我要用,应该要简洁些,广告少些 @劳斯不莱斯夫斯基 : 请将儿童能接触到陌生人的方式一律切除,保留纯真的世界! @movo枫树:从娃娃抓起。。不过还挺有创意的,有点期待。 @CHUNGUANG-:我觉得我还是会用的吧,可以减少玩的时间 @白日梦-kiki:赶快来!!儿童版不能注册网游,...
相关文章
文章评论
共有0条评论来说两句吧...