이 가이드에서는 SAP HANA 시스템에서 SAP HANA 모니터링 측정항목을 수집하도록 SAP용 Google Cloud 에이전트를 구성하는 방법을 보여줍니다.
이 기능에 대한 자세한 내용은 SAP용 Google Cloud 에이전트를 사용하여 SAP HANA 모니터링을 참조하세요.
시작하기 전에
- SAP용 Google Cloud 에이전트 설치를 검증합니다. 자세한 내용은 시나리오별 설치 가이드를 참조하세요.
- 베어메탈 솔루션 서버에 에이전트를 설치했다면, 필요한 기본 요건을 완료하고 서비스 계정을 설정했는지 확인합니다. 자세한 내용은 Linux에서 SAP용 Google Cloud 에이전트 구성을 참조하세요.
IAM 역할 설정
SAP용 Google Cloud 에이전트가 SAP HANA 모니터링 측정항목을 수집하도록 허용하려면 Compute Engine VM 인스턴스 또는 베어메탈 솔루션 서버에서 사용 중인 서비스 계정에 다음 역할이 포함되어 있는지 확인해야 합니다.
- Compute 뷰어(
roles/compute.viewer
) - Monitoring 측정항목 작성자(
roles/monitoring.metricWriter
) - Secret Manager 보안 비밀 접근자(
roles/secretmanager.secretAccessor
)(SAP HANA 데이터베이스 비밀번호를 저장하는 데 Secret Manager를 사용하는 경우)
서비스 계정에 이러한 필수 역할을 추가하려면 다음 단계를 수행합니다.
Google Cloud 콘솔에서 IAM 페이지로 이동합니다.
Google Cloud 프로젝트를 선택합니다.
역할을 추가할 서비스 계정을 찾습니다.
- 서비스 계정이 주 구성원 목록에 아직 없는 경우 어떠한 역할도 할당되지 않은 것입니다. 추가를 클릭하고 서비스 계정의 이메일 주소를 클릭하세요.
- 서비스 계정이 주 구성원 목록에 이미 있는 경우 기존 역할이 있는 것입니다. 수정하려는 서비스 계정에서 수정 버튼을 클릭합니다.
사용 가능한 역할 목록에서 필요한 역할을 선택합니다.
- Compute 뷰어
- 모니터링 > 모니터링 측정항목 작성자
- Secret Manager > Secret Manager 보안 비밀 접근자
추가 또는 저장을 클릭하여 서비스 계정에 역할을 적용합니다.
SAP HANA 모니터링 측정항목 수집 사용 설정
SAP용 Google Cloud 에이전트를 사용하여 SAP HANA 모니터링 측정항목 수집을 사용 설정하려면 다음 단계를 수행합니다.
Compute Engine VM 인스턴스 또는 베어메탈 솔루션 서버를 사용하여 SSH 연결을 설정합니다.
에이전트의 구성 파일을 엽니다.
/etc/google-cloud-sap-agent/configuration.json
또는 명령어를 실행하여 이 구성을 수행할 수도 있습니다. 자세한 내용은 SAP용 Google Cloud 에이전트의 구성 명령어를 참조하세요.
hana_monitoring_configuration
섹션에서 다음을 수행합니다.enabled
매개변수에 값을true
로 설정합니다.hana_instances
섹션에서 에이전트로 모니터링하려는 SAP HANA 인스턴스를 지정합니다.- 선택적으로 커스텀 쿼리를 정의합니다. 커스텀 쿼리 정의에 대한 자세한 내용과 예시를 보려면 커스텀 쿼리 정의를 참조하세요.
선택적으로 기본 제공 쿼리 또는 기본 쿼리를 사용 중지합니다. 자세한 내용은 SQL 쿼리 사용 중지를 참조하세요.
구성 매개변수에 대한 자세한 내용은 구성 매개변수를 참조하세요.
선택적으로
cloud_properties
섹션에서 자동으로 설정되는 매개변수 값을 업데이트할 수 있습니다. 이렇게 하려면 구성 파일에cloud_properties
섹션을 추가한 다음 필수 매개변수 및 해당 값을 지정합니다.구성 파일을 저장합니다.
새 설정이 적용되도록 에이전트를 다시 시작합니다.
sudo systemctl restart google-cloud-sap-agent
구성 파일 예시
Compute Engine VM 인스턴스
다음은 SAP HANA 모니터링 측정항목 수집이 사용 설정된Compute Engine VM 인스턴스에서 실행되는 SAP용 Google Cloud 에이전트의 완료된 구성 파일의 예시입니다.custom_query
이름으로 이 예시에 포함된 커스텀 쿼리는 커스텀 쿼리 정의에 지정된 커스텀 쿼리 정의 가이드라인을 따릅니다.
{ "provide_sap_host_agent_metrics": true, "bare_metal": false, "log_level": "INFO", "log_to_cloud": true, "collection_configuration": { "collect_workload_validation_metrics": true, "collect_process_metrics": false }, "cloud_properties": { "project_id": "my-project", "instance_name": "vm-instance-1", "image": "rhel-8" }, "discovery_configuration": { "enable_discovery": true, "enable_workload_discovery": true }, "hana_monitoring_configuration": { "enabled": true, "sample_interval_sec": 60, "query_timeout_sec": 30, "execution_threads": 20, "hana_instances": [ { "name": "local", "sid": "DEH", "host": "localhost", "port": "30015", "user": "system", "secret_name": "password-secret-name", "hdbuserstore_key": "user_store_key" }, { "name": "remote", "sid": "DEH", "host": "10.123.0.12", "port": "30015", "user": "system", "secret_name": "password-secret-name", "hdbuserstore_key": "user_store_key" } ], "queries": [ { "name": "custom_query", "enabled": true, "sql": "SELECT * FROM MyTable;", "columns": [ { "name": "string", "metric_type": "METRIC_LABEL", "value_type": "VALUE_STRING" }, { "name": "bool", "metric_type": "METRIC_GAUGE", "value_type": "VALUE_BOOL" }, { "name": "int", "metric_type": "METRIC_GAUGE", "value_type": "VALUE_INT64" }, { "name": "double", "metric_type": "METRIC_GAUGE", "value_type": "VALUE_DOUBLE" } ] }, { "name": "default_host_queries", "enabled": false } ] } }
베어메탈 솔루션 서버
다음은 SAP HANA 모니터링 측정항목 수집이 사용 설정된베어메탈 솔루션 서버에서 실행되는 SAP용 Google Cloud 에이전트의 완료된 구성 파일의 예시입니다.custom_query
이름으로 이 예시에 포함된 커스텀 쿼리는 커스텀 쿼리 정의에 지정된 커스텀 쿼리 정의 가이드라인을 따릅니다.
{ "provide_sap_host_agent_metrics": true, "bare_metal": true, "log_level": "INFO", "log_to_cloud": true, "collection_configuration": { "collect_workload_validation_metrics": true, "collect_process_metrics": false }, "cloud_properties": { "project_id": "my-project", "instance_name": "bms-machine-1"
"region": "us-central1", "image": "rhel-8" }, "discovery_configuration": { "enable_discovery": true, "enable_workload_discovery": true }, "hana_monitoring_configuration": { "enabled": true, "sample_interval_sec": 60, "query_timeout_sec": 30, "execution_threads": 20, "hana_instances": [ { "name": "local", "sid": "DEH", "host": "localhost", "port": "30015", "user": "system", "secret_name": "password-secret-name", "hdbuserstore_key": "user_store_key" }, { "name": "remote", "sid": "DEH", "host": "10.123.0.12", "port": "30015", "user": "system", "secret_name": "password-secret-name", "hdbuserstore_key": "user_store_key" } ], "queries": [ { "name": "custom_query", "enabled": true, "sql": "SELECT * FROM MyTable;", "columns": [ { "name": "string", "metric_type": "METRIC_LABEL", "value_type": "VALUE_STRING" }, { "name": "bool", "metric_type": "METRIC_GAUGE", "value_type": "VALUE_BOOL" }, { "name": "int", "metric_type": "METRIC_GAUGE", "value_type": "VALUE_INT64" }, { "name": "double", "metric_type": "METRIC_GAUGE", "value_type": "VALUE_DOUBLE" } ] }, { "name": "default_host_queries", "enabled": false } ] } }
커스텀 SQL 쿼리 정의
SAP용 Google Cloud 에이전트는 SAP HANA 인스턴스에서 SQL 쿼리를 실행하여 SAP HANA 모니터링 측정항목을 수집합니다. 이러한 기본 쿼리 외에도 다음 단계를 완료하여 커스텀 SQL 쿼리를 정의하고 실행할 수 있습니다.
Compute Engine VM 인스턴스 또는 베어메탈 솔루션 서버를 사용하여 SSH 연결을 설정합니다.
에이전트의 구성 파일을 엽니다.
/etc/google-cloud-sap-agent/configuration.json
hana_monitoring_configuration.queries
섹션에서 커스텀 쿼리를 정의합니다.커스텀 쿼리 정의에 대한 자세한 내용과 예시를 보려면 커스텀 쿼리 정의를 참조하세요.
커스텀 쿼리를 사용 설정하려면
enabled
매개변수를true
로 설정합니다.구성 파일을 저장합니다.
새 설정이 적용되도록 에이전트를 다시 시작합니다.
sudo systemctl restart google-cloud-sap-agent
SQL 쿼리 중지
SAP용 Google Cloud 에이전트에서 기본적으로 제공하는 기본 제공 SQL 쿼리 또는 사용자가 정의하는 커스텀 쿼리를 실행하지 않으려면 다음 단계를 완료하여 SQL 쿼리를 사용 중지하면 됩니다.
Compute Engine VM 인스턴스 또는 베어메탈 솔루션 서버를 사용하여 SSH 연결을 설정합니다.
에이전트의 구성 파일을 엽니다.
/etc/google-cloud-sap-agent/configuration.json
기본 제공 쿼리 또는 기본 쿼리를 사용 중지하려면
hana_monitoring_configuration.queries
섹션에 다음을 포함합니다.{ "name": "default_QUERY_NAME", "enabled": false }
QUERY_NAME
을 기본 쿼리 이름으로 바꿉니다. 기본 쿼리에 대한 자세한 내용은 기본 쿼리 참조를 확인하세요.커스텀 쿼리를 사용 중지하려면 해당 커스텀 쿼리에 대해
enabled
매개변수를false
로 설정합니다.구성 파일을 저장합니다.
새 설정이 적용되도록 에이전트를 다시 시작합니다.
sudo systemctl restart google-cloud-sap-agent
구성 매개변수
다음 표에서는 SAP HANA 모니터링 측정항목 수집과 관련된 SAP용 Google Cloud 에이전트의 구성 매개변수를 설명합니다.
매개변수 | |
---|---|
provide_sap_host_agent_metrics |
SAP 호스트 에이전트에 필요한 측정항목 수집을 사용 설정하려면 |
bare_metal |
에이전트를 베어메탈 솔루션 서버에 설치할 때 |
log_level |
에이전트의 로깅 수준을 설정하려면 필수 값을 설정하세요. 사용 가능한 로그 수준은 다음과 같습니다.
기본값은 |
log_to_cloud |
에이전트 로그를 Cloud Logging으로 리디렉션하려면 |
cloud_properties.project_id |
SAP 시스템이 베어메탈 솔루션 서버에서 실행되는 경우 베어메탈 솔루션에서 사용 중인 Google Cloud 프로젝트의 프로젝트 ID를 지정합니다. |
cloud_properties.instance_name
|
SAP 시스템이 Compute Engine VM 인스턴스에서 실행되는 경우 해당 VM 인스턴스의 이름을 지정합니다. 에이전트가 설치 시 자동으로 VM 인스턴스 이름을 감지합니다. SAP 시스템이 베어메탈 솔루션 서버에서 실행되는 경우 해당 서버의 이름을 지정합니다. |
cloud_properties.region |
SAP 시스템이 베어메탈 솔루션 서버에서 실행되는 경우 베어메탈 솔루션 서버의 리전을 지정합니다. |
cloud_properties.zone |
에이전트가 VM 인스턴스에서 실행되면 기본적으로 에이전트가 설치된 VM 인스턴스의 영역이 사용됩니다. |
cloud_properties.image |
인스턴스의 OS 이미지 이름을 지정합니다. |
cloud_properties.numeric_project_id |
SAP 시스템이 실행 중인 Google Cloud 프로젝트의 숫자 ID를 지정합니다. |
discovery_configuration.enable_workload_discovery |
에이전트가 호스트에서 실행되는 SAP 제품의 이름과 버전을 수집하도록 하려면 자세한 내용은 GoogleCloudPlatform/sapagent 아래의 |
discovery_configuration.enable_discovery |
호스트에서 실행되는 SAP 제품에 대해 에이전트가 수집하는 정보를 Cloud Logging으로 전송하려면
|
hana_monitoring_configuration.enabled |
선택사항입니다. SAP HANA 모니터링 측정항목을 수집하도록 SAP용 Google Cloud 에이전트를 사용 설정하려면 hana_monitoring_configuration.enabled: true 를 지정할 때만 적용됩니다.
|
hana_monitoring_configuration.sample_interval_sec |
선택사항입니다. SAP용 Google Cloud 에이전트가 SAP HANA 모니터링 측정항목을 수집하기 위해 SAP HANA 인스턴스를 쿼리하는 빈도를 결정하는 샘플 간격(초)을 지정합니다. 기본값은 300초입니다. SAP용 Google Cloud 에이전트의 구성 파일에 정의된 각 쿼리에 대해 |
hana_monitoring_configuration.query_timeout_sec |
선택사항입니다. SAP HANA 인스턴스에 수행되는 각 쿼리의 제한 시간을 지정합니다. 기본값은 300초입니다. |
hana_monitoring_configuration.execution_threads |
선택사항입니다. SAP HANA 인스턴스로 쿼리를 전송하는 데 사용되는 스레드 수를 지정합니다. 각 쿼리는 자체 스레드에서 실행됩니다. 기본값은 10입니다. |
hana_monitoring_configuration.hana_instances.name |
SAP HANA 인스턴스의 이름 식별자를 지정합니다. |
hana_monitoring_configuration.hana_instances.sid |
SAP HANA 인스턴스의 SID를 지정합니다. 이 문자열은 SAP HANA 인스턴스 쿼리에서 발생하는 모든 측정항목에 라벨로 추가됩니다. |
hana_monitoring_configuration.hana_instances.host |
SAP HANA 인스턴스를 호스팅하는 로컬 또는 원격의 머신 식별자를 지정합니다. 지원되는 값은 다음과 같습니다.
|
hana_monitoring_configuration.hana_instances.port |
SAP HANA 인스턴스가 쿼리를 허용하는 포트를 지정합니다. 첫 번째 또는 유일한 테넌트 데이터베이스 인스턴스의 경우 포트가 |
hana_monitoring_configuration.hana_instances.user |
SAP HANA 인스턴스 쿼리에 사용되는 사용자 계정을 지정합니다. 이 사용자에게 SAP HANA 데이터베이스의 모니터링 뷰를 읽을 수 있는 권한이 있는지 확인합니다. 이 권한이 부여되지 않으면 모니터링 뷰와 관련된 SAP HANA 모니터링 측정항목에 데이터가 포함되지 않습니다. |
hana_monitoring_configuration.hana_instances.password |
선택사항입니다. SAP HANA 인스턴스 쿼리를 위해 사용자 계정을 인증하는 비밀번호를 일반 텍스트로 지정합니다. 인증을 위해 다음 중 하나를 지정해야 합니다.
|
hana_monitoring_configuration.hana_instances.secret_name |
선택사항입니다. Secret Manager에서 사용자 계정의 비밀번호를 저장하는 보안 비밀의 이름을 지정합니다. |
hana_monitoring_configuration.hana_instances.hdbuserstore_key
|
SAP HANA 시스템에 안전하게 연결하려면 해당 시스템에 대해 만든 보안 사용자 저장소( 인증에
이 구성 파라미터는 에이전트 버전 3.3부터 지원됩니다.
|
hana_monitoring_configuration.hana_instances.enable_ssl |
선택사항입니다. SAP HANA 인스턴스에서 SSL이 사용 설정되었는지 여부를 지정합니다. 기본값은 |
hana_monitoring_configuration.hana_instances.host_name_in_certificate |
SAP HANA 인스턴스에 |
hana_monitoring_configuration.hana_instances.tls_root_ca_file |
SAP HANA 인스턴스에 |
hana_monitoring_configuration.queries.enabled |
선택사항입니다. 모든 SAP HANA 인스턴스에 대해 SQL 쿼리를 사용 설정하려면 해당 SQL 쿼리의 |
hana_monitoring_configuration.queries.name |
구성 파일에 커스텀 쿼리를 정의한 경우 각 커스텀 쿼리에 대해 고유 이름을 지정해야 합니다. 쿼리 이름은 모니터링에서 측정항목의 기본 URL을 빌드하는 데 사용되므로 고유해야 합니다. |
hana_monitoring_configuration.queries.sql |
에이전트가 SAP HANA 인스턴스에 대해 실행하는 SQL 문을 지정합니다. SQL 문은 SAP HANA SQL 및 시스템 보기 참조에서 SAP에서 정의된 SQL 문법과 일치해야 합니다. |
hana_monitoring_configuration.queries.sample_interval_sec |
선택사항입니다. SQL 쿼리의 샘플 간격을 지정합니다. 이렇게 하면 전역 샘플 간격이 재정의됩니다. 값은 5초 이상이어야 합니다. |
hana_monitoring_configuration.queries.columns.name |
각 열을 고유하게 식별하는 이름을 지정합니다. 열 이름은 Monitoring에서 측정항목의 기본 URL을 빌드하는 데 사용되므로 고유해야 합니다. |
hana_monitoring_configuration.queries.columns.metric_type |
Monitoring에서 처리할 수 있도록 측정 항목 유형을
|
hana_monitoring_configuration.queries.columns.value_type |
Monitoring에서 처리할 수 있도록 해당 측정항목 유형에서 지원되는 데이터 유형을 지정합니다. 지원되는 데이터 유형은 |
hana_monitoring_configuration.queries.columns.name_override |
선택사항입니다. Monitoring에서 처리할 수 있도록 쿼리 및 열 이름 대신 측정항목 URL에 표시할 경로를 지정합니다. 예를 들면 다음과 같습니다.
|
수집된 측정항목 보기
에이전트에서 수집하는 SAP HANA 모니터링 측정항목을 시각화하려면 Google Cloud에서 제공하는 다음 커스텀 대시보드를 사용하면 됩니다.
SAP용 에이전트 - 자세한 HANA 개요: 이 대시보드는 인스턴스 메모리, 사용된 서비스 메모리, 스키마 예상 최대 메모리, rowstore 메모리 크기, 스키마 읽기 이상점, 스키마 쓰기 이상점, 스키마 최종 압축 레코드 수 이상점, 시스템 연결, 알림, 상위 5개 VM의 CPU 비율, 상위 5개 VM의 메모리 비율, 리전별 호스트와 같은 측정항목의 상태 개요를 표시하는 차트를 제공합니다.
이 대시보드의 JSON 파일은
agent-for-sap-hana-detailed-overview.json
입니다.SAP용 에이전트 - HANA 성능: 이 대시보드는 인스턴스 메모리, 스키마 읽기 및 쓰기 이상점, 스키마 성능, 메모리 사용량, 스키마 레코드 수 이상점, 사용된 서비스 총 메모리, rowstore 메모리 크기, 시스템 유휴 및 실행 연결, 연결 및 rowstore 메모리, 스키마 총 레코드, 스키마 예상 최대 총 크기와 같은 측정항목의 원시 측정항목 값을 표시하는 차트를 제공합니다.
이 대시보드의 JSON 파일은
agent-for-sap-hana-performance.json
입니다.
대시보드 설치
커스텀 대시보드를 설치하려면 다음 단계를 완료합니다.
Google Cloud 콘솔
Google Cloud 콘솔에서 Monitoring 페이지로 이동합니다.
Monitoring 탐색창에서 대시보드를 클릭합니다.
샘플 라이브러리 탭을 클릭합니다.
에이전트별 커스텀 대시보드를 필터링하려면 필터 필드에
Agent for SAP
를 입력합니다.(선택사항) 대시보드 세부정보를 보거나 콘텐츠를 미리 보려면 미리보기를 클릭합니다.
설치하려는 대시보드를 선택합니다.
가져오기를 클릭한 후 확인을 클릭합니다.
대시보드가 Google Cloud 프로젝트의 사용 가능한 대시보드에 추가됩니다. 대시보드를 보려면 설치된 대시보드 보기의 안내를 따르세요.
Google Cloud CLI
Cloud Shell을 엽니다.
Cloud Shell에서 저장소를 클론 또는 다운로드합니다.
git clone https://github.com/GoogleCloudPlatform/monitoring-dashboard-samples/
Cloud Shell에서 해당 JSON 파일을 사용하여 필요한 대시보드를 설치합니다.
gcloud monitoring dashboards create --config-from-file=CONFIG_FROM_FILE
CONFIG_FROM_FILE
을 대시보드 구성이 포함된 JSON 파일의 경로로 바꿉니다. 대시보드 구성 파일은monitoring-dashboard-samples/dashboards/google-cloud-agent-for-sap
경로에 있을 수 있습니다.대시보드가 Google Cloud 프로젝트의 사용 가능한 대시보드에 추가됩니다. 대시보드를 보려면 설치된 대시보드 보기의 안내를 따르세요.
설치된 대시보드 보기
설치된 대시보드를 보려면 다음 단계를 수행하세요.
Google Cloud 콘솔에서 Monitoring 페이지로 이동합니다.
Monitoring 탐색창에서 대시보드를 클릭합니다.
목록에서 대시보드 이름을 클릭합니다.
대시보드가 많으면 커스텀 대시보드 또는 새 대시보드 이름으로 필터링할 수 있습니다. 이 목록 필터링에 대한 자세한 내용은 커스텀 대시보드 보기를 참조하세요.
다음 이미지는 Monitoring에서 SAP HANA 측정항목의 커스텀 대시보드 일부를 보여주는 예시입니다.