前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >VMware的云原生应用战略(下)

VMware的云原生应用战略(下)

作者头像
Henry Zhang
发布2019-04-12 16:30:16
9590
发布2019-04-12 16:30:16
举报
文章被收录于专栏:亨利笔记

(续上篇)

拙文《VMware的云原生应用战略(上)》发表后,反响强烈,收到许多朋友的鼓励和支持,特此谢过。此为下篇,希望能给大家带来更多启示。

Flocker的vSphere存储驱动

微服务架构的容器里许多都是无状态的(stateless)的服务,如API gateway,web服务器等。无状态的容器优点很明显,可以快速启动、水平扩展和自由迁移。另一方面,有状态(stateful)容器的数量也逐渐增多,象MySQL,Redis,MongoDB等容器也很普遍。由于容器通常是频繁创建和删除的,这些有状态的容器需要把持久化数据保留在容器外(例如宿主机)的文件系统中。在Docker中可使用-v参数把容器的数据卷(data volume)映射到宿主机中,但当容器迁移到其他机器时,数据卷只能遗留在原来的宿主机上,容器也就无法访问到原来的数据了。

开源项目Flocker就是为解决上述问题而设计的,它把数据卷保存在共享存储上,在迁移容器时,将数据卷相应地挂载到目标主机的容器中。对容器而言,数据卷可以如影随形,“你走我也走”。为了支持持久化容器应用的运行,VMware发布了开源的Flocker驱动程序,在ESX虚拟机运行的容器可以迁移到另一个ESX的虚拟机中,同时带上该容器的数据卷。所有vSphere的datastore都支持Flocker,包括VSAN, VVOL, VMFS和NFS。通过这个驱动,分布式容器应用和分布式存储技术VSAN完美地结合,如同好马配好鞍一样。

感兴趣的朋友可以看看以下ESX上Flocker的演示:

视频内容

AppCatalyst

AppCatalyst直译就是“应用的催化剂”。顾名思义,这个工具是为了加快云应用开发过程,目标是提供“本本上的数据中心”(Data center on a laptop)。

在云原生应用中,随着微服务架构和容器技术广泛使用,在开发调试的时候少不了用虚拟机构建分布式的环境,因此,用二类(Type 2)Hypervisor来搭建这类环境最适宜。AppCatalyst采用VMware企业级的Fusion虚拟化内核(目前支持Mac OS ),自带PhotonOS的虚机模板,能便捷地生成Docker和Vagrant的运行环境。新增的SharedFolder功能可在容器和宿主机之间共享持久化的文件,更加接近真实环境中的持久化场景。AppCatalyst还提供CLI和RESTAPI接口,适合多容器和微服务应用的自动化编排流程,支持Docker Machine。使用AppCatalyst可以生成稳定可靠的多结点、多容器的运行环境,只用一台laptop就可调试数据中心级的应用,想着都觉得酷。最让程序员们开心的莫过于AppCatalyst是免费的,可从这个网站下载:http://getappcatalyst.com/。目前支持Mac OS 10.9以上的操作系统。有关AppCatalyst的详细介绍请参见本文末。

vRealize Code Stream

目前主流的云应用开发都使用持续集成(Continuous Integration,简称CI)的模式,结合微服务的架构,每个小的更新都可以迅速地完成编译、构建、单元测试和集成测试等工作,然后部署到生产系统中去。但在企业传统的运维方式中,更新生产系统是非常慎重的事情,通常需要提前一定时间的规划,并且含有许多手工过程。显然,低速的运维方式已经不能匹配云时代敏捷迭代的开发方式,就是我们常说的Dev和Ops之间的矛盾,是现在企业亟需解决的问题。

vRealize Code Stream(VCS)就是帮助用户延伸和贯通整个DevOps流程的管理工具。VCS最主要的功能是流水线自动化(Pipeline Automation),很方便地在流水线中接入各种软件开发工具链(如Git, Jenkins,Selenium等),然后进行统一管理。软件项目象水管一节一节的分成阶段,每阶段包含若干个任务,在每阶段任务结束之后,设立象阀门一样的gating rules,用规则来控制流程是否往前推进。VCS内置了JFrog的Artifactory,用来存放任务的执行结果,如编译过的目标码,打包后的Docker镜像等,在任务间起到承上启下的作用,同时它还作为不同版本的存储仓库,发布应用时可以从中选择特定版本的。

VCS属于vRA(vRealize Automation)的一部分,已经部署vRA的用户可以直接安装VCS使用。VCS本身也内置了各类SDLC工具的支持,从这些工具中提取各种管理信息,如Jenkins中的Job Id等等。下面是VCS的接口图:

结束语

通过本文的介绍,我们看到VMware在云原生应用的各个领域全面发力,产品Roadmap涵盖了开发栈,生产栈和DevOps三大部分。其中的生产栈平台分为VMware Integrated Container(传统与云原生应用混合)和Photon Platform(大规模云原生应用平台),适合不同转型阶段的企业选用。目前,Code Stream是可以交付给用户的正式产品,其他产品大多还处于Technical Preview阶段,预计在明年上半年发布用户可试用的版本,让我们拭目以待吧。

本文仅代表个人观点,和作者所在公司无关。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2015-10-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 亨利笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档