Google Cloud Platform 개요

이 개요는 Google Cloud Platform(GCP)의 전반적인 구조에 대한 이해를 돕는 것을 목표로 작성되었습니다. 여기서 흔히 사용되는 기능을 간단히 살펴보고, 보다 상세한 내용이 담긴 문서의 링크를 확인할 수 있습니다. 사용 가능한 기능이 무엇인지, 각 부분이 어떻게 함께 작동하는지를 알면 앞으로 어떻게 진행할지에 대한 의사 결정을 내릴 때 도움이 됩니다. 또한 이 문서에는 다양한 시나리오에서 GCP를 시험 사용할 수 있는 가이드 링크도 있습니다.

GCP 리소스

GCP는 전 세계 곳곳의 Google 데이터 센터에 위치한 컴퓨터와 하드 디스크 드라이브와 같은 물리적 자산과 가상 머신(VM)과 같은 가상 리소스로 구성됩니다. 각 데이터 센터의 위치는 전역 지역입니다. 지역에는 미국 중부, 서유럽, 동아시아가 포함됩니다. 각 지역은 지역 내에서 상호 격리되는 영역의 집합체입니다. 각 영역은 문자 식별자와 지역 이름이 결합된 이름으로 식별됩니다. 예를 들어 동아시아의 a 영역 이름은 asia-east1-a로 지정됩니다.

이러한 리소스 분포는 장애에 대비한 중복화, 클라이언트와 가까운 곳에 리소스를 배치함으로써 얻는 지연 감소를 비롯한 여러 가지 이점을 제공합니다. 또한 이러한 분포에 따라 리소스를 사용하는 방법에 관한 몇 가지 규칙도 있습니다.

서비스를 통한 리소스 액세스

과거 소프트웨어 및 하드웨어 제품으로 간주했던 요소가 클라우드 컴퓨팅에서는 서비스가 됩니다. 이러한 서비스를 통해 기반 리소스에 액세스할 수 있습니다. 사용 가능한 GCP 서비스 목록에는 많은 서비스가 포함되며 그 수는 계속 늘어나는 중입니다. GCP에서 웹사이트 또는 애플리케이션을 개발할 때는 필요한 인프라를 제공하는 조합으로 이러한 서비스를 결합 및 구성한 다음 구축하려는 시나리오를 위한 코드를 추가합니다.

전역, 지역, 영역 리소스

일부 리소스는 여러 지역과 영역에 걸쳐 다른 리소스에서 액세스가 가능합니다. 이러한 전역 리소스에는 사전 구성된 디스크 이미지, 디스크 스냅샷, 네트워크가 포함됩니다. 일부 리소스는 같은 지역에 위치한 리소스에서만 액세스할 수 있습니다. 이러한 지역 리소스에는 고정 외부 IP 주소가 포함됩니다. 같은 영역에 위치한 리소스에서만 액세스할 수 있는 리소스도 있습니다. 이러한 영역 리소스에는 VM 인스턴스, 인스턴스의 유형, 디스크가 포함됩니다.

다음 다이어그램에서 전역 범위, 지역 및 영역과 일부 리소스 간의 관계를 볼 수 있습니다.

지역 및 영역을 사용하여 리소스를 분할하는 방법을 보여주는 GCP 전역 범위 다이어그램

작업의 범위는 다루는 리소스의 종류에 따라 달라집니다. 예를 들어 네트워크는 전역 리소스이므로 네트워크 생성은 전역 작업인 반면 주소는 지역 리소스이므로 IP 주소 예약은 지역 작업입니다.

GCP 애플리케이션을 최적화할 때는 이러한 지역과 영역의 상호작용을 이해하는 것이 중요합니다. 예를 들어 한 지역의 디스크를 다른 지역의 컴퓨터에 연결할 수 있다 해도 여기서 발생하는 지연으로 인해 성능이 매우 떨어질 수 있으므로 연결하지 않는 것이 좋습니다. 다행히 GCP에서는 그렇게 할 수 없습니다. 디스크는 같은 영역의 컴퓨터에만 연결할 수 있습니다.

선택하는 컴퓨팅 및 호스팅 서비스에 필요한 자체 관리의 수준이 어느 정도인지에 따라 리소스 할당 방법과 위치를 알아야 하는 경우도 있고 알 필요가 없는 경우도 있습니다.

GCP의 지리적 분포에 대한 자세한 내용은 지리 및 지역을 참조하세요.

프로젝트

할당 및 사용하는 모든 GCP 리소스는 하나의 프로젝트에 속해야 합니다. 프로젝트는 빌드할 항목을 정리하는 개체라고 생각할 수 있습니다. 프로젝트는 설정, 권한, 그리고 애플리케이션을 설명하는 기타 메타데이터로 구성됩니다. 단일 프로젝트 내의 리소스는 지역 및 영역 규칙에 따라 내부 네트워크를 통해 통신하는 등의 방식으로 서로 쉽게 협력할 수 있습니다. 각 프로젝트에 포함된 리소스는 프로젝트 경계에서 별개의 항목으로 구분되며 외부 네트워크 연결을 통해서만 상호 연결할 수 있습니다.

각 GCP 프로젝트에는 다음 요소가 포함됩니다.

  • 사용자가 제공하는 프로젝트 이름
  • 사용자가 제공하거나 GCP에서 사용자 대신 제공할 수 있는 프로젝트 ID
  • GCP에서 제공하는 프로젝트 번호

GCP를 다루는 과정에서 특정 명령줄 및 API 호출 시 이러한 식별자를 사용하게 됩니다. 다음 스크린샷에서 프로젝트 이름, ID, 번호를 볼 수 있습니다.

프로젝트 ID와 이름을 볼 수 있는 GCP 콘솔 스크린샷

이 예에서는 다음과 같이 정의됩니다.

  • Example Project은 프로젝트의 이름입니다.
  • example-id는 프로젝트 ID입니다.
  • 123456789012는 프로젝트 번호입니다.

각 프로젝트 ID는 GCP 전체에서 고유합니다. 프로젝트를 만든 다음 프로젝트를 삭제할 수 있지만 ID는 다시 사용할 수 없습니다.

결제가 사용 설정된 경우 각 프로젝트는 하나의 결제 계정과 연결됩니다. 여러 프로젝트의 리소스 사용 비용이 동일한 계정에서 결제될 수 있습니다.

프로젝트는 네임스페이스 역할을 합니다. 즉, 각 프로젝트 내의 모든 리소스는 고유한 이름을 가져야 합니다. 그러나 상호 별개의 프로젝트에 있는 경우에는 일반적으로 리소스 이름을 다시 사용할 수 있습니다. 일부 리소스 이름은 전역에서 고유해야 합니다. 자세한 내용은 해당 리소스의 문서를 참조하세요.

서비스와 상호작용하는 방법

GCP는 서비스 및 리소스와 상호작용하기 위한 3가지 기본적인 방법을 제공합니다.

Google Cloud Platform 콘솔

웹 UI를 설명하는 GCP 콘솔 스크린샷

Google Cloud Platform 콘솔은 GCP 프로젝트 및 리소스를 관리하는 데 사용할 수 있는 웹 기반의 그래픽 사용자 인터페이스를 제공합니다. GCP 콘솔을 사용할 때는 새 프로젝트를 만들거나 기존 프로젝트를 선택하고, 해당 프로젝트의 컨텍스트에서 만든 리소스를 사용합니다. 여러 개의 프로젝트를 만들 수 있으므로 프로젝트를 사용하여 자신에게 적합한 방식으로 작업을 분리할 수 있습니다. 예를 들어 특정 팀 구성원만 프로젝트의 리소스에 액세스할 수 있도록 하려면 새 프로젝트를 시작하면 됩니다. 모든 팀 구성원은 다른 프로젝트의 리소스에, 계속 액세스할 수 있습니다.

명령줄 인터페이스

터미널 창에서 작업하는 편을 선호한다면 필요한 명령어에 액세스할 수 있는 Google Cloud SDKgcloud 명령줄 도구를 사용할 수 있습니다. gcloud 도구는 개발 워크플로와 GCP 리소스를 관리하는 데 모두 사용할 수 있습니다. 사용 가능한 전체 명령 목록은 gcloud 참조에서 볼 수 있습니다.

또한 GCP는 GCP용 브라우저 기반 대화형 셸 환경인 Cloud Shell을 제공합니다. GCP Console에서 Cloud Shell에 액세스할 수 있습니다. Cloud Shell이 제공하는 기능:

  • 임시 Compute Engine 가상 머신 인스턴스
  • 웹 브라우저에서 인스턴스에 명령줄로 액세스
  • 기본 제공 코드 편집기
  • 5GB의 영구 디스크 저장소
  • 사전 설치된 Google Cloud SDK 및 기타 도구
  • 자바, Go, Python, Node.js, PHP, Ruby, .NET과 같은 언어 지원
  • 웹 미리보기 기능
  • GCP 콘솔 프로젝트 및 리소스 액세스를 위한 자체 승인 기능

Cloud Shell 인터페이스 스크린샷

클라이언트 라이브러리

Cloud SDK에는 리소스를 쉽게 만들고 관리할 수 있는 클라이언트 라이브러리가 포함됩니다. GCP 클라이언트 라이브러리는 2가지 주 용도를 위한 API를 노출합니다.

  • 앱 API는 서비스에 대한 액세스를 제공합니다. 앱 API는 Node.js 및 Python과 같은 지원되는 언어에 최적화됩니다. 라이브러리는 서비스 개념을 중심으로 설계되었으므로 더 자연스럽게 서비스를 다루고 작성하는 상용구 코드의 양을 줄일 수 있습니다. 또한 라이브러리는 인증 및 승인에도 도움을 제공합니다.

  • 관리자 API는 리소스 관리를 위한 기능을 제공합니다. 예를 들어 직접 자동화된 도구를 빌드하려는 경우 관리자 API를 사용할 수 있습니다.

또한 Google API 클라이언트 라이브러리를 사용하여 Google 지도, Google 드라이브, YouTube와 같은 제품의 API에 액세스할 수 있습니다.

가격

GCP의 가격에 대한 Google의 원칙은 가격 책정 페이지를 참조하세요. 개별 서비스의 가격은 제품 가격 섹션을 참조하세요.

몇 가지 도구를 사용하여 GCP 사용 비용을 평가할 수도 있습니다.

  • 가격 계산기로 빠르고 손쉽게 GCP 사용량을 예측해 보세요. Compute Engine 인스턴스 및 영구 디스크의 수와 크기 등 사용하려는 서비스에 대한 세부정보를 제공한 다음 가격 추정치를 볼 수 있습니다.

  • 총 소유 비용(TCO) 도구는 클라우드에서 컴퓨팅 부하를 실행하는 데 필요한 상대적 비용을 평가하고 대략적인 금액을 제시합니다. 이 도구는 비용 모델링을 위한 여러 가지 입력을 제공하므로 이러한 입력을 조정한 다음 GCP와 AWS의 예상 비용과 비교할 수 있습니다. 이 도구는 저장소 및 네트워킹과 같은 일반적인 애플리케이션의 모든 구성요소를 모델링하지는 않습니다.

다음: 서비스에 대해 알아보기

이 페이지가 도움이 되었나요? 평가를 부탁드립니다.

다음에 대한 의견 보내기...