인프라 현대화 서비스

마이그레이션 전략, VM/컨테이너/서버리스 비교, GKE, Cloud Run, API 관리, 하이브리드 클라우드를 정리합니다.

CDL에서 인프라 현대화 도메인은 전체의 약 17%를 차지합니다. 어떤 컴퓨팅 옵션을 언제 선택하는지, 그리고 기존 시스템을 어떻게 클라우드로 이전하는지가 핵심입니다.

 

마이그레이션 전략 — 6R

기업이 기존 시스템을 클라우드로 이전할 때 "어떤 방식으로 옮길 것인가"를 결정해야 합니다. Google Cloud는 이를 6가지 전략으로 분류합니다. 마치 이사를 할 때 짐을 그대로 옮길지, 새로 살지, 버릴지 결정하는 것과 같습니다.

| 전략 | 별칭 | 설명 | 예시 | |------|------|------|------| | Rehost | 리프트앤시프트 | 변경 없이 그대로 클라우드로 이전 | 온프레미스 VM → Compute Engine VM | | Replatform | 리프트, 팅커, 시프트 | 최소한의 수정으로 이전 | 앱 코드는 유지, DB를 Cloud SQL로 교체 | | Refactor | 재설계 | 클라우드 네이티브 아키텍처로 완전 재설계 | 모노리식 앱 → 마이크로서비스 + Cloud Run | | Retire | 폐기 | 더 이상 필요 없는 시스템 종료 | 사용률 0%인 레거시 서버 제거 | | Retain | 유지 | 현재 환경 그대로 유지 (아직 이전할 준비 미완) | 규제 때문에 온프레미스 유지 필요 | | Reimagine | 재구상 | 완전히 새로운 서비스로 재탄생 | 기존 소프트웨어 판매 방식 → SaaS 모델로 전환 |

시험에서는 "변경 없이 옮긴다"는 표현이 나오면 Rehost, "클라우드에 맞게 재설계한다"는 표현이 나오면 Refactor를 떠올리세요.

!클라우드 마이그레이션 전략의 6가지 R

컴퓨팅 옵션 비교

Google Cloud는 여러 가지 컴퓨팅 서비스를 제공합니다. 핵심은 "얼마나 많은 제어권을 원하는가, 얼마나 운영 부담을 줄이고 싶은가"입니다. 마치 자동차를 직접 운전할지, 택시를 탈지, 자율주행 차량을 탈지 선택하는 것과 비슷합니다.

| 서비스 | 유형 | 관리 수준 | 적합한 상황 | |--------|------|-----------|-------------| | Compute Engine | VM (IaaS) | 높음 (직접 관리) | OS 수준 제어, 레거시 앱 이전 | | GKE | 관리형 Kubernetes | 중간 | 컨테이너 오케스트레이션, 마이크로서비스 | | Cloud Run | 서버리스 컨테이너 | 낮음 | 컨테이너를 서버 없이 실행, HTTP 기반 앱 | | App Engine | 서버리스 PaaS | 매우 낮음 | 웹앱 및 모바일 백엔드, 자동 확장 | | Cloud Functions | 서버리스 함수 | 최소 | 이벤트 기반 단일 함수, 가장 간단한 작업 |

Compute Engine — 가상 머신 (IaaS)

Compute Engine은 Google 데이터센터에서 실행되는 가상 머신(VM)입니다. OS, 소프트웨어, 네트워크 설정을 직접 관리합니다. 레거시 애플리케이션을 그대로 이전하거나 특별한 하드웨어 구성이 필요할 때 적합합니다.

선점형 VM (Preemptible VM) / Spot VM: Google이 필요할 때 언제든 종료할 수 있는 단기 VM입니다. 대신 비용을 최대 91%까지 절감할 수 있습니다. 배치 작업, 데이터 분석처럼 중단되어도 괜찮은 워크로드에 적합합니다. "저렴하지만 중단 가능"이라는 특성을 기억하세요.

GKE (Google Kubernetes Engine) — 관리형 컨테이너 오케스트레이션

컨테이너는 앱과 실행 환경을 하나로 패키징한 것입니다. GKE는 Kubernetes를 Google Cloud에서 관리형으로 제공합니다. 수백 개의 컨테이너를 자동으로 배포, 스케일링, 복구합니다.

GKE Autopilot: GKE의 완전 관리형 모드입니다. 일반 GKE는 노드(서버) 설정을 직접 해야 하지만, Autopilot은 노드 관리까지 Google이 담당합니다. 사용자는 워크로드(Pod) 정의만 하면 됩니다. "Kubernetes를 운영하고 싶지만 인프라 관리는 하기 싫다"면 Autopilot을 선택합니다.

Cloud Run — 서버리스 컨테이너

Cloud Run은 컨테이너 이미지를 서버 없이 실행합니다. 요청이 들어오면 자동으로 컨테이너를 시작하고, 요청이 없으면 0으로 축소합니다(Scale to Zero). 비용은 실제 처리한 요청 시간 기준으로 청구됩니다.

예를 들어, 하루에 몇 번만 호출되는 API가 있다면 Cloud Run이 이상적입니다. 항상 서버를 켜둘 필요 없이 요청이 올 때만 실행되기 때문입니다. "컨테이너를 쓰고 싶은데 서버 관리는 하기 싫다"면 Cloud Run을 선택합니다.

App Engine — 서버리스 PaaS

App Engine은 웹 애플리케이션과 모바일 백엔드를 위한 완전 관리형 플랫폼입니다. 코드만 업로드하면 인프라 관리, 확장, 패치를 모두 Google이 담당합니다. 표준 환경(특정 런타임만 지원)과 가변형 환경(커스텀 런타임 지원)이 있습니다.

Cloud Functions — 서버리스 함수

Cloud Functions는 단일 기능을 이벤트에 반응해 실행합니다. 파일 업로드, 메시지 수신, HTTP 요청 등 특정 이벤트가 발생했을 때만 코드가 실행됩니다. 가장 간단한 서버리스 옵션으로, 짧고 독립적인 작업에 적합합니다.

예를 들어, "Cloud Storage에 파일이 업로드되면 자동으로 이미지 썸네일을 생성한다"와 같은 작업에 Cloud Functions를 씁니다.

 

API 관리

API(Application Programming Interface)는 서비스 간 통신의 문을 여는 열쇠입니다. 앱이 외부 서비스나 내부 마이크로서비스와 대화할 때 API를 사용합니다. Google Cloud는 두 가지 API 관리 서비스를 제공합니다.

| 서비스 | 대상 | 주요 기능 | |--------|------|-----------| | Apigee | 대기업, 파트너 공개 API | API 게이트웨이, 사용량 분석, 보안 정책, 개발자 포털, 수익화 | | Cloud Endpoints | 내부 또는 소규모 API | 인증, 모니터링, gRPC/REST 지원 |

Apigee는 기업 수준의 API 플랫폼입니다. 외부 개발자에게 API를 공개하고, 사용량을 측정하고, 요금을 부과하거나 보안 정책을 적용할 때 사용합니다. API를 하나의 제품처럼 관리하는 것이 특징입니다.

Cloud Endpoints는 더 간단한 API 관리 도구입니다. 주로 Google Cloud 서비스와 함께 동작하는 API를 관리할 때 사용합니다.

 

하이브리드 및 멀티 클라우드

많은 기업이 데이터를 한 번에 클라우드로 완전히 이전할 수 없습니다. 규제, 레거시 시스템, 비용 등의 이유로 일부는 온프레미스에, 일부는 클라우드에 두어야 하는 경우가 있습니다. 또는 AWS, Azure, Google Cloud 여러 클라우드를 함께 사용하는 멀티 클라우드 전략을 취하기도 합니다.

GKE Enterprise (구 Anthos): Google Cloud의 하이브리드/멀티 클라우드 관리 플랫폼입니다. 온프레미스 서버, AWS, Azure, Google Cloud 어디서든 Kubernetes 기반 앱을 동일한 방식으로 배포하고 관리할 수 있습니다.

GKE Enterprise의 주요 장점: 벤더 락인 방지: 특정 클라우드에 종속되지 않아 유연성이 높아집니다 기존 투자 활용: 이미 온프레미스에 구축한 인프라를 그대로 활용할 수 있습니다 단일 관리 콘솔: 여러 환경을 하나의 인터페이스로 통합 관리합니다 일관된 정책 적용: 보안, 네트워크 정책을 모든 환경에 동일하게 적용합니다

마치 여러 개의 창고가 서울, 부산, 해외에 분산되어 있어도 하나의 물류 시스템으로 통합 관리하는 것과 같습니다.

 

컴퓨팅 선택 가이드

시험에서 시나리오가 주어지면 아래 기준으로 서비스를 선택합니다.

| 시나리오 | 선택 서비스 | 이유 | |----------|------------|------| | OS/커널 수준 제어 필요 | Compute Engine | IaaS, 가장 높은 제어권 | | 대규모 컨테이너 관리, 인프라 직접 관리 OK | GKE (Standard) | Kubernetes 완전 제어 | | 대규모 컨테이너 관리, 인프라 관리 부담 없이 | GKE Autopilot | 노드 관리 자동화 | | 컨테이너 실행, 트래픽 변동 심함 | Cloud Run | 스케일 투 제로, 비용 효율 | | 웹앱/모바일 백엔드, 코드만 관리 | App Engine | PaaS, 완전 관리형 | | 이벤트 기반 단순 작업 | Cloud Functions | 가장 간단한 서버리스 | | 비용 절감, 중단 가능한 배치 작업 | Spot/Preemptible VM | 최대 91% 절감 |

 

시험 핵심 정리

"변경 없이 그대로 클라우드로 이전" -- Rehost (리프트앤시프트)

"클라우드에 맞게 완전 재설계" -- Refactor

"최소한 수정해서 이전" -- Replatform

"VM, OS 수준 제어, 레거시 이전" -- Compute Engine

"컨테이너 오케스트레이션, 대규모 관리" -- GKE

"노드 관리 자동화, 인프라 신경 쓰기 싫다" -- GKE Autopilot

"서버리스 컨테이너, 0까지 스케일 다운" -- Cloud Run

"이벤트 기반 단일 함수, 가장 간단한 서버리스" -- Cloud Functions

"웹앱 PaaS, 코드만 업로드" -- App Engine

"저렴하지만 중단 가능한 VM, 배치 작업" -- Spot/Preemptible VM

"엔터프라이즈 API 관리, 개발자 포털, 수익화" -- Apigee

"내부/소규모 API 관리" -- Cloud Endpoints

"온프레미스 + 클라우드 통합 관리, 멀티 클라우드" -- GKE Enterprise (구 Anthos)

블로그 목록으로 돌아가기