NASA Jet Propulsion Laboratory (JPL) 是首屈一指的推进机器人太空探索项目的美国宇航局中心机构。JPL 已向太阳系中的每一颗行星都发射了机器人。在整个联邦政府内,NASA/JPL 还率先采用了云计算服务。事实上,云计算是火星科学实验室任务的战略性操作流程的重要部分。NASA/JPL 正在从位于加利福尼亚州帕莎迪纳的控制室使用 Amazon Web Services (AWS) 来捕获和存储从火星探测漫游者号和火星科学实验室任务中收集的图像和元数据。在 8 年前着陆后,机遇号火星探测器目前仍在火星上漫游,而好奇号火星探测器于 2012 年 8 月 5 日着陆。

nasa_jpl_thumbnail
17:42
NASA JPL 的 Tom Soderstrom 讨论了云如何帮助解答宇宙问题

2011 年 11 月 26 日,NASA 向火星发射了航程为 8 个月的好奇号火星探测器。这一备受瞩目的任务面临很多挑战,需要克服这些挑战才能获得成功。首先,着陆是一项巨大挑战,因为好奇号火星探测器很重,这使以前的着陆方法变得不可行。JPL 的工程师设计了一种创新的进入/下降/着陆技术,具体可以总结为“天空起重机”策略,可轻轻地将好奇号降至火星表面。NASA 希望通过提供这项任务的实时详细信息,尤其是探测器穿过火星大气层下降并在火星上着陆的过程中最后 7 分钟的情况,从而确保与全球的爱好者一起分享这种激动人心的体验。在此次着陆事件中,mars.jpl.nasa.gov 网站的可用性、可扩展性和性能发挥了重要作用。使用 AWS 之前,要支持成千上万的访客同时访问该网站非常困难,这需要大量的 Web 和直播视频流基础设施,但 NASA/JPL 没有这些基础设施。

NASA Jet Propulsion Laboratory 使用 AWS 来流式处理与好奇号着陆相关的图像和视频。借助云计算,JPL 可以快速预置容量,并成功地将身临其境的火星探测任务体验传递给世界各地的爱好者。随着全球公众用户都访问其站点,NASA/JPL 将从全球的 AWS 区域提供内容,以便改善浏览者的体验,并根据全球需求进行扩展。通过以创新方式使用 Amazon Route 53Elastic Load Balancers (ELB),NASA/JPL 能够在 AWS 区域之间均衡负载,并确保其内容在任何想象得到的情况下均处于可用状态。由 NASA/JPL 和 Amazon Web Services 共同开发和审核的最终架构使 NASA 可以确保,这种部署模式可以经济高效的方式扩展、执行并提供在另一个星球上着陆的难以置信的体验。以坚持不懈为公众提供数据为目标,NASA/JPL 做好了万全准备,可以处理每秒数百千兆位的流量,以便成千上万的观众同时观看。

NASA/JPL 可以在短短几周内设计、构建、测试和部署他们使用 AWS 上的各种服务构建的 Web 托管和直播视频流解决方案。NASA/JPL 的直播视频流架构是在结合使用以下服务的基础上开发而成:Adobe Flash Media Server、运行受欢迎的 nginx 缓存层的 Amazon Elastic Compute Cloud (Amazon EC2) 实例、Elastic Load Balancing、用于 DNS 管理的 Amazon Route 53 以及用于内容分发的 Amazon CloudFrontAWS CloudFormation 可跨多个 AWS 可用区 (AZ) 和区域自动部署直播视频流基础设施堆栈。

此外,运行 Amazon Linux AMI 的 Amazon EC2 实例是使用配置脚本和 Amazon EC2 实例元数据配置的。着陆前不久,NASA/JPL 预置了 AWS 基础设施的堆栈,每个堆栈均可处理 25Gbps 的流量。NASA/JPL 使用 Amazon CloudWatch 来监控流量高峰,并根据区域需求预置更多容量。当流量在探测器着陆后降回正常时间的值时,NASA/JPL 可借助 AWS CloudFormation 来使用单一命令取消预置资源。下图为直播视频流媒体架构图。

nasa-1-arch-diagram

图 1:NASA/JPL 直播视频流媒体架构

mars.jpl.nasa.gov 网站基于在 Amazon EC2 上运行的开源内容管理系统 (CMS) Railo。Railo 的共享存储由在 Amazon Elastic Block Store (EBS) 卷池中运行 Gluster 的 Amazon EC2 实例提供,用于持续获取高性能磁盘 I/O。该 CMS 还可以与由 Amazon Relational Database Service (RDS) 管理的高度可用的多可用区域 MySQL 数据库进行交互。该组织使用 Amazon Route 53 通过多个 Elastic Load Balancer 将流量分布在 CMS 服务器间,以在 ELB 之间提供加权流量分配。 它还使用 Amazon CloudFront 来向全球各地的网络接入点分散流量,从而为国际访客降低延迟并提升解决方案的整体可扩展性。

此外,NASA 使用 Amazon Simple Workflow Service (Amazon SWF) 将最新图像从火星复制到 Amazon S3。每当来自好奇号的传输内容被中继到地球时,元数据将存储在 Amazon SimpleDB 中,并且 Amazon SWF 将触发 Amazon EC2 实例的预置以处理图像。下表展示了 NASA/JPL 的 Web 架构。

nasa-2-arch-diagram

图 2:NASA/JPL Web 架构

通过在 Amazon Web Services 上运营 mars.jpl.nasa.gov 网站,NASA/JPL 可以向全世界播送其消息,而无需自行构建该基础设施。AWS 提供的丰富功能和易用性使 NASA/JPL 可以在两到三周而非数月的时间内构建一个稳固、可扩展的 Web 基础设施。

现在,好奇号已安全登陆火星,该任务将继续使用 Amazon Web Services 自动分析来自火星的图像,以最大程度缩短科学家识别潜在危险或感兴趣的特定科学领域的时间。因此,科学家能够向好奇号发送较长的命令序列,从而增加火星科学实验室能够在任何给定火星日 (火星日) 执行的探测工作量。

要详细了解 NASA/JPL 的任务并探索火星,请访问 http://mars.jpl.nasa.gov;要详细了解 NASA 如何使用 AWS 云实现可互操作、基于标准、安全且经济高效的环境,请访问 NASA 博客

要详细了解 AWS 如何支持公共部门的任务关键型云计算应用程序,请访问 http://aws.amazon.com/government-education/

有关 NASA/JPL 如何使用 AWS 云完成其他任务和研究的更多信息,请参阅 NASA/JPL 的沙漠研究和训练研究以及 NASA/JPL 的 MER 和 CARVE 任务客户成功案例。