Terraform으로 OracleCloud의 새로운 Arm 인스턴스 만들기

4코어/24GB "Always Free Arm"등 다양한 프로그램을 무료로 제공
https://ascii.jp/elem/000/004/056/4056339/
따라서 기존 Terraform 코드에 ARM 인스턴스를 추가했습니다.

완성


Instance


이전 쓰기 방식과 달리 지정shape_config이 필요한 곳이다.
다른 것은 이전의 실례와 같은 코드를 만들 수 있다.
resource "oci_core_instance" "free_instance1" {
  availability_domain = lookup(data.oci_identity_availability_domains.availability_domains.availability_domains[0], "name")

  compartment_id = var.compartment_ocid
  display_name   = "freeInstance1"
  shape          = "VM.Standard.A1.Flex" # ARMのShapeを指定
  shape_config {
    memory_in_gbs = 24 # shape_configで無料上限の4コア/24GB を指定
    ocpus         = 4
  }
  create_vnic_details {
    subnet_id        = oci_core_subnet.nomad_subnet.id
    display_name     = "primaryvnic"
    assign_public_ip = false
    hostname_label   = "freeinstance1"
  }

  source_details {
    source_type = "image"
    source_id   = var.images_arm[var.region] # ARM対応のイメージを指定。詳細は次項
  }

  metadata = {
    ssh_authorized_keys = file(var.ssh_public_key_path)
  }
}

Image


현재 ARM에 대한 인상은 오로라클 리눅스만 존재하기 때문에 솔직하게 다음과 같은 내용을 활용한다.
variable "images_arm" {
  type = map(string)

  default = {
    # See https://docs.us-phoenix-1.oraclecloud.com/images/
    # Oracle-provided image "Oracle-Linux-7.5-2018.10.16-0"
    us-ashburn-1 = "ocid1.image.oc1.iad.aaaaaaaadnc5jeyeslhvkvitrsqsx65z3x6vk4trycpaaeyl5fultqbjobdq"
  }
}

감상


ARM이 말하는 4핵/24GB가 x86의 얼마에 해당하는지 모르겠지만 굵은 느낌이 든다.

free


완전 기억난다.

VM.Standard.E2.1.Micro


$ free -h
              total        used        free      shared  buff/cache   available
Mem:          974Mi       663Mi        66Mi        24Mi       245Mi       142Mi

VM.Standard.A1.Flex


$ free -h
              total        used        free      shared  buff/cache   available
Mem:           22Gi       505Mi        21Gi        23Mi       451Mi        19Gi

좋은 웹페이지 즐겨찾기