단독 테넌트 노드에 고급 유지보수 제어 사용 설정


단독 테넌시의 고급 유지보수 제어를 사용하면 단독 테넌트 노드 그룹의 계획된 유지보수 이벤트를 제어하고 유지보수 관련 중단을 최소화할 수 있습니다. 이 기능은 단독 테넌트 노드 그룹에서만 사용할 수 있습니다. 기존 가상 머신에서 이 기능을 사용하려면 먼저 VM을 고급 유지보수 제어가 사용 설정된 단독 테넌트 노드 그룹으로 이동해야 합니다.

단독 테넌시 기능의 고급 유지보수 제어 기능은 다음과 같은 이점을 제공합니다.

  • 28일 전에 단독 테넌트 노드에 예약된 유지보수 이벤트를 확인할 수 있습니다.
  • 유지보수를 즉시 트리거하거나 나중에 예약할 수 있습니다. 유지보수를 즉시 트리거하면 유지보수가 요청을 트리거한 시점으로부터 24시간 이내에 유지보수가 수행됩니다.

다음은 고급 유지보수 제어로 단독 테넌트 노드 그룹을 만드는 프로세스입니다.

  1. 호환되는 단독 테넌시 노드 그룹에서 고급 유지보수 제어를 선택합니다. 이 기능은 단독 테넌트 노드 그룹에서만 사용할 수 있습니다. 기존 VM 또는 단독 테넌트 워크로드에서 이 기능을 사용하려면 먼저 고급 유지보수 제어가 사용 설정된 단독 테넌트 노드 그룹으로 VM을 이동해야 합니다.

  2. 단독 테넌트 노드의 예정된 유지보수를 확인하세요. 단독 테넌트 노드의 유지보수는 최대 28일마다 수행됩니다. 24시간 유지보수 기간이 시작되기 28일 전에 노드의 유지보수 이벤트를 확인하여 해당 노드에 대해 유지보수가 예약되도록 할 수 있습니다.

  3. 단독 테넌트 노드에 유지보수가 예약되고 예약된 유지보수 기간이 시작되기 전에 다음을 수행할 수 있습니다.

    • 유지보수를 즉시 트리거하거나 나중에 예약하세요. 유지보수를 즉시 트리거하는 경우 요청을 트리거한 후 24시간 이내에 유지보수가 수행됩니다. 선택한 예약 날짜와 시간은 초기 유지보수 기간의 시작 시간보다 이전이어야 합니다.

    • 유지보수를 즉시 트리거하지 않거나 나중에 예약하면 유지보수가 초기 유지보수 기간에 제공된 시간 내에 수행됩니다.

고급 유지보수 제어가 사용 설정된 단독 테넌트 노드 그룹을 자동 확장하도록 선택할 수 있습니다. 모든 경우에 감사 로그가 생성됩니다.

제한사항

다음은 미리보기 단계에서 단독 테넌시 기능에 대한 고급 유지보수 제어의 제한사항입니다.

  • 머신 계열: 이 기능은 M1, M2, M3, C2, N2 VM 제품군에만 지원됩니다. N1 및 N2D VM 제품군에서는 지원되지 않습니다.
  • 로컬 SSD 및 GPU: 로컬 SSD 및 GPU는 이 기능에서 지원되지 않습니다.
  • 유지보수 정책: 이 기능은 미리보기 단계에서 기본 유지보수 정책(라이브 마이그레이션)을 지원합니다. 그대로 다시 시작(BYOLv1) 및 노드 그룹 내 마이그레이션(BYOLv2)과 같은 다른 유지보수 정책은 지원되지 않습니다.
  • 노드: 이 기능은 영역별로 프로젝트당 최대 20개의 노드를 지원할 수 있습니다.
  • 기존 단독 테넌트 노드 그룹의 고급 유지보수 제어: 미리보기 단계에서는 고급 유지보수 제어를 위해 기존 단독 테넌트 노드 그룹을 선택할 수 없습니다. 고급 유지보수 제어가 사용 설정된 단독 테넌트 노드 그룹에서 기존 워크로드를 실행하려면 먼저 고급 유지보수 제어가 사용 설정된 새 노드 그룹을 만든 다음 이 그룹으로 워크로드를 마이그레이션해야 합니다. 마찬가지로 고급 유지보수 제어를 선택 해제하려면 단독 테넌트 노드를 고급 유지보수 제어가 사용 설정되지 않은 단독 테넌트 노드 그룹으로 마이그레이션해야 합니다.
  • 현재 유지보수 정책에 미치는 영향: 이 기능을 선택하면 단독 테넌트 노드와 연결된 기존 유지보수 기간이 재정의됩니다.

비용

단독 테넌트 노드에서 고급 유지보수 제어를 사용하는 데는 추가 비용이 들지 않습니다.

시작하기 전에

  • 단독 테넌트 노드에 VM을 프로비저닝하기 전에 할당량을 확인합니다. 예약한 노드 수와 크기에 따라 추가 할당량을 요청해야 할 수도 있습니다.
  • 아직 인증을 설정하지 않았다면 설정합니다. 인증은 Google Cloud 서비스 및 API에 액세스하기 위해 ID를 확인하는 프로세스입니다. 로컬 개발 환경에서 코드 또는 샘플을 실행하려면 다음과 같이 Compute Engine에 인증하면 됩니다.

    이 페이지의 샘플 사용 방법에 대한 탭을 선택하세요.

    콘솔

    Google Cloud 콘솔을 사용하여 Google Cloud 서비스 및 API에 액세스할 때는 인증을 설정할 필요가 없습니다.

    gcloud

    1. Google Cloud CLI를 설치한 후 다음 명령어를 실행하여 초기화합니다.

      gcloud init
    2. 기본 리전 및 영역을 설정합니다.

    REST

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

      Google Cloud CLI를 설치한 후 다음 명령어를 실행하여 초기화합니다.

      gcloud init

단독 테넌트 노드에서 고급 유지보수 제어 사용 설정

단독 테넌시를 위한 고급 유지보수 제어는 미리보기 단계 중에 선택되는 기능입니다. 이 기능은 단독 테넌트 노드 그룹에서만 사용할 수 있습니다. 기존 VM 또는 단독 테넌트 워크로드에서 이 기능을 사용하려면 먼저 고급 유지보수 제어가 사용 설정된 단독 테넌트 노드 그룹으로 VM을 이동해야 합니다.

콘솔

노드 그룹을 만들 때 유지보수 설정 구성 섹션에서 단독 테넌시 고급 유지보수 선택 옵션을 선택하여 고급 유지보수 제어를 선택할 수 있습니다. 자세한 내용은 단독 테넌트 노드 그룹 만들기를 참조하세요.

gcloud

단독 테넌트 노드 그룹에 VM을 만들려면 gcloud beta compute sole-tenancy node-groups create 명령어를 사용합니다.

다음 명령어의 --maintenance-interval=RECURRENT 플래그는 단독 테넌트 노드가 고급 유지보수 제어를 선택하도록 지정합니다.

gcloud compute sole-tenancy node-groups create NODE_GROUP_NAME \
--node-template=NODE_TEMPLATE_NAME \
--zone=NODE_GROUP_ZONE \
--target-size=NODE_GROUP_SIZE \
--maintenance-interval=RECURRENT

다음을 바꿉니다.

  • NODE_GROUP_NAME: 노드 그룹의 이름입니다.

  • NODE_TEMPLATE_NAME: 이 그룹을 만드는 데 사용할 노드 템플릿의 이름입니다.

  • NODE_GROUP_SIZE: 그룹에서 만들 노드 수입니다.

  • NODE_GROUP_ZONE: 노드 그룹을 만들 영역입니다. 노드 그룹의 기반이 되는 노드 템플릿과 동일한 리전에 있어야 합니다.

REST

이전에 만든 노드 템플릿을 기반으로 단독 테넌트 노드 그룹을 만들려면 nodeGroups.insert 메서드를 사용합니다.

다음 명령어의 maintenanceInterval 매개변수는 단독 테넌트 노드가 고급 유지보수 제어를 선택하도록 지정합니다.

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/NODE_GROUP_ZONE/nodeGroups
{
"name": "NODE_GROUP_NAME",
"nodeTemplate": "NODE_TEMPLATE_URL",
"zone": "NODE_GROUP_ZONE",
"size": "NODE_GROUP_SIZE",
"maintenanceInterval": "RECURRENT"
}

다음을 바꿉니다.

  • PROJECT_ID: 노드 그룹이 있는 프로젝트의 이름입니다.

  • NODE_GROUP_ZONE: 노드 그룹의 영역입니다.

  • NODE_GROUP_NAME: 노드 그룹의 이름입니다.

  • NODE_TEMPLATE_URL: 이 그룹을 만드는 데 사용할 노드 템플릿의 URL입니다.

  • NODE_GROUP_SIZE: 그룹에서 만들 노드 수입니다.

노드 수준 플래그는 이전에 할당된 모든 VM 플래그를 재정의합니다. 따라서 고급 유지보수 제어를 선택하면 이전의 유지보수 플래그가 재정의됩니다.

예정된 유지보수 확인

단독 테넌트 노드의 유지보수는 최대 28일마다 수행됩니다. 24시간 유지보수 기간이 시작되기 28일 전에 노드의 유지보수 이벤트를 확인하여 해당 노드에 대해 유지보수가 예약되도록 할 수 있습니다.

콘솔

고급 유지보수 제어를 위해 단독 테넌트 노드 그룹을 선택하면 다음과 같은 방법으로 예정된 유지보수 이벤트가 표시됩니다.

  1. Google Cloud 콘솔에서 단독 테넌트 노드 페이지로 이동합니다.

    단독 테넌트 노드로 이동

  2. 단독 테넌트 노드 그룹 목록을 보려면 노드 그룹을 클릭합니다.

  3. 단독 테넌트 노드 그룹의 경우 향후 유지보수를 위한 테이블에서 유지보수 상태유지보수 시간 열을 확인할 수 있습니다. 유지보수는 노드 수준에서 설정되기 때문에 여기에 표시된 유지보수 정보는 노드 그룹 내의 모든 노드에 예약된 다음 유지보수입니다.

  4. 단독 테넌트 노드 그룹의 각 노드에 대한 유지보수 정보를 보려면 노드 그룹의 이름을 클릭하여 세부정보 페이지를 엽니다. 테이블의 유지보수 상태유지보수 시간 열에 노드 그룹의 각 노드에 대해 예정된 유지보수 정보가 표시됩니다.

gcloud

단독 테넌트 노드 그룹의 노드를 유지보수 정보와 함께 나열하려면 gcloud beta compute sole-tenancy node-groups list-nodes 명령어를 사용합니다.

gcloud compute sole-tenancy node-groups list-nodes NODE_GROUP_NAME \
--format "table(name, status, node_type, instances, server_id, upcoming_maintenance)"

NODE_GROUP_NAME을 노드 그룹의 이름으로 바꿉니다.

REST

단독 테넌트 노드 그룹의 노드를 유지보수 정보와 함께 나열하려면 nodeGroups.listNodes 메서드를 사용합니다.

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/NODE_GROUP_ZONE/nodeGroups/NODE_GROUP_ID/listNodes

다음을 바꿉니다.

  • PROJECT_ID: 노드 그룹이 있는 프로젝트의 이름입니다.

  • NODE_GROUP_ZONE: 노드 그룹의 영역입니다.

  • NODE_GROUP_ID: 노드 그룹의 ID입니다.

다음은 nodeGroups.listNodes 메서드의 응답입니다.

{
  …
  "items": [
    …
    {
      "name": string,
      "status": string,
      …
      "upcomingMaintenance": {
        "canReschedule": boolean,
        "maintenanceType": enum, // SCHEDULED | UNSCHEDULED
        "windowStartTime": string, // RFC 3339 timestamp string
        "windowEndTime": string, // RFC 3339 timestamp string
        "latestWindowStartTime": string, // RFC 3339 timestamp string
        "maintenanceStatus": enum // PENDING | ONGOING
      },
      …
    },
    …
  ],
  …
}

다음은 노드 그룹의 유지보수 이벤트에 대한 세부정보입니다.

매개변수 이름 설명
windowStartTime 유지보수 기간의 시작 시간입니다.
windowEndTime 유지보수 기간의 종료 시간입니다.
latestWindowStartTime 초기 유지보수 기간의 시작 시간입니다. 유지보수를 즉시 트리거하도록 선택하거나 latestWindowStartTime 이전에만 이후의 날짜 및 시간을 예약할 수 있습니다.
maintenanceType 수행할 유지보수 유형:
- 예약됨: 이 노드에 대한 유지보수가 예약되었습니다.
- 예약되지 않음: 유지보수는 알림이 훨씬 적은 중요 업데이트를 나타냅니다.
canReschedule 유지보수 일정을 변경할 수 있는지 여부입니다.
maintenanceStatus 현재 유지보수 작업의 상태:
- 대기중: 유지보수 작업이 아직 시작되지 않았지만 예약되어 있습니다.
- 진행 중: 유지보수 기간이 시작되었습니다.

유지보수 이벤트가 표시되지 않으면 노드 그룹의 노드에 예정된 유지보수가 없다는 의미입니다.

유지보수를 즉시 트리거하거나 노드의 유지보수 예약

단독 테넌트 노드 그룹에서 유지보수가 예약된 노드를 확인한 후 다음 중 하나를 수행할 수 있습니다.

  • 유지보수를 즉시 트리거합니다. 유지보수를 즉시 트리거하는 경우 요청을 트리거한 후 24시간 이내에 유지보수가 수행됩니다.

  • 요구사항에 따라 나중에 유지보수를 예약합니다.

유지보수를 즉시 트리거하지 않거나 이후 날짜 및 시간으로 예약하지 않으면 초기 유지보수 기간 내에 유지보수가 수행됩니다. 노드 유지보수가 시작되면 노드를 일시중지하거나 다시 예약할 수 없습니다.

콘솔

노드의 유지보수를 즉시 트리거하려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 단독 테넌트 노드 페이지로 이동합니다.

    단독 테넌트 노드로 이동

  2. 노드 그룹을 클릭합니다.

  3. 노드 그룹의 이름을 클릭하여 세부정보 페이지를 엽니다.

  4. 유지보수를 즉시 트리거할 노드를 선택하고 지금 시작을 클릭합니다.

요청이 트리거된 후 24시간 이내에 확인 메시지가 표시되고 유지보수가 수행됩니다.

노드의 유지보수를 예약하려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 단독 테넌트 노드 페이지로 이동합니다.

    단독 테넌트 노드로 이동

  2. 단독 테넌트 노드 그룹 목록을 보려면 노드 그룹을 클릭합니다.

  3. 노드 그룹의 이름을 클릭하여 세부정보 페이지를 엽니다.

  4. 유지보수를 예약할 노드를 선택하고 유지보수 예약을 클릭합니다.

  5. 표시된 유지보수 예약 창에서 유지보수를 실행할 날짜와 시간을 선택합니다. 초기 유지보수 기간이 시작되기 전에 언제든지 노드의 유지보수를 예약할 수 있습니다.

요청이 트리거된 후 24시간 이내에 확인 메시지가 표시되고 유지보수가 수행됩니다.

gcloud

gcloud beta compute sole-tenancy node-groups perform-maintenance 명령어를 사용하여 단독 테넌트 노드의 유지보수를 시작하거나 예약합니다.

gcloud beta compute sole-tenancy node-groups perform-maintenance NODE_GROUP_NAME \
--zone=NODE_GROUP_ZONE \
--nodes=NODE_NAMES \
--window-start-time=WINDOW_START_TIME

다음을 바꿉니다.

  • NODE_GROUP_NAME: 노드 그룹의 이름입니다.

  • NODE_GROUP_ZONE: 노드 그룹의 영역입니다.

  • NODE_NAMES: 유지보수를 수행할 노드의 이름입니다.

  • WINDOW_START_TIME: 유지보수의 시작 날짜와 시간입니다. 유지보수를 최대한 빨리 시작하려면 이 플래그를 생략합니다.

REST

nodeGroups.performMaintenance 메서드를 사용하여 단독 테넌트 노드의 유지보수를 시작하거나 예약합니다.

POST
https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/NODE_GROUP_ZONE/nodeGroups/NODE_GROUP_ID/performMaintenance
{
"nodes": "NODE_NAMES" // [Required] The user needs to list at least 1 node
"windowStartTime":  "WINDOW_START_TIME" // [Optional] RFC 3339 timestamp string
}

다음을 바꿉니다.

  • PROJECT_ID: 노드 그룹이 있는 프로젝트의 이름입니다.

  • NODE_GROUP_ZONE: 노드 그룹의 영역입니다.

  • NODE_GROUP_ID: 노드 그룹의 ID입니다.

  • NODE_NAMES: 유지보수를 수행할 노드의 이름입니다.

  • WINDOW_START_TIME: 유지보수의 시작 날짜와 시간입니다. 유지보수를 최대한 빨리 시작하려면 이 필드를 생략합니다.

노드의 유지보수 상태 필드에는 유지보수 프로세스 중에 다음 상태가 표시됩니다.

  • 대기중: 유지보수 작업이 아직 시작되지 않았지만 예약되어 있습니다.
  • 진행 중: 유지보수 기간이 시작되었습니다. 유지보수 이벤트는 노드 유지보수가 성공적으로 완료될 때까지 지속적으로 유지됩니다.

유지보수가 완료되었는지 확인

노드의 유지보수 상태를 쿼리하려면 gcloud beta compute sole-tenancy node-groups list-nodes 명령어 또는 nodeGroups.listNodes 메서드를 사용합니다. 자세한 내용은 유지보수 상태 확인을 참조하세요.

  • 유지보수 성공: 단독 테넌트 노드의 유지보수가 성공하면 유지보수 알림이 삭제됩니다. 노드 그룹 이름을 쿼리할 때 upcomingMaintenance 섹션은 더 이상 노드에 존재하지 않습니다. Cloud Logging에서 시스템 이벤트 로그를 볼 수 있습니다.
  • 유지보수 실패: 24시간 내에 유지보수가 완료되지 않으면 유지보수 이벤트는 노드의 유지보수가 성공적으로 완료될 때까지 진행 중으로 유지됩니다. 성공적으로 완료되면 유지보수 알림이 삭제됩니다.

지정된 날짜 및 시간에 단독 테넌시 노드에 대한 고급 유지보수 제어의 Google Cloud 내부 한도가 초과되면 선택한 날짜 및 시간에 유지보수 트리거 요청이 거부되는 경우가 있습니다. 이 경우에는 노드 유지보수를 위해 다른 날짜와 시간을 선택해야 합니다. 이 노드의 유지보수 상태진행 중 유지되며 유지보수가 성공적으로 완료될 때까지 유지됩니다.

예약된 유지보수 날짜 및 시간 변경

노드 유지보수를 트리거하거나 예약하는 데 사용하는 절차와 동일하게 단독 테넌시 노드의 예약된 유지보수 날짜 및 시간을 수정할 수 있습니다.