서버 / 클라우드

준비되었는가? 서버리스 컴퓨팅을 둘러싼 모든 장점과 의사 결정

John Edwards  | Network World 2020.01.17
불과 몇 년 전만 해도 물리 서버는 모든 것의 기반이 되는 기술이었으며 모든 데이터센터의 중심에 위치한 디지털 심장이었다. 그리고 클라우드가 등장한 후, 이제 모든 기업 조직이 끊임없이 증가하는 서비스를 계속 클라우드로 넘기면서 마치 온프레미스 서버는 멸종 위기에 직면한 것 같다.
 
서버리스 컴퓨팅도 온프레미스 서버의 종말을 앞당기는 요소다. 클라우드로 전환해서 머신 리소스 할당을 동적으로 관리하고 사용자에게 실제 애플리케이션이 소비한 리소스에 대해서만 비용을 청구한다는 개념이 보편화되는 중이다. 기술 미디어 겸 교육 업체인 오릴리(O’Reilly)가 2019년 말에 폭넓은 지역과 업종에 걸쳐 실시한 설문 조사에 따르면 기업은 10개 중 4개꼴로 이미 서버리스 기술을 채택했다.
 
서버리스 컴퓨팅은 명칭과는 달리 여전히 서버에 의존한다. 볼레어 시스템즈(Volare Systems) 소유주인 조 윌슨은 “서버리스 컴퓨팅은 사실 서버에서 실행된다. 다만 클라우드 제공업체가 필요에 따라 서비스를 프로비저닝하며, 고객은 가상 서버나 앱 서비스를 소유하지 않는다”고 말했다. 기본적으로 서버리스는 개발자가 코드를 써서 주문형으로 실행할 수 있게 해주는 애플리케이션 개발 아키텍처다.
 
서버리스는 하나의 기술이 아니라 기본적인 IT 운영에 대한 완전히 새로운 시각이다. 리버티 뮤추얼 인슈어런스(Liberty Mutual Insurance)의 클라우드 플랫폼 전략 선임 설계자인 브렌드 오스틴은 “서버리스의 가장 큰 이점은 클라우드 네이티브 시스템 설계를 유도한다는 것”이라며 “서버리스에 우선 순위를 두고 애플리케이션 설계를 추진할 경우 특정 기술 선택에 구속되지 않으면서 비용 효율적이고 확장 가능하며 탄력적인 아키텍처를 구현할 가능성이 높다”고 말했다.
 

서버리스 컴퓨팅을 어디에 활용하는가

서버리스 컴퓨팅을 구축할 수 있는 방법은 무수히 많다. 전문 서비스 업체 액센추어(Accenture)의 클라우드 전략, 아키텍처, 구현 부문 이사인 미하 크랄리는 현재 일반적으로 서버리스에서 코딩되는 웹 페이지 앱과 같이 비교적 간단한 부문에 초점을 두는 사용 사례가 많다면서 “서버리스 플랫폼은 필요할 때 자동으로 확장되므로 인프라의 복잡성에 대해 신경 쓸 필요 없이 빠르게 간단한 애플리케이션을 개발할 수 있다”고 말했다.
 
서버리스는 다양한 애플리케이션 시스템의 조율에 유리하다. 크랄리는 “서버리스 컴퓨팅은 이벤트를 감지하고 예를 들어 데이터베이스의 변경으로 인해 코드 변경이나 보안 검토가 필요한 경우 다른 애플리케이션이나 시스템에 이를 알리는 용도로 이상적이다. 서버리스는 시스템 간에 이와 같은 자동화된 워크플로우를 만드는 데 유용하다”고 말했다.
 
크랄리는 서버리스가 “부가적인” 요구에도 적합하다면서 “클라이언트가 보유한 크거나 복잡한 솔루션에 다른 기능을 추가해야 하는 경우 서버리스가 이상적일 수 있다”고 말했다. 예를 들어 새로운 소스의 고객 레코드 추가하기와 같은 간단한 기능을 삽입하기 위해 큰 애플리케이션을 여는 대신 간단히 서버리스 기능을 만들어 새 입력을 캡처하고 애플리케이션의 API를 호출하면 된다. 크랄리는 “빠르고 간편하고 안정적인 방법”이라고 말했다.
 

서버리스 컴퓨팅의 비용적 장점

서버리스 컴퓨팅 아키텍처는 태생적으로 다른 접근 방법에 비해 비용 효율성이 대체로 높다. 오스틴은 “서버리스의 중요한 특성은 필요에 따라 확장하거나 완전히 0으로 축소가 가능하다는 점이다. 따라서 사용하지 않을 때는 비용도 없다”고 말했다.
 
컨설팅 업체 SPR의 모바일 및 신기술 부문 이사인 케빈 맥마흔은 서버리스 기술에서 고객은 용량이 아닌 소비에 비용을 지불한다고 말했다. 맥마흔은 자동차 소유와 공유 차량 서비스 사용의 차이에 비유하며 “차량 공유가 등장하기 전에는 A 지점에서 B 지점으로 안정적으로 이동하려면 자동차를 소유하고 보험료를 지불하고 유지도 해야 했다. 차량 공유를 사용하면 더 이상 자동차에 대해서는 신경 쓸 필요가 없고 원할 때 A에서 B로 이동하기 위한 비용만 지불하면 된다. 부가적인 인프라와 유지보수 없이 딱 필요한 작업에 대한 비용만 내는 것”이라고 말했다.
 
IT 서비스 관리 업체 앱텀(Aptum)의 클라우드 부문 책임자인 크레이그 타바레스는 서버리스 컴퓨팅이 리소스의 과도한 할당과 관련된 비용을 줄여 실제 소비량과 비용을 일치시키는 데도 도움이 된다고 말했다. 또한 애플리케이션을 간소한 용도별 기능으로 분할함으로써 클라우드 내에 빠르고 값싸게 배포하고 분산시킬 수 있다. 타바레스는 “개발 주기의 속도가 빨라지면서 제품화 기간도 개선되고, 따라서 조직은 지속적인 개선과 고객 만족에 집중할 수 있다”고 말했다.
 
중고 의료 장비를 위한 장터를 운영하는 메디나스(Medinas)의 CTO 팀 그로니는 사용한 만큼 비용을 내므로 업타임 비용이 없다면서 “물론 사용 사례에 따라 차이는 있지만 메디나스의 경우 AWS 무료 계층을 벗어나는 경우가 거의 없어 웹 호스팅 비용이 사실상 0원”이라고 말했다.
 

서버리스가 IT 워크로드에 영향을 미치는가?

서버리스 컴퓨팅은 여러가지 방법으로 IT 워크로드를 경감할 수 있다. 가장 큰 부분은 직원들이 서버 성능 관리, 안정성, 유지보수, 보안 업무 등에 상시 매달릴 필요가 없다는 점이다. 오스틴은 “애플리케이션 업타임을 보장하기 위한 상태 확인을 구현하고 기반 OS를 관리해서 최신 보안 패치를 적용하거나 인프라에 최대 워크로드를 감당하기에 충분한 용량이 프로비저닝되도록 확인하는 일 등은 모두 서버리스 플랫폼에서 알아서 한다”고 말했다.
 
서버리스는 개발자의 부담도 덜어준다. 오스틴은 “코드, 특히 인프라 코드를 덜 쓴다는 것은 IT 재정 관점에서도 매력적이다. 인프라 프로비저닝은 서버리스 기술에 맡기고 더 많은 개발자를 비즈니스 기능 구축에 투입할 수 있다는 점은 IT 조직에 큰 혜택”이라고 말했다.
 
또한 개발 속도가 빨라지므로 조직은 민첩성과 혁신을 개선할 수 있다. 크랄리는 서버리스는 아이디어를 실제 작동하는 솔루션으로 바꾸는 가장 빠른 방법이라면서 “서버리스는 빠른 애플리케이션 개발에 완벽한 접근 방법이다. 코드 몇 줄이면 된다”고 말했다.
 
서버리스로 인해 오히려 워크로드가 늘어나는 경우도 있지만 그렇다 해도 이 기술이 가진 많은 장점을 무효화할 정도는 아니다. 재해복구 서비스 제공업체 선가드 어베일러빌리티 서비스(Sungard Availability Services)의 선임 CTO이며 설계자인 그레그 콕스는 “기능을 만들고 여러 API를 연결해 비즈니스가 요구하는 작업을 수행하는 데 더 많은 일이 필요하다”고 지적했다.
 
버그 잡기도 워크로드를 가중시킬 수 있다. 디지털 비즈니스 플랫폼 개발업체 어헤드(AHEAD)의 클라우드 부문 수석 컨설턴트인 버트 존슨은 “표준화된 보안, 테스트, 모니터링, 구성 관리가 없는 경우 서버리스에 버그가 퍼질 수 있다”고 경고했다. 존슨은 버그가 소프트웨어 개발 프로세스에 존재하는 결함을 더 크게 확대하며, 개발자가 버그를 찾고 고치는 일에 매달리느라 중요한 작업을 뒷전에 두게 된다고 말했다.
 

서버리스 컴퓨팅의 단점

서버리스 컴퓨팅에는 장점이 많지만 몇 가지 중요한 결점도 있다. 예를 들어 장기간 지속되는 작업에는 적합하지 않다. 맥마흔은 “계산에 오랜 시간이 걸리는 작업이나 프로세스를 실행한다면 서버리스는 적절한 접근 방법이 아니다. 현재 애저 펑션(Azure Functions)과 AWS 람다(AWS Lambda)는 각각 최대 10분, 15분만 실행이 가능하다”고 말했다.
 
콜드 스타트(cold start) 역시 서버리스의 단점이 될 수 있다. 맥마흔은 “콜드 스타트는 함수를 실행하기 위해 깨우는 데 필요한 시간으로, 보통 수십 밀리초 정도”라며 “대다수 사용 사례에서 무시해도 되는 시간이지만 이정도 지연을 용납할 수 없는 사용 사례가 있으며 그런 경우 서버리스 컴퓨팅은 적합하지 않다”고 말했다.
 
도입을 고려하고 있다면 벤더 종속에도 주의를 기울여야 한다. 크랄리는 “IT와 개발 리더들은 AWS 람다, 애저 펑션, 구글 클라우드 펑션과 같은 주요 서버리스 시스템이 상호 호환되지 않는다는 점을 유의해야 한다”고 경고했다.
 
보안 측면에서도 서버리스로 인한 과제가 발생한다. 보안 소프트웨어 개발업체 아쿠아 시큐리티(Aqua Security)의 전략 부사장 라니 오스낫은 “짧은 실행 시간과 기반 호스트 OS로부터의 격리로 인해 위험이 제한된다는 면도 있다. 그러나 다른 면에서는 함수가 너무 많은 권한을 갖거나 취약한 구성요소를 포함한 채 프로비저닝되는 경우가 많다. 이로 인해 다른 리소스에 대한 액세스 권한을 획득하기 위한 공격에서 중간 단계로 서버리스 함수가 사용될 수도 있다”고 말했다. 오스낫은 서버리스를 안전하게 구성하고, 이후 이상 현상과 악용을 모니터링해야 한다고 조언했다.
 
서버리스를 도입할 경우 용량 수요 예측에도 주의해야 한다. 그로니는 “전통적인 서버는 용량이 초과하면 그냥 작동을 멈추므로 부가적인 비용이 발생할 일이 없다. 그러나 서버리스는 상대적으로 제한 없이 확장이 가능하므로 주의하지 않으면 상당한 비용으로 이어질 수 있다”고 말했다.
 
마지막으로, 서버리스로 전환할 경우 인건비가 상승할 수 있다. IT 채용 업체인 제퍼슨 프랭크(Jefferson Frank)의 부사장 겸 클라우드 부문 책임자인 패트릭 나바로는 “기술에 초점을 둔 기업에서 경비가 많이 할당되는 분야 중 하나는 개발자 채용”이라면서 “스킬을 갖춘 적격 개발자가 적어 고용하고 보유하려면 많은 비용이 든다”고 말했다.
 

통합, 서버리스의 또 다른 이름

클라우드 업계가 새로운 서비스를 계속 선보이면서 IT 리더들은 모든 요소를 하나로 엮어 클라우드 또는 데이터센터에서 가동 중인 레거시 애플리케이션과 통합이 가능한 일관성 있는 솔루션을 만들어야 한다는 과제에 직면하고 있다. 크랄리는 이러한 형태의 새로운 통합에서 서버리스 컴퓨팅이 이상적이라면서 “사후 반응적이고 이벤트 지향적이라는 서버리스의 특성은 현대 솔루션이 요구하는 서비스 간의 실시간 연결을 가능하게 해준다”고 말했다.
 
서버리스를 새롭게 도입하는 경우 다른 와해성(disruptive) 기술과 같은 방식으로 평가해야 한다. IT 컨설팅 업체 아넥시넷(Anexinet)의 클라우드 설계자인 존 코볼스키는 “구현에 앞서 충분한 시간 동안 서버리스 제품에 대해 알아봐야 한다”며 “최소한 롤백 프로세스는 마련해 두라”고 조언했다. 코볼스키는 현재 시스템의 성능을 측정해서 계획 중인 서버리스와 비교해 가능한 운영 및 비용 상의 이점을 알아볼 것을 제안했다.
 
그로니는 서버리스 기술에 점진적으로 익숙해질 것을 제안하며 “서버리스에 반드시 ‘올인’해야 할 필요는 없다. 필요에 따라 적게 사용할 수도, 많이 사용할 수도 있다”고 말했다. 
 Tags

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.