본문으로 건너뛰기

Compute Engine

· 약 6분
jay.prog

What is Compute Engine

  • AWS의 EC2에 해당하는 서비스
  • 네트워크에 연결된 가상 서버를 제공, 부하 분산 클라우드 컴퓨팅으로 확장 가능

VM Instance

  • 각각의 Instance는 GCP 프로젝트에 속하며, 하나의 프로젝트에는 여러개의 인스턴스를 가질 수 있음
  • 프로젝트를 삭제하면 속한 인스턴스도 함께 삭제 됨
  • 프로젝트에는 최대 5개의 VPC 네트워크를 가질 수 있음
  • Compute Engine은 하나의 VPC 네트워크에 속하게 됨
  • 컨터이너를 사용하여 만들 수 있는 옵션 지원, 도커 이미지로 시작 가능
  • Google Cloud Platform, gcloud CLI, REST API, Mobile application 등을 이용하여 관리 가능

Machine 유형

  • Predefined
  • Custom

Live Migration

  • 소프트웨어 또는 하드웨어 업데이트와 같은 호스트 시스템 이벤트가 발생 하더라도 인스턴스를 종료 및 재부팅 할 필요 없이 계속 실행
  • 하드웨어 고장 등으로 Live Migration이 불가능한 경우, VM이 다운 되고 hostError가 로깅 됨

Preemptive VM Instances

  • GCP 내에서 아무도 사용하고 있지 않은 리소스를 사용 -> 일반 인스턴스 보다 훨씬 저렴한 가격으로 실행 가능
  • Compute Engine은 24 시간 동안 실행한 후 종료
  • Live Migration을 지원하지 못 할 수도 있음
  • Google Compute Engine SLA 에서 제외 됨

Instance Template

  • 동일한 구성의 인스턴스를 여러개 만들기 위한 목적

Instance Group

Managed Instance Group

  • 별 다른 설정 없이 오토 스케일링 지원
  • 자동 복구 정책 설정 가능
  • 로드 밸런서를 붙여서 그룹의 모든 인스턴스에 트래픽 분산 가능
  • 카나리아 업데이트, 롤링 업데이트 등의 유연한 롤아웃 시나리오 지원
  • 배포속도, 범위, 서비스 중단 수준 제어 가능
  • 영역(Zone) 관리형 인스턴스 그룹 : 단일 영역에 인스턴스 배포
  • 리전(Region) 관리형 인스턴스 그룹 : 동인 리전 내 여러 영역에 배포
  • 애플리케이션의 부하를 여러 영역에 분산 시켜 보다 높은 가용성을 제공 (자연재해 문제 회피 방안)
  • 기본적으로 디폴트 네트워크에 배치가 되며, 리전 범위의 IP 주소가 할당 됨 -> 더 작은 IP 범위를 사용하려면, 커스텀 모드 VPC 네트워크와 서브넷을 만든 다음 인스턴스 템플릿에 지정하여 그룹의 IP 범위를 제한 해야 함
  • 컨테이너를 이용하여 애플리케이션의 배포를 간소화 할 수 있음
  • 속도보다 비용이 중요한 작업의 경우 -> 인스턴스 그룹에서 선점형 VM 인스턴스를 사용하여 작업 부하 비용 절감 가능

Unmanaged Instance Group

  • 임의로 다른 구성을 가진 인스턴스를 추가하거나 제거 가능
  • 오토 스케일링, 자동 복구, 롤링 업데이트 지원, 인스턴스 템플릿 사용은 제공하지 않음
  • 가송성이 높고 확장 가능한 작업 부하를 배포하는 데에는 적합하지 않음

Global reousces (전역 리소스)

  • 동일 프로젝트 내의 모든 영역에 있는 모든 리소스가 접근 가능
  • Resources
    • Address
    • Images
    • Snapshots (Disk Snapshots)
    • Instance templates
    • VPC network
    • Firewalls
    • Routes
    • Global operations

Region resources (지역 리소스)

  • 동일한 지역 내의 모든 리소스가 액세스 가능
  • Resources
    • Address
    • Subnets
    • Regional managed instance group
    • Regional persistent disks
    • Regional operations

Zone resources (영역 리소스)

  • 영역에서 호스팅 되는 리소스, 영역별 리소스는 해당 영역에서 고유하며 동일한 영역의 다른 리소스에서만 사용 가능
  • Resources
    • Instance
    • Persistent disks
    • Machine types
    • Zonal managed instance group
    • Per-zone operations

선점형 인스턴스 종료 스크립트 실행 과정

  1. 스크립트 파일을 인스턴스로 복사
  2. 스크립트 파일에 관한을 설정하여 실행 가능하게 만듦
  3. 인스턴스가 종료되면 스크립트 파일을 실행