2009 년 KRnet Cloud Computing Science Cloud Technology 2009. 6. 25 권오경 okkwon@kisti.re.kr 슈퍼컴퓨팅센터한국과학기술정보연구원
KISTI _2 1 2 3 CONTENTS 고성능컴퓨팅 / 계산과학응용클라우드컴퓨팅사례조사 1 2 3 Nimbus 를이용한 Science Clouds Amazon EC2 서비스에서의 HPC 응용 CARMEN Science Cloud 사례 4 결론
KISTI _3 고성능컴퓨팅 슈퍼컴퓨팅 예전용어, 60~80년대 Cray등의대형슈퍼컴퓨터가다른컴퓨터에비해월등히뛰어날때사용되었음 여전히대규모병렬컴퓨터에서사용될때보편적으로사용됨 병렬컴퓨팅 문제를풀기위해작업을분할하여컴퓨터및프로세서를동시에활용하는것 그리드컴퓨팅 표준기술을이용하여네트워크로지역적으로분산된계산자원들을동시에활용하는것 종류 : 계산그리드, 데이터그리드, 엑세스그리드
KISTI _4 계산과학응용 HPC (High Performace Computing) 응용 대규모의병렬컴퓨팅이필요한응용 물리, 화학, 기계, 항공, 기상등에서사용 슈퍼컴퓨터에서가장일반적으로사용 HTC (High Throughput Computing) 응용 대규모의작업을자원용량이허용하는만큼수행하여최대한빨리끝나게함 그리드컴퓨팅에적합한응용 Condor 프로젝트나 @HOME 프로젝트에서많이사용됨 대규모데이터처리응용 대규모데이터의처리가필요한응용 고에너지물리등의응용에서사용
클라우드컴퓨팅 KISTI _5 대형전력회사에서전기를받아쓰듯이중앙집중화된대형데이터센터에서서비스를받고, 소프트웨어프로그램들 도인터넷망을통해서자유롭게빌려쓴다. IT 자원을구매하거나소유할필요없이, 필요한만큼사용료를주고쓰 는개념이바로 클라우드컴퓨팅 이다. - 세계적 IT 미래학자니컬러스카 클라우드컴퓨팅의특징 그리드방식의분산컴퓨팅과유틸리티개념의과금모형을혼합한컴퓨팅방식 모든 IT 자원을서비스로활용한다는차원에서 SaaS 를포함하는포괄적인개념 1990 그리드컴퓨팅 분산컴퓨팅을이용한대규모문제해결 유틸리티컴퓨팅 필요할때마다사용하는방식 ( 사용량기반과금모형 ) Software as a Service 웹에서 SW 를서비스로이용할수있는방식 2010 클라우드컴퓨팅 높은수준의확장성을가진 IT 자원들을서비스로제공
KISTI _6 클라우드컴퓨팅기술및모델 가상화기술 컴퓨팅자원가상화 스토리지가상화 네트워크가상화 서비스모델 Software as-a-service (SaaS) Platform as-a-service (PaaS) Infrastructure as-a-service (IaaS) 관리기술 로드밸런싱 고가용성기술 복구기능 SLA 기술 기술 클라우드컴퓨팅 모델 보안기술 싱글사인온 다중임차자관련보안기술 분산기술 그리드컴퓨팅 분산데이터베이스 분산파일시스템 빌링및프로비저닝모델 유틸리티컴퓨팅
과학응용을위한클라우드컴퓨팅 KISTI _7 현재클라우드컴퓨팅은산업계의요구에따른비즈니스응용에초점이맞추어져있음 과학응용을위한클라우드컴퓨팅사례 Nimbus 를이용한 Science Clouds 구축사례 Amazon EC2 서비스에서의 HPC 응용수행사례 CARMEN Science Cloud 사례 과학응용에적합한클라우드서비스는?
NIMBUS 를이용한 SCIENCE CLOUDS 구축 KISTI _8
KISTI _9 Nimbus 제공자 (Provider) 가클라우드를제공할수있게지원 Private 클라우드 Workspace Service: EC2 의오픈소스버전 사용자 (User) 가클라우드를사용할수있게지원 상호운용성을위한 IaaS 게이트웨이 개발자가클라우드관련실험을할수있게지원 과학응용의니드를통해서만들어졌지만, 비즈니스응용또한지원가능
Workspace Service KISTI _10 VWS Service
Workspace Service KISTI _11 Workspace Service 는각작업공간에대한정보를알림 사용자들은작업공간에대한정보를검색 ( 예 : 작업공간에대한 IP) VWS Service 사용자들은작업공간에대해사용
KISTI _12 Workspace Service 인터페이스및클라이언트 웹서비스기반 (WSRF: Web Service Resource Framework 기반 ) EC2 클라이언트를이용해접근가능함 ( 호환성 ) 보안 GSI 기반 (PKI, Single-Sign-On) VM 에대한보안접근 네트워킹 설정 EC2 키생성혹은.ssh 로부터접근 외부 : VPN 을통해 Public IPs, Private IPs 설정가능 내부 : 내부클러스터네트워크를통해 Private 네트워크설정 각 VM 은여러 NIC 설정이가능함 (Private 와 Public 네트워크혼합 )
KISTI _13 Appliance Deployment Appliance Providers: Marketplaces, commercial providers, Virtual Organizations Appliance management software Appliance Deployment: appliances -> leased compute resources 가상 (Virtual) 자원에대한생성소프트웨어레이어 (layer): 클라우드미들웨어 Virtual Appliance Resource Providers: Scientific computing providers: Science Clouds Commercial providers: EC2 Grid Providers? A virtual appliance is a virtual machine image designed to run on a virtualization platform (e.g., VMware Workstation, Xen, VirtualBox).
Virtual Clusters KISTI _14 IP1 HK1 IP2 HK2 IP3 HK3 IP1 HK1 IP1 HK1 IP1 HK1 IP2 HK2 MPI IP2 HK2 IP2 HK2 IP3 HK3 IP3 HK3 IP3 HK3 Context Broker Tightly-coupled virtual cluster 공유된 trust/security context 공유된 configuration/context 정보
KISTI _15 Context Broker 모든클라우드제공자와호환가능 모든 Virtual Appliance에대해서설정가능 분산환경의다양한클라우드제공자에대해서수행가능 프로그램 Releases 2007년 8월 alpha, 정식버전 2008년 6월, 업데이트 2009년 1월 100 개의가상노드를이용해서클러스터구성테스트 EC2 HEP STAR 수행, Hadoop 노드, HEP Alice 노드등
KISTI _16 STAR STAR: 핵물리실험연구 요구사항 A virtual OSG STAR cluster: OSG head (gridmapfiles, host certificates, NFS, Torque), worker s: SL4 + STAR Science Clouds에서소규모테스트후실제실험결과를얻기위해 EC2에서대규모계산환경이필요 계산시복잡한 ( 번거로운 ) 설정, 안정적인실험환경이필요 Context Broker를통한쉬운설정환경 (One-click virtual cluster deployment) Producing just-in-time results for Quark Matter conference http://www.isgtw.org/?pid=1001735
KISTI _17 Science Clouds EC2형태의클라우드컴퓨팅으로과학및교육프로젝트실험수행지원 목적 과학응용을 IaaS 클라우드에서실험 과학응용이클라우드환경에적합한지테스트 과학응용의니드에맞춰 Nimbus 발전 각클라우드간의상호호환성에대한연구 참가자 University of Chicago (since 03/08, 16 s), University of Florida (05/08, 16-32 s, access via VPN), Masaryk University, Brno, Czech Republic (08/08), Wispy @ Purdue (09/08)
Programs on Science Clouds at UC KISTI _18 Hadoop AliEn GT-scalability STAR Montage workflows GridFTP testing workspace-team Testing OSG geofest bioinformatics Other 100+ DNs 과학, 전산, 교육등의다양한분야에서수행중
Sky Computing KISTI _19 U of Chicago U of Florida ViNE router ViNE router Sky Computing 클라우드컴퓨팅 + 가상네트워크 ViNE router Purdue ViNE 호스트간의양방향통신기능을제공하는가상화네트워크환경제공 적은관리비용으로다른관리영역에존재하는자원의연결문제를해결할수있는범용적인해결방법
AMAZON EC2 서비스에서의 HPC 응용수행사례 KISTI _20
KISTI _21 Amazon EC2 인스턴스타입 Standard Instances: 일반적인응용에적합 m1.small - Small Instance (default): 1.7 GB memory 1 EC2 Compute Unit (1 virtual core with 1 EC2 Compute Unit), half of a core of a 2 socket, dual core AMD Opteron 2.6GHz, 160 GB, 32-bit platform, moderate I/O performance, price: $0.10 per instance hour m1.large - Large Instance: 7.5 GB memory, 4 EC2 Compute Units (2 virtual cores with 2 EC2 Compute Units each), half of a 2 socket, dual core AMD Opteron 2.0GHz, 850 GB, 64- bit platform, high I/O performance, price: $0.40 per instance hour m1.xlarge - Extra Large Instance: 15 GB memory, 8 EC2 Compute Units (4 virtual cores with 2 EC2 Compute Units each), one 2 socket, dual core AMD Opteron 2.0GHz, 1,690 GB, 64-bit platform, high I/O performance, price: $0.80 per instance hour High-CPU Instances: less RAM per core, 계산위주의응용에적합 c1.medium - High-CPU Medium Instance: 1.7 GB of memory, 5 EC2 Compute Units (2 virtual cores with 2.5 EC2 Compute Units each), half of a 2 socket, quad core Xeon 2.33GHz, 350 GB, 32-bit platform, moderate I/O performance, price: $0.20 per instance hour c1.xlarge - High-CPU Extra Large Instance: 7 GB of memory, 20 EC2 Compute Units (8 virtual cores with 2.5 EC2 Compute Units each), one 2 socket, quad core Xeon 2.33GHz, 1690 GB, 64-bit platform, high I/O performance, price: $0.80 per instance hour
KISTI _22 벤치마킹 성능 Serial 프로그램 m1.small: c1.medium 성능비율이 1:2.3 (NAS NPB serial) I/O 성능 가격적으로 1:2 로컬 HDD 에 R/W(/tmp), NFS 로묶어서 R/W 비교 NFS를사용한다고했을때로컬 HDD의 I/O와큰차이없음 (NAS 벤치마크를이용하는경우 ) 2Core를사용하는경우와아닌경우 I/O 비교 Read에있어서는성능향상, Write에있어서는성능저하 m1.medium이 I/O를많이사용하는응용에유리 메모리 m1.small을사용하는경우에도대역폭에무리가없음 메모리를많이필요로하는응용에사용해도큰무리는없음
KISTI _23 Virtual Cluster & HPC 응용 현재 EC2 에서 Virtual Cluster 구축에대한솔루션은없음 ElasticWulf Project (Beowulf cluster run on EC2) EC2 에서기후모델을수행하기위한솔루션 (MIT) HPC 응용 MPI (Message Passing Interface) 메시지전달을위한표준라이브러리스펙 지역적으로메모리를따로가지는프로세스들이데이터를공유하기위해메시지 ( 데이터 ) 를송신, 수신하여통신 병렬컴퓨터에서고성능컴퓨팅을위해설계 병렬화를위한작업할당, 데이터분배, 통신의운용등모든것을프로그래머가담당 : 어렵지만유용성좋음 (Very Flexible)
KISTI _24 ElasticWulf Project EC2 에서 Virtual Cluster 구성을위한솔루션 파이션으로작성된 CLI(Command Line Interface) AMI 빌드스크립트 (master and worker s based on x64 Fedora Core 6 instances) BLAS/LAPACK OpenMPI Xwindows Twisted Numpy/Scipy MPICH NFS Ipython1 ipython MPICH2 Ganglia mpi4py Matplotlib LAM C3 tools boto http://code.google.com/p/elasticwulf/
KISTI _25 ElasticWulf Cluster (1/4) 1) Amazon Web Services에등록 2) keys/certificates 및환경변수설정 3) ElasticWulf Python 스크립트다운로드 4) ElasticWulf 설정파일에 Amazon Id 추가 5)./start-cluster.py -n 3 -s xlarge 6)./ec2-mpi-config.py 7) 마스터노드에 ssh 로그인하여 MPI 프로그램실행
ElasticWulf Cluster (2/4) KISTI _26 클러스터구동 $./ec2-start-cluster.py $./ec2-check-instances.py
ElasticWulf Cluster (3/4) KISTI _27 계산노드설정 $./ec2-mpi-config.py
ElasticWulf Cluster (4/4) KISTI _28 MPI 작업실행 login to the master run mpi4py code
KISTI _29 EC2 에서기후모델수행 MITgcm (MIT General Circulation Model) 라는기후모델수행 MPI (+OpenMP) code base, Fortran 77(/90) with some C bits 메모리, I/O에민감한응용 MPMD mode, 3 binaries, up to 6+6+1 프로세스 m1.small based EC2 cluster (13 개의노드 ) 일주일동안수행한결과기상 - 해양관련 5 년간의기후예측자료를시뮬레이션 Constantinos Evangelinos and Chris N. Hill, MIT, Cloud Computing for parallel Scientific HPC Applications: Feasibility of running Coupled Atmosphere-Ocean Climate Models on Amazon s EC2
KISTI _30 EC2 에서기후모델수행 OSU MPI benchmarks (OMB v.3.1) & m1.small 벤치마크 기대 MPICH2와OpenMPI이가장좋은성능 LAM도비슷한성능 GridMPI (WAN환경을위한 ) 이가장나쁜성능 실제결과 MPICH2와 OpenMPI이좋지않은성능 LAM이가장좋은성능
EC2 에서기후모델수행 KISTI _31 벤치마크 250 200 198.59 150 100 50 81.98 77.07 57.85 54.6 26.08 15.72 58.49 83.42 16.4417.99 117.64 unidirectional bandwidth (MB/s) bidirectional bandwidth (MB/s) 0 LAM GridMPI MPICH2 nemesis MPICH2 sock OpenMPI LAM/ACES 350 300 300 300 250 200 150 latency (us) 100 81.2 83.46 85.87 50 35.83 0 LAM GridMPI MPICH2 nemesis MPICH2 sock OpenMPI LAM/ACES
KISTI _32 EC2 에서의 HPC 응용수행은? 클라우드환경의경제성 하드웨어유지보수, 업그레이드, 네트워크및시스템관리에대한걱정은없음 기관에서 데이터센터를새로구성하고, 리노베이션등의걱정할필요없음 전력소비등을걱정할필요없음 환경문제또한신경쓰지않아도됨 EC2에서는 20개의인스턴스생성이한계 큰규모의응용은기가빗이더넷환경에적합하지않음 현재는항상사용하는것이아닌단발성사용에적합
CARMEN SCIENCE CLOUD KISTI _33
KISTI _34 CARMEN Science Cloud CARMEN 데이터공유, 통합, 분석을위한클라우드아키텍쳐 200TBs 가넘는대규모의데이터생성 ( 뇌과학 / 화학분야 ) UK EPSRC e-science Pilot $7M (2006-10) 20 Investigators Manchester Leicester Warwick Stirling St. Andrews Newcastle York Sheffield Cambridge Plymouth Imperial
KISTI _35 CARMEN Science Cloud 구조 인터넷접속 ( 웹브라우져 ) 데이터및서비스업로드 CARMEN Science Cloud 코드분석
CARMEN Science Cloud 구조 KISTI _36 사용자 Science App 1 서비스개발자 Science App n Science App 1... Science App n... Science Platform Cloud Infrastructure: Storage & Compute Cloud Infrastructure: Storage & Compute
KISTI _37 CARMEN Science Cloud 경험 몇개의응용 (HPC) 은클라우드에적합하지않음 계산자원이필요할때사용한만큼만지불하는부분은경제적으로큰이점 EC2와같은대규모의클라우드시스템과연동이필요함 ( 대규모연산필요시 ) MS Azure Cloud 와공동실험중 계산화학응용 Silverlight UI 이용
KISTI _38 결론 클라우드서비스 비즈니스분야에서현재많은관심 과학분야는? 과학응용을위한클라우드서비스 HTC 응용은매력적 HPC 응용은대규모자원이갑자기필요시슈퍼컴퓨터의대안으로써적합함 EC2에서제공하는저수준 (low level) 의서비스뿐만아니라과학응용을위한 Science Platform 제공이필요함 협업연구등의새로운연구환경구축이가능함 네트워크가상화, 보안등의해결할기술적과제가많음
감사합니다! Q&A