Posts [GSP001] CH2. Creating a Virtual Machine
Post
Cancel

[GSP001] CH2. Creating a Virtual Machine

[CH2] Creating a Virtual Machine


  • Google Compute Engine 가상 머신 만들기
  • zones, regions, and machine types에 대해 이해하기

실습

  • Compute Engine을 사용하면 Google 인프라에서 다양한 Linux(Debian, Ubuntu, Suse, Red Hat, CoreOS) 및 Windows Server를 비롯한 다양한 운영 체제를 실행하는 가상 머신을 만들 수 있다.
  • 빠르고 강력한 성능 일관성을 제공하도록 설계된 시스템에서 수천 개의 가상 CPU를 실행할 수 있다.
  • Google Cloud Console과 gcloud명령줄을 사용하여 다양한 머신 유형의 가상 머신 인스턴스를 만드는 실습을 진행한다. NGINX 웹 서버를 가상 머신에 연결하는 방법을 습득한다.
  • 실습내용
    • Cloud Console을 사용하여 가상 머신을 만들기
    • gcloud 명령어을 사용하여 가상 머신을 만들기
    • 웹 서버를 배포하고 가상 머신에 연결하기
  • 두가지 방법으로 가상 머신을 만들 수 있다.
    1. Google Cloud Console 사용
    2. Terminal에서 gcloud 명령어를 사용
  • Region, zone
    • 특정 Compute Engine 리소스는 regions 또는 zones에 있다.
    • region은 리소스를 어디서 실행하는지 결정한다.(지리적 위치 설정)
    • 각 region에는 하나 이상의 zone이 존재한다.
    • 예를 들어, us-central1 region은 지역이 중앙 미국에있는 지역이며, 아래의 zone들을 가지고 있다.
      • us-central1-a, us-central1-b, us-central1-c,와 us-central1-f.
    • region에 있는 리소스를 region recources라고 한다.
    • 가상 머신 인스턴스(virtual machine instance)와 영구 디스크(persistent disks)는 region에 있다.
    • 가상 머신 인스턴스에 영구 디스크를 연결하려면 두 리소스가 동일한 영역에 있어야 한다.
    • 마찬가지로 인스턴스에 고정 IP 주소를 할당하려면 인스턴스가 고정 IP와 동일한 지역에 있어야 한다.

zone, region

방법1. Google Cloud Console 사용하여 인스턴스 생성하기

  • Google Cloud Console 로그인
  • Cloud Shell 활성화(우측 상단 터미널 아이콘)
  • gcloud 명령어 참고
    • 활성 계정 이름을 나열하기
      • input: gcloud auth list
      • output ```shell Credentialed accounts:
        • @.com (active) 혹은 Credentialed accounts:
        • google1623327_student@qwiklabs.net ```
    • 프로젝트 ID 나열하기
      • input: gcloud config list project
      • output
        1
        2
        3
        4
        5
        
          [core]
          project = <project_ID>
          혹은   
          [core]
          project = qwiklabs-gcp-44776a13dea667a6
        
  • 탐색 메뉴 > VM Instances > 프로젝트 선택(리소스 프로젝트 x) > Create Instance 클릭
  • 정할 수 있는 것
    • Name: VM Instance 이름
    • Region
    • Zone: 기억해둘 것
    • Series: 머신 타입과 관련이 있는 듯하다. 어떤 시리즈를 선택하느냐에 따라 고를 수 있는 머신타입이 다르다.
    • Machine Type: Machine Types 문서
    • Boot Disk: 디스크 이미지를 선택(OS 선택, Debian, Ubuntu, CoreOS, Red Hat Enterprise Linux, Windows Server 등 선택 가능)
    • Firewall: 웹 서버 접근을 허용할 지, 옵션 선택(실습에서는 Allow HTTP traffic 활성화해줬다.)
  • create 클릭하면, virtual machine 리스트가 있는 페이지로 갈 수 있다.
  • VM에 연결하기 위한 SSH를 사용하기 위해서는, SSH를 클릭하면 된다. SSH client를 브라우저에서 실행시켜준다. SSH 연결 더보기 SSH

NGINX web server

  • install(SSH terminal 사용)
    • sudo su - : 루트 권한 얻기
    • apt-get update : 루트 유저로 OS 업데이트
    • apt-get install nginx -y : NGINX 설치
    • ps auwx | grep nginx : 권한 부여
    • 웹페이지 보려면, Cloud Console에 External IP 클릭(원하는 VM 줄에 링크되어 있음) External IP
    • 예상 output output

방법2. gcloud를 사용하여 인스턴스 생성하기

  • gcloud command
  • 새 인스턴스 생성 예시
    • gcloud compute instances create gcelab2 --machine-type n1-standard-2 --zone us-central1-f
  • 에상 output
    1
    2
    3
    
      Created [...gcelab2].
      NAME     ZONE           MACHINE_TYPE  ...    STATUS
      gcelab2  us-central1-f  n1-standard-2 ...    RUNNING
    
  • 설정 변경 예시
    • gcloud config set compute/zone ...
    • gcloud config set compute/region ...
  • SSH 연결
    • gcloud compute ssh gcelab2 --zone us-central1-f
    • rsa key pair 생성 관련 문구 나오면 그냥 엔터 치면 된다.
    • SSH 나오고 싶으면 exit 명령어 치면 된다.

Google Compute Engine에서 윈도우 서버 인스턴스 만들어서, RDP를 사용하여 액세스하는 방법도 있다. 참고

This post is licensed under CC BY 4.0 by the author.