Skaffold

Skaffold는 지속적 개발, 지속적 통합(CI), 지속적 배포(CD)를 조정하여 개발자 생산성을 촉진하는 명령줄 도구입니다.

Google 오픈소스 프로젝트인 Skaffold에는 플러그형 아키텍처가 포함된 이식 가능한 선언적 구성이 제공됩니다.

개발자들이 사랑하는 Skaffold

13,000명의 GitHub 스타와 300명이 넘는 참여자를 보유한 Skaffold는 대규모 개발자 커뮤니티가 있습니다.

왜일까요? 개발자들은 Skaffold에서 개발 및 배포 프로세스의 속도를 높일 수 있어 선호합니다.

DevOps 연구에 따르면 조직의 배포 빈도가 높고 변경 리드 타임이 단축되면 조직의 실적이 향상됩니다. 

Google Cloud에서 Skaffold 사용

Cloud Code, Cloud Build, Google Cloud Deploy와 같은 Google Cloud 제품에서 개발 조정을 위해 Skaffold가 사용되는 방식을 알아봅니다. 

카테고리 시나리오 Skaffold 이점
지속적 개발
JetBrains IDE에서 Kubernetes 앱 실행 및 디버깅

JetBrains IDE용 Cloud Code에서 Skaffold를 사용하여 로컬 minikube 클러스터 또는 Google Kubernetes Engine 클러스터에서 Kubernetes 애플리케이션을 실행하고 디버깅하는 방법을 알아봅니다. 

  • 코드 변경사항 자동 재배포 

  • 다시 빌드하지 않고도 코드 변경사항을 즉시 배포할 수 있도록 파일 동기화를 사용 설정합니다. 

  • Kubernetes 클러스터의 코드 디버깅

  • 애플리케이션 로그를 스트리밍하고 앱을 로컬 머신으로 전달합니다.

VS Code에서 Kubernetes 애플리케이션 실행 및 디버깅

VS Code용 Cloud Code에서 Skaffold를 사용하여 Google Kubernetes Engine 클러스터에서 Kubernetes 애플리케이션을 실행하고 디버깅하는 방법을 알아보세요. 

  • 코드 변경사항 자동 재배포

  • 다시 빌드하지 않고도 코드 변경사항을 즉시 배포할 수 있도록 파일 동기화를 사용 설정합니다. 

  • Kubernetes 클러스터의 코드 디버깅

  • 애플리케이션 로그를 스트리밍하고 앱을 로컬 머신으로 전달합니다.

지속적 통합
Skaffold로 Cloud Build에서 빌드 및 테스트

Cloud Build 빌드 단계에서 Skaffold 이미지로 Skaffold 명령어를 쉽게 사용하여 Cloud Build CI/CD 파이프라인에서 빌드, 테스트, 배포합니다. 

지속적 배포
Google Cloud Deploy를 사용하여 GKE에 앱 배포

Google Cloud Deploy가 Skaffold를 사용하여 두 개의 Google Kubernetes Engine 클러스터 시퀀스에 샘플 애플리케이션을 제공하는 방법을 알아봅니다.

  • 프로필을 사용하여 배포 대상별로 다른 매니페스트 구성

  • 구성에서 애플리케이션의 전체 선언적 상태 캡처

  • HelmKustomize와 같은 매니페스트 관리 도구와 통합

엔드 투 엔드
Skaffold를 사용하여 앱을 개발하고 GKE에 제공

통합된 Google Cloud 도구 모음(Cloud Code, Cloud BuildGoogle Cloud Deploy)을 사용하여 지속적 개발, 지속적 통합(CI), 지속적 배포(CD) 시스템을 설정하고 사용합니다. 이 시스템을 사용하여 애플리케이션을 개발하고 Google Kubernetes Engine(GKE)에 배포할 수 있습니다.

  • 개발 및 제공 전반에 걸친 패리티 향상

  • 다양한 환경에서 구성 재사용

  • 워크플로 초기부터 전반적으로 일관된 거버넌스 적용

  • 위에 나열된 기타 모든 혜택

카테고리