컨테이너, 쿠버네티스 하면 리눅스가 먼저 떠오릅니다. 컨테이너 환경으로 전환하는 프로젝트 현장을 가보면 대부분 리눅스 기반 워크로드를 옮기는 작업을 합니다. 도커에 윈도우를 올려 쓸 수도 있지만, 제약이 많다 보니 아예 고려 대상에서 제외합니다. 자연히 운영체제 선택지는 리눅스 하나로 좁히는 경우가 많았습니다. 하지만 이제는 윈도우를 선택 대상으로 삼아도 충분할 듯합니다. 그 이유는? 네, 구글 클라우드의 GKE(Google Kubernetes Engine)가 윈도우 컨테이너를 공식 지원(GA)합니다. 윈도우 서버에서 운영하던 각종 비즈니스 애플리케이션을 컨테이너 환경에서 운영하고 싶다면 이제 GKE를 떠올리면 됩니다.
윈도우 서버 워크로드로 이제는 컨테이너로 옮길 때!
올 초 구글은 GKE 상에서 이용할 수 있는 윈도우 서버 컨테이너 프리뷰를 공개했습니다. 그리고 5월 초 정식으로 기능을 공개했습니다. 이에 따라 이제 쿠버네티스 환경에서 윈도우 서버 컨테이너를 더 쉽고, 빠르고, 경제적으로 이용할 수 있게 되었습니다.
GKE가 제공하는 윈도우 컨테이너는 프리뷰 공개 후 수많은 사전 이용자의 피드백을 바탕으로 최적화를 하였습니다. 이를 바탕으로 구글은 사설 클러스터 구성, 리전 단위 클러스터 구성, 윈도우 서버의 기능 업데이트 관련 옵션인 LTSC(Long-Term Servicing Channel)과 SAC(Semi-Annual Channel) 지원, gMSA(Managed Service Account) 기반의 액티브 디렉토리 통합 등의 보강 작업을 하였습니다.
또한, GA로 릴리즈된 윈도우 컨테이너는 Google Cloud Console과도 긴밀히 통합되어 있습니다. 따라서 GKE 클러스터 생성을 아주 간편하게 할 수 있으며, 다음 그림과 같이 윈도우 서버 노드 풀에 대한 업데이트도 쉽게 할 수 있습니다.
윈도우 컨테이너를 위해 구글이 준비한 다채로운 파트너 솔루션
DevOps 기반의 애플리케이션 현대화에 있어 컨테이너는 모든 것의 기초라 할 수 있습니다. 이 말은 역으로 보면 윈도우 컨테이너만 있다고 해서 윈도우 서버 기반의 애플리케이션 현대화를 할 수 없다는 뜻으로도 해석할 수 있습니다. 그래서 구글은 윈도우 서버 기반의 애플리케이션 현대화를 위한 필수 요소를 고루 지원하기 위해 GKE 윈도우 컨테이너를 지원하는 다양한 파트너 솔루션 준비에도 완벽을 기했습니다. 다음 표를 보시면 구글의 정성과 노력이 잘 보일 것입니다.
GKE 윈도우 컨테이너 관련해 여러 조직이 관심을 가질 만한 파트너 솔루션을 간략히 소개해 보겠습니다.
Aqua: GKE에 Aqua 보안 플랫폼을 직접 배포할 수 있으며 이를 이용해 신뢰할 수 있는 컨테이너 이미지만 프로덕션 환경에 배포할 수 있습니다. 더 자세한 내용은 관련 페이지를 참조 바랍니다.
Chef: 기존에 사용하던 윈도우용 애플리케이션을 Chef가 제공하는 Habitat를 이용해 쉽게 패키징하여 GKE에 배포할 수 있습니다. 더 자세한 내용은 관련 페이지를 참조 바랍니다.
CircleCI: GKE 환경에서 실행되는 윈도우 컨테이너 배포를 위해 CircleCI가 제공하는 orb를 이용할 수 있습니다. 이를 통해 CI/CD 파이프라인 상에서 몇 분이면 컨테이너화된 윈도우용 애플리케이션을 배포할 수 있습니다. 더 자세한 내용은 관련 페이지를 참조 바랍니다.
CloudBees: GKE 상에 올려 관리하는 윈도우 기반 애플리케이션 빌드와 테스트에 CloudBees Core 파이프라인을 사용하면 작업 속도와 효율을 높일 수 있습니다. 더 자세한 내용은 관련 페이지를 참조 바랍니다.
Codefresh: GKE 클러스터에 Codefresh를 연결하면 배포 파이프라인을 쉽게 구축할 수 있습니다. 더 자세한 내용은 관련 페이지를 참조 바랍니다.
Datadog: 윈도우 노드 풀에 Datadog 에이전트를 배포하면 GKE 클러스터에서 실행하는 모든 컨터이너화된 윈도우 애플리케이션을 모니터링할 수 있습니다. 더 자세한 내용은 관련 페이지를 참조 바랍니다.
GitLab: GitLab에서 윈도우 러너로 CI/CD 파이프라인을 실행하면 GKE에 윈도우 애플리케이션 배포를 자동화할 수 있습니다. 더 자세한 내용은 관련 페이지를 참조 바랍니다.
Frog: GKE 환경에서 JFrog Artifactory를 이용하면 윈도우 애플리케이션 운영 상황을 편리하게 모니터링할 수 있습니다. 더 자세한 내용은 관련 페이지를 참조 바랍니다.
New Relic: GKE용 New Relic Kubernetes 솔루션을 사용하면 Kubernetes 클러스터에서 실행되는 Windows 워크로드에 대한 메트릭, 이벤트, 로그 및 추적을 완벽하게 할 수 있습니다. 더 자세한 내용은 관련 페이지를 참조 바랍니다.
윈도우 서버 워크로드를 컨테이너화하는 것을 이제는 더 미룰 이유가 없어 보입니다. 관련 문서와 GKE가 지원하는 각종 DevOps 도구를 보니 더 확신이 가네요.