开放融合的云平台构建企业云原生应用

导语

2017年“云+未来”峰会即将在深圳盛大举行,本次峰会 Cloud Native 技术专场将在7月6日下午举行。Cloud Native 专场给各家提供了针对 OpenStack 应用以及背后填坑之路作深度探讨的机会。现在让我们一起回顾下去年各位嘉宾在在现场分享了哪些云上的心得体会以及Cloud Native云原生架构上的亲身实践。

本文是加州理工学院博士,魔泊云创始人&CEO鲁为民在2016年腾讯“云+未来”峰会 Cloud Native 专场有关《开放融合的云平台构建企业云原生应用》分享的回顾。

鲁为民:《开放融合的云平台构建企业云原生应用》

云服务商也在做相应的调整,以适应这一新变化,魔泊云创始人&CEO鲁为民认为,未来云平台不仅仅提供IT基础设施,而应该关注应用的交付,未来IaaS、PaaS和SaaS之间的界限会越来越模糊,未来云平台融合是趋势,这一融合将会更好的支持Cloud Native的云原生应用。

融合的云平台趋势和云原生需求

鲁为民首先介绍了融合云平台技术的需求。

  • 企业 IT 的演进趋势
    • 需要支持用户业务需求多元化
    • 从基础设施转变为应用投放
    • 支持用户交互,更有效地驱动业务的增长
  • 云服务的支持
    • 不再仅仅是从工作负载的整合,而且更多的是应用的交付
    • IaaS 提供基础设施及其自动化交付
    • PaaS 管理工作负载并快捷投放市场,进而直接影响业务
      • PaaS 是颠覆性的云服务模式,是本质上不同的应用开发,部署,运行方式
      • 作为“最后一英里”的云技术,PaaS 极大限度地实现云服务的红利
  • IaaS - PaaS 相互渗透和融合的需求
    • 灵活动态提供多元计算资源:VMs 和容器化资源;基础资源和应用资源
    • 简化应用生命周期管理,提供高效的应用和服务开发、部署和运维

接下来,重点介绍了 PaaS 是一种横向扩展型应用交付平台,便于开发、测试和部署应用程序。它可供公有云和私有云使用,为多种编程语言提供了可扩展性、敏捷性和支持。总的来说Paas能够让应用交付标准化、规范化和简单化。

那么,融合云平台与云原生应用又有什么样的关系?鲁为民针对这个问题发表了自己的看法。简单的说,云原生应用是在云环境下规模化运行,可以在云平台上进行开发;可以部署到不同的云环境以及提供各种软件堆栈,由此来实现这种快捷、安全以及可靠,费用成本的降低,这些方面实际上就是融合云平台的目标,所以融合云平台实现的目标与云原生架构实现的目标是一致的。

云原生应用的设计

首先,从云原生应用平台的设计来看,怎么满足云原生应用的需求。

云原生应用的需求

  • 云原生应用在云计算环境下规模化运行
    • 在云平台上进行开发
    • 可以部署到不同的云环境
    • 提供支撑性软件堆栈
  • 云原生架构实现业务的用户驱动的创新
    • 支持和用户更容易更紧密的交互,更有效地驱动业务的增长
    • 云原生架构催生平台技术的融合满足多元需求
    • 云原生造就一种不断变化的软件架构,让其支撑的业务能够维持市场竞争力
  • 云原生应用程序遵循标准化的部署和运维
    • 构建微服务(离散的应用程序服务)
    • 基于容器,每个微服务在自己的容器中运行
    • 容器间的服务协作

另外,云原生应用可以通过微服务架构来设计和实现。微服务的架构实际上原则是按照业务领域来定义,具有业务领域、高可观测、隐藏细节等等的优势;其次,云原生实际上是由云平台支撑的,可以快捷动态提供资源、快速应用交付,提供监测和开发运维。其中还提到了微服务架构策略。

云原生应用的设计要求

最基本的要求是云原生应用“基础设施”和“数据”之间的分离,云应用可能有状态、必须持续地保存,很大程度上能够高可用。对于基础设施,因为软件提供相关的保护,你必须容忍节点的不可靠,必须支持状态不能维持等等。我们在云平台设计当中是怎么考虑这些,或者说我们要设计云原生应用当中要考虑哪些方面?

原生应用(应用的云化)设计原则

我们在云平台服务架构的设计中,以下四点是比较重要的。

  • 数据持久化
    • 需持久化的数据存放在 DB、NFS、或其它共享存储
    • 日志保存至远程
    • 实例发生迁移时,里面的文件不保留
  • 实例定位
    • Container 与 IaaS 解耦,依赖域名或配置管理
  • 状态管理
    • 平台不提供状态保存管理,不依赖 会话保持功能
    • 状态保存至第三方服务,以支持水平扩展性、负载动态均衡和故障转移
  • 优化 MTTR
    • 使实例的重启、重建,变得更快捷

接下来,鲁为民从以下几个简单的方面介绍云原生平台的底层的架构,从而说明前面所提到的为什么要满足云原生应用设计的要求以及原则。

资源管理:容器化管理和动态调配

必须考虑容器和基础设施的解耦,所以在应用云化设计当中,应用的实例必须和IaaS解耦,也就是说,你不能依靠IP或者端口来定位这个应用,定位这个容器。而是通过域名、应用层面的一些ID来对它们定位。当然更不能依靠物理环境。

资源管理:资源访问和负载均衡

我们实现资源访问的负载均衡时,为什么要实现应用的无状态或者用一种可靠的方式来维持这种状态?因为在负载均衡的情况下,同一个应用不同实例分布在不同容器中运行,但这些实例都是支持同一个用户访问的会话,其状态不能保存在单个的本地容器中,如果状态没有很好的管理,就不太可能实现稳定通畅的会话。

资源管理:多集群和高可用

另外我们如果要支持高可用,比如在部署区域(Zone)层面的高可用,那么我们要在设计应用时确保应用不在当地自己管理状态,因为数据不保证在当地进行持久保存。

故障恢复:实例迁移和重启

此外,在故障恢复的时候,也必须考虑数据和状态的持久化,同时整个平台提供一个好的健康检测机制,这种健康检测是主动的,一旦应用出现问题故障,不是试图修复应用实例的这个故障,而是将它重启,因此,应用重启时间(MTTR)的设计优化变得非常重要,这使得整个重启的过程就变得非常主动,从而有效的实现故障恢复。

融合的云平台设计实例

接下来,鲁为民给我们介绍怎样设计融合的云平台来实现前面提到的云原生的架构。首先云平台是行业或是企业的需求,所以我们需要解决一系列的问题,来保证云平台高质量、高效率、低成本的运行。

其次,云平台具有融合的需求,所以融合企业云平台需要满足两点需求,一个是具备融合企业云平台架构特点,另一个是需要融合多元开放技术。

对于应用交付,满足用户的不同需求提供多种应用部署的方式。第一种方式是敏捷交付、第二种是灵活交付。

鲁为民还介绍了与腾讯云一起打造开放的云平台,使用腾讯云IaaS服务、网络、计算和存储与MopaaS对接,并整合了腾讯云服务产品,如移动、数据、通讯、视频、安全等服务接入MopaaS引擎。通过云平台,实现一个生态建设。

总结

最后,鲁为民对本次的分享做了总结,他强调IT重点更多地从基础设施转变为应用体现上,云平台需要提供不仅仅工作负载的整合,更多的是应用的交付,云平台的融合趋势包括IaaS、PaaS和SaaS的界限越来越模糊。云平台的融合将为应用的交付提供更好的快速敏捷、规模弹性和安全可靠,平台的融合可以更好的支持云原生应用。另外,云原生应用可以通过微服务架构来设计和实现。

原创声明,本文系作者授权云+社区-专栏发表,未经许可,不得转载。

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

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏沃趣科技

降低保险行业TCO成本最好的方式是……

时至今日,“虚拟化”,“云”等名词早已耳熟能详,其提供的特性:将服务器物理资源抽象成逻辑资源,可以将一台服务器变成几台甚至上百台虚拟服务器;将CPU、内存、磁盘...

1055
来自专栏织云平台团队的专栏

从鹿晗关晓彤恋情事件看运维的节假日准备工作

鹿晗关晓彤公布恋情,微博服务短暂不可用。那么,面对这种突如其来的节(sa)假 (gou)日(liang)热点,该如何才能做到有条不紊,高效运维呢?

1.7K1
来自专栏腾讯研究院的专栏

再谈Docker,微服务的场景化应用

刘永峰  腾讯云高级产品经理   看过《超能陆战队》的朋友可能仍然对于电影中的男主角介绍和演示自己发明的微型机器人的场景记忆犹新。   “它”看起来只是...

3887
来自专栏性能与架构

Uber首席架构师聊架构

微服务模式的利弊 微服务模式允许使用不同的开发语言,例如一些服务使用 Node.js,一些使用 Python,一些使用 Go,另一些使用 Java,Uber就...

3387
来自专栏CSDN技术头条

SDCC 2015架构专场札记:一线互联网公司的架构实践

【编者按】11月21日,为期三天的SDCC2015中国软件开发者大会成功闭幕,主办方总计邀请了95余位演讲嘉宾,为参会者奉献了10个主题演讲,9大技术专场论坛(...

1947
来自专栏云计算D1net

如何为混合云工作负载找到适合的场合:5个安全问题

一旦开始部署实际工作负载,使用真实数据和实际流程,就会发生一些变化:某些数据以及其中一些过程会很敏感。那么企业应该如何决定将工作负载放在哪里,一旦他们部署在那里...

650
来自专栏数据和云

数据架构:从AT&T到青海移动的多租户数据整合实践

在数据库的世界里,我们经常面对的一个现实就是:分久必合,合久必分。大多数企业都在这样一个轮回中不断革新。比如国内的银行,早期多数是按省市分布式布局,随着技术发展...

27810
来自专栏大魏分享(微信公众号:david-share)

数据大爆炸,业务怎么办?

654
来自专栏EAWorld

企业级应用的高可靠运维实践与DevOps(一)

? 很高兴今天有机会在这里与大家交流,也要感谢普元提供的交流平台和普元CTO焦总的邀请。我今天与大家分享的主题是关于企业级应用的可靠运维实践的这个话题。 ? ...

3529
来自专栏重庆的技术分享区

成功准备微服务的5个步骤

原文地址:https://medium.com/@kikchee/5-steps-to-successfully-prepare-for-microservic...

1012

扫码关注云+社区