8.0 8부 소개: 자동화
소프트웨어는 사용자에게 닿을 때만 가치를 만듭니다. 커밋된 변경에서 실행 중인 프로덕션 코드까지의 경로는 대규모 조직이 속도, 안전, 그리고 제정신을 가장 자주 잃는 곳입니다. 수백 명의 엔지니어, 수십 개의 팀, 수천 개의 인프라 자원 규모에서는 소규모 집단에 통하는 비공식적 습관이 완전히 무너집니다. 수동 빌드, 손으로 설정한 서버, 일회성 배포 스크립트는 속도를 늦추고, 더 나쁘게는 반복할 수 없고, 문서화되지 않고, 감사하기 불가능해집니다. 이 부는 그 취약함을 자동화로 대체하는 것에 관한 것입니다. 소프트웨어를 빌드하고, 프로비저닝하고, 배포하고, 운영하는 지저분하고 오류 나기 쉬운 일을 코드화되고, 반복 가능하고, 리뷰 가능한 시스템으로 바꿉니다.
큰 팀과 기업 및 정부 조직의 판돈은 구체적입니다. 많은 팀이 겹치는 시스템을 공유할 때 수동 통합과 수동 운영의 비용은 비선형적으로 커지고, 리뷰되지 않은 변경 하나가 다른 팀의 작업이나 릴리스 전체를 조용히 깨뜨릴 수 있습니다. 규제 조직은 추가 부담을 집니다. 감사자, 보안 담당자, 규제 기관은 변경이 리뷰, 테스트, 승인되었다는 증거와, 프로덕션에서 돌아가는 산출물이 빌드되고 검증된 바로 그것이라는 증거를 필요로 합니다. 자동화는 이런 컴플라이언스 의무를 서류 작업의 부담에서 일반적인 엔지니어링 워크플로의 자동적인 부산물로 바꿉니다. 사후에 위반을 잡는 데서 아무것도 프로비저닝되거나 출하되기 전에 예방하는 쪽으로 옮겨 갑니다.
8부는 전달 기계를 끝에서 끝까지 따라갑니다. 코드를 통합하고 릴리스하는 파이프라인에서, 그것이 돌아가는 코드화된 인프라를 거쳐, 그것을 호스팅하는 컨테이너 플랫폼, 이 모두를 평범한 팀이 쓸 수 있게 하는 내부 플랫폼, 규모 아래서 품질과 통제가 무너지지 않게 하는 자동화로 이어집니다. 관통선은 단순합니다. 반복적이고 예측 가능하게 하는 모든 것은 코드화되어야 하며, 그래야 일관되고, 빠르고, 사람의 고역 없이 돌아갑니다.
이 부의 장
8.1 CI/CD와 전달: 모든 변경을 공유 메인라인에 통합하고, 테스트하고, 배포 가능한 상태로 유지하는 자동화된 파이프라인을 만들어, 릴리스가 엔지니어링의 난리가 아니라 안전하고 감사 가능한 비즈니스 결정이 되게 합니다.
8.2 코드형 인프라와 구성: 수동 클릭 대신 버전 관리되고 리뷰 가능한 기계가 읽을 수 있는 정의로 인프라를 정의하고 프로비저닝해, 환경이 일관되고, 재현 가능하고, 폐기 가능하며, 무언가 존재하기 전에 거버넌스 규칙이 내장되고 검사되게 합니다.
8.3 컨테이너, 오케스트레이션, 클라우드 네이티브: 애플리케이션과 그 의존성을 이식 가능하고 격리된 단위로 포장해 쿠버네티스 같은 오케스트레이션 플랫폼에서 규모에 맞게 운영하여, 많은 팀에 배포, 확장, 복원력을 위한 공통 기반을 주면서 출처, 격리, 비용을 다스립니다.
8.4 플랫폼 엔지니어링과 개발자 경험: 큐레이션된 셀프서비스 골든 패스(합리적인 기본값이 내장된 의견 있고 지원되는 경로)를 제공하는 내부 개발자 플랫폼을 구축하고 운영해, 공유된 복잡성을 흡수함으로써 팀이 자기 도메인에 집중하면서 보안, 신뢰성, 컴플라이언스에 대한 조직의 표준을 기본으로 물려받게 합니다.
8.5 테스트 및 프로세스 자동화: 반복적인 수동 테스트와 운영 작업을 지속적 테스트 스위트에서 런북, 복구, 컴플라이언스 증거 수집에 이르는 믿을 만한 기계 실행 워크플로로 대체해, 품질과 통제가 확장되고 숙련된 엔지니어가 판단이 많이 드는 문제에 풀려나게 합니다.
8.6 릴리스 관리와 점진적 전달: 배포를 릴리스와 분리해 코드를 출하하는 일을 기능을 노출하는 일과 떼어 놓고, 기능 플래그, 카나리 및 블루-그린 배포, 자동화된 상태 검사와 롤백, 오류 예산으로 관문 통제하는 릴리스로 변경을 점진적으로 내보내 어떤 변경의 피해 범위든 줄입니다.
8.7 빌드 시스템과 산출물 관리: 빌드를 재현 가능하고, 빠르고, 캐시 가능하게 만들고, 산출물을 불변이고, 버전 관리되고, 서명된 것으로 다루어, 한 번 빌드해 출처와 공급망 무결성과 함께 환경 전반으로 승격합니다.
이 장들이 서로 맞물리는 방식
이 장들은 각각 아래의 것 위에 서는 하나의 전달 시스템의 계층을 기술합니다. 지속적 통합과 지속적 전달(CI/CD, 8.1장)은 변경을 커밋에서 프로덕션으로 나르는 결합 조직입니다. 그러나 파이프라인에는 배포할 대상이 필요하고, 코드형 인프라(8.2)가 손으로 만든 스노플레이크가 아니라 버전 관리되고 재현 가능한 정의로 그 대상을 제공합니다. 컨테이너와 오케스트레이션(8.3)은 파이프라인과 코드화된 인프라가 점점 더 가정하는 런타임 기반으로, 모든 팀에 일관된 패키징과 배포 계약을 줍니다. 그다음 플랫폼 엔지니어링(8.4)이 이 모두를 일관된 내부 제품으로 감싸, 평범한 팀이 처음부터 조립하는 대신 포장된 길을 통해 파이프라인, 인프라, 오케스트레이션을 씁니다. 테스트 및 프로세스 자동화(8.5)는 모든 계층에 걸쳐 돌며, 파이프라인에 품질 관문을 내장하고 영역 전체를 건강하게 유지하는 운영 및 컴플라이언스 작업을 코드화합니다. 어느 계층의 약점도 그 위의 계층을 훼손합니다. 취약한 파이프라인, 스노플레이크 환경, 거버넌스 없는 플랫폼은 각각 자동화가 없애려는 바로 그 수동적 위험을 다시 들입니다.
이 부는 바깥으로도 이어집니다. 여기의 전달 규율은 11부, 특히 11.2장의 흐름과 전달 파이프라인 사고의 엔지니어링적 구현이며, 처리량이 높은 모든 시스템을 지배하는 같은 대기열 역학에 의존합니다. 이 장들이 만드는 것은 운영되기 위한 것이므로, 자동화가 배포하는 실행 중인 시스템을 다루는 9부의 운영과 신뢰성(사이트 신뢰성 엔지니어링은 9.1장, 관측 가능성은 9.2장)으로 곧장 이어집니다. 8부 전반의 거버넌스와 코드로서의 컴플라이언스 주제는 가이드북 다른 곳에서 정한 보안과 규제 제약을 충족하며, 여기 기술된 플랫폼은 AI와 데이터 워크로드가 점점 더 돌아가는 곳이기도 해서 이 부를 6부의 MLOps(머신러닝 운영) 및 인프라 관심사와 묶어 줍니다. 함께 읽으면 이 장들은 대규모 조직이 안전, 일관성, 통제를 포기하지 않고 소프트웨어를 빠르게 출하하는 방법을 보여 줍니다.