권장사항
추천자
recommender는 Google Cloud 제품 및 리소스에 대한 최적화 권장사항을 제공하는 Google Cloud의 서비스입니다.
각 추천자를 통해 다음 클라이언트 중 하나 이상을 사용하여 권장사항 및 통계를 보고 관리할 수 있습니다.
- 추천 허브
- 컨텍스트에서 Google Cloud 콘솔의 서비스의 사용자 인터페이스(UI) 사용
- REST API 또는 Google Cloud CLI
추천자 및 지원되는 클라이언트에 대한 자세한 내용은 추천자를 참조하세요.
각 추천자에는 서비스를 식별하는 고유한 추천자 ID가 있습니다. 추천자 gcloud
명령어 또는 REST 또는 RPC API를 사용하여 권장사항과 상호작용할 때 추천자 ID를 사용합니다.
자세한 내용은 추천자를 참조하세요.
권장사항
권장사항은 Cloud 리소스 사용을 최적화하기 위한 머신 생성 제안입니다. 권장사항에 필요한 조치를 취하는 데 필요한 단계가 포함됩니다. 추천자는 머신러닝 또는 휴리스틱을 사용하여 리소스 사용에 따라 권장사항을 제공합니다. 추천자는 Recommendation
항목을 사용하여 권장사항을 저장합니다.
권장사항에는 다음과 같은 핵심 속성이 있습니다.
이름
권장사항 이름은 Recommendation
항목의 name
필드에 저장됩니다. 이 이름은 다음 형식의 추천 이름입니다.
projects/TARGET_PROJECT_ID/locations/LOCATION/recommenders/RECOMMENDER_ID/recommendations/RECOMMENDATION_ID
각 항목의 의미는 다음과 같습니다.
- TARGET_PROJECT_ID는 권장사항이 추천된 프로젝트의 ID입니다.
- LOCATION는 권장사항과 관련된 리소스가 있는 Google Cloud 위치입니다(예:
global
또는us-central1-a
). - RECOMMENDER_ID는 정규화된 추천자 ID입니다(예:
google.compute.instance.MachineTypeRecommender
). - RECOMMENDATION_ID는 추천의 고유 ID입니다.
설명
권장사항 설명은 Recommendation
항목의 description
필드에 저장됩니다. 이 기능은 영어로만 지원됩니다. 사람이 읽을 수 있는 권장사항을 설명하는 텍스트입니다. Google Cloud Console에서 추가 권장사항 세부정보 보기를 클릭하면 설명이 표시됩니다.
추천자 하위유형
추천자에는 특정 종류의 권장사항에 대한 하위유형이 있을 수 있습니다. 예를 들어 ID 및 액세스 관리 역할 추천자에는 REPLACE_ROLE
및 REMOVE_ROLE
하위유형이 있습니다. 새로운 하위유형은 시간이 지남에 따라 기존 추천자에게 도입될 수 있습니다. 이 개요는 사용 가능한 모든 추천자의 목록을 제공합니다. 사용 가능한 권장사항 하위유형에 대한 자세한 내용은 추천자 문서를 참조하세요.
추천자 영향
영향은 권장 작업을 수행함으로써 얻는 이점에 대한 수치화입니다. 각 권장사항에는 권장사항을 적용한 결과로 발생할 수 있는 결과를 나타내는 다음과 같은 영향이 있을 수 있습니다.
주요 영향은 필수 항목이며
Recommendation
항목의primaryImpact
필드에 저장됩니다.보조 영향은 선택사항이며
additionalImpact
필드에 저장됩니다.
기본 및 보조 영향의 유형은 다음과 같습니다.
COST
: 특정 권장사항을 적용할 경우 절감 또는 발생되는 예상 금액입니다. 자세한 내용은 CostProjection 아래의cost
필드를 참조하세요.PERFORMANCE
: 예상되는 성능의 증가 또는 감소입니다. 일부 성능 권장사항은 추가 비용이 발생할 수 있습니다(예: 사용량이 많은 VM에서 CPU 또는 메모리 할당을 늘리는 것이 권장사항인 경우).SECURITY
: 예상되는 보안 상태의 개선사항입니다. 자세한 내용은 SecurityProjection의details
필드를 참조하세요.MANAGEABILITY
: 수작업으로 인해 예상되는 감소입니다.SUSTAINABILITY
: 예상되는 탄소 배출량 감소입니다. 자세한 내용은 SustainabilityProjection 및 탄소 발자국 보고 방법의carbon_footprint_kg_co2
필드를 참조하세요.
작업
Operation
은 추천 권장사항에 있는 원자적 단계 중 하나로 실행되어야 하는 개별 작업입니다. 작업은 다음과 같은 변경사항을 나타낼 수 있습니다.
- Google Cloud 리소스에서 JSON 객체 필드를 추가, 삭제 또는 교체합니다.
- Google Cloud 리소스에서 JSON 배열 필드를 추가, 삭제 또는 교체합니다. JSON 배열 요소는 경로에 필터를 정의하여 식별합니다.
- 새 Google Cloud 리소스를 추가합니다.
- Google Cloud 리소스를 삭제합니다.
- 리소스의 원래 상태를 나타내는 작업을 테스트합니다. 권장사항을 적용하기 전에 테스트 작업을 사용하여 리소스의 현재 상태를 확인할 수도 있습니다.
- Google Cloud 리소스 및 필드를 복사하여 이동합니다.
각 Operation
은 패치에 대한 JSON 경로(RFC 6901) 형식을 기반으로 합니다. 이 RFC는 Google Cloud에서 흔히 볼 수 있는 복잡한 시나리오를 비롯하여 리소스 변경사항을 반영할 수 있는 더 일관적인 방법을 제공하기 때문에 선택되었습니다. 예를 들어 IAM 권장사항은 주 구성원의 역할 결합을 다른 역할로 이동하는 것을 반영하는 중첩된 배열을 포함합니다.
각 리소스에 대해 다음과 같은 방식으로 변경 목록(차이점 기반 보기)을 생성할 수 있습니다.
- 원래 상태: 테스트 작업은 필드의 원래 값을 나타내며 차이점 보기의 왼쪽을 나타냅니다.
- 권장 상태: 비테스트 작업은 필드별로 권장되는 변경사항을 나타내며 차이점 보기의 오른쪽을 나타냅니다.
작업 그룹
작업 그룹은 권장사항을 적용할 때 특정 순서로 수행해야 하는 하나 이상의 작업 집합입니다. 권장사항은 하나 이상의 작업 그룹을 포함할 수 있습니다. 작업 그룹은 Recommendation
항목의 operationGroups
필드에 저장됩니다.
예를 들어 Compute Engine 인스턴스 그룹의 VM 인스턴스 머신 유형 변경을 제안하는 권장사항에는 인스턴스 템플릿의 머신 유형을 변경하는 작업 그룹과 특정 인스턴스 그룹에 변경을 적용하는 작업 그룹의 두 가지가 있습니다.
두 번째 작업을 시작하기 전에 첫 번째 작업 집합을 완료해야 하므로 이러한 작업 그룹은 권장사항에서 두 개의 개별 인스턴스 그룹으로 정의됩니다.
작업 그룹에는 테스트 작업이 포함될 수 있습니다. 테스트 작업은 권장사항이 여전히 유효한지 확인합니다. VM 인스턴스 머신 유형 변경을 제안하는 권장사항에는 현재 머신 유형이 권장 시점과 동일한지 확인하는 테스트 작업이 있습니다.
상태
권장사항은 제안 후 여러 상태 전환을 거치게 됩니다. 권장사항 상태는 다음과 같습니다.
ACTIVE
는 권장사항이 이루어졌으나 그에 대한 응답으로 수행된 작업이 없음을 의미합니다. 권장사항은 신청하면 적용할 수 있습니다. 리소스가 변경되면 활성 권장사항을 업데이트할 수 있습니다.CLAIMED
는 사용자 또는 다른 프로세스가 권장사항을 사용했으며 여기에 대한 응답이 진행 중이라는 의미입니다. 권장사항을 사용하면 리소스가 변경될 때 추천자가 권장사항을 업데이트하지 않습니다.SUCCEEDED
는 사용자 또는 다른 프로세스가 연결된 리소스에 권장사항을 적용했음을 의미합니다.FAILED
는 권장사항을 적용하려는 시도가 실패했음을 의미합니다.DISMISSED
는 사용자 또는 또 다른 프로세스가 권장사항을 관련 리소스에 적용하지 않고 이를 종료했음을 의미합니다. 이 상태는 권장사항이 권장사항 목록에 나타나지 않도록 하며, 일반적으로 다양한 이유로 이를 무효화한 관리자가 적용합니다. 또한 권장사항이CLAIMED
상태로 이동하지 않도록 합니다.
권장사항 상태에 대한 정보는 Recommendation
항목의 stateInfo
필드에 저장됩니다. 여기에는 권장사항의 상태 자체와 추가 추천자별 상태 메타데이터가 포함됩니다.
권장사항이 CLAIMED
, SUCCEEDED
또는 FAILED
상태로 변경되면 권장사항의 콘텐츠가 업데이트되지 않으며 권장 기간이 상태 변경 이후 90일 동안 유효합니다.
etag
etag는 권장사항의 현재 상태를 식별하는 고유한 지문입니다. 권장사항이 변경될 때마다 새 etag 값이 할당됩니다. 이 값은 Recommender
항목의 etag
필드에 저장됩니다.
gcloud
명령어 또는 API 호출을 사용하여 추천자에서 권장사항을 검색한 후 권장사항 ID와 etag를 사용하여 후속 작업에서 참조합니다. 이렇게 하면 마지막으로 검색한 후 권장사항이 변경되지 않은 경우에만 작업이 수행됩니다.
우선순위
권장사항의 우선순위는 먼저 처리해야 하는 작업을 나타내는 데 도움이 됩니다.
이 필드에는 P4
가 기본 우선순위로 설정된 P1
, P2
, P3
, P4
값이 있습니다.
각 recommender는 자체적인 우선순위 전략을 정의할 수 있습니다.
상태 메타데이터
권장사항을 사용하거나 성공 또는 실패로 표시할 때 작업에 대한 추가 메타데이터를 상태 메타데이터와 함께 포함할 수 있습니다.
메타데이터는 key:value
쌍으로 지정됩니다. 예를 들면 다음과 같습니다.
{
"stateMetadata": {
"priority" : "high",
"tracking_number": "12345" }
}
stateMetadata
필드를 업데이트하면 기존 상태 메타데이터를 덮어씁니다.
최종 새로고침 시간
최종 새로고침 시간은 생성 프로세스에서 마지막으로 새로고침한 시간을 나타냅니다. 권장사항의 콘텐츠는 최종 새로고침 시 리소스의 상태를 반영합니다.
예
다음 예시에서는 Compute Engine의 VM 인스턴스에 대한 크기 권장사항을 보여줍니다.
{
"content": {
"operationGroups": [
{
"operations": [
{
"action": "test",
"path": "/machineType",
"resource": "//compute.googleapis.com/projects/example-project/zones/us-central1-a/instances/instance-rightsizing-2",
"resourceType": "compute.googleapis.com/Instance",
"valueMatcher": {
"matchesPattern": ".*zones/us-central1-a/machineTypes/n1-standard-4"
}
},
{
"action": "replace",
"path": "/machineType",
"resource": "//compute.googleapis.com/projects/example-project/zones/us-central1-a/instances/instance-rightsizing-2",
"resourceType": "compute.googleapis.com/Instance",
"value": "zones/us-central1-a/machineTypes/custom-2-5120"
}
]
}
]
},
"description": "Save cost by changing machine type from n1-standard-4 to custom-2-5120.",
"etag": "\"923daeebe926c12f\"",
"recommenderSubtype": "CHANGE_MACHINE_TYPE",
"lastRefreshTime": "2019-06-13T06:44:58Z",
"name": "projects/32428390823/locations/us-central1-a/recommenders/google.compute.instance.MachineTypeRecommender/recommendations/a523ff7e-ed03-4143-a3a5-5b396b99cba9",
"primaryImpact": {
"category": "COST",
"costProjection": {
"cost": {
"currencyCode": "USD",
"units": "-73"
},
"duration": "2592000s"
}
},
"stateInfo": {
"state": "ACTIVE"
}
}
권장사항의 더 많은 예시는 추천자의 개별 추천자 문서를 참조하세요.
통계 참조
관련 통계를 참조합니다. 관련 통계가 있을 경우 참조에 이와 연결된 권장사항이 표시됩니다.
구성
추천자 구성을 통해 다음을 수행할 수 있습니다.
- 통계 및 권장사항이 생성되는 방법을 맞춤설정합니다. 이 작업은 이러한 통계 및 권장사항을 생성하기 위해 사용되는 일부 구성 매개변수를 수정하여 수행됩니다.
- 각 추천자 구성은 각 매개변수에 대한 일부 기본값으로 시작합니다. 각 매개변수에는 구성을 맞춤설정하기 위해 사용할 수 있는 다양한 값들이 포함됩니다.
- 활성 구성은 마지막으로 수정한 구성입니다. 구성을 변경할 때마다 구성이 적용되려면 최대 48시간까지 걸립니다.
추천자 구성 예시는 워크로드, 애플리케이션, 인프라 요구에 더 적합하게 권장사항을 만들도록 기본 CPU 임곗값 또는 관측 기간을 설정하는 것입니다.
구성 API를 사용하면 추천자 또는 통계 유형에 따라 구성을 검색할 수 있습니다. 단일 프로젝트에 대해 구성 매개변수를 업데이트할 수 있습니다. 각 추천자 구성 또는 통계 유형에는 구성 매개변수를 보고 수정할 수 있는 특정 권한이 필요합니다.
다음은 유휴 VM 추천자에 대한 구성 매개변수가 포함된 예시 응답입니다.
{
"name": "projects/project-number/locations/global/recommenders/google.iam.policy.Recommender/config",
"recommenderGenerationConfig": {
"params": {
"minimum_observation_period": "P90D",
}
},
"etag": "\"2f3c9b65cda6a4ba\"",
"updateTime": "2020-11-03T04:41:15.330351Z"
}