이 문서에서는 가상 머신(VM) 인스턴스에서 사용 설정된 성능 모니터링 단위(PMU) 유형을 변경하거나 VM에서 PMU를 사용 중지하는 방법을 설명합니다.
VM에서 PMU를 사용 설정하고 VM에서 성능 모니터링 소프트웨어를 실행한 후 다음 작업을 수행할 수 있습니다.
VM에서 사용 설정된 PMU 유형을 변경합니다. 이는 다양한 유형의 하위 수준 CPU 이벤트를 추적하려는 경우에 유용합니다.
VM에서 PMU를 사용 중지합니다. VM에서 PMU를 사용 중지하면 PMU의 성능 카운터에 더 이상 액세스할 필요가 없을 때 유용합니다.
시작하기 전에
-
아직 인증을 설정하지 않았다면 설정합니다.
인증은 Google Cloud 서비스 및 API에 액세스하기 위해 ID를 확인하는 프로세스입니다.
로컬 개발 환경에서 코드 또는 샘플을 실행하려면 다음과 같이 Compute Engine에 인증하면 됩니다.
Select the tab for how you plan to use the samples on this page:
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
-
VM 업데이트: VM에 대한
compute.instances.update
권한 VM에서 사용 설정된 PMU 유형을 확인하려면
performanceMonitoringUnit
필드의 값을 확인합니다.고급 PMU 유형을 사용 설정하려면
machineType
필드의 값을 확인하여 VM에서 vCPU가 96개 또는 192개 있는 C4 머신 유형을 사용하는지 확인합니다. 그렇지 않다면 VM의 머신 유형을 변경합니다.빈 YAML 파일을 만듭니다.
방금 만든 YAML 파일로 VM의 속성을 내보내려면
gcloud compute instances export
명령어를 사용합니다.gcloud compute instances export VM_NAME \ --destination=YAML_FILE \ --zone=ZONE
다음을 바꿉니다.
VM_NAME
: VM의 이름입니다.YAML_FILE
: 이전 단계에서 만든 YAML 파일의 경로입니다.ZONE
: VM이 있는 영역입니다.
YAML 구성 파일에서
performanceMonitoringUnit
필드를 찾아 값을 변경하여 다른 PMU 유형을 지정합니다.advancedMachineFeatures: performanceMonitoringUnit: PMU_TYPE
PMU_TYPE
를 다음 값 중 하나로 바꿉니다.아키텍처 PMU 유형:
ARCHITECTURAL
표준 PMU 유형:
STANDARD
고급 PMU 유형:
ENHANCED
VM을 업데이트하고 다시 시작하려면
--most-disruptive-allowed-action
플래그를RESTART
로 설정하고gcloud compute instances update-from-file
명령어를 사용합니다.gcloud compute instances update-from-file VM_NAME \ --most-disruptive-allowed-action=RESTART \ --source=YAML_FILE \ --zone=ZONE
다음을 바꿉니다.
VM_NAME
: VM의 이름입니다.YAML_FILE
: 이전 단계에서 수정한 구성 데이터가 포함된 YAML 파일의 경로입니다.ZONE
: VM이 있는 영역입니다.
빈 JSON 파일을 만듭니다.
기존 VM의 속성을 보려면
instances.get
메서드에GET
요청을 실행합니다.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
다음을 바꿉니다.
PROJECT_ID
: VM이 있는 프로젝트의 ID입니다.ZONE
: VM이 있는 영역입니다.VM_NAME
: 기존 VM의 이름입니다.
이전 단계에서 만든 빈 JSON 파일에서 다음을 수행합니다.
GET
요청 출력의 VM 속성을 입력합니다.performanceMonitoringUnit
필드를 찾아 값을 변경하여 다른 PMU 유형을 지정합니다."advancedMachineFeatures": { "performanceMonitoringUnit": "PMU_TYPE" }
PMU_TYPE
을 다음 값 중 하나로 바꿉니다.아키텍처 PMU 유형:
ARCHITECTURAL
표준 PMU 유형:
STANDARD
고급 PMU 유형:
ENHANCED
VM을 업데이트하고 다시 시작하려면
instances.update
메서드에 대해PUT
요청을 수행합니다. 요청에서 다음을 수행합니다.요청 URL에
RESTART
로 설정된most_disruptive_allowed_action
쿼리 파라미터를 포함합니다.요청 본문에는 이전 단계에서 만들고 업데이트한 JSON 파일의 VM 속성을 사용합니다.
PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME?most_disruptive_allowed_action=RESTART { "advancedMachineFeatures": { "performanceMonitoringUnit": "PMU_TYPE" }, ... }
빈 YAML 파일을 만듭니다.
방금 만든 YAML 파일로 VM의 속성을 내보내려면
gcloud compute instances export
명령어를 사용합니다.gcloud compute instances export VM_NAME \ --destination=YAML_FILE \ --zone=ZONE
다음을 바꿉니다.
VM_NAME
: VM의 이름입니다.YAML_FILE
: 이전 단계에서 만든 YAML 파일의 경로입니다.ZONE
: VM이 있는 영역입니다.
YAML 구성 파일에서
performanceMonitoringUnit
필드를 찾아 값을NONE
으로 설정합니다.advancedMachineFeatures: performanceMonitoringUnit: NONE
VM을 업데이트하고 다시 시작하려면
--most-disruptive-allowed-action
플래그를RESTART
로 설정하고gcloud compute instances update-from-file
명령어를 사용합니다.gcloud compute instances update-from-file VM_NAME \ --most-disruptive-allowed-action=RESTART \ --source=YAML_FILE \ --zone=ZONE
다음을 바꿉니다.
VM_NAME
: VM의 이름입니다.YAML_FILE
: 이전 단계에서 수정한 구성 데이터가 포함된 YAML 파일의 경로입니다.ZONE
: VM이 있는 영역입니다.
빈 JSON 파일을 만듭니다.
기존 VM의 속성을 보려면
instances.get
메서드에GET
요청을 실행합니다.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
다음을 바꿉니다.
PROJECT_ID
: VM이 있는 프로젝트의 ID입니다.ZONE
: VM이 있는 영역입니다.VM_NAME
: 기존 VM의 이름입니다.
이전 단계에서 만든 빈 JSON 파일에서 다음을 수행합니다.
GET
요청 출력의 VM 속성을 입력합니다.performanceMonitoringUnit
필드를 찾아 값을NONE
으로 변경합니다."advancedMachineFeatures": { "performanceMonitoringUnit": "NONE" }
VM을 업데이트하고 다시 시작하려면
instances.update
메서드에 대해PUT
요청을 수행합니다. 요청에서 다음을 수행합니다.요청 URL에
RESTART
로 설정된most_disruptive_allowed_action
쿼리 파라미터를 포함합니다.요청 본문에는 이전 단계에서 만들고 업데이트한 JSON 파일의 VM 속성을 사용합니다.
PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME?most_disruptive_allowed_action=RESTART { "advancedMachineFeatures": { "performanceMonitoringUnit": "PMU_TYPE" }, ... }
- 코어당 스레드 수 설정 방법 알아보기
REST
로컬 개발 환경에서 이 페이지의 REST API 샘플을 사용하려면 gcloud CLI에 제공하는 사용자 인증 정보를 사용합니다.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
자세한 내용은 Google Cloud 인증 문서의 REST 사용 인증을 참조하세요.
필요한 역할
VM에서 사용 설정된 PMU 유형을 변경하거나 사용 중지하는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 Compute 인스턴스 관리자(v1)(
roles/compute.instanceAdmin.v1
) IAM 역할을 부여해 달라고 요청하세요. 역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.이 사전 정의된 역할에는 VM에서 사용 설정된 PMU 유형을 변경하거나 사용 중지하는 데 필요한 권한이 포함되어 있습니다. 필요한 정확한 권한을 보려면 필수 권한 섹션을 펼치세요.
필수 권한
VM에서 사용 설정된 PMU 유형을 변경하거나 사용 중지하려면 다음 권한이 필요합니다.
커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.
VM에서 PMU 유형 변경
기존 VM에서 사용 설정된 PMU 유형을 변경하기 전에 Google Cloud CLI 또는 REST를 사용하여 VM 세부정보를 확인합니다. 명령어 또는 API 요청의 출력에서 다음을 확인합니다.
VM에서 사용 설정된 PMU 유형을 변경하기 위해 VM을 중지할 필요는 없습니다. 그러나 변경사항을 적용하려면 이 섹션에 설명된 대로 VM을 다시 시작해야 합니다.
기존 VM에서 사용 설정된 PMU 유형을 변경하려면 다음 옵션 중 하나를 선택합니다.
gcloud
REST
VM 속성 업데이트에 대한 자세한 내용은 VM 속성 업데이트를 참조하세요.
VM에서 PMU 사용 중지
PMU를 사용 중지하기 위해 VM을 중지할 필요는 없습니다. 그러나 변경사항을 적용하려면 이 섹션에 설명된 대로 VM을 다시 시작해야 합니다.
기존 VM에서 PMU를 사용 중지하려면 다음 옵션 중 하나를 선택합니다.
gcloud
REST
VM 속성 업데이트에 대한 자세한 내용은 VM 속성 업데이트를 참조하세요.
다음 단계
달리 명시되지 않는 한 이 페이지의 콘텐츠에는 Creative Commons Attribution 4.0 라이선스에 따라 라이선스가 부여되며, 코드 샘플에는 Apache 2.0 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 Google Developers 사이트 정책을 참조하세요. 자바는 Oracle 및/또는 Oracle 계열사의 등록 상표입니다.
최종 업데이트: 2024-11-29(UTC)
-