“개발자 입장에서 AWS가 매우 편리했습니다. 기존 개발 환경에서는 서비스가 업데이트될 때 서비스를 중지하고 업데이트 해야 하는데, AWS의 CodeCommit 서비스 등을 이용하면 서비스를 중지하지 않고도 업데이트가 가능합니다. 그리고 블록체인은 여러 노드로 구성되어 있는데, 만약 기존 서버를 활용했다면 이 노드들이 증가할 때마다 서버를 새로 구성해야 하지만 AWS를 사용하니 이런 워크로드가 없어서 매우 편리했습니다.”라고 설명했습니다.
박준석 연구원, KAIST

KAIST 바이오및뇌공학과의 바이오정보시스템 연구실(Bio-Information System National Laboratory, BISL)은 컴퓨터공학과 바이오의료를 접목하는 융합기술을 교육하고 연구하는 연구실로 핵심 연구 주제는 바이오정보학, 의료정보학, 데이터마이닝 입니다. 바이오 데이터마이닝과 시스템 바이오정보학 기술 연구를 통해 다양한 바이오 의학 현상의 필수 규칙을 밝히는데 집중하고 있습니다. 특히 연구실을 운영하고 있는 KAIST 이도헌 교수는 정부국책연구사업인 Bio-Synergy Research Center(www.biosynergy.re.kr)의 사업단장을 맡아 연구실 핵심 주제 연구를 해당 프로젝트에서 도전적으로 진행 중에 있습니다. 이 프로젝트는 가상인체시스템을 통해 식약품의 인체 내 다중성분-다중표적(MCMT) 작용 원리를 시스템 차원에서 규명하는 IT-BT 융복합 원천기술을 개발 하는 것을 목표로 하고 있습니다.

현재 연구실에서는 가상인체 시스템에서 인체 효능 검증을 위한 Challenge 프로젝트의 일환으로 CORUS(Collaborative research for us;corus.kaist.edu)를 진행하고 있습니다. CORUS는 시민 참여 과학(Citizen science)의 형태로 일반인들의 자발적인 참여로 이루어지고 있으며, 일반인들은 연구에 필요한 정보를 제공하고 그에 대한 대가로 블록체인 네트워크를 통한 암호화폐(Cryptocurrency)로 보상을 받습니다. 이런 암호화 보상 시스템은 보안과 트랜잭션 무결성이 반드시 보장되어야 합니다. 또한 프로젝트의 특성 상 많은 시민들이 참여하지만 제한된 IT 인력으로 사용자 편의성을 고려한 플랫폼을 제공하는 것은 무리였습니다. 따라서 소수의 인력으로도 관리가 가능하고, 높은 안정성과 사용자 편의성을 모두 제공하는 솔루션이 필요했습니다.

연구원들이 직접 물리적인 서버 구성 및 개발 환경을 구성하기 보다는 연구원 본연의 업무인 연구에 집중할 수 있게 해주는 것이 효율적이라고 결론지었습니다. 적은 인력으로도 운용이 가능하고 보안과 안정성을 제공하는 클라우드 솔루션을 찾기 위해 글로벌 클라우드 솔루션을 검토했지만, 개발자뿐만 아니라 일반 사용자도 쉽게 접근할 수 있는 AWS를 선택하게 되었습니다. KAIST 바이오및뇌공학과의 BISL 연구실의 박사과정에 있는 박준석 연구원은 “여러 글로벌 업체에 문의했는데 그 중 AWS만 매우 적극적으로 대응을 해주셨고, 저희가 고민하고 있는 기술적인 부분에 대해 같이 고민하고 아이디어를 제공해주셔서 많은 도움이 되었습니다. 이런 AWS의 적극적인 대응이 AWS를 선택하게 된 이유 중 하나입니다. 그리고 타 솔루션은 개발자 전용이지만 AWS는 일반 사용자도 쉽게 접근할 수 있어 저희가 진행하는 프로젝트에 부합했습니다.”라고 밝혔습니다.

현재 CORUS 프로젝트는 AWS 상에서 운영되고 있습니다. PostgreSQL 서버와 Docker 등을 모두 Amazon Relational Database Service(RDS)와 Amazon Elastic Container Service(ECS)로 이전했습니다. 데이터의 안정성이 매우 중요한 크립토커런시 생성 및 이관에는 Amazon Simple Queue Service(SQS), Amazon Simple Notification Service(SNS)와 AWS Lambda를 통해 시스템의 트랜잭션 무결성을 확보했습니다. 높은 안정성과 가용성이 높은 Amazon Simple Storage Service(Amazon S3)에 데이터를 올려서 리포지토리로 이용하고 있습니다. 또한 대용량 데이터를 분석이 필요할 때는Amazon EMR을 이용하고 있습니다. 전체 시스템을 모니터링 하기 위해 Amazon CloudWatch, 가용성 확보를 위해 Amazon EC2 Auto Scaling을 사용하고 있습니다. 코드 개발, 저장 및 배포 등에 AWS CodeCommit, AWS CodeDeploy, AWS CodePipeline 등을 사용 중입니다.
다음은 KAIST의 아키텍처 다이어그램입니다.

kaist-casestudy-kr

박준석 연구원은 연구원들이 서버 관리 등에 시간을 뺏기지 않고 연구에 전념할 수 있는 솔루션을 바랬는데 AWS 사용 후 이전처럼 인프라 관리에 많은 시간을 뺏기지 않는 점, 안정적인 서비스가 가능해진 점, 그리고 편리한 개발 환경을 AWS의 장점으로 꼽았습니다. “개발자 입장에서 AWS가 매우 편리했습니다. 기존 개발 환경에서는 서비스가 업데이트될 때 서비스를 중지하고 업데이트 해야 하는데, AWS의 CodeCommit 서비스 등을 이용하면 서비스를 중지하지 않고도 업데이트가 가능합니다. 그리고 데이터를 저장하기 위해 사용되는 CORUS의 블록체인은 여러 노드로 구성되어 있는데, 만약 기존 서버를 활용했다면 이 노드들이 증가할 때마다 서버를 새로 구성해야 하지만 AWS를 사용하니 이런 워크로드가 없어서 매우 편리했습니다.”라고 소감을 밝혔습니다.

또한 “앞으로 CORUS 사용자 유입이 더 늘어나고 사용자 반응도 급증할 것으로 예상되는데, AWS 솔루션으로 유연하게 대처하고, 사용자의 반응도 끊김없이 부드럽게 이끌어낼 수 있을 것으로 기대하고 있습니다. 그리고 수만 혹은 수십만 데이터를 동시에 수집하고 분석할 수 있는 플랫폼을 구성할 예정인데, 이때 좋은 결과를 낼 수 있을 것으로 기대하고 있습니다.”라고 말했습니다.

 더 알아보시고 싶으시다면 https://aws.amazon.com/ko/ 페이지를 방문해 보시기 바랍니다.