[Platform] GCP
[Platform] GCP
Google에서 제공하는 cloud platform.
- Public Cloud 공급 업체.
- 전 세계 google data center에 있는 컴퓨터 리소스에 무료 혹은 종량제 형태로 접근할 수 있다!
- 여러 작업을 할 수 있는 computing service를 제공한다.
GCP Resource Architecture
- 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.
