이 문서에서는 Oracle Database 워크로드를 실행하는 Compute Engine 인스턴스에 Compute 워크로드용 에이전트를 설치, 구성, 확인하는 방법을 보여줍니다.
에이전트는 Oracle 데이터베이스 성능 뷰 (예: V$DATABASE, V$INSTANCE, V$DATAGUARD_STATS) 및 데이터 사전 뷰 (예: DBA_DATA_FILES, DBA_FREE_SPACE)를 쿼리하여 다양한 Oracle 측정항목을 수집합니다. 이러한 측정항목은 시각화하고 분석할 수 있는 Cloud Monitoring으로 전송됩니다. 지원되는 측정항목을 참고하세요.
시작하기 전에
Oracle Database 워크로드를 모니터링하기 위해 컴퓨팅 워크로드용 에이전트를 설치하기 전에 다음 기본 요건을 충족해야 합니다.
Compute Engine 인스턴스가 없는 경우 인스턴스를 만듭니다.
cloud-platform에 대한 액세스 범위를 구성합니다.공용 네트워크 액세스 또는 비공개 네트워크 액세스를 통해 Google Cloud API 엔드포인트에 대한 연결을 사용 설정합니다.
측정항목 수집을 사용 설정하려면 Secret Manager에서 보안 비밀을 만들어 이 가이드의 뒷부분에서 만들 데이터베이스 사용자의 데이터베이스 비밀번호를 저장합니다.
이 가이드의 예시에서는
wlmagent-password이라고 가정합니다.
시스템 요구사항 검토
다음 표에는 사용할 수 있는 Oracle 버전과 지원되는 운영체제 버전이 나와 있습니다.
| 운영체제 | Oracle 버전 | Oracle 버전 |
|---|---|---|
|
|
|
서비스 계정에 IAM 역할 부여
컴퓨팅 워크로드용 에이전트는 인증을 위해 컴퓨팅 인스턴스에 연결된 서비스 계정을 사용하고 Google Cloud 리소스에 액세스합니다.
보안을 강화하려면 Compute Engine 기본 서비스 계정을 사용하는 대신 단일 용도 서비스 계정을 사용하는 것이 좋습니다.
서비스 계정에 Compute 워크로드용 에이전트가Google Cloud 로 인증하고 Google Cloud 리소스에 액세스할 수 있도록 하는 데 필요한 권한이 있는지 확인하려면 관리자에게 서비스 계정에 프로젝트에 대한 다음 IAM 역할을 부여해 달라고 요청하세요.
-
Compute 뷰어 (
roles/compute.viewer): Compute 인스턴스에서 측정항목을 수집합니다. -
워크로드 관리자 통계 작성자 (
roles/workloadmanager.insightWriter): 워크로드 관리자 데이터 웨어하우스에 데이터를 씁니다. -
(권장) 로그 작성자 (
roles/logging.logWriter): 에이전트 로그를 Cloud Logging으로 전송합니다. -
(선택사항) Secret Manager 보안 비밀 접근자 (
roles/secretmanager.secretAccessor): Secret Manager를 사용하여 Oracle 인스턴스에 연결할 비밀번호를 저장하는 경우입니다.
역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
관리자는 커스텀 역할이나 다른 사전 정의된 역할을 통해 서비스 계정에 필요한 권한을 부여할 수도 있습니다.
Cloud API 액세스 사용 설정
Compute Engine은 모든 Cloud API에 대한 모든 액세스 범위를 허용하도록 인스턴스를 구성하고, 인스턴스 서비스 계정의 IAM 권한만 사용하여Google Cloud 리소스에 대한 액세스를 제어할 것을 권장합니다. 자세한 내용은 사용자 관리형 서비스 계정을 사용하는 VM 만들기를 참조하세요.
Cloud API에 대한 액세스를 제한하는 경우 컴퓨팅 워크로드용 에이전트에는 호스트 컴퓨팅 인스턴스에 최소한 다음과 같은 Cloud API 액세스 범위가 필요합니다.
https://www.googleapis.com/auth/cloud-platform
자세한 내용은 범위 권장사항을 참고하세요.
외부 IP 주소가 없는 컴퓨팅 인스턴스에서 Oracle 애플리케이션을 실행하는 경우 컴퓨팅 워크로드용 에이전트가 Google API 및 서비스에 액세스할 수 있도록 인스턴스의 서브넷에서 비공개 Google 액세스를 사용 설정해야 합니다. 비공개 Google 액세스를 사용 설정하는 방법은 비공개 Google 액세스 구성을 참고하세요.
패키지 관리자를 사용하여 에이전트 설치 및 구성
이 섹션에서는 패키지 관리자를 사용하여 컴퓨팅 인스턴스에 Compute 워크로드용 에이전트를 설치하고 Oracle 인스턴스에 연결하도록 구성하는 방법을 보여줍니다.
컴퓨팅 워크로드용 에이전트를 설치하려면 다음 단계를 완료하세요.
저장소 구성 파일을 만듭니다.
sudo tee /etc/yum.repos.d/google-cloud-workload-agent.repo << EOM [google-cloud-workload-agent] name=Google Cloud Workload Agent baseurl=https://packages.cloud.google.com/yum/repos/google-cloud-workload-agent-\$basearch enabled=1 gpgcheck=0 repo_gpgcheck=1 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg EOM
패키지 관리자의 메타데이터를 업데이트합니다.
sudo yum makecache
google-cloud-workload-agentrpm 패키지를 설치합니다.sudo yum install google-cloud-workload-agent
Oracle 워크로드용 에이전트를 설치한 후 에이전트 설치를 확인합니다.
VM 확장 프로그램 관리자를 사용하여 VM Fleet에 에이전트 설치 및 관리
VM Extension Manager 설정
VM 확장 프로그램 관리자를 설정하려면 다음 단계를 완료하세요.
- VM 확장 프로그램 관리자 문서에서 시작하기 전에 섹션을 검토합니다.
VM 확장 프로그램 관리자 정책을 만들고 관리하는 데 필요한 IAM 역할을 설정합니다. 자세한 내용은 다음을 참조하세요.
VM Fleet에 에이전트 설치
VM 확장 프로그램 관리자 정책을 사용하여 특정 영역 내 VM Fleet에 최신 버전의 Compute 워크로드용 에이전트를 설치하려면 다음 단계를 완료하세요.
콘솔
Google Cloud 콘솔에서 VM 확장 프로그램 정책 페이지로 이동합니다.
확장 프로그램 정책 만들기를 클릭합니다.
이름 필드에 정책 이름을 입력합니다.
선택사항: 설명 필드에 정책에 대한 설명을 입력합니다.
우선순위 필드에서 정책 간 충돌을 해결할 우선순위 번호를 지정합니다. 숫자가 낮을수록 우선순위가 높습니다. 기본값은
1000입니다.리전 및 영역 목록을 사용하여 이 정책을 적용할 영역을 선택합니다.
확장 프로그램 섹션에서 확장 프로그램 추가를 클릭한 후 다음을 실행합니다.
- 확장 프로그램 목록에서 Google Cloud의 컴퓨팅 워크로드용 확장 프로그램을 선택합니다.
버전 필드는 비워둡니다.
이렇게 하면 Compute 워크로드용 에이전트의 최신 버전을 설치하도록 정책이 지시됩니다.
구성 파일 콘텐츠 필드에 에이전트에 적용할 구성을 입력합니다.
Oracle 워크로드용 에이전트에서 지원하는 구성 매개변수에 대한 자세한 내용은 구성 매개변수를 참고하세요.
완료를 클릭합니다.
선택사항: 정책 출시를 필요한 VM으로 제한하려면 다음 단계를 따르세요.
- 라벨 추가를 클릭하고 필요한 VM을 식별하는 라벨을 포함합니다.
- 완료를 클릭합니다.
만들기를 클릭합니다.
gcloud
gcloud beta compute zone-vm-extension-policies create POLICY_NAME \ --zone=ZONE \ --extensions=google-cloud-workload-extension \ --config-from-file=google-cloud-workload-extension=CONFIG_FILE_PATH \ [--description="DESCRIPTION" \] [--inclusion-labels=KEY_1=VALUE_1 \] [--inclusion-labels=KEY_2=VALUE_2,KEY_3=VALUE_3 \] [--priority=PRIORITY]
다음을 바꿉니다.
POLICY_NAME: VM 확장 프로그램 정책의 이름입니다.지정된 이름의 정책이 영역에 이미 있으면 명령어가 실패합니다.
ZONE: 이 정책을 적용할 영역입니다.CONFIG_FILE_PATH: Compute Workloads용 에이전트가 Oracle 워크로드에 연결하기 위한 구성이 포함된 JSON 파일의 로컬 경로입니다.- 또는 구성을 인라인 문자열로 제공하려면
--config-from-file대신--config플래그를 사용하세요. 예를 들면--config=google-cloud-workload-extension="CONFIG"입니다. Google Cloud 에서는--config-from-file을 사용할 것을 권장합니다. --config-from-file또는--config중 하나를 사용할 수 있지만 동일한 명령어에서 둘 다 사용할 수는 없습니다.- Oracle 워크로드용 에이전트에서 지원하는 구성 매개변수에 대한 자세한 내용은 구성 매개변수를 참고하세요.
- 또는 구성을 인라인 문자열로 제공하려면
DESCRIPTION: 정책에 대한 설명입니다(선택사항).KEY_1=VALUE_1: 정책이 VM을 타겟팅하는 데 사용하는 라벨을 정의하는 쉼표로 구분된 키-값 쌍 목록입니다.- VM이 정책의 타겟이 되려면 VM에 지정된 라벨이 모두 있어야 합니다.
--inclusion-labels를 여러 번 지정하면 정책은 제공된 선택기 중 하나라도 일치하는 VM을 타겟팅합니다 (논리OR). 이 플래그를 생략하면 정책은 지정된 영역의 모든 VM을 타겟팅합니다.
PRIORITY: 정책의 우선순위를 정의하는0~65535범위의 정수입니다. 숫자가 낮을수록 우선순위가 높습니다. 기본값은1000입니다.
예:
다음 명령어는 test-project라는Google Cloud 프로젝트에 test-agent-policy라는 정책을 만듭니다. 이 정책은 us-centrail-f 영역에 배포된 모든 VM에 Compute 워크로드용 에이전트의 최신 버전을 설치합니다.
agent-config.json에 지정된 구성이 에이전트에 적용됩니다.
gcloud beta compute zone-vm-extension-policies create test-agent-policy \ --project=test-project \ --zone=us-central1-f \ --extensions=google-cloud-workload-extension \ --config-file-path=google-cloud-workload-extension="/usr/agent-config.json"
에이전트 설치 확인
에이전트가 예상대로 실행되는지 확인하려면 다음 단계를 완료하세요.
컴퓨팅 인스턴스와 SSH 연결을 설정합니다.
에이전트 패키지의 상태를 확인합니다.
systemctl status google-cloud-workload-agent에이전트 패키지가 예상대로 실행되면 출력에
active (running)가 포함됩니다. 예를 들면 다음과 같습니다.google-cloud-workload-agent.service - Google Cloud Agent for Compute Workloads Loaded: loaded (/usr/lib/systemd/system/google-cloud-workload-agent.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2025-07-30 18:59:12 UTC; 10s ago Main PID: 14412 (google_cloud_sq) Tasks: 7 Memory: 12.9M (max: 1.0G limit: 1.0G available: 1011.0M) CGroup: /system.slice/google-cloud-workload-agent.service └─ 14412 /usr/bin/google_cloud_sql_server_agent --action=run구성 매개변수
컴퓨팅 워크로드용 에이전트는 Oracle에 대해 다음 구성 매개변수를 지원합니다.
매개변수 설명 log_level
에이전트의 로깅 수준을 설정하려면 로그 수준을 추가합니다. 사용 가능한 로그 수준은 다음과 같습니다.String
DEBUGINFOWARNINGERROR
INFO입니다.log_to_cloudBoolean에이전트 로그를 Cloud Logging으로 리디렉션하려면
true를 지정합니다. 기본값은true입니다.oracle_configuration.enabledBoolean(선택사항) Oracle 서비스가 활성 상태인지 확인합니다.
true로 설정된 경우 또는 설정되지 않았고 워크로드가 있는 경우 검색 및 측정항목 수집을 구성할 수 있습니다.false로 설정하면 Oracle 서비스와 관련 기능이 사용 중지됩니다.다음 하위 매개변수는 oracle_configuration.enabled: true를 지정할 때만 적용됩니다.oracle_configuration.oracle_discovery.enabledBoolean(선택사항) Oracle Discovery가 활성 상태인지 여부를 결정합니다.
기본값은
true입니다.oracle_configuration.oracle_discovery.update_frequencyInt(선택사항) 컴퓨팅 워크로드용 에이전트가 검색 프로세스를 실행하는 빈도를 결정하는 샘플 간격(초)을 지정합니다. 기본값은 3,600초 (1시간)입니다.
값이 초를 나타내는 소문자 's'로 끝나야 합니다. 예를 들면
30s입니다.oracle_configuration.oracle_metrics.enabledBoolean(선택사항) 컴퓨팅 워크로드용 에이전트가 Oracle 모니터링 측정항목을 수집하도록 사용 설정하려면
true를 지정합니다. 기본값은false입니다.다음 하위 매개변수는
oracle_metrics.enabled: true를 지정할 때만 적용됩니다.oracle_configuration.oracle_metrics.collection_frequencyInt(선택사항) 컴퓨팅 워크로드용 에이전트가 Oracle 모니터링 측정항목을 수집하기 위해 Oracle 데이터베이스 인스턴스를 쿼리하는 빈도를 결정하는 샘플 간격(초)을 지정합니다. 기본값은 60초입니다.
값이 초를 나타내는 소문자 's'로 끝나야 합니다. 예를 들면
30s입니다.oracle_configuration.oracle_metrics.query_timeoutString(선택사항) Oracle 데이터베이스 인스턴스에 수행되는 각 쿼리의 제한 시간을 지정합니다. 기본값은 10초입니다.
값이 초를 나타내는 소문자 's'로 끝나야 합니다. 예를 들면
30s입니다.oracle_configuration.oracle_metrics.connection_parameters.usernameStringOracle 데이터베이스 인스턴스를 쿼리하는 데 사용되는 사용자 계정을 지정합니다.
이 사용자에게 Oracle 데이터베이스의 성능 뷰를 읽을 수 있는 필수 권한이 있는지 확인합니다.
oracle_configuration.oracle_metrics.connection_parameters.hostString데이터베이스 인스턴스를 호스팅하는 로컬 머신의 식별자를 지정합니다.
oracle_configuration.oracle_metrics.connection_parameters.portIntOracle Database 인스턴스가 쿼리를 허용하는 포트를 지정합니다.
oracle_configuration.oracle_metrics.connection_parameters.service_nameString에이전트가 모니터링할 Oracle 데이터베이스 인스턴스의 서비스 이름을 지정합니다.
oracle_configuration.oracle_metrics.connection_parameters.secret.project_idString데이터베이스에 쿼리를 실행하는 사용자의 비밀번호를 가져올 Secret Manager의 프로젝트 ID를 지정합니다.
oracle_configuration.oracle_metrics.connection_parameters.secret.secret_nameString사용자 계정의 비밀번호를 저장하는 Secret Manager의 보안 비밀 이름을 지정합니다.
Oracle 측정항목 수집 및 보기
Oracle 데이터베이스 워크로드의 측정항목 수집을 사용 설정할 수 있습니다. 지원되는 측정항목을 참고하세요.
측정항목 수집 사용 설정
컴퓨팅 워크로드용 에이전트를 사용하여 Oracle 측정항목 수집을 사용 설정하려면 다음 단계를 따르세요.
SSH를 사용하여 VM 인스턴스에 연결합니다.
Oracle OS 사용자로
oraenv도구를 실행하여 환경 변수를 설정합니다./etc/oratab파일에oracle사용자 및ORACLE_SID가 이미 정의되어 있다고 가정합니다.sudo su - oracle export PATH=$PATH:/usr/local/bin . oraenv sqlplus / as sysdba
SYSDBA또는SYSOPER사용자로 Oracle 데이터베이스에서 기본 요건에서 만든 보안 비밀과 일치하는 비밀번호로 모니터링용 사용자를 만듭니다.CREATE USER wlmagent IDENTIFIED BY password;
SYSDBA또는SYSOPER사용자로 성능 뷰를 쿼리할 모니터링 사용자에게 다음 권한을 부여합니다.SESSIONSELECT_CATALOG_ROLESYSDG
GRANT CREATE SESSION,SELECT_CATALOG_ROLE,SYSDG TO wlmagent;
sqlplus및oracle사용자를 종료합니다.루트 사용자로 원하는 편집기를 사용하여 에이전트의 구성 파일을 수정합니다.
sudo nano /etc/google-cloud-workload-agent/configuration.json
구성 파일에서
oracle_metrics섹션을 수정하여 다음 업데이트를 적용합니다.enabled매개변수를true로 설정합니다.service_name매개변수를 설정하여 에이전트가 모니터링할 Oracle 인스턴스의 서비스 이름을 지정합니다.- 에이전트가 데이터베이스에 연결할 Oracle 사용자 이름을 지정합니다.
- 상담사가 데이터베이스에 연결할 수 있도록
host및port매개변수를 설정합니다. - 에이전트가 사용자 이름의 비밀번호를 가져오도록
secret매개변수를 설정합니다.project_id: Secret Manager 데이터가 포함된 프로젝트의 ID입니다.secret_name: Secret Manager의 보안 비밀 이름입니다.
다음은 구성 파일의 예시입니다.
{ "log_level": "INFO", "common_discovery": {"collection_frequency": "3600s" }, "oracle_configuration": { "enabled": true, "oracle_metrics": { "enabled": true, "collection_frequency": "30s", "connection_parameters": [ { "host": "localhost", "port": 1521, "service_name": "orcl", "username": "wlmagent", "secret": { "project_id": "my-project", "secret_name": "wlmagent_password" } } ] } } }구성 파일을 저장합니다.
새 설정이 적용되도록 에이전트를 다시 시작합니다.
측정항목 보기
측정항목 탐색기를 사용하거나 커스텀 대시보드를 가져와 수집된 측정항목을 보고 Oracle 성능과 상태를 모니터링할 수 있습니다.
측정항목 탐색기에서 측정항목 보기
측정항목 탐색기에서 Oracle 측정항목을 보려면 다음을 수행하세요.
- Google Cloud 콘솔에서 Monitoring으로 이동합니다.
- 측정항목 탐색기를 클릭합니다.
- 리소스 유형 및 측정항목 찾기에서 다음을 실행합니다.
- 리소스 유형에서 VM 인스턴스를 선택합니다.
- 측정항목에서 보려는 Oracle 측정항목을 선택합니다.
필요에 따라 필터와 집계를 사용하여 선택한 Oracle 측정항목의 실시간 데이터와 이전 데이터를 볼 수 있습니다.
맞춤 대시보드 가져오기
에이전트가 수집한 Oracle 측정항목을 보려면 커스텀 대시보드 만들기 및 관리의 안내에 따라 커스텀 Cloud Monitoring 대시보드를 만드세요.
예시 대시보드
oracle-status-overview.json와 가져오는 방법을 설명하는 안내를 제공합니다.oracle-status-overview.json대시보드에는 다음 Oracle 측정항목 차트가 표시됩니다.- 데이터베이스 시간 분류
- 데이터베이스 메모리 사용량
- 대기 클래스별 평균 활성 세션
- 디스크 I/O
- CPU 사용률
- 네트워크 트래픽
oracle-status-overview.json대시보드를 가져오려면 다음 단계를 따르세요.gcloud CLI가 설치되어 있고 최신 상태인지 확인합니다. 자세한 내용은 gcloud CLI 설치를 참고하세요.
컴퓨팅 워크로드용 에이전트 GitHub 저장소에서
oracle-status-overview.json대시보드를 다운로드합니다.$ curl -H "Accept: application/vnd.github.v3.raw" -o oracle-status-overview.json https://api.github.com/repos/GoogleCloudPlatform/workloadagent/contents/observability/dashboards/oracle-status-overview.json
다음 명령어를 실행하여 대시보드를 가져옵니다.
gcloud alpha monitoring dashboards create --config-from-file=oracle-status-overview.json
명령어를 실행하면 Cloud Monitoring에 커스텀 대시보드가 생성됩니다. 대시보드를 보는 방법을 알아보려면 대시보드 찾기 및 보기를 참고하세요.
지원되는 측정항목
컴퓨팅 워크로드용 에이전트에서 수집한 모든 Oracle 측정항목은
workload.googleapis.com/oracle경로에서 확인할 수 있습니다.다음은 지원되는 Oracle 측정항목과 해당 Cloud Monitoring 경로 목록입니다.
-
사용 중인 프로세스(PGA) 메모리(바이트)입니다.
process/pga_memory/total_used_size할당된 프로세스(PGA) 메모리(바이트)
process/pga_memory/total_allocated_size
-
공유 메모리(SGA) 항목의 크기(바이트)
process/sga_memory/size
-
등록된 대기 클래스의 총 대기 수
sys_wait/count이 대기 클래스에서 소비된 집계 시간(초)
sys_wait/time이 대기 클래스의 총 포그라운드 대기 수
sys_wait/foreground/count이 대기 클래스의 집계된 포그라운드 대기 시간(초)
sys_wait/foreground/time
-
데이터베이스 사용자 수준 호출을 실행하는 데 걸린 시간(초)
sys_time/db_time데이터베이스 사용자 수준 호출에 사용된 CPU 시간(초)
sys_time/db_cpuSQL 문이 실행된 경과 시간
sys_time/sql_execute_elapsed_timeSQL 문을 파싱하는 데 걸린 시간
sys_time/parse_time_elapsedPL/SQL 인터프리터를 실행하는 데 소요된 시간
sys_time/pl_sql_execution_elapsed_time데이터베이스 백그라운드 프로세스에서 사용한 경과 시간(초)
sys_time/background_elapsed_time
-
읽기 작업의 총 개수 (소규모 + 대규모)
iostat/read_ops_count쓰기 작업의 총 개수 (소규모 + 대규모)
iostat/write_ops_count읽은 총 바이트 수
iostat/read_bytes_count작성된 총 바이트 수
iostat/write_bytes_countI/O 작업당 평균 지연 시간
iostat/average_latency_seconds
-
데이터 파일의 할당된 크기(바이트)
data_files/total_bytes사용 중인 데이터 파일 공간(바이트)
data_files/bytes_used데이터 파일 여유 공간(바이트)
data_files/available_bytes데이터 파일 자동 확장 한도(바이트)
data_files/max_bytes사용된 데이터 파일의 비율
data_files/percent_used
-
인스턴스 업타임(초)
instance/uptime인스턴스 상태
instance/status이 측정항목은 다음 값을 가질 수 있습니다.
UNKNOWN0STARTED1MOUNTED2OPEN3OPEN MIGRATE4열기 모드
instance/db_open_mode이 측정항목은 다음 값을 가질 수 있습니다.
UNKNOWN0MOUNTED1READ WRITE2READ ONLY3READ ONLY WITH APPLY4
-
다시 적용 지연 시간(초)
dataguard/apply_lag전송 지연 시간(초)을 다시 실행합니다.
dataguard/transport_lag
에이전트 관리
에이전트 다시 시작
컴퓨팅 워크로드용 에이전트 작동이 중지되거나 구성을 업데이트할 경우 에이전트를 다시 시작합니다.
- SSH를 사용하여 VM 인스턴스에 연결합니다.
다음 명령어를 실행합니다.
sudo systemctl restart google-cloud-workload-agent
에이전트 버전 확인
에이전트 버전을 확인하려면 다음 단계를 수행합니다.
- SSH를 사용하여 VM 인스턴스에 연결합니다.
다음 명령어를 실행합니다.
yum info google-cloud-workload-agent
업데이트 확인
- SSH를 사용하여 VM 인스턴스에 연결합니다.
다음 명령어를 실행합니다.
sudo yum check-update google-cloud-workload-agent
에이전트 업데이트
최신 버전의 에이전트를 사용하려면 정기적으로 업데이트를 확인하고 에이전트를 업데이트하세요.
- SSH를 사용하여 VM 인스턴스에 연결합니다.
다음 명령어를 실행합니다.
sudo yum --nogpgcheck update google-cloud-workload-agent
에이전트 로그 보기
컴퓨팅 워크로드용 에이전트 로그는
/var/log/google-cloud-workload-agent.log에서 확인할 수 있습니다.로그 상세도는
log_level매개변수로 제어됩니다.DEBUG로그 수준을 설정하면 특정 문제를 해결하기 위한 추가 정보가 포함되지만 로그가 훨씬 커집니다.기본적으로 Compute 워크로드용 에이전트 로그는 VM 인스턴스에서 Cloud Logging으로 리디렉션됩니다.
Logging에서 에이전트 로그를 보려면 다음 단계를 수행합니다.
Google Cloud 콘솔에서 로그 탐색기 페이지로 이동합니다.
쿼리 창으로 이동합니다.
리소스 드롭다운 메뉴에서 전역을 선택한 후 적용을 클릭합니다.
쿼리 편집기에
google-cloud-workload-agent를 입력합니다.쿼리 실행을 클릭합니다.
모든 VM 인스턴스에서 실행되는 에이전트에서 생성된 로그를 볼 수 있습니다. 특정 인스턴스의 로그를 필터링할 수 있습니다.
Cloud Logging에서 에이전트 로그 구성
에이전트 로그의 Cloud Logging으로의 기본 리디렉션을 사용 중지하려면 다음 단계를 따르세요.
SSH를 사용하여 VM 인스턴스에 연결합니다.
에이전트의 구성 파일을 엽니다.
/etc/google-cloud-workload-agent/configuration.json
log_to_cloud속성의 경우 값을false로 업데이트합니다.구성 파일을 저장합니다.
이 변경사항을 적용하려면 에이전트를 다시 시작합니다.
문제 해결
다음 섹션에서는 Oracle Database 워크로드용 에이전트 사용과 관련된 일반적인 문제, 원인, 해결 방법을 설명합니다.
IAM 권한 부족
문제: 컴퓨팅 워크로드용 에이전트 로그에 IAM 권한 부족 오류가 표시됩니다.
googleapi: Error 403: The client is not authorized to make this request.
원인: 에이전트에서 사용하는 서비스 계정에 Google Cloud API에 액세스하는 데 필요한 IAM 권한이 없거나 Secret Manager의 Oracle 사용자 비밀번호가 없습니다.
해결 방법: 이 문제를 해결하려면 VM 서비스 계정에 기본 요건에 언급된 IAM 역할과 권한이 있는지 확인하세요.
부족한 인증 범위
문제: Compute 워크로드용 에이전트 로그에 인증 범위가 부족하다고 표시됩니다.
googleapi: Error 403: Request had insufficient authentication scopes.
원인: 에이전트에서 사용하는 서비스 계정에 필요한 액세스 범위가 없습니다.
해결 방법: 이 문제를 해결하려면 VM의 액세스 범위를
cloud-platform로 구성하세요.측정항목이 Cloud Monitoring에 표시되지 않음
문제: 컴퓨팅 워크로드용 에이전트의 측정항목이 Cloud Monitoring에 표시되지 않습니다.
원인:
이 문제의 가능한 원인은 다음과 같습니다.
- 컴퓨팅 워크로드용 에이전트에서 사용하는 서비스 계정에 필요한 IAM 권한이 없습니다.
- 에이전트에서 사용하는 Oracle 사용자에게 성능 뷰를 쿼리할 수 있는 충분한 권한이 없습니다.
- 에이전트 구성에 오류가 있습니다.
해결 방법:
서비스 계정의 권한 부족 문제를 해결하려면 다음 단계를 따르세요.
- Google Cloud 콘솔에서 VM 인스턴스 세부정보 페이지로 이동하여 에이전트를 실행하는 인스턴스에서 사용 중인 서비스 계정을 확인합니다.
- IAM 및 관리자 페이지로 이동하여 서비스 계정에 기본 요건에 언급된 모든 필수 역할과 권한이 있는지 확인합니다. 필요한 누락된 역할을 서비스 계정에 부여합니다.
Oracle 사용자의 권한이 부족한 문제를 해결하려면 다음 단계를 따르세요.
Oracle 사용자에게 성능 뷰를 쿼리하는 데 필요한 다음 권한이 있는지 확인합니다.
SESSIONSELECT_CATALOG_ROLESYSDG
다음 SQL 명령어를 실행하여 누락된 권한을 부여합니다.
-- Grant the "wlmagent" user the required permissions GRANT CREATE SESSION,SELECT_CATALOG_ROLE,SYSDG TO USERNAME;
에이전트의 잘못된 구성을 해결하려면 다음 단계를 따르세요.
- SSH를 사용하여 VM 인스턴스에 연결합니다.
에이전트의 로그를 검토하여 측정항목 수집을 방해하는 오류나 문제가 있는지 확인합니다.
/var/log/google-cloud-workload-agent.log에서 로그를 확인할 수 있습니다.권한 오류, 잘못된 구성 또는 연결 문제를 찾습니다.
오류를 해결합니다.
에이전트를 다시 시작하고 측정항목 수집이 시작되는지 확인합니다.
구성 파일을 로드할 수 없음
문제: 구성 파일에 잘못된 값이 있으면 다음 오류가 표시됩니다.
"Failed to load configuration","pid":3524,"error":"proto: (line 19:42): unknown field "{field_name}"해결 방법: 이 문제를 해결하려면 구성 매개변수의 세부정보를 사용하여 구성 파일을 업데이트하세요.
데이터 수집을 초기화할 수 없음
문제: 에이전트를 설치한 후 구성 파일이 업데이트되지 않으면 다음 오류가 표시됩니다.
"Failed to initialize guest collection","pid":2112,"error":"invalid value for "user_name" "secret_name"
해결 방법: 이 문제를 해결하려면 구성 매개변수를 사용하여 사용자 인증 정보 구성을 초기화하세요.