Offcanvas

디지털 트랜스포메이션 / 비즈니스|경제 / 신기술|미래 / 클라우드

Arm 칩부터 엣지컴퓨팅까지··· 7가지 키워드로 짚어본 '클라우드' 진화

2021.04.07 Peter Wayner  |  InfoWorld
서버 없는 컴퓨팅? 코드 없는 프로그래밍? 계속해서 진화하는 클라우드에서 이뤄지고 있는 여러 진화를 살펴본다.

‘클라우드’는 사람들이 확신을 가지고 쓰는 모호한 단어 가운데 하나다. 이를테면 정치인들은 곤란할 때 문제의 해결책은 ‘교육’이라고 말한다. 그리고 의사들은 ‘휴식’이라고 말한다. 이런 관점에서 지난 10년간 혹은 그 이상 인턴부터 CIO까지 IT 산업에 종사하는 사람들은 모든 문제에 대한 정답이 ‘클라우드’라고 하는 걸 봐 왔다. 
 
ⓒGetty Images

하지만 ‘클라우드’라는 단어에는 복잡하고 혼동되는 것들이 많이 감춰져 있다. 수년에 걸쳐 너무나 많은 것을 의미했기 때문이다. 예를 들면 이 유행어가 뜨기 전에도 메인프레임 업체들은 (클라우드 컴퓨팅 개념의 시작이라 할 수 있는) 시분할(Time-sharing) 시스템을 판매했다. 초기 코로케이션 업체들은 유닉스 서버에서 계정을 빌렸다. 아메리카 온라인(America Online)과 같은 회사들은 엔터테인먼트라는 명목으로 클라우드를 닮은 스토리지 및 컴퓨팅 서비스를 제공했다. 

이 단어가 널리 퍼진 후에도 진화는 계속됐다. 초창기 클라우드 제품은 대용량 서버에서 실행되는 수십 대의 가상머신에 불과했었다. 그리고서 FTP(File Transfer Protocol) 서버들이 버킷 및 드롭박스로 리브랜딩됐다. 그 이후로 서비스가 폭발적으로 증가했고, ‘-aaS(-as a Service)’는 약자를 만드는 사람들이 가장 좋아하는 표현이 됐다. 

진화는 계속되고 있고 클라우드 사용자들은 새로운 발전이 이뤄질 때마다 빌려서 사용하려는 항목, 비용 지출로 얻을 수 있는 항목을 재고해야 한다. 물론 이들 중 다수는 재발견된 아이디어들이 다시 패키징되고 강조되는 것이다. 또한 이전 세대 솔루션이 초래한 문제들을 해결하는 것이기도 하다. 

이들 모두 우리가 개발하고 있는 것을 살펴볼 기회 그리고 다시 새롭게 만들 기회를 준다. 클라우드가 혁신하고 진화하고 있는 7가지 방법을 정리했다. 

1. 비용 절감을 위한 세분화(Granularity) 
1세대 서버리스 컴퓨팅은 꽤 큰 단위로 컴퓨팅을 제공했다. 예를 들면 AWS 람다(AWS Lambda)는 모든 호출을 100ms 단위로 과금했다. 이로 인해 개발자들은 빠르고 간단한 연산이나 이보다 20배, 30배 심지어는 100배 더 큰 연산이나 똑같은 비용을 지출하고 있다는 걸 알게 됐다. 조심스럽지 않거나 아주 효율적이지 않아도 문제가 안 됐다. 지불하는 비용은 같았기 때문이다. 

이러한 게으른 자유는 사라졌다. 점점 더 많은 서버리스 플랫폼이 경쟁하면서 과금 단위가 줄어들고 있어서다. AWS 람다는 (2020년 12월부터) 100ms에서 1ms 단위로 과금하기 시작했다. 이제 코드를 정리하고 느린 우회 속도를 주의해야 요금이 낮아진다. 

2. 운영체제(OS) 다이어트
최신 운영체제는 인쇄 작업, 비디오 게임, 문서 편집 등 수많은 작업을 오가며 처리할 수 있도록 만들어진 ‘루브 골드버그 장치(편집자 주: 아주 단순한 일을 복잡하고 거창하게 하도록 만들어진 비효율적인 기계를 의미)’다. 이러한 작업을 처리할 준비가 된 모든 코드로 왜 클라우드 인스턴스를 부팅하는지 그 이유를 생각해본 적 있는가? 

유니커널(Unikernel)은 복잡성을 제거하는 한 가지 방법이다. 코드를 실행하면 컴파일러가 표준 하이퍼바이저 위에 위치할 훨씬 더 작은 패키지를 빌드한다. 이를 지지하는 사람들은 추가 라이브러리를 모두 생략해 효율적이라는 점과 공격 표면이 훨씬 더 작아져 보안에 용이하다는 점을 내세운다. 

그렇다면 AWS 또는 구글에서 바로 최소한의 운영체제를 구축해보는 건 어떨까? 구글의 컨테이너 최적화 OS(Container-Optimized OS)와 아마존의 보틀로켓(Bottlerocket)은 기존 가상화 패러다임을 운영체제에 적용한다. 이들은 운영체제의 많은 기능을 사용하지 않고 작은 작업을 수행하는 마이크로서비스를 구축할 때 유용하다. 

3. 오픈소스 기능
클라우드 구축 작업을 단순화하는 또 다른 방법은 개발자가 간단한 기능을 만들고 나머지 모든 작업은 클라우드에 맡기는 것이다. 지난 몇 년 동안 모든 주요 클라우드 서비스 업체들이 작은 코드 조각과 단일 기능으로 몇 가지 결정을 내리고 데이터를 처리할 수 있는 도구들을 선보였다. 

단점은 벤더 락인(Vendor Lock-in)이었다. 기능은 여러 언어로 작성될 수 있지만 프레임워크와의 인터랙션은 독점적이었기 때문이다. 현재 오픈위스크(OpenWhisk), 오픈FaaS(OpenFaaS), 쿠베리스(Kubeless), 케이네이티브(Knative), 피션(Fission) 등의 흥미로운 오픈소스 프로젝트가 많다. 이들은 원하는 모든 시스템에 서비스형 기능(Functions-as-a-Service; FaaS)를 제공한다.

4. Arm 칩
이는 맥(Mac)을 좋아하는 사람만을 위한 것이 아니다. 예를 들어 아마존은 Arm 코어를 사용해 자체 개발한 ‘그래비톤(AWS Graviton)’ 칩으로 구동되는 서버들을 갖추고 있으며, 이를 통해 비용 대비 성능을 40% 이상 끌어올렸다고 밝혔다. 
 
물론 몇 가지 주의사항이 있다. 자바(Java), 자바스크립트(Node.js), PHP(Drupal, WordPress 등)와 같은 상위 수준 언어로 작업하지 않는다면 실행 파일이 Arm 플랫폼에서 실행되도록 다시 컴파일해야 한다.

상당한 비용 절감 효과가 나타날지는 연산의 특성 및 로드에 따라 크게 달라진다. 일부 벤치마크에서는 그래비톤 기반 시스템을 인텔 기반 시스템과 동일한 범위에 두기도 한다. 또 Arm 기반 인스턴스의 성능이 다소 떨어진다면서, 이는 가볍게 사용되는 코드를 실행하는 데 더 적합하다고 평가하는 사람들도 있다. 

전환해야 할까? 이를 판단하는 방법은 프로덕션 환경과 가까운 곳에서 워크로드를 테스트해 절감 효과를 누릴 수 있는지 확인하는 것이다. 

5. 모든 작업을 수행하는 데이터베이스
아주 오래전 포트란(Fortran)을 사용하던 개발자들은 포트란이 흥미로운 기능을 추가하는 것을 지켜보면서 미래의 프로그래밍 언어가 무엇인지 모르지만 ‘포트란’이라 불릴 것이라고 말했다. 

오늘날 데이터베이스에도 동일한 이야기가 적용된다. 이는 처음엔 하나의 서비스 계층인 미시적 기능(microfunction)이었다. 오래전의 데이터베이스가 직사각형의 테이블을 보관했다면 이제는 거의 모든 일을 처리한다. 

개발자들은 데이터베이스가 얼마나 많은 잠재력을 갖고 있는지 알아차리기 시작했다. 예를 들면 포스트그레SQL(PostgreSQL) 버전 11은 쿼리를 컴파일하기 위한 자체 JIT를 가지고 있다. 또 임베디드 기능들로 트랜잭션을 커밋하거나 롤백할 수 있다. 데이터베이스는 JSON을 사용하기 때문에 데이터베이스 경계를 벗어나지 않고 완전한 마이크로서비스를 구축하는 게 그 어느 때보다 쉬워졌다.

이 밖에 애저 코스모스 DB(Azure Cosmos DB)와 같은 데이터베이스는 SQL, 몽고DB(MongoDB), 카산드라(Cassandra), 그래프 API 등과 결합돼 있다. 구글 파이어베이스(Google Firebase) 등의 또 다른 데이터베이스는 데이터를 저장하고 복제해 클라이언트에 전달할 수 있는 기회를 제공한다. 이들은 배포와 스토리지를 머지하기도 한다. 이와 같은 수십 개의 새로운 데이터베이스가 기본적이고 실용적인 용어인 ‘데이터베이스’에 새로운 기능을 제공하고 있다. 

6. 오피스 애플리케이션의 새로운 역할
숫자, 문자, 수식으로 가득 찬 화면은 코딩하는 사람(coder)뿐만 아니라 이를테면 회계 담당자와 관리자 등을 위한 공통어가 되고 있다. 노-코드로의 이동은 스프레드시트를 앱으로 바꿔주는 도구를 활용해 매크로를 잘 활용하는 사람들을 끌어들이고 있다. 예를 들면 구글은 한 회사가 앱 시트(App Sheet)를 사용해 코딩 스킬 없이도 35개 이상의 비즈니스 앱을 구축하고 배포했다고 밝혔다. 

스프레드시트에만 해당되는 이야기가 아니다. 전체 오피스 애플리케이션 제품군이 비즈니스 운영에 적합한 맞춤형 애플리케이션으로 채워지고 있다. 이를테면 코더들은 독립 실행형 인스턴스에 앱을 구축하고 배포하는 대신, 구글이나 마이크로소프트의 워드 프로세서, 슬라이드 프레젠테이션, 빌더 및 기타 도구와 통합되는 앱을 구축하고 있다. 이를 통해 대부분의 시간을 문서 및 이메일과 씨름하는 데 소비하는 엔터프라이즈 사용자가 더욱더 쉽게 업무를 수행할 수 있다. 

7. 엣지 컴퓨팅
클라우드가 점점 더 많은 컴퓨팅 파워를 네트워크 엣지로 보내면서 계속 진화하고 있다. 이를테면 ‘클라우드플레어 워커스(Cloudflare Workers)’는 사용자와 최대한 가까운 곳에 위치한 데이터센터에서 자바스크립트(JavaScript), 러스트(Rust), C, C++ 코드를 실행한다. 

아마존의 ‘AWS 포 엣지(AWS for the Edge)’도 코드를 사용자에게 더 가깝게 이동시킬 수 있는 유사한 서비스를 제공한다. 아마존 세이지메이커(Amazon SageMaker) 머신러닝 서비스 사용자는 코드를 주요 데이터센터에서 엣지로 옮길 수 있다. 최근 아마존은 5G 네트워크와의 연결성을 강조하면서, 모바일 기기가 일반 소비자 기기에서 사람들이 대부분의 인터넷 브라우징을 하는 주요 포털로 변모할 것이라고 내다봤다.

마이크로소프트의 애저 IoT 엣지(Azure IoT Edge)는 클라우드 기반의 기능을 갖춘 장치가 급증하는 것을 타깃으로 하고 있다. 예를 들어 커스텀 비전(Custom Vision) 서비스는 카메라 네트워크에 엣지 컴퓨팅을 제공한다.

클라우드가 발전하고 널리 확대되면서 이와 같은 사례가 계속해서 등장하고 있다. 한때 클라우드는 빌릴 수 있는 인스턴스를 갖춘 데이터 코로케이션 빌딩의 중앙집중식 컬렉션으로 국한됐었다. 하지만 이제는 네트워크로 이동하고 있다. 그다음은 어떻게 될 것인가? 사물인터넷? 주방의 스마트오븐? 자동차에 설치된 컴퓨터로 갈 것인가? 

만약 클라우드 컴퓨팅이 그렇게 유용하지 않았다면 블롭(Blob; SF 영화에 등장하는 미스터리한 괴생명체)이나 보그(Borg; 스타트랙에 등장하는 외계종족)와 같다고 비유할 수도 있을 것이다. 그러나 소유하는 것보다 빌리는 게 더 쉽다는 전제가 유지되는 한, 기업 발전을 위해 컴퓨터와 데이터 스토리지를 필요로 하는 모든 사람은 클라우드를 쓰게 될 것이다.
 
 
ciokr@idg.co.kr
 
CIO Korea 뉴스레터 및 IT 트랜드 보고서 무료 구독하기
추천 테크라이브러리

회사명:한국IDG 제호: CIO Korea 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아01641 등록발행일자 : 2011년 05월 27일

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

Copyright © 2024 International Data Group. All rights reserved.