Amazon EC2 스팟 인스턴스를 통해 비용을 85~90% 정도 절감합니다. 이로 인해 실험하는 데 있어 위험 부담이 적고 궁극적으로는 고객을 위해 더욱 고품질의 제품을 개발할 수 있습니다. 
Joe Gardner Principal Cloud Architect

1976년 설립된 National Instruments(NI)는 엔지니어 및 과학자들과 함께 가장 도전적인 질문에 대한 답변을 제공합니다. NI는 의료 서비스 기술부터 모바일 컴퓨팅, 우주 연구에 이르기까지 생산성과 혁신을 가속화하도록 설계된 고급 기술 솔루션을 갖췄습니다. 35,000개 이상의 NI 고객사들은 수십만 가지 제품을 시장에 선보이면서 무수한 기술 장벽을 극복했습니다. 텍사스 주 오스틴에 본사를 두고 있는 NI는 전 세계 50여 개국에 약 7,400명의 직원을 보유하고 있습니다. 회사는 2015년에 12억 3천만 달러의 수익을 올렸으며, 그 중 16 퍼센트를 연구와 개발에 투자했습니다.  

National Instruments가 고객에게 제공하는 기술 중 사용자 지정 애플리케이션을 만드는 소프트웨어 개발 환경인 LabVIEW가 있습니다. LabVIEW FPGA Module은 LabVIEW를 확장하며 엔지니어가 정교한 FPGA(Field-Programmable Gate Array) 기술 또는 재프로그램밍이 가능한 실리콘 칩을 애플리케이션에 구축할 수 있게 합니다. FPGA 설계를 배포하기 전에 컴파일해야 하며 엔지니어는 중요한 하드웨어 리소스와 필요한 소프트웨어 패키지로 구성된 기계에서 리소스 집약적이며 시간 소모적인 컴파일 프로세스를 수행해야합니다.

지금까지 NI의 개발 팀은 이런 온프레미스와 같은 제품에 대한 새로운 기능을 테스트했습니다. 그러나 회사가 성장함에 따라 더 많은 인프라가 필요했습니다. 동시에 FPGA 디자인은 점차 복잡해졌으며 더 많은 양의 컴퓨팅 용량이 필요해 졌습니다. 비용을 절감하고 개발 시간을 단축하기 위해 NI의 LabVIEW 팀은 NI의 LabVIEW 팀은 클라우드 컴퓨팅 조사를 시작했습니다. "트랜지스터는 점점 작아지며, 프로그래밍할 수 있는 게이트가 더 많아졌습니다. 이는 컴파일을 수행하는 데 더 많은 컴퓨팅 성능을 요구하는 더 크고 더 복잡한 설계를 의미합니다"라고 NI의 수석 클라우드 아키텍트인 Joe Gardner가 말했습니다.  

다양한 옵션을 고려한 후, 2010년에 FPGA 팀은 Amazon Elastic Compute Cloud(Amazon EC2) 온디맨드 인스턴스에서 호스팅되는 FPGA 컴파일 서비스를 제공함으로써 모듈을 확장했습니다. 또한 FPGA 팀은 내부 개발 및 테스트에 AWS를 사용합니다. FPGA 팀은 Auto Scaling 기능, 개발자에게 제공되는 제어 기능 및 Amazon EC2 스팟 인스턴스로 인해 AWS를 선택했습니다. 이를 통해 National Instruments가 새로운 제품 기능을 테스트할 때의 컴퓨팅 비용을 크게 낮췄습니다.

AWS Auto Scaling을 사용하여 NI는 고객 워크로드가 증가함에 따라 AWS EC2 리소스를 신속하게 확장할 수 있습니다. "전에는 추가 워크로드에 대한 대응으로 5~30분 정도 소요될 수있는 자체 확장 프로세스가 있었습니다.”라고 Gardner가 말했습니다. "AWS를 사용하면 5분 안에 완료됩니다. 고객이 시작하기 위해 기다릴 필요가 없기 때문에 우리에게 큰 이점입니다."

또한 FPGA 팀은 개발자에게 제공하는 기능의 사용이 쉽기 때문에 AWS를 선택했습니다. "AWS는 다른 클라우드 환경보다 간단하고, 더 많은 통제권을 부여하며, 호환성을 파괴할 수 있는 업데이트를 적용하지 않았습니다."라고 Gardner가 말합니다. "또한 AWS는 사용이 간단하며, 이는 예를 들어, Hadoop 전문가 또는 IoT 전문가를 고용하지 않고도 제품을 만들 수 있음을 의미합니다. 대신에 우리는 이미 가지고 있는 재능을 사용할 수 있습니다."

아마도 가장 중요한 점은, FPGA 팀이 개발 및 테스트 중에 Amazon EC2 스팟 인스턴스를 활용하여 사용자가 여분의 Amazon EC2 컴퓨팅 용량에 입찰할 수 있게 함으로써 공급 및 수요 간의 균형을 유지하면 극적인 절감 효과를 실현할 수 있음을 깨달은 것입니다. "상당한 부분을 절약했습니다."라고 Gardner는 설명합니다. "예를 들어, 우리 제품 중 하나를 테스트할 때 스팟 인스턴스로 약 500 달러가 들었습니다. 온디맨드 프로세싱으로 이를 완료했다면 비용은 그 금액의 10배인 5,000 달러가 되었을 것입니다."

2014년 8월, NI는 자사의 LabVIEW 소프트웨어 개발 팀에 AWS 사용을 확장했습니다. 이제 온프레미스 인프라의 용량이 다다르면 오버플로우 테스트 워크로드를 처리하기 위하여 Amazon EC2 스팟 인스턴스를 사용합니다. "테스트 횟수가 늘어나고 LabVIEW 개발 팀은 이를 완료할 수있는 컴퓨팅 리소스가 없었습니다.”라고 Gardner가 말합니다. "우리가 클라우드 경험이 있다는 것을 알고 있었기 때문에 우리에게 찾아와 일주일 내에 클라우드에서 오버플로 테스트를 실행하고 있었습니다."

Amazon EC2 스팟 인스턴스와 더불어, NI는 확장 성이 높은 객체 스토리지를 위한 Amazon Simple Storage Service(Amazon S3), 관계형 데이터베이스로서 Amazon Relational Database Service(Amazon RDS), 빠르고 유연한 NoSQL 데이터베이스로서 Amazon DynamoDB 및 확장 가능한 클라우드 도메인 이름 시스템으로서 Amazon Route 53를 포함한 기타 여러 AWS 서비스를 사용합니다. 또한 NI는 AWS CloudFormation을 사용하여 개발자가 관련 AWS 리소스를 쉽게 만들고 관리 할 수 있게 해주며, AWS CloudTrail은 AWS API 호출을 기록하고 로그 파일의 이력을 전달합니다.

Amazon의 스팟 인스턴스 요금 모델을 통해 National Instruments는 온디맨드 프로세싱 보다 저렴한 가격으로 내부 워크로드를 실행할 수 있어 새로운 기능을 테스트할 때 수만 달러를 절약할 수 있습니다. "Amazon EC2 스팟 인스턴스를 통해 비용의 85-90%를 쉽게 절감할 수 있습니다"라고 Gardner는 말합니다. “이로 인해 실험하는 데 있어 위험 부담이 적고 궁극적으로는 고객을 위해 더욱 고품질의 제품을 개발할 수 있습니다."

또한 NI는 대형 온프레미스 인프라 구축 비용도 절감했습니다. 예를 들어, LabVIEW 팀은 Amazon EC2 스팟 인스턴스를 사용하여 매월 30,000 서버 시간 이상의 테스트 빌드를 실행했습니다. 온프레미스의 작업량을 처리하려면 하드웨어 및 유지 보수 비용으로 1백만 달러의 수준에서 팀의 내부 인프라 크기의 두 배가 필요합니다. AWS를 사용하여 NI는 현재 요구 사항을 충족시키기 위해 신속하게 확장할 수 있었으며 온프레미스 인프라 확장과 관련된 추가 인원 및 조달 지연을 피할 수 있었습니다.

AWS에서 개발 및 테스트 워크로드를 실행하는 것은 NI를 더 민첩하게 만듭니다. 소프트웨어 개발 수명 주기 동안 테스트 워크로드가 상당히 달라졌기 때문에 테스트가 덜 필요로 하면 NI는 서버와 관련된 비용을 피할 수 있습니다. 마찬가지로 회사는 테스트의 필요성이 커짐에 따라 신속하게 확장하여 새로운 기능을 신속하게 분석하고 이를 고객에게 공개하는 데 필요한 컴퓨팅 용량을 확보할 수 있습니다. 예를 들어, FPGA 팀은 그 기능 중 하나를 개발하기 위해 900개 이상의 컴파일을 포함하는 포괄적 인 테스트 프로세스를 완료해야 했습니다. 팀이 온프레미스에 하나의 서버를 사용하여 이 컴파일 작업을 수행했다면 3주 이상 걸렸을 것입니다. 그러나 Amazon EC2 스팟 인스턴스 및 병렬화를 통해 실행 당 50 USD 미만의 비용으로 10 시간 이내에 테스트를 완료할 수 있었습니다. "AWS를 사용하면 개발 주기가 수 개월 단축됩니다."라고 Gardner는 말합니다. "서버가 더 필요하다면 다른 질문 없이도 액세스 할 수 있습니다."

NI는 고객에게 민첩성을 전달하지 못했습니다. AWS에서 FPGA Compile Cloud Service를 완전히 사용하므로 엔지니어는 자체 하드웨어에 수천 달러를 지출하지 않고도 필요에 따라 서비스를 사용할 수 있습니다. "과거에는 고객이 필요한 컴파일 서버에 대해 5,000 ~ 10,000 USD를 지출할 수 있었고 몇 달 후에는 유휴 상태만 유지될 수있었습니다."라고 Gardner는 말합니다. "컴파일을 수행하는 것은 기복이 심한 프로세스이므로 AWS는 우리가 하는 일과 잘 어울립니다."

NI는 지속적으로 성장함에 따라 AWS 사용을 다른 개발 환경으로 확대할 계획입니다. 또한 AWS IoTAmazon QuickSight와 같은 추가 AWS 서비스를 사용해 고객들에게 제공할 신제품 개발을 고려하고 있습니다. "AWS는 훨씬 더 많은 실험을 가능케했습니다"라고 Gardner는 말합니다. "이는 우리에게 많은 도구를 제공할 뿐만 아니라 회사의 성공에 핵심 요소인 신제품 개발 및 배포 속도를 높여줍니다."

AWS가 개발 및 테스트에 어떻게 도움이 될 수 있는지 자세히 알아 보려면 개발 및 테스트 세부 정보 페이지를 참조하십시오.