NASA/JPL의 Mars Curiosity Mission 사례 연구

2014

NASA의 Jet Propulsion Laboratory(JPL)는 우주 로봇 탐사를 위한 프리미어 NASA 센터입니다. JPL은 태양계의 모든 행성에 로봇을 보냈습니다. 또한, NASA/JPL은 연방 정부에서 클라우드 컴퓨팅을 도입하는 데 앞장서고 있습니다. 클라우드 컴퓨팅은 화성 과학 실험실 미션을 위한 전술 운영 파이프라인에서 중요한 역할을 합니다. NASA/JPL은 캘리포니아주 패서디나의 제어실에서 Amazon Web Services(AWS)를 사용하여 화상 탐사 로버와 화성 과학 실험실 미션에서 수집한 이미지와 메타데이터를 캡처하고 저장합니다. 화성 탐사 로버 Opportunity는 8년 전에 화성에 착륙한 후 지금도 화성을 주행하고 있으며 화성 로버 Curiosity는 2012년 8월 5일에 착륙했습니다.

python 자습서 시작하기
CustomerReferences_QuoteMark

NASA/JPL은 Amazon Web Services(AWS)를 사용하여 화상 탐사 로버와 화성 과학 실험실 미션에서 수집한 이미지와 메타데이터를 캡처하고 저장합니다.

당면 과제

2011년 11월 26일에 NASA는 붉은 행성으로의 8개월간의 항해를 향해 Curiosity를 발사했습니다. 세간의 이목이 쏠렸던 이 미션이 성공하기 위해서는 극복해야 할 몇 가지 난제가 있었습니다. 먼저, Curiosity의 큰 덩치로 인해 이전에 사용했던 착륙 방법을 적용할 수 없었기 때문에 착륙시키는 게 큰 문제였습니다. JPL의 엔지니어는 혁신적인 진입/하강/착륙 기법을 설계했고 Curiosity를 부드럽게 표면으로 내리는 "스카이 크레인" 방법을 선택했습니다. NASA는 이 미션을 최대 분 단위로 제공하여 특히 로버가 화성의 대기권에서 화성 표면으로 하강하는 마지막 7분간의 짜릿한 경험을 전 세계 팬과 나누길 원했습니다. mars.jpl.nasa.gov 웹 사이트의 가용성, 확장성 및 성능은 착륙 이벤트에서 가장 중요한 부분이었습니다. AWS와 협력하기 전에는 웹 사이트에 몰리는 수십만 명의 동시 방문자를 지원하기가 매우 어렵고 NASA/JPL이 보유하지 않은 상당한 웹 및 라이브 동영상 스트리밍 인프라가 필요했을 것입니다.

NASA의 Jet Propulsion Laboratory는 AWS를 사용하여 Curiosity 착륙과 관련된 이미지와 동영상을 스트리밍했습니다. JPL은 클라우드 컴퓨팅을 사용함으로써 신속하게 용량을 프로비저닝하고 AWS 클라우드를 활용하여 화성의 매력적인 경험을 대중에게 성공적으로 전달할 수 있었습니다. 일반 사용자가 전 세계에서 사이트에 방문함에 따라 NASA/JPL은 전 세계의 AWS 리전에서 콘텐츠를 제공하여 최종 사용자 경험을 향상하고 글로벌 수요에 맞춰 확장할 수 있었습니다. NASA/JPL에서는 효율적인 방법으로 Amazon Route 53Elastic Load Balancer(ELB)를 사용하여 AWS 리전 전체에서 로드를 밸런싱하고 상상할 수 있는 모든 환경에서 콘텐츠의 가용성을 보장할 수 있었습니다. NASA/JPL과 Amazon Web Services가 함께 개발하고 검토한 최종 아키텍처로 NASA는 배포 모델이 비용 효율적으로 확장되고 수행되어 다른 행성에 착륙하는 놀라운 경험을 전달할 수 있다고 확신했습니다. 데이터를 대중에 제공하겠다는 열망으로 NASA/JPL은 수십만 명의 동시 시청자를 위해 초당 수백 기가바이트의 트래픽을 지원할 수 있도록 준비했습니다.

Amazon Web Services가 필요한 이유

몇 주 만에 NASA/JPL은 다양한 AWS 서비스를 사용하여 구축된 웹 호스팅 및 라이브 동영상 스트리밍 솔루션을 설계, 구축, 테스트 및 배포할 수 있었습니다. NASA/JPL의 라이브 동영상 스트리밍 아키텍처는 Adobe Flash Media Server, 널리 사용되는 nginx 캐싱 티어를 실행하는 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스, Elastic Load Balancing, DNS 관리용 Amazon Route 53, 그리고 콘텐츠 전송을 위한 Amazon CloudFront를 조합하여 개발되었습니다. AWS CloudFormation은 여러 AWS 가용 영역(AZ) 및 리전에 걸쳐 라이브 동영상 스트리밍 인프라 스택의 배포를 자동화합니다.

또한, Amazon Linux AMI를 실행하는 Amazon EC2 인스턴스는 구성 스크립트와 Amazon EC2 인스턴스 메타데이터를 사용하여 구성되었습니다. 착륙 직전에 NASA/JPL은 각각 25Gbps의 트래픽을 처리할 수 있는 AWS 인프라 스택을 프로비저닝했습니다. NASA/JPL은 Amazon CloudWatch를 사용하여 트래픽 볼륨의 스파이크를 모니터링하고 리전별 수요에 따라 추가 용량을 프로비저닝했습니다. 착륙 후 몇 시간이 지나 트래픽 볼륨이 정상으로 돌아왔을 때 NASA/JPL은 AWS CloudFormation을 사용하여 단일 명령으로 리소스를 프로비저닝 해제했습니다.

mars.jpl.nasa.gov 웹 사이트는 Amazon EC2에서 실행되는 오픈 소스 콘텐츠 관리 시스템(CMS) Railo를 기반으로 합니다. Railo는 Amazon EC2 인스턴스에서 제공하는 공유 스토리지로서 일관적인 고성능 디스크 I/O를 위한 Amazon Elastic Block Store(EBS) 볼륨의 풀에서 Gluster를 실행합니다. 또한 CMS는 Amazon Relational Database Service(RDS)에서 관리하는 고가용성의 다중 AZ MySQL 데이터베이스와도 상호작용합니다. 다수의 Elastic Load Balancer에서 CMS 서버 전체로 트래픽을 분산하며 Amazon Route 53을 사용하여 ELB에 가중치 기반 트래픽 분산을 제공합니다. 또한, Amazon CloudFront를 사용하여 전 세계 지점에 트래픽을 분산하고 이를 통해 해외 방문자에 대한 지연 시간을 줄이고 솔루션의 전반적인 확장성을 개선합니다.

그뿐만 아니라 NASA에서는 Amazon Simple Workflow Service(Amazon SWF)를 활용하여 화성의 최신 이미지를 Amazon S3로 복사합니다. 메타데이터는 Amazon SimpleDB에 저장되고 Amazon SWF는 Amazon EC2 인스턴스 프로비저닝을 트리거하여 Curiosity에서 지구로 전송이 릴레이될 때마다 이미지를 처리합니다. 아래 다이어그램은 NASA/JPL의 웹 아키텍처를 보여줍니다.

이점

mars.jpl.nasa.gov 웹 사이트를 Amazon Web Services에서 운영함으로써 NASA/JPL은 자체적으로 인프라를 구축하지 않고도 전 세계로 메시지를 방송할 수 있었습니다. AWS에서 제공하는 다양한 기능과 간편한 사용성으로 NASA/JPL은 몇 달이 아니라 2~3주 만에 강력하고 확장 가능한 웹 인프라를 구축할 수 있었습니다.

이제 Curiosity가 화성에 안전하게 착륙했으므로 이 미션에서는 계속해서 Amazon Web Services를 사용하여 화성의 이미지 분석을 자동화하고 이를 통해 과학자가 잠재적 위험이나 특정한 과학적 관심 분야를 파악하는 시간을 극대화할 것입니다. 그 결과, 과학자는 화성 과학 실험실이 해당 솔(화성 날짜)에 수행할 수 있는 탐사의 양을 늘리도록 더 긴 명령 시퀀스를 Curiosity에 전송할 수 있습니다.

Tom Soderstrom of NASA JPL Discusses How the Cloud Is Helping Answer Cosmic Questions

NASA/JPL 라이브 동영상 스트리밍 아키텍처

nasa-1-arch-diagram

NASA JPL 소개

NASA의 Jet Propulsion Laboratory(JPL)는 우주 로봇 탐사를 위한 프리미어 NASA 센터입니다.  


사용된 AWS 서비스

Amazon EC2

Amazon Elastic Compute Cloud(Amazon EC2)는 안전하고 크기 조정이 가능한 컴퓨팅 파워를 클라우드에서 제공하는 웹 서비스입니다. 개발자가 더 쉽게 웹 규모의 클라우드 컴퓨팅 작업을 할 수 있도록 설계되었습니다.

자세히 알아보기 »

Amazon EBS

Amazon Elastic Block Store(EBS)는 대규모로 처리량과 트랜잭션 집약적인 워크로드 모두를 지원하기 위해 Amazon Elastic Compute Cloud(EC2)에서 사용하도록 설계된 사용하기 쉬운 고성능 블록 스토리지 서비스입니다.

자세히 알아보기 »

Amazon CloudFront

Amazon CloudFront는 개발자 친화적 환경에서 짧은 지연 시간과 빠른 전송 속도로 데이터, 동영상, 애플리케이션 및 API를 전 세계 고객에게 안전하게 전송하는 고속 콘텐츠 전송 네트워크(CDN) 서비스입니다.

자세히 알아보기 »

Amazon SWF

개발자는 Amazon SWF를 사용하여 병렬 또는 순차 단계가 있는 백그라운드 작업을 구축, 실행, 확장할 수 있습니다.

자세히 알아보기 »

Amazon RDS

Amazon Relational Database Service(Amazon RDS)를 사용하면 클라우드에서 관계형 데이터베이스를 간편하게 설정, 운영 및 확장할 수 있습니다.

자세히 알아보기 »

Amazon SimpleDB

Amazon SimpleDB는 데이터베이스 관리 작업의 부담을 덜어주는 고가용성의 NoSQL 데이터 스토어입니다.

자세히 알아보기 »

AWS CloudFormation

AWS CloudFormation에서는 클라우드 환경 내 인프라 리소스를 모두 설명하고 프로비저닝할 수 있도록 공통 언어를 제공합니다.

자세히 알아보기 »

웹 호스팅

Amazon Web Services는 기업, 비영리 기관, 정부 조직이 저렴한 비용으로 웹사이트와 웹 애플리케이션을 제공할 수 있도록 클라우드 웹 호스팅 솔루션을 제공합니다.

자세히 알아보기 »


시작하기

산업 분야를 불문하고 모든 규모의 기업이 AWS를 사용하여 매일 매일 비즈니스에 변화를 주고 있습니다. AWS의 전문가와 상담하고 AWS 클라우드로의 전환을 지금 시작하십시오.