NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

RightScale 工程师分享跨云应用架构的三个挑战

  • 2013-03-14
  • 本文字数:1670 字

    阅读完需:约 5 分钟

根据应用需要部署资源,这是云计算的关键好处之一。不过,随着使用私有云的企业越来越多,当某个应用的资源需求超出单一私有云的容量时,他们就需要考虑使用另一个云平台,甚至包括公共云。此类状况称为“云爆发(cloudbursting)”,针对云爆发,应用的架构也需要进行调整。

RightScale 的工程师 Stephen Bylo 在 RightScale 官方博客上发表文章《应对云爆发的挑战》,分享了如何应对云爆发的经验。

在开头,Stephen 指出:

尽管这种应用层云爆发的概念听起来简单,但还是要注意在技术和业务等多方面的重要考虑。其中包括:拉通不同云之间的不一致性,处理公共云与私有云之间的安全、延迟、通信成本。

在 Stephen 看来,这就需要为应用创建一种云爆发架构,确保两个云之间的通信延迟和带宽不会对应用和用户体验有负面影响,也就是说:部署在两个云中的应用服务要以尽量完全相同的方式工作,还要设置通信路径,控制好资源便于两个云的访问,还要保证通信管道的安全性。

接下来,他指出了云爆发架构的三个主要挑战:

  1. 为多个云创建和管理配置
  2. 在云间创建和管理低延迟通信路径
  3. 保证云间通信安全性。

挑战 1:管理配置

Stephen 指出:不同云供应商之间天差地别,这就需要管理两种完全不同环境的应用和技术栈。具体区别包括:

  • 底层 hypervisor 不同,hypervisor 版本不同
  • 不同 hypervisor 功能和机器镜像格式
  • 云 API 在行为和调用方式上的不同
  • 不同的云提供不同的虚拟机类型和运行性能
  • 云的网络配置不同。有些提供可用区域的概念,有些没有。有些有安全组,有些有子网和 ACL,有些都有。
  • 提供不同类型的存储,比如对象存储、块存储、持久化和临时存储,这会展现不同的行为,而且在其他云中可能无法使用。

Stephen 认为:

这也产生了下游效应。举个例子:使用不同类型的 hypervisor 和存储子系统,常常需要为不同的云使用不同的虚拟机镜像,而且要维护各种不同操作系统和安全补丁。

挑战 2:通信延迟

如果应用需要在位于不同云中的应用层和数据库间来回移动大量数据,延迟和吞吐就会是很大的挑战,特别是通信需要在公共互联网上传输的情况。因为在每次前端请求中,应用到数据库之间的通信可能要进行多个来回,即使是相对很小的延迟也会快速累计。

对于降低延迟,Stephen 给出两种方式:

  • 托管私有云的云提供商可以将其与公有云放在同一个地点.
  • 诸如 CoreSite 和 Equinix 这些公司,他们的数据中心在专用私有资源和公共云资源之间使用超高速连接。

很多应用中,应用到数据库之间的连接频度和数据量没有优化,使用很多带宽。部署通信通路的费用非常昂贵,不管是使用公共互联网还是使用租赁线路。而且,有些云提供商对于数据出口和入口还有收费。因此,对这段通信流进行优化,可以减少延迟,降低达成性能目标需要的带宽成本。

挑战 3:应对安全性

在云间提供安全通信路径,也就意味着要设置加密通路,同时处理不可避免的路由问题,比如合规性和审计要求。根据应用可用性的需求,这些通信通路可能需要在各个层面做冗余,路由的复杂性由此增加,同时设备成本和部署成本也会上升。动态服务器分配更加负责,因为新的服务器加入到阵列之后,必须动态加入到 VPN 之内。

创建安全通信通路有多种方式。RightScale 的解决方案是与多家公司合作,而且云提供商也在不断提供新的方法。AWS 为其虚拟私有云提供 VPN 网关,处理加密和路由问题。而 OpenStack 的新功能也将提供相关特性。

除了将应用进行跨云部署之外,Stephen 还建议可以采用 SOA 架构:

将应用分解为多个唯一的、而且是松耦合的服务,每个服务可以运行在不同的云中。每种服务可以通过为延迟和带宽优化过的协议访问,比如通过 webAPI。服务在设计的时候,就已经做好自治的(autonomous)准备,这样就不必分享数据,而是通过 API 之间的相互调用完成功能。这会大大简化不同服务之间的集成,同时不带来过多负载压力。

最后,Stephen 总结道:

我们发现,云爆发的跨云架构,对于技术复杂性和相应的成本要求都很高。根据需求不同,有多种不同方法可以达成同样的好处。

同时,公共云提供者们也在解决一些通信层面的挑战,给出不同类型的直接连接方案。这些方法应该有助于降低云与云之间的障碍。

2013-03-14 02:591196
用户头像

发布了 479 篇内容, 共 152.5 次阅读, 收获喜欢 47 次。

关注

评论

发布
暂无评论
发现更多内容

批量下载,我有妙解~

Viktor

JavaScript iframe 跨域

专治小学生作业拖沓

Ian哥

28天写作

腾讯位置服务开发应用

我是哪吒

28天写作 2月春节不断更 腾讯地图 腾讯位置服务开发应用 腾讯位置

如何有效改变别人的认知和行为?

数列科技杨德华

28天写作

(28DW-S8-Day5) 区块链如何防伪

mtfelix

比特币 区块链 非对称加密 28天写作 防伪技术

程序员成长第十二篇:做好项目计划

石云升

项目管理 程序员 28天写作 2月春节不断更

科大讯飞发布全新一代智能办公本X2

Lucien

阿里粗排技术体系与最新进展

DataFunTalk

翻译:《实用的Python编程》02_05_Collections

codists

Python

别再这么写代码了,这几个方法不香吗?

楼下小黑哥

Java 重构

产品0期 - 第五周作业

曾烧麦

产品训练营

揭秘京东城市时空数据引擎—JUST如何助力交通流量预测

京东科技开发者

JUST 流量预测

Linux 入门篇 —— 重定向与管道符

若尘

Linux 管道符 linux开发

移除数组中的数字,不用额外空间, 实战RxSwift中的Observable, subscribe, dispose, 吴军老师态度读后感 John 易筋 ARTS 打卡 Week 39

John(易筋)

ARTS 打卡计划 吴军的态度 态度读后感

28天瞎写的第二百四十三天:正念冥想可以解决什么问题?

树上

冥想 28天写作 正念

工作日志2-23

技术骨干

火山翻译:工业级应用与研究

DataFunTalk

厘清 I/O 模型

sakila

网络编程 I/O

谁手握账本?趣讲 ZK 的内存模型

HelloGitHub

Java zookeeper ZooKeeper原理

揭开《钢铁侠》AI管家贾维斯神秘面纱的扛鼎之作!

博文视点Broadview

处理XML数据应用实践

华为云开发者联盟

xml 数据库 数据 XML文档 GaussDB(DWS)

【2021海量真实校招】软件测试面试真题,(大数据整理)刷完应对各家企业面试完全没有问题!

程序员阿沐

面试 软件测试 自动化测试 黑盒测试 白盒测试

为您收录的操作系统系列 - 进程管理(下篇)

鲁米

方法论 操作系统 进程

感性赢了理性那一面——浅谈峰终定律

Justin

心理学 28天写作

【LeetCode】转置矩阵Java题解

Albert

算法 LeetCode 28天写作 2月春节不断更

Kafka.07 - 性能优化介绍

insight

kafka 2月春节不断更

高手来啦!十八般武艺保护你的Web应用

浪潮云

云计算

解读云原生技术

xcbeyond

Kubernetes 云原生 服务网格 28天写作

伊卡洛斯象征了什么?「Day 5」

道伟

文化 28天写作

优雅编程 | javascript代码优化的4个小技巧

devpoint

递归 命名空间 闭包 函数绑定

工作多年,如何找到自己更好的职业方向

一笑

28天写作

RightScale工程师分享跨云应用架构的三个挑战_亚马逊云科技_郑柯_InfoQ精选文章