home..
About GCP
February 2025 (503 Words, 3 Minutes)
GCP vs AWS
GCP(Google Cloud Platform)는 구글에서 제공하는 클라우드 서비스
- Compute Engine: AWS의 EC2와 유사한 가상 머신 서비스이다. 초 단위 과금이 특징.
- App Engine,
- Cloud Run,
- Kubernetes Engine
AWS는 Cloud Computing 시장에서 가장 큰 시장 점유율 가진 플랫폼
- EC2(Elastic Compute Cloud): 가상 머신 서비스로, 다양한 인스턴스 유형과 자동 확장 기능을 제공.
- S3(Simple Storage Service): 고성능 객체 스토리지 서비스로, 데이터 저장 및 관리에 적합.
- Lambda: 서버리스 컴퓨팅 서비스로, 코드 실행에 최적화.
가격 및 전반적인 비교
AWS
- aws 는 사용량에 따라 할인 옵션이 굉장히 많기 때문에 GCP 보다 가격 구조가 복잡하다. 서버 개발자가 없는 팀에서 개발을 가장 먼저 끝내서 혼자 배포를 시도하게 됐었는데 AWS 는 너무 복잡했었어서 들어가자마자 뒷걸음칠했다.1
- 대규모의 글로벌 서비스 운영 기업들이 AWS 를 활용한다.
- 또한 다양한 서비스와 대규모 트래픽을 처리하는 경우 AWS 를 활용한다.
- (ex) 넷플릭스, 에어비앤비
- Storage 분석:
- S3 (Object Storage)
- EBS (Block Storage)
- EFS (File Storage)
- DB:
- RDS (MySQL, PostgreSQL, SQL Server)
- Redshift (대용량 데이터 분석)
- DynamoDB (NoSQL DB)
GCP
- GCP 는 직관적인 사용환경 덕분에 바로 쓰게 됐다. 초 단위 과금이지만 , 처음 사용하는 경우 무료 크레딧($300) 제공 및 자동 할인 정책이 주어진다.. 따라서 공모전 제출일까지 두달이 남은 시점에서 할 만하다고 생각했다.2
- 90일이 지나는 순간 다시 일반 계정으로 돌리고 그때부터 비용을 지불하기 시작하면 된다. 우리 팀은 공모전이 끝나자마자 VM을 삭제했다. ( 삭제안하면 계속 비용 청구되니 조심)
- GCP 가 AWS 에 비해 글로벌 인프라가 상대적으로 작다고 알려졌지지만, 작년 9월쯤 배포할때 아시아 (서울) 이 있었기 때문에 이제 많은 사람들이 GCP 를 많이 활용하지 않을까 싶다.
- 데이터 분석/ 머신러닝 에서 뛰어난 성능을 보인다. 따라서 AI 프로젝트에 중점을 둔 기업들이 많이 사용한다.
- (ex) 카카오헬스케어, 웨이브 , 넥슨
- Storage 분석:
- Cloud Storage (Object Storage)
- Persistent Disk (Block Storage)
- Filestore (File Storage)
- DB:
- Cloud SQL (MySQL, PostgreSQL, SQL Server)
- BigQuery (대용량 데이터 분석, 자주 쓰임)
- Firestore, Spanner (NoSQL DB)
GCP App Engine vs VM with docker:
- App Engine: 완전 관리형 플랫폼 서비스(PaaS). 코드를 배포하기만 하면 Google이 인프라, 확장, 관리를 자동으로 처리하기 때문에 설정이 간단하며, 소규모 애플리케이션이나 인프라 관리를 원하지 않는 경우에 적합.
- 웹앱이나 API 를 위한 서비스에 가깝다.
- 가상 머신(VM)과 Docker: VM에서 Docker를 사용하면 환경을 더 세밀하게 제어가능. 운영 체제, 소프트웨어, 종속성을 포함하여 모든 구성을 직접 설정할 수 있다.
- 복잡하거나 맞춤형 애플리케이션에 더 적합해서, 많이들 VM 을 사용한다.
Ac.t 에서 GCP VM 선택한 이유
- GCP의 Compute Engine (VM)은 기본적으로 Google의 네트워크 최적화가 적용되어 속도가 빠름
- GCP Console UI가 직관적이어서 관리가 편리했음.
- Ac.t 의 핵심 기능인 날씨 데이터와 사용자 활동 데이터를 분석해야 하므로 BigQuery 등 GCP의 분석 도구가 필요할 것이라고 판단함.
인스턴스 만들기
순서: 도커 이미지 빌드 -> GCP 에 VM 생성 -> 도커 이미지를 VM에서 Pull
- Google Cloud console 접속, 사이드바에서 Compute Engine 클릭 후 VM Instance 로 이동
- “인스턴스 만들기” 버튼 클릭
- 이름, 지역 및 영역, 운영체제, 버전, 부팅 디스크 유형, 크기 (GB)3 등을 설정한다.
- 운영체제는 Debian 을 ,
- 디스크 유형은 가격이 제일 싼 "Balanced Persistent Disk" 로 하였다.
크기는 10 GB로 초기설정했다.
VM 생성 후엔 SSH 로 접속해서 도커 설치해주면 된다.
Q: VM 사용 안하고 놔둬도 비용이 계속 발생해요?
A: 예…저도 알고싶지 않았어요..
- Docker 컨테이너 자체는 비용이 청구되지 않지만, 컨테이너가 실행되는 VM 인스턴스에 대한 리소스 사용량으로 인해 비용이 발생한다. 따라서 서버를 당장 사용할 필요가 없으면 중지 를 하길 추천한다. 버튼 하나만 누르면 된다. 4
- 막상 배포하니 리소스 사용량이 적다 -> 더 작은 크기의 VM으로 스케일 다운하면 된다.