유휴 상태 예약 추천 구성


이 페이지에서는 유휴 상태 온디맨드 예약 추천 구성을 보고 수정하는 방법을 설명합니다. 수신되는 추천 수를 늘리거나, 사용하려는 예약을 삭제하기 위해 더 적은 수의 추천이 표시되도록 구성을 수정할 수 있습니다.

시작하기 전에

  • 아직 인증을 설정하지 않았다면 설정합니다. 인증은 Google Cloud 서비스 및 API에 액세스하기 위해 ID를 확인하는 프로세스입니다. 로컬 개발 환경에서 코드 또는 샘플을 실행하려면 다음과 같이 Compute Engine에 인증하면 됩니다.

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

    gcloud

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

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

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

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

        gcloud init

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

추천 구성

유휴 상태 예약 추천을 구성하려면 다음을 수행합니다.

  1. 현재 구성을 가져와서 구성의 JSON 파일을 가져옵니다.
  2. 구성 파일을 JSON 형식으로 수정합니다.
  3. 새 구성 파일을 업로드하여 변경사항을 적용합니다.

현재 구성 가져오기

Google Cloud CLI 또는 REST를 사용하여 프로젝트의 유휴 상태 예약 추천에 대한 현재 구성을 가져올 수 있습니다.

gcloud

현재 구성 파라미터를 가져오려면 gcloud recommender recommender-config describe 명령어를 사용하고 google.compute.IdleResourceRecommender를 추천자 ID로 사용합니다.

gcloud recommender recommender-config describe google.compute.IdleResourceRecommender \
  --location=ZONE

ZONE을 현재 구성을 가져오려는 영역으로 바꿉니다.

예를 들면 다음과 같습니다.

gcloud recommender recommender-config describe google.compute.IdleResourceRecommender \
  --location=us-central1-c

이 명령어는 수정 가능한 하위 필드 params.observation_period를 포함하여 추천자 구성을 반환합니다.

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "604800s"
    }
  },
  "etag": "\"2f3c9b65cda6a4ba\"",
  "updateTime": "2024-06-03T04:41:15.330351Z"
}

REST

현재 구성을 가져오려면 recommenders.getConfig 메서드를 사용하고 google.compute.IdleResourceRecommender를 추천자 ID로 지정합니다.

GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.IdleResourceRecommender/config

ZONE을 프로젝트가 포함된 영역으로 바꿉니다.

명령줄에서 다음 명령어를 실행하여 프로젝트의 추천자 구성을 가져옵니다.

PROJECT_ID=PROJECT_ID
ZONE=ZONE
curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: ${PROJECT_ID}" \
https://recommender.googleapis.com/v1/projects/$PROJECT_ID/locations/$ZONE/recommenders/google.compute.IdleResourceRecommender/config

이 명령어는 수정할 수 있는 하위 필드(params.observation_period)를 포함하여 추천자 구성을 반환합니다.

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "604800s"
    }
  },
  "etag": "\"2f3c9b65cda6a4ba\"",
  "updateTime": "2024-06-03T04:41:15.330351Z"
}

프로젝트 구성 업데이트

유휴 상태 예약 추천의 구성을 업데이트하려면 observation_period의 값을 수정하고 프로젝트의 새 구성을 업로드합니다.

관찰 기간은 초 수와 s 문자가 포함된 문자열을 사용하여 1~14일 사이의 값으로 설정할 수 있습니다.

  • 관찰 기간이 7일이면 "604800s"를 사용합니다.
  • 관찰 기간이 30일이면 "2592000s"를 사용합니다.

새 구성을 업로드한 후 적용되는 데 약 48시간이 걸립니다. 그 때까지는 생성된 모든 추천이 이전 구성을 사용합니다.

gcloud

구성 파라미터를 업데이트하려면 gcloud recommender recommender-config update 명령어를 사용하고 google.compute.IdleResourceRecommender를 추천자 ID로 사용합니다.

gcloud recommender recommender-config update google.compute.IdleResourceRecommender\
  --location=ZONE \
  --config-file=CONFIG_FILE_PATH \
  --etag=ETAG

다음을 바꿉니다.

  • ZONE: 현재 구성을 가져오려는 영역입니다.
  • CONFIG_FILE_PATH: 현재 구성을 포함하는 JSON 파일의 경로입니다.
  • ETAG: 현재 구성의 etag 값

구성 파일에서 업데이트된 구성 파라미터가 있는 recommenderGenerationConfig 객체만 지정합니다. 예를 들어 관찰 기간을 21일로 지정하려면 다음 구성 파일을 사용합니다.

{
  "params": {
    "observation_period": "1814400s"
  }
}

명령어가 성공하면 다음과 비슷한 응답 본문이 반환되고 바로 전에 수정한 파라미터가 포함된 새 구성이 표시됩니다.

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "1814400s"
    }
  },
  "etag": "\"1245f9435cd01ea8\"",
  "updateTime": "2024-06-03T05:00:05Z"
}

REST

구성을 업데이트하려면 recommenders.updateConfig 메서드에 PATCH 요청을 수행하고 google.compute.IdleResourceRecommender를 추천자 ID로 지정합니다.

PATCH https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.IdleResourceRecommender/config

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "1814400s"
    }
  },
  "etag": "\"2f3c9b65cda6a4ba\""
}

다음을 바꿉니다.

  • PROJECT_ID: 추천자 구성을 수정하려는 프로젝트의 ID입니다.
  • ZONE: 프로젝트가 포함된 영역입니다.

요청 본문을 파일에 저장합니다(예: config.json). 그런 후 다음과 비슷한 명령어를 사용하여 프로젝트의 추천자 구성을 업데이트할 때 이 파일을 참조할 수 있습니다.

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-H "x-goog-user-project: ${PROJECT_ID}" \
-d @config.json \
https://recommender.googleapis.com/v1/projects/$PROJECT_ID/locations/$ZONE/recommenders/google.compute.IdleResourceRecommender/config

POST 명령어는 다음과 비슷한 응답 본문을 반환하고, 바로 전에 수정한 파라미터를 포함하는 새 구성을 보여줍니다.

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "1814400s"
    }
  },
  "etag": "\"1245f9435cd01ea8\"",
  "updateTime": "2024-06-03T05:00:05Z"
}

다음 단계