
부모라면(부모가 아니어도 괜찮아요. 여기서는 아무도 뭐라 하지 않으니까요) 아마도 《레고 무비》를 억지로 본 적이 있을 겁니다. 그것도 한 번 이상요.
DevOps 도입을 고려하는 기업이라면 아마도 이 영화를 필수로 봐야 한다고 생각합니다.
진심입니다.
그 이유는 (수많은) 교훈 중 하나가 바로 각자의 분야에서 전문가인 마스터 빌더조차도 세상을 구하려면, 아니 애플리케이션을 원하는 배포 상태로 전환하려면 다른 사람들과 협업해야 한다는 것이기 때문입니다. 다시 말해, 수동 프로세스라는 무시무시한 기술적 크래글 때문에 프로덕션 환경에 발이 묶이지 않은 상태를 말합니다.
마스터 빌더들은 각자 자신이 무엇을 만들고 싶은지뿐만 아니라, 그것을 만드는 데 필요한 모든 구성 요소까지 구상할 수 있습니다. 영화 속에서 그들은 부수고, 날고, 질주하고, 총을 쏘며 위기를 해결할 수 있는 완성품을 순식간에 만들어 내곤 하는데, 그 솜씨는 감탄할 만합니다. 하지만 개별 창작물을 만드는 데 그치지 않고, 악당의 음모를 저지하기 위한 일련의 사건을 조율해(제가 왜 이런 표현을 썼는지 아시겠죠?) 더 ‘큰’ 그림을 실행에 옮겨야 할 때는 해내지 못했습니다. 모두가 같은 방향으로 움직이는 데 필요한 절차가 담긴 체크리스트를 들고 지침을 참고하기 좋아하는 사람이 필요했던 것입니다.
우리의 경우, 그 방향은 프로덕션입니다.
지속적 배포가 현실적인 가능성이자 DevOps의 궁극적인 목표로 자리 잡고, 개발 부문과 ‘나머지 IT 부문’ 사이의 장벽을 넘어서는 상황에서는 보안, 스토리지, 컴퓨팅, 네트워크라는 네 가지 운영 영역 전반에 걸친 조율이 반드시 필요합니다. 그래야 각 서비스 및 시스템을 설계하고 구축하는 핵심 담당자들이 서로 단절된 채 일하는 것을 방지할 수 있습니다.
“로컬에서 다른 서비스와 독립적으로 코드를 작성한다”는 마이크로서비스의 원칙을 받아들이는 개발자들조차도, 이러한 사고방식과 접근법이 제대로 작동하려면 다른 서비스가 통신에 사용할 수 있도록 명확하게 정의되고 문서화된 인터페이스(API) 가 필요하다는 사실을 알고 있습니다. 이러한 인터페이스는 다른 서비스가 이를 어떻게 호출할지 이해하지 못한 채 독립적으로 개발되어서는 안 됩니다.
장벽 너머의 프로덕션 측도 마찬가지입니다. 지속적 배포가 실제로 이루어지려면 네 가지 운영 영역 모두가 어느 시점에는 서로 소통해야 합니다. 각 개별 서비스나 서비스 집합을 구축하는 구체적인 방식은 서로 다를 수 있지만, 반드시 따라야 할 일련의 지침인 전체 계획이 존재합니다. 그리고 어느 시점에는 이들을 하나로 조율하여 프로덕션 파이프라인의 처음부터 끝까지 배포를 이끄는 포괄적인 프로세스로 통합해야 합니다.
각 도메인의 핵심 설계자들은 서로 완전히 독립적으로 일할 수 없습니다. 이들은 서로 조율하고 협력하며, 자신이 맡은 퍼즐 조각이 오늘날 비즈니스의 기반이 되는 (앱) 세계를 구하기 위한 큰 계획에 어떻게 들어맞는지 고려해야 합니다.
이를 시작하는 한 가지 방법은 영향 범위를 그래프로 나타내는 것입니다. 보안의 관점에서 코드 결합도를 다룬 최근 글인 프로그램 결합도의 80% 법칙을 읽고 나서 이 방법이 떠올랐습니다. 이 글은 코드와 개발자에게 특화된 일종의 종속성 그래프를 만드는 데 중점을 두고 있지만, 이를 한 단계 더 높은 수준으로 추상화하여 함수/프로시저/메서드를 프로덕션 환경의 시스템으로 간주하면 이 방법이 어떻게 유용할 수 있는지 알 수 있습니다. 애플리케이션 배포가 특정 서비스에 얼마나 의존하는지(또는 우선 도메인 수준에서라도) 파악하면, 목표를 달성하기 위해 여러 그룹 간에 어느 정도의 조율이 필요한지 이해하고 그 목표를 달성하기 위한 계획을 수립하는 데 유용한 통찰을 얻을 수 있습니다.
가장 좋은 예 중 하나는 거의 모든 것이 핵심 네트워크 서비스가 먼저 배포되어야 한다는 점입니다. 이는 애플리케이션과 그 종속 구성 요소뿐만 아니라 애플리케이션을 제공하는 보안 및 상위 계층(애플리케이션) 서비스에도 해당됩니다. 로드 밸런싱, 웹 애플리케이션 보안, 심지어 방화벽까지도 작동하려면 네트워크 속성에 의존합니다. IT 내의 서로 다른 그룹(사일로)이 관리하는 시스템과 서비스 간의 이러한 종속성(결합도)을 이해하면, 지속적 배포와 비슷한 수준이라도 달성하기 위해 소통하고 협업해야 할 필요성을 알리는 데 큰 도움이 될 수 있습니다.
아무리 뛰어난 마스터 빌더라도 자신이 만든 것이 더 큰 그림에 어떻게 들어맞는지 이해해야 합니다. IT 전반에서 운영이 점점 더 자동화되고 코드 중심으로 바뀌는 가운데, 개발 기법과 도구를 적용하면 지속적 배포라는 거대한 구축 작업에 자신의 퍼즐 조각을 통합하는 데 필요한 인터페이스를 더 효과적으로 설계할 수 있습니다.
작성자 소개

Lori MacVittie는 F5 CTO 오피스의 수석 엔지니어이자 최고 에반젤리스트로, 애플리케이션 딜리버리, 자동화 전략 및 인프라 분야에서 깊이 있는 전문성을 보유하고 있습니다. AI 에이전트를 위한 가드레일을 정의하고, 취약한 멀티클라우드 아키텍처를 분석하며, 확장 가능한 시스템의 한계를 탐구하는 등 복잡한 문제를 명확하게 풀어내는 것으로 잘 알려져 있습니다. 애플리케이션 개발, IT 아키텍처, 네트워크 및 시스템 운영 전반에 걸쳐 30년 이상의 업계 경험을 쌓았습니다. F5에 합류하기 전에는 수상 경력이 있는 기술 편집자로 활동했습니다. MacVittie는 컴퓨터 과학 석사 학위를 보유하고 있으며, 보안, 클라우드 및 엔터프라이즈 아키텍처 분야를 아우르는 다수의 저서를 집필한 작가입니다. 또한 보드게임과 비디오 게임을 열정적으로 즐기며, 치즈에 대해서는 거리낌 없이 확고한 견해를 갖고 있습니다.
Lori Mac Vittie의 다른 블로그 게시물관련 블로그 게시물
성평등을 향한 여정: 사이버 보안 분야에서 성공적인 커리어를 개척하는 방법에 관한 Jenn Gile과의 Q&A
F5의 ‘성평등을 향한 여정’ 시리즈 네 번째 Q&A에서는 Rachael Shah와 NGINX 제품 마케팅 책임자 Jenn Gile이 사이버 보안 직종에 대한 오해를 바로잡고, 사이버 보안 분야의 성별 격차를 해소하기 위한 조언과 그 이점에 대해 이야기합니다.
TLS 검사에서 피터 파커 원칙 다루기
“큰 힘에는 큰 책임이 따른다.” 볼테르와 처칠도 이와 비슷한 말을 남겼지만, 이 문구는 스파이더맨 코믹스에서 벤 삼촌의 말로 가장 널리 알려져 있습니다. 물론 이 문구가 문화적으로 널리 통용되는 이유 중 하나는 TLS 검사를 비롯해 수많은 상황과 주제에 적용할 수 있기 때문입니다.
Venafi와 F5를 통한 머신 아이덴티티 보호
‘머신 아이덴티티’란 간단히 말해 자동화된 프로세스가 자신의 신원을 식별할 수 있도록 하고, 다른 자동화 시스템과 프로세스가 관련 리소스에 적절한 수준의 접근 권한을 부여하도록 하는 방법을 의미합니다. 이 개념 자체는 새로운 것이 아닙니다. 비교적 새로운 점은 이를 구현해야 하는 규모입니다.
마이너와 미니언: 데이터 유출만이 비용을 초래하는 것은 아닙니다
물론 데이터 유출은 더 큰 비용을 초래할 수 있고(적어도 지금은), 실패 사실을 세상에 드러낼 수밖에 없게 합니다(통지 의무가 있으니까요). 하지만 보안을 단순히 데이터 노출 문제로만 봐서는 안 됩니다. 요즘은 데이터가...
내 클라우드에서 나가!
F5의 Jay Kelley가 전하는 최신 소식에는 Microsoft Office 365용 신규 ID 및 액세스 솔루션을 배포할 때 고려해야 할 사항이 정리되어 있습니다.
Shift(웹 앱) 보안 레터
웹 앱 보안을 개발 초기 단계로 앞당기세요. F5 블로그에서 DevOps 파이프라인 초기에 보안을 통합하여 취약점을 예방하고 시간을 절약하는 방법을 알아보세요.