본문으로 건너뛰기

Deployflow 개요

Beta

카카오클라우드 Deployflow는 애플리케이션을 클라우드 환경에 안정적으로 배포하고 관리할 수 있도록 지원하는 지속적 배포(Continuous Deployment, CD) 서비스입니다. 쿠버네티스(Kubernetes) 환경을 기반으로 애플리케이션, 배포 전략, 승인 프로세스, 토폴로지, 히스토리를 사용하여 배포 실행부터 상태 확인과 롤백까지의 흐름을 관리할 수 있습니다.

사용 목적 및 사례

Deployflow는 배포 구성 파일을 기준으로 애플리케이션을 생성하고, 배포 실행과 승인 절차를 관리하려는 경우에 사용할 수 있습니다. Raw Manifest, Kustomize, Helm 등 쿠버네티스 표준 구성 방식을 사용할 수 있으며, Codeflow 리포지토리의 소스 또는 빌드 결과물을 배포 흐름과 연결할 수 있습니다.

다음과 같은 배포 환경에서 활용할 수 있습니다.

  • 배포 자동화가 필요한 환경: 수동 배포 절차를 줄이고, 미리 설정한 애플리케이션 구성과 소스 정보를 기준으로 배포를 실행할 수 있습니다.
  • 무중단 배포 전략이 필요한 환경: 블루/그린(Blue/Green), 카나리(Canary) 배포 전략을 사용하여 서비스 중단 위험을 줄이고 단계적으로 트래픽을 전환할 수 있습니다.
  • 배포 승인과 검토가 필요한 환경: 동기화 또는 롤백 실행 전 리뷰어 승인을 거치도록 설정하고, 변경된 매니페스트를 Diff로 검토한 후 승인 또는 반려할 수 있습니다.
  • 배포 상태와 이력 추적이 필요한 환경: 토폴로지 뷰와 히스토리를 통해 리소스 상태, 리비전, 실패 사유, 이전 배포 내역을 확인하고 필요한 경우 롤백할 수 있습니다.
  • 대규모 애플리케이션을 운영하는 환경: 검색 필터와 컬럼 설정을 사용해 여러 애플리케이션과 승인 요청을 조회하고, 다중 선택으로 애플리케이션을 수정하거나 삭제할 수 있습니다.

특징

  • 애플리케이션 기반 배포 관리: 배포 클러스터, 네임스페이스, 소스 리포지토리, 배포 방식, 승인 설정을 기준으로 애플리케이션을 생성하고 관리할 수 있습니다.
  • Codeflow 연동: Codeflow 리포지토리와 빌드 결과물을 배포 소스로 연결하여 소스 코드 빌드부터 배포까지의 흐름을 구성할 수 있습니다.
  • 쿠버네티스 배포 구성 지원: Raw Manifest, Kustomize, Helm 차트 등 쿠버네티스 표준 매니페스트 타입을 사용해 배포할 수 있습니다.
  • 배포 전략 제어: 블루/그린, 카나리, 자동 동기화 배포 유형을 설정하고, 배포 단계에 따라 동기화, 승격, 트래픽 전환을 수행할 수 있습니다.
  • 승인 프로세스: 배포 실행 전 승인 관리를 통해 리뷰어가 변경 내역을 확인하고 승인 또는 반려할 수 있습니다.
  • 토폴로지 및 히스토리 관리: 리소스 간 관계와 상태를 토폴로지에서 확인하고, 히스토리에서 매니페스트, 실패 사유, 이전 배포 내역을 확인할 수 있습니다.
  • IAM(Identity and Access Management) 기반 권한 관리: IAM 서비스에서 프로젝트 역할과 서비스 역할을 할당하여 Deployflow 리소스에 대한 접근 권한을 관리할 수 있습니다.

시작하기

Deployflow를 처음 사용하는 경우 주요 개념에서 애플리케이션, 배포 전략, 승인 프로세스, IAM 역할 등 핵심 리소스와 운영 개념을 먼저 확인할 수 있습니다. 애플리케이션 생성 및 관리, 승인 관리 등 실제 작업 방법은 How-to Guides를 참고해 주세요.

카카오클라우드 사용이 처음이라면 카카오클라우드 시작하기를 참고해 주세요.