개요

이 실습에서는 Kubernetes 엔진에서 Jenkins를 사용하여 지속적 배포 파이프라인을 설정하는 방법을 배우게 됩니다. Jenkins는 코드를 자주 공유 저장소에서 통합하는 개발자가 가장 많이 사용하는 자동화 서버입니다. 이 실습에서 빌드할 솔루션은 다음 다이어그램과 유사합니다.

https://cdn.qwiklabs.com/1b%2B9D20QnfRjAF8c6xlXmexot7TDcOsYzsRwp%2FH4ErE%3D

여기에서 Kubernetes에서의 Jenkins 실행에 관한 자세한 내용을 확인할 수 있습니다.

실습할 내용

이 실습에서는 다음 작업을 완료합니다.

지속적 배포란 무엇인가요?

지속적 배포(continuous delivery, CD) 파이프라인을 설정해야 하는 경우 Jenkins를 Kubernetes Engine으로 배포하면 표준 VM 기반 배포 대비 상당한 이점을 얻을 수 있습니다.

빌드 프로세스에서 컨테이너를 사용하는 경우 하나의 가상 호스트로 여러 운영 체제에서 작업이 가능합니다. Kubernetes Engine은 일시적 빌드 실행자(ephemeral build executors)를 제공하는데 이 기능은 빌드가 활발하게 실행될 때만 사용되므로, 일괄 처리 작업과 같은 다른 클러스터 작업에 사용할 여유 리소스를 확보할 수 있습니다. 일시적 빌드 실행자의 또 다른 이점은 속도로, 시작하는 데 몇 초밖에 걸리지 않습니다.

Kubernetes Engine에는 Google의 전역 부하 분산기가 사전 설치되어 있어 인스턴스로의 웹 트래픽 라우팅을 자동화하는 데 사용할 수 있습니다. 부하 분산기는 SSL 종료를 처리하고, 웹 프런트와 결합되어 Google 백본 네트워크로 구성된 전역 IP 주소를 활용합니다. 이 부하 분산기는 사용자가 항상 애플리케이션 인스턴스에 이르는 가장 빠른 경로로 액세스할 수 있도록 설정해 줍니다.

이제 어느 정도 Kubernetes와 Jenkins, 그리고 이들이 CD 파이프라인에서 어떻게 상호작용하는지 배웠으니 파이프라인을 빌드해보겠습니다.

저장소 복제

설정하려면 Cloud Shell에서 새 세션을 열고 다음 명령을 실행하여 영역 us-east1-d를 설정하십시오.

gcloud config set compute/zone us-east1-d