
얼마 전 지인이 작은 웹서비스를 만들면서 서버를 어디에 올려야 하냐고 물어봤는데, 대화가 자연스럽게 GCP로 흘러갔습니다. 이름은 많이 들어봤지만 막상 콘솔에 들어가면 Compute Engine, Cloud Run, IAM, VPC 같은 단어가 한꺼번에 보여서 꽤 낯설게 느껴지죠. 사실 GCP는 처음부터 모든 기능을 다 쓰는 서비스라기보다, 필요한 것만 작게 골라 쓰는 쪽이 훨씬 편합니다.
GCP는 Google Cloud Platform의 줄임말로, 구글이 제공하는 클라우드 서비스 묶음입니다. 서버를 빌리고, 데이터베이스를 만들고, 파일을 저장하고, 인공지능 API를 붙이고, 로그를 확인하는 일을 한 공간에서 처리할 수 있습니다. 예전에는 직접 서버를 사고 설치해야 했다면, GCP에서는 몇 번의 설정으로 비슷한 환경을 만들 수 있는 셈입니다.
GCP를 시작하려면 먼저 구조부터 잡는 방법
GCP를 처음 볼 때 가장 먼저 이해하면 좋은 단위는 프로젝트입니다. 프로젝트는 하나의 작업 공간이라고 생각하면 쉽습니다. 예를 들어 개인 블로그 테스트용 프로젝트, 회사 서비스 운영용 프로젝트, 데이터 분석 실험용 프로젝트를 따로 만들 수 있습니다.
프로젝트를 나누면 비용과 권한을 관리하기 편합니다. 테스트하다가 실수로 리소스를 많이 만들어도 운영 서비스와 섞이지 않고, 누가 어떤 서비스에 접근할 수 있는지도 분리할 수 있습니다. 작은 서비스라도 처음부터 프로젝트 이름을 명확하게 붙이는 습관이 꽤 중요합니다.
- 개인 학습용: 실험이 많으니 비용 알림을 낮게 설정
- 테스트 서버용: 배포 연습과 기능 확인 중심
- 운영 서비스용: 권한과 보안 설정을 더 엄격하게 관리
근데 처음부터 조직, 폴더, 네트워크 설계까지 깊게 들어가면 금방 지칩니다. 개인이나 작은 팀이라면 프로젝트 하나를 만들고, 그 안에서 필요한 서비스만 켜는 방식으로 시작해도 충분합니다.
처음 써볼 만한 GCP 서비스 고르는 방법
GCP에는 서비스가 정말 많습니다. 그래서 처음에는 “무엇을 만들 건지”를 기준으로 고르는 편이 좋습니다. 단순한 웹앱을 배포하려는 사람과 대용량 데이터를 분석하려는 사람에게 필요한 서비스는 다릅니다.
웹서비스를 빠르게 올리고 싶을 때
작은 웹앱이나 API 서버라면 Cloud Run이 편합니다. 컨테이너 기반으로 동작하고, 요청이 없을 때는 리소스 사용을 줄일 수 있어서 초기 비용 부담이 낮은 편입니다. Node.js, Python, Go 같은 언어로 만든 서버를 컨테이너로 묶어 배포하는 흐름과 잘 맞습니다.
가상 서버를 직접 다루고 싶을 때
리눅스 서버에 접속해서 직접 설치하고 설정하는 방식이 익숙하다면 Compute Engine이 맞습니다. AWS의 EC2와 비슷한 느낌이라고 보면 됩니다. 다만 항상 켜진 서버는 계속 비용이 발생하므로, 테스트용 인스턴스는 사용 후 중지하는 습관이 필요합니다.
파일 저장이 필요할 때
이미지, 백업 파일, 로그 파일처럼 객체 단위로 저장할 자료가 있다면 Cloud Storage를 많이 씁니다. 쇼핑몰 상품 이미지나 사용자 업로드 파일을 저장하는 용도로도 흔합니다. 저장 용량, 조회 빈도, 지역 설정에 따라 비용이 달라지니 처음에는 단순한 설정으로 시작하는 게 편합니다.
비용 걱정을 줄이려면 이렇게 설정하기
솔직히 클라우드를 처음 쓸 때 가장 신경 쓰이는 건 비용입니다. 버튼 몇 번 눌렀을 뿐인데 나중에 큰 금액이 나오면 당황스럽거든요. GCP를 시작할 때는 기능보다 비용 알림부터 잡아두는 게 좋습니다.
예산과 알림을 설정하면 사용 금액이 특정 비율에 도달했을 때 알림을 받을 수 있습니다. 예를 들어 월 예산을 10달러로 두고 50%, 90%, 100% 구간에서 알림을 받도록 설정하면 예상 밖 사용량을 빨리 확인할 수 있습니다. 이 설정은 실제 과금을 자동으로 막아주는 장치는 아니지만, 초보자에게는 꽤 든든한 안전장치입니다.
- 학습용 프로젝트는 낮은 월 예산으로 시작
- 테스트 후 사용하지 않는 VM은 중지 또는 삭제
- 고정 IP, 디스크, 스냅샷처럼 남아 있는 리소스 확인
- 지역 선택은 가까운 곳과 비용을 함께 비교
특히 Compute Engine을 만들고 나서 인스턴스만 끄면 끝이라고 생각하기 쉬운데, 연결된 디스크나 고정 IP에서 비용이 계속 생길 수 있습니다. 사용하지 않는 리소스 목록을 주기적으로 보는 습관이 필요합니다.
권한 설정은 처음부터 작게 주는 방법
GCP에서 IAM은 권한 관리 기능입니다. 누가 어떤 프로젝트에서 어떤 작업을 할 수 있는지 정하는 곳입니다. 처음에는 Owner 권한을 한꺼번에 주고 싶지만, 실제 서비스에서는 필요한 권한만 주는 방식이 훨씬 안전합니다.
예를 들어 배포만 하는 사람에게 결제 설정까지 바꿀 수 있는 권한을 줄 필요는 없습니다. 로그만 보는 사람에게 서버 삭제 권한이 있을 이유도 없고요. 작은 팀이라도 역할을 나눠두면 실수로 인한 사고를 줄일 수 있습니다.
- 관리자: 프로젝트와 결제, 주요 설정 관리
- 개발자: 배포와 서비스 설정 중심
- 조회 담당자: 로그와 모니터링 확인 중심
그리고 서비스 계정도 중요합니다. 사람이 로그인해서 쓰는 계정이 아니라, 애플리케이션이나 자동화 작업이 GCP 리소스에 접근할 때 쓰는 계정입니다. 서비스 계정 키를 내려받아 여기저기 저장하는 방식은 위험할 수 있으니, 가능하면 키를 오래 방치하지 않는 쪽으로 관리하는 게 좋습니다.
초보자가 GCP에 익숙해지는 현실적인 순서
처음부터 쿠버네티스, 빅쿼리, 메시징, 보안 정책을 한꺼번에 익히려 하면 복잡합니다. 개인 프로젝트 기준으로는 간단한 웹앱 하나를 배포하고, 로그를 보고, 비용을 확인하는 흐름만 익혀도 감이 많이 잡힙니다.
추천하는 흐름은 단순합니다. 프로젝트를 만들고, 예산 알림을 켜고, Cloud Run이나 Compute Engine 중 하나로 작은 앱을 올립니다. 그다음 Cloud Logging에서 오류를 확인하고, 필요하면 Cloud Storage를 붙여 파일 저장까지 해보는 식입니다. 이 정도만 해도 GCP 콘솔의 기본 움직임을 꽤 자연스럽게 익힐 수 있습니다.
- 1단계: 프로젝트 생성과 결제 알림 설정
- 2단계: 간단한 웹앱 또는 API 배포
- 3단계: 로그 확인과 오류 추적
- 4단계: 저장소나 데이터베이스 연결
- 5단계: 권한을 역할별로 나누기
GCP는 처음엔 메뉴가 많아서 어렵게 보이지만, 실제로는 필요한 서비스 몇 개만 반복해서 쓰는 경우가 많습니다. 작은 프로젝트 하나를 정해서 배포부터 로그 확인까지 직접 지나가 보면 문서만 읽을 때보다 훨씬 빨리 감이 옵니다. 처음부터 완벽한 설계보다 비용 알림, 권한 관리, 사용하지 않는 리소스 삭제 같은 기본 습관을 챙기는 쪽이 더 오래 갑니다.
