CSP Native Things

Google Compute Engine Basic

JunMoo 2020. 11. 8. 21:27

0.개요

CSP는 기본적으로 VM 서비스를 제공한다.(ex. AWS EC2, GCP GCE, Azure VM, Alibaba ECS ... etc)

그 중에서, 최근 VM Pipeline을 구성하며 GCP GCE의 기능과 권한 부여등을 많이 사용하게 되었고 이를 기술하려 한다.

 

1. 서비스 정의

 Google Compute Engine(GCE)는 GCP에서 제공하는 VM서비스로, server를 on-demand 형태로 사용할 수 있다.(기본적으로 on-demand, optional로 reserved 형태의 저렴한 이용이 가능하며 BYOL등의 정책 AWS와 비슷함) Sole Tenant라는 옵션이 있다. AWS EC2의 RI와 비슷한 개념으로 보면 된다. 참조.

 

2. Pricing

초단위 과금체계이며, 사용하는만큼 billing된다. 참고로 instance의 disk, network traffic, image등 다양한 자원에 대해 과금이 되니 사용할 때 실제로 사용하는 자원과 사용하지 않는 자원을 잘 식별하는 것이 중요하다. 과금 체계 참조.

 

3. 서비스 종류

  • Virtual machines
    • VM Instance
      VM Service로 바로 인스턴스를 만들어서 접속하고 이용할 수 있다.
      최초 사용시 Compute API를 enable해야 사용할 수 있다.
    • Instance Template
      Instance Group의 template으로 IT를 이용해서 Instance Group을 정의할 수 있다.
    • Sole-tenant nodes
      AWS EC2 RI와 유사한 서비스
    • Machine Images
      Machine Type, image, network configuration등 VM의 모든 것을 동일하게 보존하는 Image. Instance Template의 boot disk image로 사용할 수 없다.(Network config등이 고정되는 것을 생각하면 ...)
    • TPUs(Tensor Processing Unit)
      Machine Learning에 특화된 TPU를 사용할 수 있는 서비스. Cloud TPU API를 enable해야 사용할 수 있다.
    • Migrate for Compute Engine
      Manager server를 생성해서 Migration을 도와주는 GCP의 Migration service.
    • Committed use discounts
      AWS EC2 RI와 유사한 서비스 2
  • Storage
    • Disks
      AWS EBS와 유사함. Persistent Disk라고 칭함.
    • Snapshots
      AWS Snapshot. Instance Template의 boot disk image로 사용할 수 없다.
    • Images
      Disk Image를 관리할 수 있는 tab. Disk Image만 Instance Template의 boot disk image로 사용할 수 있다.
  • Instance groups
    • Instance Groups 
      AWS ASG와 비슷하지만, 제약사항이 여러가지 존재한다. Boot disk이외에 다른 disk를 attach하는 경우 Instance Group을 사용할 수 없다. 즉, Auto Scale을 할 수 없다는 뜻이다. Instance Template을 교체하더라도 자동적으로 Instance Group의 자원을 교체하지 않고 별도로 배포해야 된다. GCP에 AWS Code deploy와 같은 서비스가 없기 때문에(2020.11.08 기준) Blue/Green deployment가 여의치 않다.(Manually 구성해야 함)
    • Health checks
      LB에 연결하기 위해 구성해야하는 HC를 관리할 수 있는 Dashboard
  • OS Patch Management
    • 다수의 VM에 동일한 shell script 작업을 하고 싶을 때 사용할 수 있다.
      실제로 잘 동작하는지 테스트 VM에서 진행하고 일괄적용 하는 것을 권장. 
  • Settings
    • Metadata
      boot strap script, ssh key 등을 등록하고 관리할 수 있다.
      project wide ssh key를 등록하여 사용할 수 있다.
    • Zones
      Availability Zone을 설정. 가용성 보장 구성을 위해 Instance Groups 구성시, 2개 이상의 Zone을 선택한다.
    • Network endpoint groups
      Backend instance 또는 Service들의 Network endpoint를 지정할 수 있는 서비스.
      NEG를 LB뒤에 두어서 가용성과 Traffic 분산등을 할 수 있다.
    • Operations
      GCE 탭의 자원에 대한 operation 목적 작업에 대한 로그를 볼 수 있다.
    • Security scans
      Cloud Web Security API 활성화가 필요하다. Security 탭으로 변경됨.
      Web 앞단의 보안에 대해 진단하는 기능이다.
    • Settings
      일간 사용량 보고서 구독, MS license mobility 확인, VM 기동 작업에 대해 confirm step추가를 설정할 수 있다.