Post

[Platform] GCP

[Platform] GCP

Google에서 제공하는 cloud platform.

  • Public Cloud 공급 업체.
  • 전 세계 google data center에 있는 컴퓨터 리소스에 무료 혹은 종량제 형태로 접근할 수 있다!
  • 여러 작업을 할 수 있는 computing service를 제공한다.

GCP Resource Architecture

gcp_resource_arch

  • GCP는 위와 같은 hierarchy가 있다.
  • 접근 제어 정책 및 구성 설정을 관리할 수 있다.
  • 각 하위 리소스는 하나의 상위 리소스에만 속할 수 있다.
  • IAM 정책 및 권한은 계층 구조를 통해 상속된다.
  • 모든 리소스는 하나의 프로젝트에 속해야 한다.
    • 하나의 리소스는 하나의 프로젝트에만 속할 수 있다.
  • 하나의 프로젝트는 다른 프로젝트의 리소스에 접근할 수 없다.
    • VPC에 관한 설정을 해야한다.

Google Compute Engine

Instance Group

  • VM instance의 모음이다.
  • Instance에 문제가 생겨도 다른 instance에서 서비스를 지속하거나 새로운 instance를 자동으로 생성해줄 수 있다.

유형

Unmanaged Instacne Group

  • 개별로 설정된 instance의 모음

Managed Instance Group

  • 동일한 여러 대의 instance에서 단일 application을 운영할 수 있다.
  • 자동화된 기능을 지원한다.

Managed Instance Group 구성

Template

  • VM instance와 MIG를 만드는데 사용 가능한 template.
  • 속성이 지정된 template을 이용해 instance를 간단하게 생성할 수 있다.

AutoScaling

  • Instance의 확장과 축소를 자동으로 할 수 있다.
  • Instance 개수의 Maximum/Minimum이 있다.

AutoHealing

  • 상태 확인 (Health Checks)
    • Instance의 응답 상태를 확인한다.
    • 문제가 있다고 판단되면 instance를 새로 생성한다.
  • 초기 지연 (Initial Delay)
    • Application 실행 후 상태 확인까지 걸리는 시간 설정.
    • 부팅 중 instance를 비정상적으로 인식 하는 것을 방지한다.

GCP 대표 Service

Compute

Compute Engine

  • 클라우드 가상 서버다.
    • AWS의 EC2와 같은 역할을 한다.
  • 개별 VM을 instance라고 한다.
  • 구글 데이터 센터의 물리적 서버를 사용자가 공유해 사용한다.
  • OS와 application을 설치해 운영한다.
    • CPU, Memory, Disk, Network 등을 할당.

App Engine

  • Serverless Application Platform.
  • 서버 관리 및 구성 배포가 필요 없다.
    • 오버헤드 없이 App 구축에만 집중할 수 있다!

Kubernetes Engine

  • 컨테이너식 App 배포를 위한 관리형 환경을 제공한다.
  • 개발자 생산성, 리소스 효율성, 작업 자동화, 오픈 소스 유연성을 가지고 있다.

Storage and Database

Cloud SQL

  • Cloud에서 관계형 PostgreSQL, MySQL DB를 쉽게 다룰 수 있게 해주는 완전 관리형 데이터베이스 서비스.

Cloud Storage

  • 통합 API를 사용해 저장소 메커니즘을 app에 통합할 수 있다.
  • 개체 수명 주기 관리 기능을 사용해 네 가지 저장소 범주를 사용해 비용 효율성을 높일 수 있다.

Cloud Database

  • App을 위한 확장성 높은 NoSQL database.
  • 자동으로 확장되는 가용성과 내구성 높은 DB를 제공해 app 부하를 처리.

Data Analysis

BigQuery

  • 기업용 serverless data warehouse.
    • 생산성을 높일 수 있도록 설계됐다.
  • 관리할 infra가 없어 SQL로 데이터를 분석할 수 있다.

Cloud Dataflow

  • 실시간 및 기록 모드에서 데이터를 변환하고 강화하는 전체 관리형 서비스
  • Serverless 접근 방식 덕분에 무제한에 가까운 용량을 이용하여 대규모 데이터를 처리할 수 있다.

Cloud Pubsub

  • Stream 분석 및 event 기반 computing system.

Networking

Load Balancing

  • 부하를 사용자와 가까운 지역에 분산할 수 있다.

CDN

  • Google Compute Engine과 Google Cloud Storage 기반 웹사이트와 app의 contents 전송 속도 향상.

AI

Cloud Auto ML

  • 사용자 요구에 맞게 모델을 학습 시킬 수 있는 기계 학습 제품

Cloud Translation API

  • 임의 문자열을 지원 언어로 번역할 수 있는 간단한 프로그래밍 인터페이스

Prediction API

  • Google 기계 학습을 사용하여 사용자의 예측된 행동을 기준으로 동적 사용자 그룹을 생성.
This post is licensed under CC BY 4.0 by the author.