M365Con 2027 – 무료 온라인 컨퍼런스 · 11–22 Jan 2027 · 120 sessions→ m365con.net

블로그 · Mirko Peters

플랫폼 엔지니어링 101: Azure에서 기존 티켓 시스템을 넘어서기

By ·

클라우드 아키텍처, 개발자 경험, 최신 DevOps가 빠르게 변화하는 분야를 다루는 심층 분석에 다시 오신 것을 환영합니다. 최근 팟캐스트 에피소드를 들으셨다면, 현대 소프트웨어 제공 과정에서 가장 답답한 병목 중 하나인 기존 IT 티켓 시스템을 저희가 상당한 시간을 들여 짚어봤다는 것을 아실 겁니다. 익숙한 상황이실 겁니다. 개발자가 새 데이터베이스, 스테이징 환경, 혹은 간단한 DNS 업데이트를 요청합니다. 티켓을 열면 대기열에서 기다리고, 분류되고, 담당자가 배정되었다가 다시 바뀌고, 결국 며칠 또는 몇 주가 지나서야 수작업이 진행됩니다. 인프라가 준비될 무렵이면 스프린트는 이미 끝났고, 추진력은 사라지고, 모두가 지쳐 있습니다.

Automatically translated with AI from the original post. Read the English original

▶ BLOGPlatform Engineering101: Moving Beyond…M365.FM
Titelbild: Platform Engineering 101: Moving Beyond Traditional Ticketing Systems in Azure

클라우드 아키텍처, 개발자 경험, 최신 DevOps가 빠르게 변화하는 분야를 다루는 심층 분석에 다시 오신 것을 환영합니다. 최근 팟캐스트 에피소드를 들으셨다면, 현대 소프트웨어 제공 과정에서 가장 답답한 병목 중 하나인 기존 IT 티켓 시스템을 저희가 상당한 시간을 들여 짚어봤다는 것을 아실 겁니다. 익숙한 상황이실 겁니다. 개발자가 새 데이터베이스, 스테이징 환경, 혹은 간단한 DNS 업데이트를 요청합니다. 티켓을 열면 대기열에서 기다리고, 분류되고, 담당자가 배정되었다가 다시 바뀌고, 결국 며칠 또는 몇 주가 지나서야 수작업이 진행됩니다. 인프라가 준비될 무렵이면 스프린트는 이미 끝났고, 추진력은 사라지고, 모두가 지쳐 있습니다.

이번 블로그 글에서는 방송에서 다뤘던 핵심 개념을 더 깊이 풀어보려 합니다. Microsoft Azure를 활용하는 조직이 플랫폼 엔지니어링이라는 혁신적인 방법론을 도입하고, 견고한 내부 개발자 플랫폼(IDP)을 구축함으로써 이 지치게 만드는 수작업 반복에서 어떻게 벗어날 수 있는지 살펴보겠습니다.

소개: Azure에서 기존 티켓 방식이 만드는 병목

익숙한 상황부터 짚어보겠습니다. 조직이 워크로드를 Microsoft Azure로 마이그레이션했다고 가정해 봅시다. 클라우드를 받아들였고, Azure Kubernetes Service(AKS), Azure SQL, Cosmos DB, App Service를 사용하고 있습니다. 겉으로 보기에는 현대적인 환경입니다. 하지만 워크플로를 자세히 들여다보면, 개발자들은 예전에 온프레미스 서버실을 다루던 방식 그대로 Azure를 사용하고 있습니다. 관료적 절차와 티켓 대기열이라는 벽을 통해서 말입니다.

팀이 리소스를 프로비저닝하고자 할 때 스스로 처리할 수 없습니다. 가드레일이 보행로가 아니라 장애물처럼 구현되어 있습니다. 팀은 중앙 플랫폼 팀이나 운영 팀에 티켓을 제출합니다. 그 결과 엄청난 인지 부하가 생기고, 클라우드 컴퓨팅이 제공하리라 기대했던 민첩성은 완전히 무너집니다. Azure는 놀라울 만큼 빠르고 프로그래밍 방식의 제어를 제공하지만, 개발자는 종종 그 기능에서 차단되어 있습니다. 기존 티켓 시스템은 혁신에 부과되는 세금과 같습니다. 모든 요청에 사람의 개입이 필요하고, 그 과정에서 사람의 실수, 의사소통 오류, 그리고 답답한 지연이 발생합니다. 개발자를 인프라를 맡길 수 없는 아이처럼 취급하는 것을 멈추고, 자동화된 가드레일의 뒷받침을 받는 셀프 서비스 기능이 필요한 권한 있는 창작자로 대우해야 합니다.

플랫폼 엔지니어링이란 무엇이며 왜 중요한가?

그렇다면 이를 어떻게 해결할까요? 바로 플랫폼 엔지니어링입니다. 최근 몇 년 사이 플랫폼 엔지니어링은 DevOps의 확실한 진화형으로 떠올랐습니다. DevOps는 이론상 개발과 운영 사이의 벽을 허물었지만, 실제로는 많은 조직이 운영 부담 전체를 개발자에게 떠넘겼습니다. 개발자들은 비즈니스 로직을 작성하면서 동시에 Kubernetes, Terraform, 네트워크 보안, Azure IAM 정책의 전문가가 되기를 갑자기 요구받게 되었습니다.

플랫폼 엔지니어링은 이러한 방식이 지속될 수 없다는 점을 인정합니다. 개발자에게 인프라 전문가가 되기를 강요하거나 티켓 대기열에서 기다리게 하는 대신, 플랫폼 엔지니어링은 개발자 경험을 하나의 제품으로 다룹니다. 전담 플랫폼 팀이 Azure의 기반 복잡성을 추상화하는 내부 개발자 플랫폼(IDP)을 구축합니다.

왜 이것이 중요할까요? 인지 부하는 엔지니어링 생산성을 조용히 갉아먹는 주범이기 때문입니다. 개발자가 근무 시간의 40%를 인프라 구성, 컴플라이언스 체크리스트와 씨름하고 승인을 기다리는 데 쓰면, 고객을 기쁘게 할 기능을 만들 수 없습니다. 플랫폼 엔지니어링이 중요한 이유는 엔지니어링 팀이 몰입 상태를 되찾도록 돕기 때문입니다. 개발자가 한 번의 클릭이나 명령으로 가져다 쓸 수 있는 골든 패스, 즉 사전 승인되고 보안성과 컴플라이언스가 확보된 아키텍처를 제공합니다.

수작업 운영을 넘어서: 내부 개발자 플랫폼의 비전

Azure에서 수작업 운영을 진정으로 넘어서려면, 인프라를 관리하는 사고방식에서 플랫폼을 구축하는 사고방식으로 전환해야 합니다. 내부 개발자 플랫폼은 단일 도구가 아니라, Azure 클라우드 인프라 위에서 서비스와 도구를 선별해 마찰 없이 소프트웨어를 제공하도록 구성한 통합 계층입니다.

임시 스크립트와 무분별한 프로비저닝의 문제점

일부 조직은 티켓 처리가 느리다는 것을 깨닫고 개발자에게 Azure 구독에 대한 기여자 권한을 부여해 원하는 리소스를 자유롭게 만들도록 합니다. 이는 정반대의 극단이며, 그만큼 재앙적입니다. 머지않아 관리되지 않는 리소스, 급증하는 클라우드 비용, 심각한 보안 취약점, 그리고 무언가를 모니터링하거나 업데이트할 표준 방법이 없는 상태가 됩니다. 그야말로 무법천지입니다.

IDP의 적정 균형점

IDP는 완벽한 균형을 만들어 줍니다. 보안, 규정 준수, 비용 관리, 아키텍처 표준을 워크플로에 직접 포함하면서도 셀프 서비스 기능을 제공합니다. 개발자는 원하는 자율성을 얻고, 운영 및 보안 팀은 필요한 거버넌스와 규정 준수를 확보합니다. 자동화로 실현되는 윈윈 시나리오입니다.

Azure 기반 개발자 플랫폼 구축의 핵심 기둥

Microsoft Azure에서 내부 개발자 플랫폼(IDP)을 구축할 때는 견고한 아키텍처 기반에 의존해야 합니다. Azure 기반 플랫폼을 성공으로 이끄는 핵심 기둥을 하나씩 살펴보겠습니다.

1. Infrastructure as Code(IaC)와 모듈 카탈로그

모든 클라우드 플랫폼의 핵심은 Infrastructure as Code입니다. Azure 생태계에서는 보통 Terraform, Bicep 또는 Azure Resource Manager(ARM) 템플릿을 의미합니다. 그러나 Bicep 파일을 작성하는 것만으로는 충분하지 않습니다. 플랫폼 팀은 모듈화되고 재사용 가능하며 안전한 템플릿으로 구성된 큐레이션 카탈로그를 만들어야 합니다. 예를 들어 개발자가 데이터베이스 구성을 처음부터 직접 작성하도록 두는 대신, 플랫폼이 엔터프라이즈급 암호화, 적절한 네트워킹 연동, 사전 구성된 백업 정책을 모두 포함한 Azure SQL 모듈을 제공합니다. 개발자는 애플리케이션 이름과 계층만 입력하면 됩니다.

2. Azure Policy를 활용한 Policy as Code

거버넌스는 사람이 체크리스트를 확인하는 방식에 의존할 수 없습니다. 자동화되어야 합니다. Azure Policy와 Azure Blueprints를 플랫폼에 통합하면 IDP를 통해 프로비저닝되는 모든 리소스가 규제 프레임워크와 내부 기업 표준을 자동으로 준수하게 됩니다. 개발자가 전송 중 암호화가 적용되지 않은 스토리지 계정을 프로비저닝하려고 하면, 플랫폼이 즉시 이를 감지하고 Azure에 닿기도 전에 거부합니다.

3. 원활한 CI/CD 및 GitOps 통합

IDP는 독립적으로 존재해서는 안 됩니다. 버전 관리 및 배포 파이프라인과 기본적으로 통합되어야 합니다. GitHub Actions, Azure DevOps, 또는 GitOps용 ArgoCD를 사용하든, 플랫폼은 코드 커밋부터 Azure 배포까지 파이프라인을 원활하게 오케스트레이션해야 합니다. 개발자는 풀 리퀘스트에서 바로 환경을 생성하거나 삭제하도록 트리거할 수 있어야 합니다.

4. 통합 관찰성 및 모니터링

측정할 수 없는 것은 관리할 수 없습니다. 뛰어난 플랫폼은 애플리케이션을 Azure Monitor, Application Insights, Azure Log Analytics에 직접 연결하여 기본 제공 관찰성을 제공합니다. 개발자가 플랫폼을 통해 새 마이크로서비스를 생성하면, 수동 계측 없이도 로깅, 메트릭, 추적이 자동으로 구성되고 연결됩니다.

제공 일정 단축 및 개발자 마찰 감소

이 아키텍처를 도입했을 때의 실질적인 효과를 살펴보겠습니다. 2주짜리 티켓 처리 절차를 2분짜리 셀프 서비스 포털로 대체하면 지표가 크게 달라집니다.

시장 출시 시간과 배포 빈도

개발 속도가 급격히 향상됩니다. 수동 네트워크 구성을 기다리며 스테이징 환경에서 정체되던 기능을 이제 즉시 배포할 수 있습니다. 팀은 모든 풀 리퀘스트마다 임시 환경을 생성하고, 운영 환경과 완전히 동일한 환경에서 코드를 테스트한 뒤, 병합되면 해당 환경을 삭제할 수 있습니다. 이러한 수준의 민첩성은 수동 티켓 처리 방식에서는 불가능합니다.

개발자 번아웃 방지

개발자 만족도는 많은 조직이 간과하는 중요한 지표입니다. 관료주의와 씨름하고, 다른 팀을 기다리고, 반복적이고 가치가 낮은 작업을 처리하는 일이 계속되면 곧바로 개발자 번아웃과 높은 이직률로 이어집니다. 마찰을 없애고 지루한 작업을 자동화하면, 엔지니어가 창의적이고 생산적이며 가치 있다고 느끼는 환경을 만들 수 있습니다. 행복한 개발자가 더 나은 코드를 작성합니다.

조직에 플랫폼 엔지니어링을 도입하기 위한 모범 사례

Azure에 내부 개발자 플랫폼을 구축하는 일은 매력적으로 들리지만, 큰 혼란을 일으키지 않고 실제로 어떻게 실행할 수 있을까요? 청취자와 컨설팅 고객에게 권장하는 모범 사례를 소개합니다.

플랫폼을 제품처럼 다루기

이것이 플랫폼 엔지니어링의 핵심 원칙입니다. 내부 개발자가 바로 고객입니다. 사용자 조사를 수행하고, 피드백을 수집하고, 문서를 작성하며, 그들의 요구에 따라 지속적으로 개선해야 합니다. 플랫폼이 번거롭고 사용하기 어려우면 개발자들은 우회 방법을 찾아내게 되고, 이니셔티브는 실패하게 됩니다.

최소 기능 플랫폼(MVP)으로 작게 시작하기

첫날부터 모든 기능을 갖춘 거대한 단일 플랫폼을 만들려고 하지 마십시오. 주요 고충을 해결하는 단일 사용 사례부터 시작하십시오. 예를 들어, 내장 로깅과 데이터베이스를 갖춘 표준 마이크로서비스를 Azure Kubernetes Service에서 자동으로 프로비저닝하는 것부터 시작할 수 있습니다. 이것이 성공적으로 자리 잡으면, 플랫폼의 기능을 점진적으로 확장하십시오.

개발자 문서와 포털 경험에 중점 투자하기

아무리 강력한 백엔드 자동화라도 개발자가 사용 방법을 모르면 쓸모가 없습니다. 바로 이러한 목적으로 엄청난 인기를 얻은 Spotify의 Backstage 같은 개발자 포털에 투자하십시오. Backstage를 Azure 연동과 결합하면, 팀은 문서를 확인하고, 서비스 카탈로그를 탐색하며, 셀프 서비스 작업을 실행할 수 있는 하나의 통합 화면을 갖게 됩니다.

결론: 미래를 위한 현대적 개발 팀 역량 강화

전통적인 티켓 시스템은 이미 지난 시대의 유물입니다. 혁신을 더디게 하고, 엔지니어링 인재를 지치게 하며, Microsoft Azure와 같은 클라우드 인프라가 가진 진정한 힘과 민첩성을 활용하지 못합니다. 플랫폼 엔지니어링을 받아들이고 신중하며 안전하고 자동화된 내부 개발자 플랫폼(IDP)을 구축함으로써, 조직은 병목 현상을 제거하고, 확고한 거버넌스를 적용하며, 개발 팀의 잠재력을 온전히 발휘하게 할 수 있습니다.

기억하십시오. 현대 클라우드 아키텍처의 목표는 서버를 다른 누군가의 데이터 센터로 옮기는 것이 아니라, 사람들이 그 어느 때보다 빠르고 안전하게 가치를 전달하도록 힘을 실어주는 것입니다. 이번 블로그 글을 읽어주셔서 감사합니다. 팟캐스트를 구독하시고, 이 글을 플랫폼 및 DevOps 팀과 공유해 주십시오. 다음 시간에도 클라우드 기술의 최전선을 함께 탐구하겠습니다!

Entities in this article

Platform engineering DevOps Microsoft Azure Internal developer platform Cognitive load Kubernetes Terraform Azure Kubernetes Service (AKS) Azure Policy Bicep

Related articles

RSS