GCP

박기원·2022년 6월 10일
0

GCP

목록 보기
1/1
post-thumbnail

GCP 리전

리소스를 호스팅 하는 특정한 지리적 위치(영역의 집합)
3개 이상의 영역으로 구성된다.
여러 리전에 리소스를 구성하면 재해 복구 설계 가능(Disaster Recovery)
예, us-east1 asia-northeas1(이게 도쿄)

영역

하나이상의 데이터 센터 구성
각 영역은 물리적으로 서로 떨어진 곳에 구성 됨
여러 영역에 리소스를 구성하면 높은 수준의 장애 독립성을 얻을 수 있음(High Availability)
예 us-east1-a, us-eas1-b

GCP 리소스 구조

항목을 계층적으로 구성하고 관리하는 방식
액세스 제어 정책 및 구성 설정을 관리 가능
각 리소스는 하나의 상위 리소스에만 속할 수 있음
IAM 정책, 권한은 계층구조를 통해 상속된다.
모든 리소스는 하나의 프로젝트에 속해야 함
하나의 리소스는 하나의 프로젝트에만 속할 수 있음
하나의 프로젝트는 다른 프로젝트의 리소스에 액세스 할 수 없음(Shared VPC, VPC peering을 설정해야함)
Development, Production를 프로젝트 별로 분리하여 권한정책을 더욱 유연하게 가져갈 수 있음

Google Compute Engine 생성

Compute Engine이란?

인스턴스는 Google 인프라에서 호스팅되는 가상 머신(VM)입니다.
Google Cloud Console, Google Cloud CLI, 또는 Compute Engine API를 사용하여 단일 인스턴스를 만들거나 관리형 인스턴스 그룹을 만들 수 있습니다.

인스턴스와 프로젝트

각 인스턴스는 Google Cloud Console 프로젝트에 속하며 프로젝트 하나에는 인스턴스가 1개 이상 있을 수 있습니다.
프로젝트에서 인스턴스를 만들 때 해당 인스턴스의 영역, 운영체제 및 머신 유형을 지정합니다.
인스턴스를 삭제하면 프로젝트에서도 제거됩니다.

인스턴스와 저장소 옵션

기본적으로 각 Compute Engine 인스턴스에는 운영체제가 포함된 작은 부팅 영구 디스크가 있습니다.
인스턴스에서 실행 중인 애플리케이션에 더 많은 저장공간이 필요하면 인스턴스에 스토리지 옵션을 추가하면 됩니다.

인스턴스와 네트워크

Compute Engine 인스턴스의 각 네트워크 인터페이스는 고유한 VPC 네트워크의 서브넷과 연결됩니다.

인스턴스와 컨테이너

Compute Engine 인스턴스에는 컨테이너를 사용하여 애플리케이션을 시작하는 선언적 메소드가 지원됩니다.
VM 또는 인스턴스 템플릿을 만들 때 Docker 이미지 이름을 제공하고 구성을 시작할 수 있습니다.
그러면 Compute Engine에서 Docker가 설치된 최신 Container-Optimized OS 이미지를 제공하고 VM이 시작될 때 컨테이너를 시작하는 등 나머지 작업을 처리합니다.

인스턴스 관리 도구

Google Cloud Console, gcloud 명령줄 도구, REST API를 비롯한 다양한 도구를 사용하여 인스턴스를 만들고 관리할 수 있습니다.
인스턴스에 애플리케이션을 구성하려면 Linux 인스턴스의 경우에는 보안 셸(SSH)을, Windows Server 인스턴스의 경우에는 원격 데스크톱 프로토콜(RDP)을 사용하여 인스턴스에 연결합니다.

인스턴스에 대한 액세스 권한 관리

Linux 인스턴스:
OS 로그인을 사용하여 인스턴스 액세스 권한을 관리하면 SSH 키를 Google 계정 또는 Google Workspace 계정과 연결하고 IAM 역할을 통해 인스턴스에 대한 관리자 또는 비관리자 액세스 권한을 관리할 수 있습니다.
Console에서 Google Cloud CLI 또는 SSH를 사용하여 인스턴스에 연결하면 Compute Engine이 자동으로 SSH 키를 생성하여 Google 계정 또는 Google Workspace 계정에 이를 적용할 수 있습니다.
프로젝트 또는 인스턴스 메타데이터에서 SSH 키를 관리합니다.
그러면 메타데이터 액세스 권한이 있고 OS 로그인을 사용하지 않는 인스턴스에 관리 액세스 권한이 부여됩니다.
Console에서 Google Cloud CLI 또는 SSH를 사용하여 인스턴스에 연결하면 Compute Engine에서 자동으로 SSH 키를 만들고 프로젝트 메타데이터에 적용할 수 있습니다.

Windows Server 인스턴스:
Windows Server 인스턴스의 비밀번호를 만듭니다.

인스턴스 액세스

인스턴스에 대한 액세스 권한을 구성한 후 여러 옵션 중 하나를 사용하여 인스턴스에 연결할 수 있습니다.

인스턴스 그룹

  • 관리형 인스턴스 그룹(MIG)
    동일한 여러 VM에서 앱을 운영할 수 있습니다.
    자동 확장, 자동 복구, 리전(멀티 영역) 배포, 자동 업데이트 등의 자동화된 MIG 서비스를 활용하여 워크로드의 확장성 및 가용성을 높일 수 있습니다.

  • 비관리형 인스턴스 그룹
    직접 관리하는 여러 VM에서 부하 분산을 수행할 수 있습니다.

관리형 인스턴스 그룹(MIG)

스테이트리스(stateless) 제공 워크로드(예: 웹사이트 프런트엔드)
스테이트리스(Stateless) 일괄 처리, 고성능 또는 고처리량 컴퓨팅 워크로드(예: 큐에서 이미지 처리)
스테이트풀(Stateful) 애플리케이션(예: 데이터베이스, 기존 애플리케이션, 체크포인트를 수행하는 장기 실행 일괄 계산)
Compute Engine은 인스턴스 템플릿 및 선택적인 스테이트풀(Stateful) 구성에 지정한 구성을 기준으로 MIG의 각 관리형 인스턴스를 유지 관리합니다.

MIG는 다음과 같은 이점

고가용성
VM 인스턴스 실행 유지. 그룹의 VM이 중지되거나, 비정상 종료되거나 또는 인스턴스 그룹 관리 명령어 이외의 작업(예: 의도적인 수평 축소)으로 삭제되면 MIG는 VM이 작업을 다시 시작할 수 있도록 원래 인스턴스 사양(동일한 VM 이름, 동일한 템플릿)에 따라 VM을 자동으로 다시 만듭니다.
애플리케이션 기반 자동 복구. 또한 애플리케이션이 MIG의 각 인스턴스에서 예상한 대로 응답하는지 주기적으로 확인하는 애플리케이션 기반 상태 확인을 설정할 수 있습니다.
VM에서 애플리케이션이 응답하지 않으면 자동 복구 기능이 VM을 자동으로 다시 만듭니다.
단순히 VM이 실행 중인지 확인하는 것보다 애플리케이션이 응답하는지 확인하는 것이 더 정확합니다.

리전(멀티 영역) 노출 범위.
리전 MIG를 사용하면 앱 부하를 여러 영역에 분산할 수 있습니다.
이러한 복제 기능은 영역 장애가 발생하지 않도록 방지합니다.
영역 장애가 발생하더라도 앱은 동일한 리전의 사용 가능한 나머지 영역에서 실행 중인 인스턴스의 트래픽을 계속 처리할 수 있습니다.

부하 분산.
MIG는 부하 분산 서비스와 함께 작동하여 그룹의 모든 인스턴스에 트래픽을 분산합니다.
확장성. 앱이 추가 컴퓨팅 리소스를 필요로 하는 경우, 자동 확장된 MIG가 그룹의 인스턴스 수를 자동으로 늘려서 요구사항을 충족합니다. 요구사항이 감소하면 자동 확장된 MIG가 비용 절감을 위해 자동으로 축소됩니다.

자동 업데이트.
MIG 자동 업데이트 프로그램을 사용하면 새로운 버전의 소프트웨어를 MIG의 인스턴스에 안전하게 배포할 수 있으므로 순차적 업데이트 및 카나리아 업데이트와 같은 가변형 출시를 지원합니다.
배포 속도와 범위는 물론 서비스 중단 수준을 제어할 수 있습니다.
스테이트풀(Stateful) 워크로드 지원 MIG를 사용하면 스테이트풀(Stateful) 데이터 또는 구성을 사용하는 애플리케이션(예: 데이터베이스, DNS 서버, 기존 모놀리식 애플리케이션, 체크포인트를 수행하는 장기 실행 일괄 계산)의 가용성이 높은 배포를 빌드하고 작업을 자동화할 수 있습니다.
스테이트풀(Stateful) MIG는 머신 다시 시작, 다시 만들기, 자동 복구 또는 업데이트 이벤트 시 각 인스턴스의 고유 상태(인스턴스 이름, 연결된 영구 디스크, 메타데이터)를 보존합니다.

자동 복구

관리형 인스턴스 그룹은 사전에 인스턴스를 사용할 수 있도록, 즉 RUNNING 상태로 유지하여 애플리케이션의 고가용성을 보장합니다.
MIG는 RUNNING 상태가 아닌 인스턴스를 자동으로 다시 만듭니다.
하지만 VM 상태를 사용하는 것만으로는 부족할 수 있습니다. 애플리케이션이 중단 또는 다운되거나 메모리가 부족하면 인스턴스를 다시 만들어야 할 수도 있습니다.

애플리케이션 기반 자동 복구는 중지, 비정상 종료 또는 과부하와 같은 애플리케이션 문제를 감지하는 상태 확인 신호를 사용하여 애플리케이션 가용성을 향상시킵니다.
상태 확인을 통해 VM에서 애플리케이션에 장애가 발생했음이 확인되면 그룹에서 VM 인스턴스를 자동으로 다시 만듭니다.

상태 확인

MIG를 모니터링하는 데 사용되는 상태 확인은 몇 가지 동작 차이를 제외하고 부하 분산에 사용되는 상태 확인과 비슷합니다.
부하 분산 상태 확인은 트래픽을 무응답 인스턴스가 아닌 정상 인스턴스로 보내므로 Compute Engine에서 인스턴스를 다시 만들 필요가 없습니다.
반면에 관리형 인스턴스 그룹 상태 확인은 UNHEALTHY 상태가 된 인스턴스를 삭제한 후 다시 만들도록 신호를 보냅니다.

대부분의 시나리오에서 부하 분산과 자동 복구에 별도의 상태 확인을 사용합니다.
부하 분산 상태 확인은 인스턴스가 사용자 트래픽을 수신하는지 여부를 확인하므로 상태 확인을 더 엄격하게 설정할 수 있으며 엄격해야 합니다.
고객이 서비스를 사용할 수 있으므로 필요한 경우 트래픽을 리디렉션할 수 있도록 무응답 인스턴스를 신속하게 파악해야 합니다.
반면, 자동 복구 상태 확인을 사용하면 MIG가 사전에 장애가 발생한 인스턴스를 교체하므로 이 상태 확인은 부하 분산 상태 확인보다 보수적이어야 합니다.

부하 분산

Google Cloud Load Balancing은 인스턴스 그룹을 사용하여 트래픽을 처리할 수 있습니다.
선택한 부하 분산기의 유형에 따라 인스턴스 그룹을 대상 풀 또는 백엔드 서비스에 추가할 수 있습니다.

자동 확장

MIG는 부하 증가 또는 감소에 따라 그룹에서 동적으로 VM 인스턴스를 추가 또는 삭제하는 자동 확장을 지원합니다.
자동 확장 정책을 구성하여 그룹 확장 방법을 지정할 수 있습니다.
자동 확장 정책에서 Pub/Sub와 같은 큐 기반 워크로드를 사용하여 CPU 활용률, 부하 분산 용량, Cloud Monitoring 측정항목, 일정을 기준으로 또는 영역별MIG에 대해 그룹을 확장하도록 하나 이상의 신호를 설정할 수 있습니다.

네트워크 및 서브넷

관리형 인스턴스 그룹을 만들 때는 기존 인스턴스 템플릿을 참조해야 합니다.
인스턴스 템플릿은 구성원 인스턴스가 사용하는 VPC 네트워크와 서브넷을 정의합니다.
자동 모드 VPC 네트워크의 경우 서브넷을 생략할 수 있습니다.
이러한 경우 Google Cloud는 템플릿에 지정된 리전에서 자동으로 생성된 서브넷을 선택합니다.
VPC 네트워크를 생략하면 Google Cloud가 default라는 VPC 네트워크를 사용합니다.

비관리형 인스턴스 그룹

비관리형 인스턴스 그룹에는 그룹에서 임의로 추가하거나 제거할 수 있는 이종 인스턴스가 포함될 수 있습니다.
비관리형 인스턴스 그룹은 자동 확장, 자동 복구, 순차적 업데이트 지원, 멀티 영역 지원 또는 인스턴스 템플릿 사용을 제공하지 않으므로 가용성이 높고 확장 가능한 워크로드를 배포하는 데는 적합하지 않습니다.
이종 인스턴스 그룹에 부하 분산을 적용해야 하거나 인스턴스를 직접 관리해야 하는 경우에는 비관리형 인스턴스 그룹을 사용합니다.

범용 머신 계열

  • E2
    웹 서비스
    중소형 데이터베이스
    앱 서비스
    백오피스 앱
    마이크로서비스
    가상 데스크톱
    개발 환경

  • N2, N2D, Tau T2D, N1
    웹 서비스
    중대형 데이터베이스
    앱 서비스
    백오피스 앱
    캐시
    미디어/스트리밍

  • E2 머신 계열
    최대 32개의 vCPU와 128GB의 메모리를 지원합니다.
    사전 정의된 VM과 커스텀 VM에서 사용할 수 있습니다.
    범용 머신 유형에 최저 주문형 가격을 제공합니다.
    지속 사용 할인을 제공하지 않지만 저렴한 주문형 및 약정 사용 가격을 꾸준히 제공합니다.
    GPU, 로컬 SSD, 단독 테넌트 노드, 중첩된 가상화를 지원하지 않습니다.

E2 공유 코어 머신 유형

E2 머신 계열에는 멀티태스킹을 위해 컨텍스트 전환을 사용하여 vCPU 간에 물리적 코어를 공유하는 공유 코어 머신 유형도 포함되어 있습니다.
공유 코어 머신 유형에 따라 물리적 코어의 시간이 달라집니다.
일반적으로 공유 코어 머신 유형은 표준, 높은 메모리 또는 높은 CPU 머신 유형에 비해 리소스 사용이 적은 소규모 애플리케이션을 실행할 때 더 비용 효율이 높습니다.

CPU 버스팅

공유 코어 머신 유형은 인스턴스에서 단기간 물리적 CPU를 추가로 사용할 수 있는 버스팅 기능을 제공합니다.
VM에서 원래 할당된 것보다 많은 물리적 CPU가 필요할 때 자동으로 버스팅이 진행됩니다.
이렇게 사용량이 급증할 때 VM이 버스팅으로 제공되는 물리적 CPU를 활용할 수 있습니다.
버스팅은 영구적이지 않으며 주기적으로만 사용할 수 있습니다.

N2 머신 계열

N2 머신 계열에서는 vCPU는 2개에서 128개까지, vCPU당 메모리는 0.5GB에서 8GB까지 유연한 선택이 가능합니다. 이 계열의 머신 유형은 다음 프로세서에서 실행됩니다.
Ice Lake는 특정 리전 및 영역에서 제공됩니다.
더 큰 머신 유형의 기본 프로세서입니다.
Cascade Lake — vCPU가 최대 80개인 머신 유형의 기본값입니다.
Ice Lake로 VM을 만들려면 최소 CPU 플랫폼으로 설정해야 합니다.

N2D 머신 계열

vCPU 최대 224개와 메모리 896GB를 지원합니다.
50Gbps, 100Gbps의 고대역폭 네트워크 구성을 지원합니다.
사전 정의된 VM과 커스텀 VM에서 사용할 수 있습니다.
확장 메모리 기능을 사용하여 VM을 만들 경우 더욱 높은 메모리-코어 비율을 제공합니다. 확장 메모리 기능을 사용하면 CPU당 소프트웨어 라이선스 비용을 피할 수 있을 뿐만 아니라 vCPU당 8GB를 초과하는 메모리에 대한 액세스도 가능합니다.
3세대 AMD EPYC Milan 및 2세대 AMD EPYC Rome 프로세서를 기반으로 합니다.
약정 사용 할인과 지속 사용 할인을 지원합니다.
GPU 또는 중첩된 가상화를 지원하지 않습니다.
컨피덴셜 VM을 지원합니다.

Tau T2D 머신 계열

Tau T2D VM은 다음을 지원하지 않습니다.
Debian 9 OS
로컬 SSD
리전 영구 디스크
커스텀 VM
단독 테넌트 노드
익스트림 PD
GPU
중첩된 가상화
지속 사용 할인
컨피덴셜 VM

N1 머신 계열

vCPU 최대 96개와 메모리 624GB를 지원합니다.
사전 정의된 머신 유형과 커스텀 머신 유형으로 제공됩니다. 특히 커스텀 머신 유형은 vCPU당 1GB부터 6.5GB에 이르기까지 광범위한 메모리-코어 비율 내에서 만들 수 있습니다.
확장 메모리 기능을 사용하여 VM을 만들 경우 더욱 높은 메모리-코어 비율을 제공합니다.
N2 머신 계열보다 할인폭이 큰 지속 사용 할인을 제공합니다.
일부 영역에서 Tensor Processing Unit(TPU)을 지원합니다.
인스턴스당 최대 8개의 가상 인터페이스를 지원할 수 있습니다.

커스텀 머신 유형

범용 머신 계열의 사전 정의된 머신 유형이 워크로드의 요구사항에 적합하지 않으면 커스텀 머신 유형으로 VM을 만들 수 있습니다.
커스텀 머신 유형으로 VM을 만드는 것은 처리 성능 또는 메모리가 더 필요하지만 그보다 작은 사전 정의된 머신 유형에서 제공하는 업그레이드가 모두 필요하지는 않은 워크로드에 이상적입니다.
커스텀 머신 유형을 사용하면 동급의 사전 정의된 머신 유형보다 비용이 약간 추가되며, 선택 가능한 메모리 및 vCPU에 제한이 있습니다.
커스텀 머신 유형으로 제공되지 않는 Tau T2D 머신 시리즈를 제외하고, 범용 머신 계열의 모든 머신 계열에서 VM을 커스텀 머신 유형으로 만들 수 있습니다.
커스텀 머신 유형에는 E2, N2, N1 사전 정의된 머신 유형과 동일한 영구 디스크 제한이 적용됩니다.
각 VM의 최대 총 영구 디스크 크기는 257TB이고 최대 영구 디스크 수는 128개입니다.

컴퓨팅 최적화 머신 계열

C2 머신 시리즈

연산 제약 워크로드
고성능 웹 서비스
게임(AAA 게임 서버)
광고 게재
고성능 컴퓨팅(HPC)
미디어 트랜스코딩
AI/ML

C2D 머신 시리즈

메모리 제한 워크로드
게임(AAA 게임 서버)
고성능 컴퓨팅(HPC)
고성능 데이터베이스
전자 설계 자동화(EDA)
미디어 트랜스코딩

C2 머신 시리즈

C2 머신 시리즈는 기본 서버 플랫폼의 아키텍처에 대해 완전한 투명성을 제공하므로, 성능을 미세 조정할 수 있습니다.
이 시리즈의 머신 유형은 훨씬 더 높은 컴퓨팅 성능을 제공하며, 일반적으로 N1 높은 CPU 머신 유형에 비해 컴퓨팅 집약적인 워크로드에서 더 강력한 성능을 제공합니다.
C2 시리즈는 4~60개의 vCPU와 최대 240GB의 메모리를 보유한 다양한 머신 유형으로 제공됩니다.
더 높은 스토리지 성능이 필요한 애플리케이션을 위해 이러한 VM에 최대 3TB의 로컬 스토리지를 연결할 수 있습니다.

IAM 개요

Google Cloud의 Identity and Access Management(IAM) 시스템이 작동하는 방식과 이를 사용하여 Google Cloud에서 액세스를 관리하는 방법을 설명합니다.
IAM을 사용하면 특정 Google Cloud 리소스에 대한 세분화된 액세스 권한을 부여하고 다른 리소스에 대한 액세스를 방지할 수 있습니다.
IAM은 최소 권한의 보안 원칙을 적용하여 실제로 필요한 것보다 더 많은 권한을 갖지 않도록 합니다.

IAM 작동 방식

IAM을 사용하면 누구(ID)에게 무슨 리소스에 대한 어떤 액세스 권한(역할)이 있는지 정의하여 액세스 제어를 관리할 수 있습니다.
예를 들어 Compute Engine 가상 머신 인스턴스, Google Kubernetes Engine(GKE) 클러스터, Cloud Storage 버킷은 모두 Google Cloud 리소스입니다.
리소스를 구성하는 데 사용하는 조직, 폴더, 프로젝트도 리소스입니다.
IAM에서 리소스 액세스 권한은 최종 사용자에게 직접 부여되지 않습니다.
대신 권한이 역할로 그룹화되고 역할은 인증된 주 구성원에게 부여됩니다.
이전에는 IAM에서 주 구성원을 구성원이라고 했습니다.
일부 API에는 여전히 이 용어가 사용됩니다.
IAM 정책이라고도 하는 허용 정책은 어떤 주 구성원에게 어떤 역할이 부여되는지 정의하고 적용합니다.
각 허용 정책은 리소스에 연결됩니다.
인증된 주 구성원이 리소스에 액세스를 시도하면 IAM은 리소스의 허용 정책을 확인하여 작업 허용 여부를 결정합니다.

액세스 관리 모델

주 구성원
역할
정책

주 구성원.
주 구성원은 Google 계정(최종 사용자의 경우), 서비스 계정(애플리케이션 및 컴퓨팅 워크로드의 경우), Google 그룹 또는 리소스에 액세스할 수 있는 Google Workspace 계정이나 Cloud ID 도메인일 수 있습니다.
주 구성원 ID는 사용자, 서비스 계정 또는 Google 그룹과 연결된 이메일 주소이거나 Google Workspace 계정 또는 Cloud ID 도메인과 연결된 도메인 이름입니다.

역할.
역할이란 권한의 모음입니다.
권한은 리소스에 대해 허용되는 작업을 결정합니다.
주 구성원에게 역할을 부여하면 역할에 포함된 모든 권한을 부여하게 됩니다.

정책.
허용 정책은 하나 이상의 주 구성원을 개별 역할에 결합하는 역할 결합 모음입니다.
리소스에 대해 누구(주 구성원)에게 어떠한 액세스 권한(역할)이 있는지 정의하려면 허용 정책을 만들고 리소스에 연결합니다.

Cloud Load Balancing

부하 분산기는 애플리케이션의 여러 인스턴스에 사용자 트래픽을 분산합니다.
부하 분산은 부하를 분산시켜 애플리케이션에 성능 문제가 발생할 위험을 줄여줍니다.

Cloud Load Balancing 정보

단일 Anycast IP 주소.
Cloud Load Balancing을 통해 단일 Anycast IP 주소가 세계 각지의 모든 백엔드 인스턴스의 프런트엔드가 됩니다.
기본 백엔드가 양호하지 않을 경우 트래픽을 장애 조치 백엔드로 이동시키는 자동 멀티 리전 장애 조치 등 리전 간 부하 분산을 제공합니다.
Cloud Load Balancing은 사용자, 트래픽, 네트워크, 백엔드 상태, 기타 관련 조건의 변화에 즉각적으로 반응합니다.

소프트웨어 정의 부하 분산.
Cloud Load Balancing은 사용자의 트래픽 전체에 적용되는 완전 분산형의 소프트웨어 정의 관리형 서비스입니다.
인스턴스 기반 또는 기기 기반의 솔루션이 아니어서 물리적인 부하 분산 인프라에 종속되거나 인스턴스 기반 부하 분산기에 내재된 HA, 확장, 관리 문제가 발생하지 않습니다.

원활한 자동 확장.
Cloud Load Balancing은 트래픽 처리가 가능한 다른 리전으로 트래픽을 우회시켜 예상치 못한 즉각적인 대규모 트래픽 급증을 쉽게 처리하는 등 사용자 및 트래픽의 증가에 따라 확장이 가능합니다.
자동 확장 시 가동 준비 과정이 필요 없으며 단 몇 초 만에 최대 트래픽까지 확장할 수 있습니다.

레이어 4 및 레이어 7 부하 분산. 네트워크의 데이터와 TCP, UDP, ESP, ICMP 및 ICMPv6와 같은 전송 레이어 프로토콜을 바탕으로 트래픽을 전달하는 레이어 4 기반 부하 분산을 사용합니다. HTTP 헤더와 통합 리소스 식별자와 같은 속성을 바탕으로 요청 라우팅 결정을 추가하는 레이어 7 기반 부하 분산을 사용합니다.

외부 및 내부 부하 분산.
사용자가 인터넷에서 애플리케이션에 도달할 때는 외부 부하 분산을 사용하고 클라이언트가 Google Cloud 내부에 있을 때는 내부 부하 분산을 사용할 수 있습니다.

글로벌 및 리전 부하 분산.
부하 분산된 리소스를 단일 또는 여러 리전에 배포하여 사용자와 가까운 연결을 종료하고 고가용성 요구사항을 충족할 수 있습니다.

고급 기능 지원.
Cloud Load Balancing은 IPv6 부하 분산, WebSocket, 사용자 정의 요청 헤더, 비공개 VIP용 프로토콜 전달 등의 기능을 지원합니다.

내부 HTTP(S) 부하 분산

내부 HTTP(S) 부하 분산은 Andromeda 네트워크 가상화 스택에 구축되며 오픈소스 Envoy 프록시를 기반으로 하는 관리형 서비스입니다.
이 부하 분산기는 레이어 7 애플리케이션 데이터의 내부 프록시 기반 부하 분산을 제공하며, URL 맵을 사용하여 트래픽이 라우팅되는 방식을 지정합니다.
부하 분산기는 백엔드에 대한 프런트엔드 역할을 하는 내부 IP 주소를 사용합니다.

외부 HTTP(S) 부하 분산

고급 트래픽 관리 기능이 있는 전역 외부 HTTP(S) 부하 분산기는 GFE에서 구현됩니다.
GFE는 Google의 전역 네트워크 및 제어 영역을 사용하여 전역으로 분산되고 함께 운영됩니다.
GFE가 멀티 리전 부하 분산을 제공하여 트래픽을 용량이 있는 가장 가까운 정상 백엔드로 전달하고 사용자에게 가능한 가까운 곳에서 HTTP 트래픽을 종료합니다.
또한 전역 외부 HTTP(S) 부하 분산기는 오픈소스 Envoy 프록시를 사용하여 고급 트래픽 관리 기능을 사용 설정합니다.
전역 외부 HTTP(S) 부하 분산기는 프리미엄 등급에서만 지원됩니다.

전역 외부 HTTP(S) 부하 분산기(기본)도 GFE에서 구현됩니다.
프리미엄 등급에서는 전역 부하 분산기이지만 표준 등급에서는 사실상 리전으로 구성될 수 있습니다.
사실상 리전이란 백엔드 서비스가 항상 전역인 경우 표준 등급을 선택할 때 외부 전달 규칙과 외부 IP 주소는 리전이어야 하며, 전역 백엔드 서비스에 연결된 백엔드가 전달 규칙 및 IP 주소와 동일한 리전에 있어야 함을 의미합니다.

리전 외부 HTTP(S) 부하 분산기는 오픈소스 Envoy 프록시를 기반으로 하는 관리형 서비스로, 고급 트래픽 관리 기능을 사용 설정합니다.
이는 표준 등급에서만 지원되는 리전 HTTP(S) 부하 분산기입니다.

Cloud Storage

모든 규모의 기업을 위한 객체 스토리지입니다.
양에 상관없이 데이터를 저장하고 원할 때마다 언제든지 검색할 수 있습니다.
동영상 스트림
이미지 및 웹 애셋 라이브러리
데이터 레이크

블록 스토리지

Compute Engine 및 GKE와 같은 Google Cloud 제품과 완전히 통합된 블록 스토리지 서비스입니다.
가상 머신용 디스크
여러 가상 머신에 읽기 전용 데이터 공유
실행 중인 가상 머신의 신속하고 지속적인 백업
데이터베이스용 스토리지

파일 스토리지

파일 마이그레이션과 스토리지를 지원하는 완전 관리형 서비스입니다.
파일 공유 항목을 손쉽게 Compute Engine VM에 마운트할 수 있습니다.
데이터 분석
렌더링 및 미디어 처리
애플리케이션 마이그레이션
웹 콘텐츠 관리

GCP 이미지 서비스

Compute Engine의 이미지는 변경할 수 없는 디스크에 대한 참조를 제공하는 클라우드 리소스입니다.
해당 디스크 표현은 몇 가지 데이터 형식을 사용하여 캡슐화됩니다.

부팅 이미지 선택

Compute Engine 사용의 첫 번째 단계는 가상 머신(VM) 인스턴스의 운영체제로 사용할 이미지를 선택하는 것입니다.
Google Cloud에서 제공하는 공개 이미지를 사용할 수 있습니다.
이 이미지는 정기적으로 업데이트됩니다.
Google Cloud는 Debian, Ubuntu, CentOS 등 다양한 운영체제를 추가 비용 없이 사용할 수 있도록 지원합니다.
Red Hat Enterprise Linux 및 Microsoft Windows와 같은 일부 운영체제는 프리미엄 이미지로 인스턴스가 실행되는 시간당 추가 요금이 부과됩니다.

프로젝트 간 이미지 공유

조직에서는 리소스, 환경, 사용자 액세스를 구분하기 위해 여러 Google Cloud 프로젝트를 만들곤 합니다.
리소스를 프로젝트로 격리하면 세분화된 결제, 보안 적용, 분리된 네트워킹이 가능합니다.
대부분의 클라우드 리소스는 여러 프로젝트를 포괄할 필요가 없지만 이미지는 프로젝트 간에 공유하기에 적절한 대상입니다.
공유 이미지 세트를 사용하면 공통 프로세스를 따라 보안, 승인, 패키지 관리, 나머지 조직을 위해 사전 구성된 작업에 대한 권장사항과 함께 이미지를 전송할 수 있습니다.

머신 이미지에서 VM 인스턴스 만들기

Google Cloud Console에서 인스턴스 만들기 페이지로 이동합니다.
인스턴스 만들기로 이동
머신 이미지의 새 VM 인스턴스를 클릭합니다.
머신 이미지를 선택하고 계속을 클릭합니다.
선택사항: VM 세부정보를 맞춤설정합니다.
만들기를 클릭합니다.

스냅샷을 사용하여 복원

스냅샷을 사용하여 다음 방법으로 디스크 데이터를 백업 및 복원할 수 있습니다.
부팅 디스크 또는 비부팅 디스크의 스냅샷을 만든 후 스냅샷을 기반으로 새 디스크를 만듭니다.
부팅 디스크의 스냅샷을 만든 후 부팅 디스크 스냅샷을 기반으로 새 VM을 만듭니다.
비부팅 디스크의 스냅샷을 만든 후 스냅샷을 기반으로 새 비부팅 디스크가 있는 새 VM을 만듭니다.

스냅샷에서 새 디스크 만들기

새 디스크의 크기는 최소한 스냅샷의 원래 소스 디스크와 같아야 합니다.
스냅샷의 원본 소스 디스크보다 큰 디스크를 만드는 경우 추가 디스크 공간이 포함되도록 영구 디스크의 파일 시스템 크기를 조절해야 합니다.
운영체제 및 파일 시스템 유형에 따라서는 다른 파일 시스템 크기 조절 도구를 사용해야 할 수도 있습니다.

지정된 스냅샷에서 최대 10분마다 영역 디스크를 새로 만들 수 있습니다.
디스크 스냅샷 요청 버스트를 실행하려면 60분 동안 최대 6개의 요청을 실행할 수 있습니다.
스냅샷에서 리전 디스크를 만들 때는 이 한도가 적용되지 않습니다.

VPC 네트워크

VPC 네트워크는 Google Cloud 내에서 가상화된다는 점을 제외하면 물리적 네트워크와 동일한 방식으로 생각할 수 있습니다.
VPC 네트워크는 데이터 센터의 리전별 가상 서브네트워크(서브넷) 목록으로 구성된 전역 리소스로, 모든 리소스는 전역 광역 통신망을 통해 연결됩니다.
VPC 네트워크는 Google Cloud에서 논리적으로 서로 격리됩니다.

방화벽 규칙

각 VPC 네트워크는 사용자가 구성할 수 있는 분산 가상 방화벽을 구현합니다.
방화벽 규칙을 사용하면 어떤 대상으로도 이동할 수 있는 패킷을 제어할 수 있습니다.
모든 VPC 네트워크에는 들어오는 모든 연결을 차단하고 나가는 모든 연결을 허용하는 두 가지 묵시적인 방화벽 규칙이 있습니다.
default 네트워크에는 네트워크의 인스턴스 간 통신을 허용하는 default-allow-internal 규칙을 비롯한 추가 방화벽 규칙이 있습니다.

경로

경로는 VM 인스턴스 및 VPC 네트워크에 인스턴스에서 네트워크 내부 또는 Google Cloud 외부에 있는 대상으로 트래픽을 보내는 방법을 알려줍니다.
각 VPC 네트워크에는 해당 서브넷 간에 트래픽을 라우팅하고 운영 가능한 인스턴스에서 인터넷으로 트래픽을 전송하는 몇 가지 시스템 생성 경로가 있습니다.

IP 주소

Compute Engine VM 인스턴스, 전달 규칙, GKE 컨테이너, App Engine과 같은 Google Cloud 리소스는 IP 주소를 사용하여 통신합니다.

별칭 IP 범위

단일 VM 인스턴스에서 여러 서비스를 실행하는 경우 별칭 IP 범위를 사용하여 각 서비스에 서로 다른 내부 IP 주소를 지정할 수 있습니다.
VPC 네트워크는 특정 서비스가 대상인 패킷을 해당 VM에 전달합니다.

Cloud DNS

Cloud DNS는 비용 효율적인 방식으로 도메인 이름을 전역 DNS에 게시하는 복원력이 우수한 고성능 전역 DNS(도메인 이름 시스템) 서비스입니다.
DNS는 IP 주소 및 기타 데이터를 저장하고 이름별로 조회할 수 있는 계층형 분산 데이터베이스입니다.
Cloud DNS를 사용하면 자체 DNS 서버와 소프트웨어 관리 부담 없이 DNS에 영역 및 레코드를 게시할 수 있습니다.
Cloud DNS는 공개 및 비공개 관리형 DNS 영역을 모두 제공합니다.
공개 영역은 공개 인터넷에 표시되고, 비공개 영역은 지정된 하나 이상의 Virtual Private Cloud(VPC) 네트워크에만 표시됩니다.

액세스 제어

Google Cloud Console의 IAM 및 관리 페이지에서는 DNS 레코드 변경이 허용된 사용자를 관리할 수 있습니다.
사용자가 항목을 변경할 수 있으려면 Cloud Console의 권한 섹션에서 편집자 역할(roles/editor) 또는 소유자 역할(roles/owner)을 지정해야 합니다.
뷰어 역할(roles/viewer)은 Cloud DNS 레코드에 대해 읽기 전용 액세스 권한을 부여합니다.

Cloud SQL

클라우드의 완전 관리형 MySQL Community Edition 데이터베이스
RAM 최대 624GB와 CPU 96개가 탑재된 커스텀 머신 유형
스토리지를 최대 64TB까지 사용할 수 있으며 필요에 따라 스토리지 크기를 자동으로 늘릴 수 있음
Google Cloud Console에서 인스턴스 생성 및 관리
미주, EU, 아시아, 오스트레일리아에서 사용 가능한 인스턴스. 모든 위치 보기.
Database Migration Service(DMS)를 사용하여 소스 데이터베이스에서 Cloud SQL 대상 데이터베이스로 마이그레이션을 지원합니다.
Google의 내부 네트워크와 데이터베이스 테이블, 임시 파일, 백업에서 암호화되는 고객 데이터
Cloud SQL 인증 프록시 또는 SSL/TLS 프로토콜을 사용한 보안 외부 연결 지원
비공개 IP(비공개 서비스 액세스) 지원
자동 장애 조치로 여러 영역 간에 데이터 복제
mysqldump를 사용한 데이터베이스 가져오기와 내보내기 또는 CSV 파일 가져오기와 내보내기
MySQL 유선 프로토콜 및 표준 MySQL 커넥터 지원
주문형 자동 백업 및 특정 시점 복구
인스턴스 클론
Google Cloud 운영 제품군 로깅 및 모니터링과의 통합
ISO/IEC 27001 준수

Cloud SQL과 표준 MySQL의 기능 차이

일반적으로 Cloud SQL 인스턴스에서 제공하는 MySQL 기능은 로컬에서 호스팅되는 MySQL 인스턴스가 제공하는 기능과 동일합니다.
하지만 표준 MySQL 인스턴스와 Cloud SQL 인스턴스에는 몇 가지 차이점이 있습니다.

PostgreSQL용 Cloud SQL

클라우드의 완전 관리형 PostgreSQL 데이터베이스
RAM 최대 624GB와 CPU 96개가 탑재된 커스텀 머신 유형
스토리지를 최대 64TB까지 사용할 수 있으며 필요에 따라 스토리지 크기를 자동으로 늘릴 수 있음
Google Cloud Console에서 인스턴스 생성 및 관리
미주, EU, 아시아, 오스트레일리아에서 사용 가능한 인스턴스. 모든 위치 보기.
Database Migration Service(DMS)를 사용하여 소스 데이터베이스에서 Cloud SQL 대상 데이터베이스로 마이그레이션을 지원합니다.
Google의 내부 네트워크와 데이터베이스 테이블, 임시 파일, 백업에서 암호화되는 고객 데이터
Cloud SQL 인증 프록시 또는 SSL/TLS 프로토콜을 사용한 보안 외부 연결 지원
자동 장애 조치로 여러 영역 간에 데이터 복제
SQL 덤프 파일을 사용한 데이터베이스 가져오기 또는 내보내기
PostgreSQL 클라이언트 서버 프로토콜 및 표준 PostgreSQL 커넥터를 지원
주문형 자동 백업 및 특정 시점 복구
인스턴스 클론
Google Cloud 운영 제품군 로깅 및 모니터링과의 통합
여러 PostgreSQL 버전 지원
논리 복제

0개의 댓글