컨테이너도 틀에 박힌 역할은 지겹다

F5 에코시스템 | 2017년 1월 09일

추수감사절 하면 … 칠면조. 크리스마스 하면 … 트리. 컨테이너 하면 …. 마이크로서비스.

각각의 빈칸에 가장 먼저 떠올린 단어가 제 예상과 일치했다면, 여러분은 오늘날 기술 시장의 과도한 연관 짓기에 빠진 셈입니다. 컨테이너나 마이크로서비스 중 어느 하나를 주제로 논의할 때면 거의 항상 둘을 함께 언급하는 경향이 있습니다. 이는 애플리케이션을 목적이 명확하고 민첩한 서비스로 분해하는 아키텍처 접근 방식인 마이크로서비스가 컨테이너 기반 배포 모델의 민첩한 특성과 잘 맞기 때문이기도 합니다. 하지만 컨테이너 자체도 엄연한 하나의 기술이라는 점을 잊어서는 안 됩니다. 컨테이너는 마이크로서비스라는 아키텍처 개념이 누군가의 머릿속에 떠오르기 훨씬 전부터 존재했으며, 그 이점이 마이크로서비스 기반 애플리케이션 배포에만 국한되는 것도 아닙니다.

다음은 2016년 엔터프라이즈 개발 동향이라는 JVM 개발자 2,100명을 대상으로 한 설문조사에서 주목할 만한 내용입니다. 이 조사 결과를 바탕으로 Lightbend (자칭 세계 최고의 리액티브 애플리케이션 개발 플랫폼을 자랑스럽게 제공하는 기업)는 클라우드, 컨테이너 및 마이크로서비스에 관한 여러 인사이트를 도출했습니다. 흥미롭게도 대다수(59%)는 완전히 새로운 애플리케이션을 컨테이너화하려는 반면, 41%는 컨테이너화 대상으로 ‘기존 애플리케이션’을 지목했습니다.

컨테이너화 대상

이는 전혀 이례적인 현상이 아닙니다. 잠시 2016년 8월 설문조사를 살펴보면, Mesosphere가 Mesos 사용자 500명을 대상으로 실시한 조사에서 51%가 Mesos에서 모놀리식 및 레거시 애플리케이션을 실행하고 있는 것으로 나타났습니다. 예상할 수 있듯이 85%는 마이크로서비스 아키텍처를 실행하고 있습니다.

컨테이너는 분명 신규 앱만을 위한 것이 아닙니다. 레거시 및 모놀리식 애플리케이션도 이식성, 신속한 확장, DevOps 중심 운영과의 높은 적합성 등 컨테이너가 제공하는 다양한 이점을 누릴 수 있도록 하는 수단으로 활용되고 있습니다. 애초에 우리는 마찰 없는 이식성을 약속받았지만, 실제로는 퍼블릭 클라우드 제공업체마다 서로 다른 이미지 형식을 표준으로 채택하면서 이미지를 다시 만드는 데 오랜 시간이 걸렸습니다. 여러 골드 이미지를 유지하는 일(환경별, 마이너 브랜치별, 메이저 브랜치별로 하나씩... 무슨 말인지 아실 겁니다)은 운영상의 악몽이 되었습니다. 하지만 컨테이너는 벌꿀오소리처럼 그런 것에 신경 쓰지 않습니다. OS에서 OS로, 가상 머신에서 가상 머신으로, 클라우드에서 클라우드로 자유롭게 이동합니다. 지금까지 제시된 방법 중에서도 컨테이너는 비용에 따라 눈 깜짝할 사이에 클라우드 간을 원활하게 이전할 수 있는 이상향을 실현하는 가장 좋은 방법 중 하나입니다(시간을 재고 계신 분들을 위해 말씀드리면 약 400ms입니다).

그렇다고 컨테이너를 ‘클라우드’ 기술로만 규정해서는 안 됩니다. 컨테이너가 오랫동안 장점으로 내세워졌지만 실제로는 좀처럼 구현되지 못했던 클라우드 제공업체 간 이식성을 상당 부분 실현해 주는 것은 분명하지만, 클라우드나 클라우드와 유사한 환경에서만 사용할 수 있는 것은 아닙니다. 컨테이너가 실제로 ‘클라우드에서’ 사용되고 있다는 사실은 Sumo Logic의 최근 보고서에서도 확인할 수 있습니다. 이 보고서에 따르면 조사 대상 애플리케이션의 15%가 프로덕션 환경에서 Docker를 사용하고 있었습니다. 하지만 그렇다고 해서 컨테이너가 온프레미스 같은 다른 환경에서는 사용되지 않는다는 뜻은 아닙니다. 실제로 앞서 언급한 Mesosphere 보고서에 따르면 사용자 중 거의 절반(45%)이 ‘온프레미스 전용’ 환경을 사용하고 있었으며, 나머지 대부분은 ‘하이브리드’와 ‘클라우드 전용’ 환경으로 나뉘었습니다. 흥미롭게도 이 보고서는 ‘직원 수가 500명 이상인 대기업일수록 온프레미스에서 운영할 가능성이 더 높다’는 사실도 밝혀냈습니다.

clip_image001

컨테이너는 흥미로운 배포 옵션입니다. Docker, Docker Swarm, Mesos와 Marathon, Kubernetes 등의 컨테이너 오케스트레이션 솔루션과 함께 사용하면 애플리케이션을 배포하고 필요에 따라 자동으로 확장하거나 축소할 수 있는 매우 민첩한 환경을 제공합니다. 이는 마이크로 클라우드, 또는 적어도 클라우드와 유사한 환경으로, 퍼블릭 클라우드나 프라이빗 클라우드에 배포할 수도 있고, ‘클라우드’ 없이도 구축할 수 있습니다. 컨테이너는 모놀리식 앱, 최신 앱, 마이크로서비스 기반 앱 및 API를 배포하고 확장하는 데 사용할 수 있습니다. 애플리케이션이 특정 환경에 긴밀하게 종속되지 않도록 운영 체제 계층을 표준화하는 데 중점을 두기 때문에 유연성이 매우 뛰어납니다.

간단히 말해 컨테이너는 애플리케이션이 벌꿀오소리처럼 하위 수준의 세부 사항을 “신경 쓰지” 않아도 되게 해주는 추상화 계층입니다. 컨테이너 오케스트레이션 솔루션으로 모니터링하고 관리하면 이러한 추상화를 통해 규모를 자동으로 확대하거나 축소하고, 인스턴스를 늘리거나 줄일 수 있어 애플리케이션 인프라 전반의 리소스를 더욱 효율적으로 활용할 수 있습니다.

컨테이너와 마이크로서비스, 클라우드는 서로 절친한 관계일 수 있지만, 각각 독립적으로도 충분히 제 역할을 할 수 있는 개별적인 존재입니다. 각각은 서로를 보완하고, 때로는 감히 말하자면 시너지까지 내는 이점을 제공합니다. 하지만 컨테이너를 마이크로서비스‘만’을 위한 것, 클라우드‘만’을 위한 것이라는 매우 협소한 틀에 가두지는 맙시다.

컨테이너는 틀에 박힌 역할만 맡는 데 지쳤습니다. 아키텍처에서 컨테이너에 다양한 역할을 맡겨 보세요. 어떤 역할에서든 주연을 맡기에 충분한 역량이 있다는 사실을 발견하게 될지도 모릅니다.

공유
태그: 2017

작성자 소개

Lori Mac Vittie
Lori Mac Vittie수석 엔지니어 겸 최고 에반젤리스트 | F5

Lori MacVittie는 F5 CTO 오피스의 수석 엔지니어이자 최고 에반젤리스트로, 애플리케이션 딜리버리, 자동화 전략 및 인프라 분야에서 깊이 있는 전문성을 보유하고 있습니다. AI 에이전트를 위한 가드레일을 정의하고, 취약한 멀티클라우드 아키텍처를 분석하며, 확장 가능한 시스템의 한계를 탐구하는 등 복잡한 문제를 명확하게 풀어내는 것으로 잘 알려져 있습니다. 애플리케이션 개발, IT 아키텍처, 네트워크 및 시스템 운영 전반에 걸쳐 30년 이상의 업계 경험을 쌓았습니다. F5에 합류하기 전에는 수상 경력이 있는 기술 편집자로 활동했습니다. MacVittie는 컴퓨터 과학 석사 학위를 보유하고 있으며, 보안, 클라우드 및 엔터프라이즈 아키텍처 분야를 아우르는 다수의 저서를 집필한 작가입니다. 또한 보드게임과 비디오 게임을 열정적으로 즐기며, 치즈에 대해서는 거리낌 없이 확고한 견해를 갖고 있습니다.

Lori Mac Vittie의 다른 블로그 게시물

관련 블로그 게시물

성평등을 향한 여정: 사이버 보안 분야에서 성공적인 커리어를 개척하는 방법에 관한 Jenn Gile과의 Q&A
F5 에코시스템 | 2023. 07. 13.

성평등을 향한 여정: 사이버 보안 분야에서 성공적인 커리어를 개척하는 방법에 관한 Jenn Gile과의 Q&A

F5의 ‘성평등을 향한 여정’ 시리즈 네 번째 Q&A에서는 Rachael Shah와 NGINX 제품 마케팅 책임자 Jenn Gile이 사이버 보안 직종에 대한 오해를 바로잡고, 사이버 보안 분야의 성별 격차를 해소하기 위한 조언과 그 이점에 대해 이야기합니다.

TLS 검사에서 피터 파커 원칙 다루기
F5 에코시스템 | 2019. 12. 09.

TLS 검사에서 피터 파커 원칙 다루기

“큰 힘에는 큰 책임이 따른다.” 볼테르와 처칠도 이와 비슷한 말을 남겼지만, 이 문구는 스파이더맨 코믹스에서 벤 삼촌의 말로 가장 널리 알려져 있습니다. 물론 이 문구가 문화적으로 널리 통용되는 이유 중 하나는 TLS 검사를 비롯해 수많은 상황과 주제에 적용할 수 있기 때문입니다.

Venafi와 F5를 통한 머신 아이덴티티 보호
F5 에코시스템 | 2018. 12. 11.

Venafi와 F5를 통한 머신 아이덴티티 보호

‘머신 아이덴티티’란 간단히 말해 자동화된 프로세스가 자신의 신원을 식별할 수 있도록 하고, 다른 자동화 시스템과 프로세스가 관련 리소스에 적절한 수준의 접근 권한을 부여하도록 하는 방법을 의미합니다. 이 개념 자체는 새로운 것이 아닙니다. 비교적 새로운 점은 이를 구현해야 하는 규모입니다.

마이너와 미니언: 데이터 유출만이 비용을 초래하는 것은 아닙니다
F5 에코시스템 | 2018. 07. 23.

마이너와 미니언: 데이터 유출만이 비용을 초래하는 것은 아닙니다

물론 데이터 유출은 더 큰 비용을 초래할 수 있고(적어도 지금은), 실패 사실을 세상에 드러낼 수밖에 없게 합니다(통지 의무가 있으니까요). 하지만 보안을 단순히 데이터 노출 문제로만 봐서는 안 됩니다. 요즘은 데이터가...

내 클라우드에서 나가!
F5 에코시스템 | 2016. 10. 12.

내 클라우드에서 나가!

F5의 Jay Kelley가 전하는 최신 소식에는 Microsoft Office 365용 신규 ID 및 액세스 솔루션을 배포할 때 고려해야 할 사항이 정리되어 있습니다.

Shift(웹 앱) 보안 레터
F5 에코시스템 | 2015. 07. 06.

Shift(웹 앱) 보안 레터

웹 앱 보안을 개발 초기 단계로 앞당기세요. F5 블로그에서 DevOps 파이프라인 초기에 보안을 통합하여 취약점을 예방하고 시간을 절약하는 방법을 알아보세요.