블로그 | CTO 사무실

애플리케이션 엣지 통합: 진화 연구

켄 아로라 썸네일
켄 아로라
2021년 6월 7일 게시


비행: 실천에서의 수렴 진화

우리 중 대부분은 날 수 있는 꿈을 꾸었습니다. 그리고 진화론 역시 날 수 있는 꿈을 꾸게 했습니다. 포식자를 피하기 위해, 더 효율적으로 먹이를 찾기 위해, 먼 거리를 이동하기 위해 날아다니는 능력은 다양한 동물에게 큰 유용성을 가지고 있다는 것이 반복적으로 입증되었습니다. 실제로 너무나 빈번하고 자주, 진화는 비행이라는 목표를 달성하기 위한 어떤 길을 찾기 위해 끊임없이 노력하고 있습니다. 오늘날 우리는 비행 능력을 독립적으로 개발한 세 가지 동물 그룹을 볼 수 있습니다. 곤충, 새, 포유류(박쥐)입니다. 이 세 그룹은 각각 비행으로 이어지는 서로 다른 진화 경로를 따랐으며, 현재의 비행 형태는 비행 전 조상의 형태를 반영하고 있습니다. 곤충을 생각해 보세요. 조상 곤충은 외부 외골격을 가지고 있었는데, 이는 밀도가 낮고 겹겹이 쌓여 있어 치수에 따라 인장 강도가 다르다는 특성을 가지고 있었습니다. 결과적으로 비행을 향한 곤충의 진화는 변형 가능한 날개를 활용했으며, 이는 손에 잡힐 수 있는 낮은 밀도와 가변적인 인장 강도의 구성 요소를 활용하는 접근 방식입니다. 반면에 새의 경우, 비행을 향한 여정에서 깃털의 발달이 결정적인 "기술"이었습니다. 이 경우, 깃털은 열을 유지하기 위해 털과 같은 재료가 필요한 온혈 공룡의 필요에 의해 주도된 행복한 우연의 일치였습니다. 깃털이 비행을 가능하게 하는 우연한 "기술"임이 밝혀진 것은 훨씬 나중의 일이었습니다. 마지막으로 박쥐는 비행 능력을 가장 최근에 개발한 동물 그룹으로, 활공 포유류에서 점진적으로 진화한 방식을 사용하지만 아직 수천 년에 걸친 진화적 적응의 이점을 누리지 못했습니다.

이 이야기에서 흥미롭고 주목할 만한 점은 인간이 마침내 기계를 사용하여 실질적인 비행을 달성했을 때 완전히 다른 접근법을 적용했다는 관찰입니다. 즉, 공수부대보다 가벼운 항공기나 가솔린 엔진으로 추진되는 빠르게 움직이는 에어포일을 사용하는 것입니다.

흥미로웠는데, 가장자리와 무슨 상관이 있나요?

진화적 사고의 관점에서 볼 때, 지난 20년 동안 애플리케이션 제공이 거쳐온 길은 수렴적 진화의 이야기이기도 합니다. 더 구체적으로 말하면, 지난 몇 년 동안 여러 가지 제공 기술이 개발되었는데, 이를 회고해보면 이는 모두 애플리케이션 엣지로 나아가는 초기의 초기 진화 단계였습니다. 

이러한 많은 조상 기술의 선구자는 콘텐츠 전송 네트워크(CDN)였습니다. 이 기술은 일반적으로 큰 이미지와 스트리밍 오디오/비디오와 같은 비교적 정적인 대량의 데이터를 대규모 소비자 클라이언트 커뮤니티에 전달해야 한다는 필요성에 의해 동기를 부여받았습니다. 이를 "진화적 틈새 시장"이라고 할 수 있습니다. 해결책은 대용량 데이터 파일의 캐시된 사본을 클라이언트 장치에 더 가까운 여러 지리적으로 분산된 위치에 저장하는 것이었습니다. 이러한 접근 방식을 통해 컴퓨팅과 대역폭 측면에서 단일 중앙 데이터 센터에서 전달 작업 부하를 분산시키는 동시에 더 낮고 예측 가능한 지연 시간을 제공할 수 있었습니다.

오늘날 애플리케이션이 발전하고 우리의 일상 생활에 긴밀하게 통합됨에 따라 고객의 애플리케이션 경험을 개선해야 할 필요성이 대기 시간을 줄이고 추가 대역폭을 제공해야 할 필요성을 계속 촉진하고 있습니다. 하지만 기본 규칙은 바뀌고 발전했습니다. 기후와 지형이 자연의 적응을 지속적으로 촉진하는 것처럼, 애플리케이션 제공 요구 사항의 변화는 필요한 솔루션의 변화를 촉진합니다. 더욱 현대적인 애플리케이션 전달 요구 사항은 기본 CDN 시나리오를 훌쩍 뛰어넘습니다. 오늘날의 보다 정교한 사용 사례는 단순한 정적 콘텐츠만 제공하는 것 이상을 요구합니다. 또한 컴퓨팅 및 상호 작용 분야에서도 요구 사항이 있습니다. 좀 더 진보된 요구 사항이 있는 응용 프로그램의 예로는 화상 회의와 전자 거래가 있습니다. 더 광범위하게, 여러 개의 분산된 웹 서비스를 통합한 애플리케이션인 SPA(단일 페이지 애플리케이션) 패러다임을 향한 일반적인 추세는 풍부한 사용자 경험을 유지하기 위해 단순한 정적 저장소보다 더 강력한 분산 리소스 세트가 필요하다는 것입니다. 환경이 이러한 새로운 사용 사례로 "진화"함에 따라, 우리는 여러 기존 시장 솔루션이 이 새롭고 수익성 있는 "진화적 틈새 시장"에 더 잘 맞도록 적응하는 상응하는 융합을 봅니다. 이는 "수렴 진화" 개념의 기술 아날로그입니다.

이러한 기존 솔루션 중 첫 번째는 앞서 언급한 CDN입니다. 그들의 진화적 현존 "강점"은 많은 수의 기존 CDN 노드로 구성된 상당한 기존 인프라입니다. 그들의 "진화적" 경로는 기존 노드를 캐시와 같은 저장소에만 집중하는 것에서 파일, 데이터베이스, 개체 저장소와 같은 여러 저장소 기술을 보다 균형 있게 결합하여 해당 저장소에서 작동할 수 있는 컴퓨팅 리소스와 결합하는 방향으로 개선하는 것입니다.

두 번째 현존 시장 솔루션은 퍼블릭 클라우드 공급업체입니다. 이들의 "강점" 분야는 컴퓨팅, 스토리지, 대역폭 리소스의 강력한 생태계와 해당 리소스에 대한 유연한 소비 모델입니다. 예를 들어, AWS는 다양한 형태의 데이터베이스 기술을 제공하고, 서버 기반 또는 서버리스 모델을 사용하여 컴퓨팅을 가능하게 하며, ID 및 인증을 처리하기 위한 풍부한 기술을 보유하고 있으며, 로깅/보고, 시각화, 데이터 모델링 등 다양한 보조 서비스를 제공합니다. 그러나 이들의 "진화적 격차"는 기존 CDN 공급업체만큼 많은 접속 지점을 보유하지 않아 동일한 배포 범위를 누리지 못한다는 점입니다.

존재 지점 규모의 반대편에는 모바일 서비스 제공업체(MSP)가 있는데, 특히 이들은 5G 인프라를 구축함에 따라 더욱 그렇습니다. 대규모 MSP는 수만 개의 모바일 접속 포인트를 확보할 계획이며, 각각은 핵심 네트워크로의 진입점이 됩니다. 배포 및 규모의 "강도" 외에도 이러한 액세스 지점에는 계산 및 일부 제한된 저장 용량이 있습니다. 그러나 최근까지 계산 및 저장은 MSP 자체 인프라 요구 사항에 초점을 맞추기 위해 범위가 제한되었습니다. 따라서 이들이 해결해야 할 "격차"는 컴퓨팅 인프라를 외부 애플리케이션에 노출하고 추가 저장 용량으로 보강하는 컴퓨팅 패러다임으로 이전하는 것입니다.

에지 그래픽

비행으로 돌아가기 - 그리고 인간이 다른 접근 방식을 사용한 이유

이 여행은 지도를 자연스러운 점진적 진화 과정으로 개략적으로 설명했습니다. 그러나 때로는 진화적 "게임 체인저 [1]" 가 있습니다. 이는 진화를 방해하고 선형적 진행을 재평가하게 만드는 것입니다. 인간이 비행을 개발하는 데 있어서, 대량의 동력을 빠르게 전달할 수 있는 시스템(예: 가솔린 엔진)과 튼튼하고 가벼운 합금을 제작할 수 있는 소재 및 엔지니어링 기술이 개발되면서, 인간은 비행의 과제를 어떻게 해결할 수 있을지 다시 생각해 볼 수 있었고, 자연이 비행을 개발한 방식에 대한 "게임의 판도를 바꾸는" 쾌거를 이루었습니다. 

이 스토리를 엣지 개념으로 다시 연결하면, 지금까지의 애플리케이션 제공 내러티브는 "서버" 측 작업의 오프로드에 초점을 맞춰 왔습니다. 즉, 요청을 수신하는 서버와 함께 시작되는 제공 체인의 일부입니다. 구체적으로, 기존 솔루션의 "진화적 성향"(애플리케이션 서버의 부담을 덜어내는 데 가치가 있음)으로 인해 초점은 암묵적으로 "클라이언트" 고객의 요청에 대한 응답으로 계산 및 콘텐츠 전달의 오프로드 및 배포에 맞춰져 왔습니다. 

그러나 이제 이러한 지리적으로 분산된 존재 지점을 서버의 부담을 덜어주기 위한 컴퓨팅 노드 및 캐시, 즉 "애플리케이션 프록시"로 생각할 뿐만 아니라 들어오는 클라이언트 요청에 동일한 주의를 기울이고 해당 요청을 애플리케이션 요구 사항에 적합한 인프라 및 컴퓨팅/캐시 노드에 매핑하는 제어 지점으로 생각할 때 어떤 일이 일어나는지 고려해 보십시오. 예를 들어, 클라우드 파일 백업과 같이 대기 시간에 영향을 받지 않지만 대역폭이 높은 애플리케이션은 온라인 게임과 같이 대역폭이 낮고 대기 시간에 민감한 애플리케이션과 다르게 라우팅될 수 있습니다. 중앙 데이터 처리 시설이 필요한 뱅킹 애플리케이션은 중앙 데이터 센터로 이동될 수 있습니다. 이 개념은 "애플리케이션 오케스트레이터"라고 생각하는데, 에지가 단순히 서버의 부하를 덜어주는 것이 아니라 일반화된 서버/액세스 노드 환경으로 가는 진입로 역할을 하는 요소라고 생각하면 자연스럽게 이해됩니다.

오르니톱터가 아닌 비행기를 만들어보자

인간이 마침내 기계화된 새와 같은 접근 방식(다빈치의 유명한 "오르니톱터")을 사용하지 않고 대신 손에 있는 가장 적절한 기술(가솔린으로 구동되는 엔진에 결합된 에어포일)을 더 잘 활용하는 방법에 대해 생각함으로써 실용적인 비행을 달성한 것처럼, 우리는 보편적이고 분산되며 서비스가 풍부한 에지의 출현으로 애플리케이션 인프라를 어떻게 재구성할 수 있는지 생각해야 합니다. 이 새로운 기능의 힘이 더욱 분명해지고 더 쉽게 활용 가능해짐에 따라, 애플리케이션 소유자와 운영자는 애플리케이션 진화 여정의 다음 단계를 시작하게 될 것입니다. 결과적으로 "게임의 판도를 바꾸는" 이벤트, 즉 에지가 단순한 애플리케이션 서버의 프록시나 스테로이드를 투여한 애플리케이션 캐시에서 완전한 애플리케이션 오케스트레이터로의 파괴적 진화를 거치면서 애플리케이션 생태계는 새로운 가능성의 폭발로 이어질 것이며, 이는 향후 기사에서 다룰 주제입니다. 

앞으로의 길을 미리 살펴보고, 에지의 애플리케이션 오케스트레이터 역할을 수용하는 것이 각 애플리케이션의 의도된 동작에 대한 보다 선언적이고 의도 중심적인 사양을 가능하게 하여 애플리케이션 인프라와 애플리케이션의 고객 경험을 모두 최적화하는 데 어떻게 도움이 될지에 대한 비전을 공유하고자 합니다. 예를 들어, 증강 현실 기술을 강조하는 하나의 애플리케이션은 지연 시간과 대역폭을 우선시하는 정책을 지정할 수 있지만, 금융 애플리케이션은 안정성이나 중앙 집중화를 우선시하고, 다른 일부 소비자 IoT 애플리케이션은 OpEx 관리에 집중할 수 있습니다. 더 광범위하게, 에지의 역할을 확장하고 이를 애플리케이션 오케스트레이터로 활용하는 사고방식을 채택하면 에지가 보안 정책과 가시성을 구현하는 논리적 위치가 되어 많은 애플리케이션 소유자의 또 다른 꿈, 즉 인프라에 독립적인 애플리케이션 제어의 목표를 달성할 수 있습니다.
 


[1] 산소 기반 대사의 발달은 좋은 예이지만, 그 이야기는 다음에 하도록 하겠습니다.