단일 VM

아키텍처

단일 VM 스택은 스마트 기본값이 있는 개별 VM을 만들지만 가상 머신을 맞춤설정할 수도 있습니다. 여기에는 다음이 사용됩니다.

  • 컴퓨팅 - VM - Compute Engine

이 예시에서는 간단한 단일 가상 머신을 설정하고 SSH를 통해 연결할 수 있도록 합니다.


시작하기

Cloud Shell에서 소스 코드의 복사본에 대해 다음 링크를 클릭합니다. 링크에 도착한 다음 단일 명령어로 프로젝트에서 애플리케이션의 작업 복사본이 작동합니다.

Cloud Shell에서 열기

GitHub에서 소스 코드 보기


단일 VM 구성요소

단일 VM 아키텍처에는 하나의 주요 제품이 사용됩니다. 다음은 관련 동영상 링크, 제품 문서, 대화형 둘러보기를 포함하여 이 제품에 대한 자세한 정보를 보여줍니다.
동영상 문서 둘러보기
Compute Engine Compute Engine은 Google Cloud의 가상 기술입니다. 이를 사용하면 어떤 컴퓨팅 요구든 그에 맞게 여러 다른 VM 구성을 가동할 수 있습니다.

스크립트

설치 스크립트는 go 및 Terraform CLI 도구로 작성된 실행 파일을 사용하여 빈 프로젝트를 가져오고 여기에 애플리케이션을 설치합니다. 출력은 작동하는 애플리케이션과 부하 분산 IP 주소의 URL입니다.

./main.tf

서비스 사용 설정

Google Cloud 서비스는 기본적으로 프로젝트에서 사용 중지되어 있습니다. 여기에서 솔루션을 사용하려면 다음을 활성화해야 합니다.

  • Compute Engine - 가상 머신 및 네트워킹
variable "gcp_service_list" {
    description = "The list of apis necessary for the project"
    type        = list(string)
    default = [
        "compute.googleapis.com",
    ]
}

resource "google_project_service" "all" {
  for_each                   = toset(var.gcp_service_list)
  project                    = var.project_number
  service                    = each.key
  disable_dependent_services = false
  disable_on_destroy         = false
}

가상 머신 만들기

VM을 만듭니다.

resource "google_compute_instance" "instance" {
    name         = var.instance-name
    machine_type = var.instance-machine-type
    zone         = var.zone
    project      = var.project_id
    tags         = var.instance-tags

    boot_disk {
        auto_delete = true
        device_name = var.instance-name
        initialize_params {
        image = var.instance-image
        size  = var.instance-disksize
        type  = var.instance-disktype
        }
    }

    network_interface {
        network = "default"
        access_config {
        // Ephemeral public IP
        }
    }

    depends_on = [google_project_service.all]
    }

결론

실행이 완료되면 단일 VM이 생성됩니다. SSH로 연결하고 원하는 대로 구성할 수 있습니다. 또한 환경에 맞게 이 솔루션을 수정하거나 확장할 수 있도록 모든 코드가 준비되었습니다.