VM 이름 변경


가상 머신(VM) 인스턴스를 만들 때 이름을 지정해야 합니다. VM을 만든 후 원하는 경우 이름을 바꿀 수 있습니다. VM 이름을 변경하면 다음 시나리오에서 유용할 수 있습니다.

  • VM에서 실행 중인 워크로드를 더 잘 나타내기 위해
  • VM에서 실행 중인 운영체제를 참조하기 위해
  • 조직에서 요구하는 모든 이름 지정 규칙을 준수하기 위해

VM Uniform Resource Identifier(URI)

VM 이름을 변경하면 프로젝트에 영향을 줄 수 있습니다. 이름별로 VM 리소스를 참조하는 대신 영구적인 URI별로 참조할 수 있습니다. URI의 형식은 다음과 같습니다.

projects/PROJECT_ID/zones/ZONE/instances/VM_ID

URI에는 다음 값이 포함됩니다.

  • PROJECT_ID: VM이 있는 프로젝트의 ID입니다.

  • ZONE: VM이 있는 영역입니다.

  • VM_ID: 기존 VM의 ID입니다. 기존 VM의 ID를 보려면 VM 세부정보를 확인한 후 id 필드의 값을 확인합니다.

가격 책정

VM 이름을 바꿔도 청구 금액은 변경되지 않습니다. 또한 청구서에는 VM이 이름이 아닌 재고 유지 단위(SKU)에 따라 표시되므로 청구서에 VM의 이름이 표시되지 않습니다.

제한사항

VM 이름을 변경할 때는 다음과 같은 제한사항이 적용됩니다.

  • 자동으로 이름이 지정된 리소스:

    • VM 이름을 변경해도 원래 VM 이름을 기반으로 하는 리소스 이름은 업데이트되지 않습니다. 예를 들어 VM을 만들 때 부팅 디스크의 이름은 VM의 이름과 동일합니다. VM의 이름을 변경해도 부팅 디스크의 이름은 변경되지 않습니다.
  • DHCP 서버:

    • VM 이름을 변경하면 DHCP 서버는 전역 DNS의 경우 HOSTNAME.c.PROJECT_ID.internal 형식으로, 영역 DNS의 경우 HOSTNAME.ZONE.c.PROJECT_ID.internal 형식으로 업데이트된 호스트 이름으로 DHCP 요청에 응답합니다. 자세한 내용은 내부 DNS 이름 유형을 참조하세요.
  • Google Cloud 콘솔:

    • VM 이름을 업데이트하려면 Google Cloud 콘솔에서 브라우저를 새로고침해야 합니다.
  • 호스트 이름:

    • 호스트 이름은 인스턴스 이름을 변경하면 수정됩니다. Windows에서 호스트 이름을 업데이트하려면 재부팅해야 할 수도 있습니다.

    • 커스텀 호스트 이름이 있는 VM은 업데이트되지 않습니다.

    • 호스트에서 호스트 이름을 직접 변경해도 VM 리소스 이름은 영향을 받지 않습니다.

  • 관리형 인스턴스 그룹:

    • 관리형 인스턴스 그룹(MIG)에 있는 인스턴스는 이름을 스테이트리스(Stateless) MIG의 base instance name 속성에서 자동으로 영구 상속하므로 인스턴스 이름을 변경할 수 없습니다.
  • 이름 지정 규칙:

    • 프로젝트의 다른 VM에서 이미 사용 중인 이름으로 VM의 이름을 변경할 수 없습니다.

    • VM 이름은 리소스 이름 지정 규칙을 준수해야 합니다.

  • VM 상태:

    • TERMINATED 상태의 VM 이름만 변경할 수 있으므로 이름을 바꾸기 전에 인스턴스를 중지합니다. 예를 들어 SUSPENDED 상태의 VM 이름을 변경할 수 없습니다.

시작하기 전에

  • 검토 후 해당하는 경우 다음을 업데이트합니다.
    • Cloud Monitoring 그룹, 차트,알림: Monitoring은 문자열과 일치하며, VM의 이름을 변경해도 이 문자열은 업데이트되지 않습니다. VM의 이름을 바꿀 경우 이름이 변경된 VM을 보고서에 포함하도록 Monitoring 규칙을 업데이트합니다.
    • Console URL: VM의 이름을 변경하면 Console URL이 변경됩니다. VM의 이름을 바꿀 경우 VM의 콘솔 URL을 참조하는 브라우저 북마크와 같은 링크를 업데이트해야 합니다.
    • Identity and Access Management(IAM) 조건부 역할 binding: 조건부 역할 binding은 리소스 이름에 대한 권한 부여를 지원합니다. 예를 들어 VM의 이름이 특정 문자열로 시작하는 경우 IAM은 사용자에게 역할을 부여할 수 있습니다. 이러한 binding은 VM의 이름을 변경할 때 업데이트되지 않기 때문에 프리픽스가 적용된 이름이 사용되는 VM 집합을 변경하므로 VM 리소스에 대한 사용자 액세스가 영향을 받을 수 있습니다. VM의 이름을 변경하면 이 binding을 업데이트합니다.
    • 내부 DNS 서비스 캐시: 내부 DNS 서비스는 호스트 이름의 형식이 전역 DNS의 경우 HOSTNAME.c.PROJECT_ID.internal, 영역 DNS의 경우 HOSTNAME.ZONE.c.PROJECT_ID.internal인 VM에 내부 DNS 이름을 할당합니다. VM 이름을 변경하면 호스트 이름이 변경됩니다. 그러면 내부 DNS 서비스가 새 호스트 이름으로 확인되기 시작하고 이전 DNS 이름에 대한 요청이 실패합니다. VM의 이름을 변경하면 호스트 이름을 업데이트하기 위해 DNS 캐시를 업데이트해야 할 수 있습니다. 전역 DNS 및 영역 DNS 호스트 이름에 대한 자세한 내용은 내부 DNS 이름 유형을 참조하세요.
    • 메타데이터 쿼리: VM 이름을 변경하면 메타데이터 서버가 새 이름을 보고합니다. VM 이름을 바꾸는 경우 메타데이터 서버를 쿼리하는 스크립트 또는 프로그램을 업데이트하여 VM의 새 이름을 쿼리합니다.
    • 외부 IP 주소를 제한하는 조직 정책: 외부 IP 주소가 있는 VM에 대한 제약조건은 VM 이름을 참조합니다. VM 이름을 변경해도 이 제약조건은 업데이트되지 않습니다. VM의 이름을 변경하면 외부 IP 조직 정책을 VM의 새 이름으로 업데이트합니다.
    • SQL Server 호스트 이름: SQL Server를 호스팅하는 VM의 이름을 바꿀 경우 SQL Server VM 이름을 업데이트해야 합니다. 자세한 내용은 SQL Server의 독립 실행형 인스턴스를 호스팅하는 컴퓨터 이름 변경을 참조하세요.
  • 아직 인증을 설정하지 않았다면 설정합니다. 인증은 Google Cloud 서비스 및 API에 액세스하기 위해 ID를 확인하는 프로세스입니다. 로컬 개발 환경에서 코드 또는 샘플을 실행하려면 다음과 같이 Compute Engine에 인증하면 됩니다.

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. REST

      로컬 개발 환경에서 이 페이지의 REST API 샘플을 사용하려면 gcloud CLI에 제공하는 사용자 인증 정보를 사용합니다.

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

      자세한 내용은 Google Cloud 인증 문서의 REST 사용 인증을 참조하세요.

필요한 역할

VM 이름을 바꾸는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 Compute 인스턴스 관리자(v1)(roles/compute.instanceAdmin.v1) IAM 역할을 부여해 달라고 요청하세요. 역할 부여에 대한 자세한 내용은 액세스 관리를 참조하세요.

이 사전 정의된 역할에는 VM 이름을 바꾸는 데 필요한 compute.instances.setName 권한이 포함되어 있습니다.

커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.

VM 이름 변경

TERMINATED 상태의 중지된 VM의 이름만 바꿀 수 있습니다.

콘솔

VM의 이름을 바꾸려면 다음 안내를 따르세요.

  1. Google Cloud 콘솔에서 VM 인스턴스 페이지로 이동합니다.

    VM 인스턴스로 이동

  2. 이름 열에서 VM의 이름을 클릭합니다.

  3. 아직 수행하지 않은 경우 다음을 수행하여 VM을 중지합니다.

    1. 중지를 클릭합니다.

    2. 중지를 클릭하여 확인합니다.

      VM 중지를 완료하는 데 최대 90초가 걸릴 수 있습니다.

  4. 수정을 클릭합니다.

  5. VM 인스턴스 이름 필드에 VM의 새 이름을 입력합니다.

  6. 저장을 클릭합니다.

    VM의 이름 변경을 완료하는 데 최대 1분이 걸릴 수 있습니다. VM의 이름을 바꾼 후 Google Cloud에서 VM을 찾을 수 없다는 오류가 발생하면 브라우저를 새로고침합니다.

  7. 필요한 경우 시작/재개를 클릭하여 VM을 다시 시작합니다.

gcloud

VM의 이름을 바꾸려면 다음 안내를 따르세요.

  1. 아직 수행하지 않았으면 VM을 중지합니다.

  2. VM의 이름을 바꾸려면 gcloud compute instances set-name 명령어를 사용합니다.

    gcloud compute instances set-name VM_NAME \
        --new-name=NEW_VM_NAME \
        --project=PROJECT_ID \
        --zone=ZONE
    

    다음을 바꿉니다.

    • VM_NAME: 기존 VM의 이름입니다.

    • NEW_VM_NAME: 지정된 VM의 새 이름입니다.

    • PROJECT_ID: VM이 있는 프로젝트의 ID입니다.

    • ZONE: VM이 있는 영역입니다.

    VM의 이름 변경을 완료하는 데 최대 1분이 걸릴 수 있습니다.

  3. 필요한 경우 VM을 다시 시작합니다.

REST

VM의 이름을 바꾸려면 다음 안내를 따르세요.

  1. 아직 수행하지 않았으면 VM을 중지합니다.

  2. VM의 이름을 바꾸려면 instances.setName 메서드에 대해 POST 요청을 수행합니다.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/setName
    
    {
      "currentName": "VM_NAME",
      "name": "NEW_VM_NAME"
    }
    

    다음을 바꿉니다.

    • PROJECT_ID: VM이 있는 프로젝트의 ID입니다.

    • ZONE: VM이 있는 영역입니다.

    • VM_NAME: 기존 VM의 이름입니다.

    • NEW_VM_NAME: 지정된 VM의 새 이름입니다.

    VM의 이름 변경을 완료하는 데 최대 1분이 걸릴 수 있습니다. 이름 바꾸기 상태를 모니터링하려면 Rename API가 반환한 작업 ID를 폴링합니다. 자세한 내용은 API 응답 처리를 참조하세요.

  3. 필요한 경우 VM을 다시 시작합니다.

다음 단계