SAP HANA 모니터링 측정항목 수집 구성

이 가이드에서는 SAP HANA 시스템에서 SAP HANA 모니터링 측정항목을 수집하도록 Google Cloud용 SAP 에이전트를 구성하는 방법을 보여줍니다.

이 기능에 대한 자세한 내용은 Google Cloud의 SAP용 에이전트를 사용하여 SAP HANA 모니터링을 참고하세요.

시작하기 전에

필요한 IAM 역할

서비스 계정에 SAP용 Google Cloud에이전트가 SAP HANA 모니터링 측정항목을 수집하도록 허용하는 데 필요한 권한이 있는지 확인하려면 관리자에게 서비스 계정에 프로젝트에 대한 다음 IAM 역할을 부여해 달라고 요청하세요.

역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.

이러한 사전 정의된 역할에는 Google Cloud의 SAP용 에이전트가 SAP HANA 모니터링 측정항목을 수집하도록 허용하는 데 필요한 권한이 포함되어 있습니다. 필요한 정확한 권한을 보려면 필수 권한 섹션을 펼치세요.

필수 권한

SAP용 Google Cloud에이전트가 SAP HANA 모니터링 측정항목을 수집하도록 허용하려면 다음 권한이 필요합니다.

  • 호스트 Compute Engine 인스턴스에서 SAP HANA 모니터링 측정항목을 수집하여 Cloud Monitoring에 쓰려면 다음 단계를 따르세요.
    • monitoring.timeSeries.create
    • compute.nodeGroups.get
    • compute.nodeGroups.list
  • Secret Manager를 사용하여 SAP HANA 데이터베이스에 연결하는 비밀번호를 저장하는 경우 보안 비밀에 액세스하려면 다음을 실행합니다. secretmanager.versions.access

관리자는 커스텀 역할이나 다른 사전 정의된 역할을 사용하여 서비스 계정에 이러한 권한을 부여할 수도 있습니다.

필요한 SAP HANA 역할

에이전트가 SAP HANA 데이터베이스에서 측정항목을 수집하도록 하려면 에이전트 구성 파일에 지정된 SAP HANA 사용자에게 MONITORING 역할이 있는지 확인합니다.

이 역할에 대한 자세한 내용은 SAP 문서 표준 데이터베이스 역할을 참고하세요.

SAP HANA 모니터링 측정항목 수집 사용 설정

Google Cloud의 SAP용 에이전트를 사용하여 SAP HANA 모니터링 측정항목 수집을 사용 설정하려면 다음 단계를 따르세요.

  1. Compute Engine 인스턴스 또는 베어메탈 솔루션 서버와 SSH 연결을 설정합니다.

  2. 에이전트의 구성 파일을 엽니다.

    /etc/google-cloud-sap-agent/configuration.json

    또는 명령어를 실행하여 이 구성을 수행할 수도 있습니다. 자세한 내용은 Google Cloud의 SAP용 에이전트 구성 명령어를 참고하세요.

  3. hana_monitoring_configuration 섹션에서 다음을 수행합니다.

    • enabled 매개변수에 값을 true로 설정합니다.
    • hana_instances 섹션에서 에이전트로 모니터링하려는 SAP HANA 인스턴스를 지정합니다.
    • 선택적으로 커스텀 쿼리를 정의합니다. 커스텀 쿼리 정의에 대한 자세한 내용과 예시를 보려면 커스텀 쿼리 정의를 참조하세요.
    • 선택적으로 기본 제공 쿼리 또는 기본 쿼리를 사용 중지합니다. 자세한 내용은 SQL 쿼리 사용 중지를 참조하세요.

      구성 매개변수에 대한 자세한 내용은 구성 매개변수를 참조하세요.

  4. 선택적으로 cloud_properties 섹션에서 자동으로 설정되는 매개변수 값을 업데이트할 수 있습니다. 이렇게 하려면 구성 파일에 cloud_properties 섹션을 추가한 다음 필수 매개변수 및 해당 값을 지정합니다.

  5. 구성 파일을 저장합니다.

  6. 새 설정이 적용되도록 에이전트를 다시 시작합니다.

    sudo systemctl restart google-cloud-sap-agent

구성 파일 예시

Compute Engine 인스턴스

다음 예는 SAP HANA 모니터링 측정항목 수집이 사용 설정된Compute Engine 인스턴스에서 실행되는Google Cloud용 SAP 에이전트의 완료된 구성 파일입니다. custom_query 이름으로 이 예시에 포함된 커스텀 쿼리는 커스텀 쿼리 정의에 지정된 커스텀 쿼리 정의 가이드라인을 따릅니다.

다음 예에서는 SAP HANA 인증에 보안 사용자 저장소 (hdbuserstore) 키를 사용합니다.

{
  "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
  },
  "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",
        "user": "system",
        "hdbuserstore_key": "user_store_key"
      },
      {
        "name": "remote",
        "sid": "DEH",
        "user": "system",
        "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 인증에 사용자 이름과 Secret Manager 보안 비밀을 사용합니다.

{
  "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
  },
  "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"
      },
      {
        "name": "remote",
        "sid": "DEH",
        "host": "10.123.0.12",
        "port": "30015",
        "user": "system",
        "secret_name": "password-secret-name"
      }
    ],
    "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 HANA 인증에 Secret Manager 비밀 또는 보안 사용자 저장소 (hdbuserstore) 키를 사용하는 것이 좋습니다.

{
  "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
  },
  "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",
        "password": "TempPa55word"
      },
      {
        "name": "remote",
        "sid": "DEH",
        "host": "10.123.0.12",
        "port": "30015",
        "user": "system",
        "password": "TempPa55word"
      }
    ],
    "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 모니터링 측정항목 수집이 사용 설정된베어메탈 솔루션 서버에서 실행되는Google Cloud용 SAP 에이전트의 완료된 구성 파일입니다. custom_query 이름으로 이 예시에 포함된 커스텀 쿼리는 커스텀 쿼리 정의에 지정된 커스텀 쿼리 정의 가이드라인을 따릅니다.

다음 예에서는 SAP HANA 인증에 보안 사용자 저장소 (hdbuserstore) 키를 사용합니다.

{
  "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", "user": "system", "hdbuserstore_key": "user_store_key" }, { "name": "remote", "sid": "DEH", "user": "system", "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 인증에 사용자 이름과 Secret Manager 보안 비밀을 사용합니다.

{
  "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" }, { "name": "remote", "sid": "DEH", "host": "10.123.0.12", "port": "30015", "user": "system", "secret_name": "password-secret-name" } ], "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 HANA 인증에 Secret Manager 비밀 또는 보안 사용자 저장소 (hdbuserstore) 키를 사용하는 것이 좋습니다.

{
  "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", "password": "TempPa55word" }, { "name": "remote", "sid": "DEH", "host": "10.123.0.12", "port": "30015", "user": "system", "password": "TempPa55word" } ], "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 쿼리 정의

Google Cloud의 SAP용 에이전트는 SAP HANA 인스턴스에서 SQL 쿼리를 실행하여 SAP HANA 모니터링 측정항목을 수집합니다. 이러한 기본 쿼리 외에도 다음 단계를 완료하여 커스텀 SQL 쿼리를 정의하고 실행할 수 있습니다.

  1. Compute Engine 인스턴스 또는 베어메탈 솔루션 서버와 SSH 연결을 설정합니다.

  2. 에이전트의 구성 파일을 엽니다.

    /etc/google-cloud-sap-agent/configuration.json
  3. hana_monitoring_configuration.queries 섹션에서 커스텀 쿼리를 정의합니다.

    커스텀 쿼리 정의에 대한 자세한 내용과 예시를 보려면 커스텀 쿼리 정의를 참조하세요.

  4. 커스텀 쿼리를 사용 설정하려면 enabled 매개변수를 true로 설정합니다.

  5. 에이전트 버전 3.7을 사용하는 경우 활성/활성 (읽기 지원) 구성으로 배포된 SAP HANA HA 시스템의 경우 쿼리를 HA 시스템의 기본 노드, 보조 노드 또는 둘 다에서 실행할지 지정할 수 있습니다.

    • 기본 노드에서 쿼리를 실행하려면 "run_on": "PRIMARY"를 포함합니다.
    • 기본 노드에서 쿼리를 실행하려면 "run_on": "SECONDARY"를 포함합니다.
    • 기본 노드에서 쿼리를 실행하려면 "run_on": "ALL"를 포함합니다.

    자세한 내용은 SAP HANA HA 시스템의 노드별 모니터링 설정을 참고하세요.

  6. 구성 파일을 저장합니다.

  7. 새 설정이 적용되도록 에이전트를 다시 시작합니다.

    sudo systemctl restart google-cloud-sap-agent

SQL 쿼리 중지

SAP용Google Cloud에이전트에서 기본적으로 제공하는 기본 제공 SQL 쿼리 또는 사용자가 정의하는 커스텀 쿼리를 실행하지 않으려면 다음 단계를 완료하여 SQL 쿼리를 사용 중지하면 됩니다.

  1. Compute Engine 인스턴스 또는 베어메탈 솔루션 서버와 SSH 연결을 설정합니다.

  2. 에이전트의 구성 파일을 엽니다.

    /etc/google-cloud-sap-agent/configuration.json
  3. 기본 제공 쿼리 또는 기본 쿼리를 사용 중지하려면 hana_monitoring_configuration.queries 섹션에 다음을 포함합니다.

    {
    "name": "default_QUERY_NAME",
    "enabled": false
    }

    QUERY_NAME을 기본 쿼리 이름으로 바꿉니다. 기본 쿼리에 대한 자세한 내용은 기본 쿼리 참조를 확인하세요.

  4. 커스텀 쿼리를 사용 중지하려면 해당 커스텀 쿼리에 대해 enabled 매개변수를 false로 설정합니다.

  5. 구성 파일을 저장합니다.

  6. 새 설정이 적용되도록 에이전트를 다시 시작합니다.

    sudo systemctl restart google-cloud-sap-agent

멀티테넌트 SAP HANA 데이터베이스에 테넌트별 모니터링 설정

Google Cloud의 SAP용 에이전트 버전 3.7부터 다중 테넌트 SAP HANA 데이터베이스에 테넌트별 모니터링을 설정할 수 있습니다. 이렇게 하려면 다음 단계를 완료하세요.

  1. SAP용 Google Cloud에이전트 버전 3.7 이상을 사용하고 있는지 확인합니다.
  2. Compute Engine 인스턴스 또는 베어메탈 솔루션 서버와 SSH 연결을 설정합니다.
  3. 에이전트의 구성 파일을 엽니다.

    /etc/google-cloud-sap-agent/configuration.json
  4. hana_monitoring_configuring.hana_instances 섹션에서 정의한 각 SAP HANA에 적절한 구성을 적용합니다.

    • SAP HANA 인스턴스에서 특정 쿼리 집합을 실행하려면 다음과 같이 queries_to_run.query_name 매개변수를 포함합니다.
    • SAP HANA 인스턴스에서 모든 쿼리를 실행하려면 다음과 같이 queries_to_run.run_all 매개변수를 포함합니다.

    다음 스니펫은 이러한 옵션의 예를 보여줍니다.

     "hana_monitoring_configuration": {
       "enabled": true,
       ...
       "hana_instances": [
         {
           "name": "TENANT_DB_1_NAME",
           "sid": "SID",
           ...
           "queries_to_run": {
             "query_name": ["QUERY_NAME_1", "QUERY_NAME_2", ...]
           }
         },
         {
           "name": "TENANT_DB_2_NAME",
           "sid": "SID",
           ...
           "queries_to_run": {
             "run_all": true
           }
         }
         ...
       ]
     }

  5. 구성 파일을 저장합니다.

  6. 30초 이내에 새 구성이 적용됩니다. 또는 수동으로 에이전트를 다시 시작할 수 있습니다.

SAP HANA HA 시스템의 노드별 모니터링 설정

Google Cloud의 SAP용 에이전트 버전 3.7부터 활성/활성 (읽기 지원) 구성으로 배포된 SAP HANA HA 시스템의 경우 에이전트 구성 파일에 정의된 쿼리를 기본 노드, 보조 노드 또는 둘 다에서 실행할지 지정할 수 있습니다. 이렇게 하려면 다음 단계를 완료해야 합니다.

  1. SAP용 Google Cloud에이전트 버전 3.7 이상을 사용하고 있는지 확인합니다.
  2. Compute Engine 인스턴스 또는 베어메탈 솔루션 서버와 SSH 연결을 설정합니다.
  3. 에이전트의 구성 파일을 엽니다.

    /etc/google-cloud-sap-agent/configuration.json
  4. hana_monitoring_configuring.queries 섹션에서 정의한 각 쿼리에 적절한 구성을 적용합니다.

    • 기본 노드에서 쿼리를 실행하려면 "run_on": "PRIMARY"를 포함합니다.
    • 기본 노드에서 쿼리를 실행하려면 "run_on": "SECONDARY"를 포함합니다.
    • 기본 노드에서 쿼리를 실행하려면 "run_on": "ALL"를 포함합니다.
  5. hana_monitoring_configuration.hana_instances 섹션에서 정의한 각 SAP HANA 인스턴스에 대해 instance_numis_local 매개변수를 지정합니다.

    다음 스니펫은 모든 시나리오의 예를 보여줍니다.

     "hana_monitoring_configuration": {
       "enabled": true,
       ...
       "hana_instances": [
         {
            "name": "INSTANCE_NAME",
            "sid": "SID",
            "instance_num": "10",
            "is_local": true,
            "hdbuserstore_key": "USER_STORE_KEY"
         },
         {
            "name": "INSTANCE_NAME",
            "sid": "SID",
            "instance_num": "11"
            "is_local": true,
            "hdbuserstore_key": "USER_STORE_KEY"
         },
         ...
       ],
       ...
       "queries": [
         {
            "name": "QUERY_NAME_1",
            "enabled": true,
            "run_on": "PRIMARY",
            ...
         },
         {
            "name": "QUERY_NAME_2",
            "enabled": true,
            "run_on": "SECONDARY",
            ...
         },
         {
            "name": "QUERY_NAME_3",
            "enabled": true,
            "run_on": "ALL",
            ...
         }
         ...
       ]
     }
  6. 구성 파일을 저장합니다.

  7. 30초 이내에 새 구성이 적용됩니다. 또는 수동으로 에이전트를 다시 시작할 수 있습니다.

구성 매개변수

다음 표에서는 SAP HANA 모니터링 측정항목 수집과 관련된Google Cloud의 SAP용 에이전트의 구성 매개변수를 설명합니다.

매개변수
provide_sap_host_agent_metrics

Boolean

SAP 호스트 에이전트에 필요한 측정항목 수집을 사용 설정하려면 true를 지정합니다. 기본값은 true입니다.
Cloud Customer Care 또는 SAP 지원팀에서 별도의 안내를 받지 않는 한 provide_sap_host_agent_metricsfalse로 설정하지 않도록 하세요.

bare_metal

Boolean

에이전트를 베어메탈 솔루션 서버에 설치할 때 true를 지정합니다. 기본값은 false입니다.

log_level

String

에이전트의 로깅 수준을 설정하려면 필수 값을 설정하세요. 사용 가능한 로그 수준은 다음과 같습니다.

  • DEBUG
  • INFO
  • WARNING
  • ERROR

기본값은 INFO입니다. Cloud Customer Care의 지시가 없는 한 로깅 수준을 변경하지 마세요.

log_to_cloud

Boolean

에이전트 로그를 Cloud Logging으로 리디렉션하려면 true를 지정합니다. 기본값은 true입니다.

cloud_properties.project_id

String

SAP 시스템이 베어메탈 솔루션 서버에서 실행되는 경우 베어메탈 솔루션에서 사용 중인 Google Cloud 프로젝트의 프로젝트 ID를 지정합니다.

에이전트가 Compute Engine 인스턴스에서 실행되면 기본적으로 프로젝트 ID가 자동으로 감지됩니다.

cloud_properties.instance_name

String

SAP 시스템이 Compute Engine 인스턴스에서 실행되는 경우 해당 Compute Engine 인스턴스의 이름을 지정합니다. 에이전트가 설치 시 컴퓨팅 인스턴스 이름을 자동으로 감지합니다.

SAP 시스템이 베어메탈 솔루션 서버에서 실행되는 경우 해당 서버의 이름을 지정합니다.

cloud_properties.region

String

SAP 시스템이 베어메탈 솔루션 서버에서 실행되는 경우 베어메탈 솔루션 서버의 리전을 지정합니다.

에이전트가 컴퓨팅 인스턴스에서 실행되면 기본적으로 컴퓨팅 인스턴스가 배포된 리전을 사용합니다.

cloud_properties.zone

String

에이전트가 컴퓨팅 인스턴스에서 실행되면 기본적으로 컴퓨팅 인스턴스가 배포된 영역이 사용됩니다.

cloud_properties.image

String

인스턴스의 OS 이미지 이름을 지정합니다.

에이전트가 컴퓨팅 인스턴스에서 실행되면 기본적으로 컴퓨팅 인스턴스에서 사용하는 OS 이미지가 자동으로 감지됩니다.

cloud_properties.numeric_project_id

String

SAP 시스템이 실행 중인 Google Cloud 프로젝트의 숫자 ID를 지정합니다.

에이전트가 컴퓨팅 인스턴스에서 실행되면 기본적으로 프로젝트 번호가 자동으로 감지됩니다.

discovery_configuration.enable_workload_discovery

Boolean

에이전트가 호스트에서 실행되는 SAP 제품의 이름과 버전을 수집하도록 하려면 true를 지정합니다. 기본값은 true입니다.

자세한 내용은 GoogleCloudPlatform/sapagent 아래의 google-cloud-sap-agent GitHub 저장소에서 에이전트 코드베이스를 참조하세요.

discovery_configuration.enable_discovery

Boolean

호스트에서 실행되는 SAP 제품에 대해 에이전트가 수집하는 정보를 Cloud Logging으로 전송하려면 true를 지정합니다. 기본값은 true입니다.

false 값을 지정하면 에이전트가 수집된 정보를 호스트에 저장하고 Cloud Logging으로 전송하지 않습니다.

hana_monitoring_configuration.enabled

Boolean

(선택사항) SAP HANA 모니터링 측정항목을 수집하도록 SAP용 Google Cloud 에이전트를 사용 설정하려면 true를 지정합니다. Google Cloud기본값은 false입니다.

다음 하위 속성은 hana_monitoring_configuration.enabled: true를 지정할 때만 적용됩니다.
hana_monitoring_configuration.sample_interval_sec

Int

(선택사항) SAP용 Google Cloud에이전트가 SAP HANA 모니터링 측정항목을 수집하기 위해 SAP HANA 인스턴스를 쿼리하는 빈도를 결정하는 샘플 간격(초)을 지정합니다. 기본값은 300초입니다.

Google Cloud의 SAP용 에이전트 구성 파일에 정의된 각 쿼리에 대해 sample_interval_sec 매개변수에 필요한 간격을 지정하여 전역 샘플 간격을 덮어쓸 수 있습니다. 샘플 간격은 5초 이상이어야 합니다.

hana_monitoring_configuration.query_timeout_sec

Int

선택사항입니다. SAP HANA 인스턴스에 수행되는 각 쿼리의 제한 시간을 지정합니다. 기본값은 300초입니다.

hana_monitoring_configuration.execution_threads

Int

선택사항입니다. SAP HANA 인스턴스로 쿼리를 전송하는 데 사용되는 스레드 수를 지정합니다. 각 쿼리는 자체 스레드에서 실행됩니다. 기본값은 10입니다.

hana_monitoring_configuration.send_query_response_time

Boolean

(선택사항) true를 지정하여 에이전트가 에이전트 구성 파일에 정의된 모든 SAP HANA 모니터링 쿼리의 응답 시간을 캡처하도록 합니다.

hana_monitoring_configuration.hana_instances.name

String

SAP HANA 인스턴스의 이름 식별자를 지정합니다.

hana_monitoring_configuration.hana_instances.sid

String

SAP HANA 인스턴스의 SID를 지정합니다. 이 문자열은 SAP HANA 인스턴스 쿼리에서 발생하는 모든 측정항목에 라벨로 추가됩니다.

hana_monitoring_configuration.hana_instances.host

String

SAP HANA 인스턴스를 호스팅하는 로컬 또는 원격의 머신 식별자를 지정합니다. 지원되는 값은 다음과 같습니다.

  • 호스트가 로컬 머신이면 localhost 문자열을 지정하거나 127.0.0.1과 같은 로컬 호스트 루프백 IP 주소를 지정합니다.
  • 호스트가 원격 머신이면 내부 또는 외부 IP 주소를 지정합니다.
hana_monitoring_configuration.hana_instances.port

String

SAP HANA 인스턴스가 쿼리를 허용하는 포트를 지정합니다. 첫 번째 또는 유일한 테넌트 데이터베이스 인스턴스의 경우 포트가 3NN15이고 여기서 NN은 SAP HANA 인스턴스의 인스턴스 번호입니다.

hana_monitoring_configuration.hana_instances.user

String

SAP HANA 인스턴스 쿼리에 사용되는 사용자 계정을 지정합니다.

이 사용자에게 SAP HANA 데이터베이스의 모니터링 뷰를 읽을 수 있는 권한이 있는지 확인합니다. 이 권한이 부여되지 않으면 모니터링 뷰와 관련된 SAP HANA 모니터링 측정항목에 데이터가 포함되지 않습니다.

hana_monitoring_configuration.hana_instances.password

String

선택사항입니다. SAP HANA 인스턴스 쿼리를 위해 사용자 계정을 인증하는 비밀번호를 일반 텍스트로 지정합니다.

인증을 위해 다음 중 하나를 지정해야 합니다.

  • password 속성에 대한 일반 텍스트 비밀번호
  • (권장사항) Secret Manager를 사용하여 비밀번호를 보안 비밀로 저장하는 경우 secret_name 매개변수에 대해 해당 보안 비밀 이름을 지정해야 합니다.
  • (권장사항) hdbuserstore_key 매개변수에 대한 hdbuserstore입니다.

SAP HANA 인증의 경우 에이전트는 다음과 같은 우선순위를 사용합니다. 지정된 경우 hdbuserstore_key 구성 매개변수가 password 매개변수보다 우선되고 secret_name 매개변수보다 우선됩니다. 구성 파일에서 인증 옵션을 하나만 설정하는 것이 좋습니다.

hana_monitoring_configuration.hana_instances.secret_name

String

(선택사항) Secret Manager에서 사용자 계정의 비밀번호를 저장하는 보안 비밀의 이름을 지정합니다.

SAP HANA 인증의 경우 에이전트는 다음과 같은 우선순위를 사용합니다. 지정된 경우 hdbuserstore_key 구성 매개변수가 password 매개변수보다 우선되고 secret_name 매개변수보다 우선됩니다. 구성 파일에서 인증 옵션을 하나만 설정하는 것이 좋습니다.

hana_monitoring_configuration.hana_instances.hdbuserstore_key

String

SAP HANA 시스템에 안전하게 연결하려면 해당 시스템에 대해 만든 보안 사용자 저장소(hdbuserstore) 키를 지정합니다.

인증에 hdbuserstore 키를 사용하려면 다음을 확인합니다.

  • SAP 도구 hdbsqlhdbuserstore는 에이전트를 호스팅하는 컴퓨팅 인스턴스에 설치됩니다.
  • hdbuserstore 키는 특정 SAP HANA 인스턴스 하나에 해당합니다. SAP HANA 인스턴스 여러 개의 호스트 이름이 포함된 키를 사용할 수 없습니다.
  • SIDadm 사용자는 이 키를 사용하여 SAP HANA 데이터베이스를 쿼리할 수 있습니다. 여기서 SIDsid 파라미터에 지정한 값을 나타냅니다. SIDadm 사용자로 다음 명령어를 실행하여 이를 확인할 수 있습니다.
    hdbsql -U HDB_USERSTORE_KEY "SELECT * FROM DUMMY"

이 구성 파라미터는 에이전트 버전 3.3부터 지원됩니다.

hdbuserstore_key를 지정하면 hostport 매개변수 지정을 건너뛸 수 있습니다.

hana_monitoring_configuration.hana_instances.is_local

Boolean

HA 시스템을 모니터링하는 경우 true를 지정하여 정의된 SAP HANA 인스턴스가 에이전트와 동일한 Compute Engine 인스턴스에 호스팅된다고 에이전트에 알립니다. 그러면 에이전트가 런타임 시 정의된 SAP HANA 인스턴스가 해당 HA 시스템의 기본 노드인지 또는 보조 노드인지 확인합니다. queries.run_on 매개변수에 지정된 SAP HANA 인스턴스 유형에서 SAP HANA 모니터링 쿼리를 실행하려면 에이전트가 이 인식을 갖고 있어야 합니다.

이 매개변수의 기본값은 false이며, 이 값을 사용하면 에이전트가 해당 SAP HANA 인스턴스에서 사용 설정된 모든 SAP HANA 모니터링 쿼리를 실행합니다. 자세한 내용은 멀티테넌트 및 HA 시스템 모니터링을 참고하세요.

이 파라미터는 에이전트 버전 3.7부터 지원됩니다.

hana_monitoring_configuration.hana_instances.instance_num

String

SAP HANA 인스턴스에 설정한 인스턴스 번호를 지정합니다. 이 정보는 에이전트가 SAP HANA 인스턴스를 검색하는 데 필요합니다.

이 파라미터는 에이전트 버전 3.7부터 지원됩니다.

hana_monitoring_configuration.hana_instances.queries_to_run.run_all

Boolean

(선택사항) 지정된 SAP HANA 인스턴스의 에이전트 구성 파일에서 사용 설정된 모든 SAP HANA 모니터링 쿼리(기본 및 맞춤)를 실행하려면 true를 지정합니다. 기본값은 false입니다.

hana_monitoring_configuration.hana_instances.queries_to_run.query_name

String

(선택사항) 지정된 SAP HANA 인스턴스에서 실행할 쿼리를 지정합니다.

멀티테넌트 SAP HANA 데이터베이스를 실행하는 경우 이 구성 매개변수를 사용하여 테넌트별 모니터링을 설정할 수 있습니다. 다음 구성 예시에서는 두 개의 쿼리가 HANA_TENANT_1에서 실행되고 구성에 정의된 모든 쿼리가 HANA_TENANT_2에서 실행됩니다.

    "hana_instances": [
      {
        "name": "HANA_TENANT_1,
        "queries_to_run": {
          "query_name": ["QUERY_NAME_1", "QUERY_NAME_2"]
        }
      },
      {
        "name": "HANA_TENANT_2,
        "queries_to_run": {
          "run_all": true
        }
      }
      ...
    ]
hana_monitoring_configuration.hana_instances.enable_ssl

Boolean

(선택사항) SAP HANA 인스턴스에서 SSL이 사용 설정되었는지 여부를 지정합니다. 기본값은 false입니다.

hana_monitoring_configuration.hana_instances.host_name_in_certificate

String

SAP HANA 인스턴스에 enable_ssl: true를 지정하는 경우 SSL 인증서에 설정된 호스트 이름을 지정해야 합니다.

hana_monitoring_configuration.hana_instances.tls_root_ca_file

String

SAP HANA 인스턴스에 enable_ssl: true를 지정하는 경우 보안 인증서의 경로를 지정해야 합니다.

hana_monitoring_configuration.queries.enabled

Boolean

선택사항입니다. 모든 SAP HANA 인스턴스에 대해 SQL 쿼리를 사용 설정하려면 해당 SQL 쿼리의 enabled 매개변수에 true 값을 지정합니다.

hana_monitoring_configuration.queries.name

String

구성 파일에 커스텀 쿼리를 정의한 경우 각 커스텀 쿼리에 대해 고유 이름을 지정해야 합니다.

쿼리 이름은 모니터링에서 측정항목의 기본 URL을 빌드하는 데 사용되므로 고유해야 합니다.

hana_monitoring_configuration.queries.run_on

String

(선택사항) SAP HANA HA 시스템을 모니터링 중이며 기본 노드 또는 보조 노드에서 SAP HANA 모니터링 쿼리를 실행하려는 경우 이 매개변수를 지정합니다. 지원되는 값: PRIMARY, SECONDARY, ALL ALL 값을 지정하면 에이전트가 HA 클러스터의 기본 노드와 보조 노드 모두에서 SAP HANA 모니터링 쿼리를 실행합니다.

이 파라미터는 에이전트 버전 3.7부터 지원됩니다. 또한 보조 노드에서 쿼리를 실행하려면 HA 시스템이 활성/활성 (읽기 지원) 구성으로 배포되어 있는지 확인합니다.

hana_monitoring_configuration.queries.sql

String

에이전트가 SAP HANA 인스턴스에 대해 실행하는 SQL 문을 지정합니다.

SQL 문은 SAP HANA SQL 및 시스템 보기 참조에서 SAP에서 정의된 SQL 문법과 일치해야 합니다.
hana_monitoring_configuration.queries.sample_interval_sec

Int

선택사항입니다. SQL 쿼리의 샘플 간격을 지정합니다. 이렇게 하면 전역 샘플 간격이 재정의됩니다. 값은 5초 이상이어야 합니다.

hana_monitoring_configuration.queries.columns.name

String

각 열을 고유하게 식별하는 이름을 지정합니다.

열 이름은 Monitoring에서 측정항목의 기본 URL을 빌드하는 데 사용되므로 고유해야 합니다.

hana_monitoring_configuration.queries.columns.metric_type

String

Monitoring에서 처리할 수 있도록 측정 항목 유형을 METRIC_LABEL, METRIC_GAUGE, METRIC_CUMULATIVE 중 하나로 지정합니다.

METRIC_LABEL 유형의 측정 항목은 Monitoring에 전송되는 모든 METRIC_GAUGEMETRIC_CUMULATIVE 측정항목에 라벨로 추가됩니다.

hana_monitoring_configuration.queries.columns.value_type

String

Monitoring에서 처리할 수 있도록 해당 측정항목 유형에서 지원되는 데이터 유형을 지정합니다.

지원되는 데이터 유형은 VALUE_BOOL, VALUE_INT64, VALUE_STRING, VALUE_DOUBLE입니다. 자세한 내용은 지원되는 조합을 참조하세요.

hana_monitoring_configuration.queries.columns.name_override

String

선택사항입니다. Monitoring에서 처리할 수 있도록 쿼리 및 열 이름 대신 측정항목 URL에 표시할 경로를 지정합니다. 예를 들면 다음과 같습니다.

  • 측정항목의 기본 URL: workload.googleapis.com/sap/hanamonitoring/QUERY_NAME/COLUMN_NAME
  • 커스텀 경로를 사용하는 측정항목 URL: workload.googleapis.com/sap/hanamonitoring/CUSTOM_PATH

SAP HANA 모니터링 측정항목 수집 설정 검증

에이전트의 status 명령어를 실행하여 SAP HANA 모니터링 측정항목 수집에 올바른 설정이 적용되었는지 확인할 수 있습니다. Google Cloud 이 명령어는 에이전트 버전 3.7부터 지원됩니다.

이렇게 하려면 다음 단계를 완료해야 합니다.

  1. Compute Engine 인스턴스 또는 베어메탈 솔루션 서버와 SSH 연결을 설정합니다.
  2. 다음 명령어를 실행합니다.

    sudo /usr/bin/google_cloud_sap_agent status
    

    SAP HANA 모니터링 측정항목 수집 Google Cloud 설정이 올바르면 출력에 다음이 포함됩니다. 구성에 default 값이 아닌 다른 값이 있을 수 있습니다.

     Agent Status:
        ...
        Systemd Service Enabled: True
        Systemd Service Running: True
        Cloud API Full Scopes: True
        Configuration File: /etc/google-cloud-sap-agent/configuration.json
        Configuration Valid: True
    ...
    ----------------------------------------------------------------------------
    HANA Monitoring Metrics: Enabled
        Status: Fully Functional
        IAM Permissions: All granted
        Configuration:
            connection_timeout:       120   (default)
            enabled:                  true  (configuration file)
            execution_threads:        10    (default)
            max_connect_retries:      1     (default)
            query_timeout_sec:        300   (default)
            sample_interval_sec:      300   (default)
            send_query_response_time: false (default)
    ...
    
  3. 출력에서 일부 설정이 누락되었다고 표시되면 이전 섹션에 제공된 정보를 검토하고 필요한 작업을 실행한 후 status 명령어를 다시 실행하여 설정을 다시 검증합니다.

수집된 측정항목 보기

에이전트에서 수집하는 SAP HANA 모니터링 측정항목을 시각화하려면Google Cloud 에서 제공하는 다음 커스텀 대시보드를 사용하면 됩니다.

  • SAP용 에이전트 - 상세 HANA 개요: 이 대시보드는 인스턴스 메모리, 사용된 서비스 메모리, 스키마 예상 최대 메모리, 행 저장소 메모리 총 크기, 스키마 읽기 외부값, 스키마 쓰기 외부값, 스키마 마지막으로 압축된 레코드 수 외부값, 시스템 연결, 알림, 상위 5개 컴퓨팅 인스턴스의 CPU 비율, 상위 5개 컴퓨팅 인스턴스의 메모리 비율, 지역별 호스트 등의 측정항목 상태 개요를 표시하는 차트를 제공합니다.

    이 대시보드의 JSON 파일은 agent-for-sap-hana-detailed-overview.json입니다.

  • SAP용 에이전트 - HANA 성능: 이 대시보드는 인스턴스 메모리, 스키마 읽기 및 쓰기 이상점, 스키마 성능, 메모리 사용량, 스키마 레코드 수 이상점, 사용된 서비스 총 메모리, rowstore 메모리 크기, 시스템 유휴 및 실행 연결, 연결 및 rowstore 메모리, 스키마 총 레코드, 스키마 예상 최대 총 크기와 같은 측정항목의 원시 측정항목 값을 표시하는 차트를 제공합니다.

    이 대시보드의 JSON 파일은 agent-for-sap-hana-performance.json입니다.

대시보드 설치

커스텀 대시보드를 설치하려면 다음 단계를 완료합니다.

Google Cloud 콘솔

  1. Google Cloud 콘솔에서 Monitoring 페이지로 이동합니다.

    Monitoring으로 이동

  2. Monitoring 탐색창에서 대시보드를 클릭합니다.

  3. 샘플 라이브러리 탭을 클릭합니다.

    선택한 샘플 라이브러리 탭을 표시합니다.

  4. 에이전트별 커스텀 대시보드를 필터링하려면 필터 필드에 Agent for SAP를 입력합니다.

  5. (선택사항) 대시보드 세부정보를 보거나 콘텐츠를 미리 보려면 미리보기를 클릭합니다.

  6. 설치하려는 대시보드를 선택합니다.

  7. 가져오기를 클릭한 후 확인을 클릭합니다.

    대시보드가Google Cloud 프로젝트의 사용 가능한 대시보드에 추가됩니다. 대시보드를 보려면 설치된 대시보드 보기의 안내를 따르세요.

Google Cloud CLI

  1. Cloud Shell을 엽니다.

    Cloud Shell 열기

  2. Cloud Shell에서 저장소를 클론 또는 다운로드합니다.

    git clone https://github.com/GoogleCloudPlatform/monitoring-dashboard-samples/

  3. 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 프로젝트의 사용 가능한 대시보드에 추가됩니다. 대시보드를 보려면 설치된 대시보드 보기의 안내를 따르세요.

설치된 대시보드 보기

설치된 대시보드를 보려면 다음 단계를 수행하세요.

  1. Google Cloud 콘솔에서 Monitoring 페이지로 이동합니다.

    Monitoring으로 이동

  2. Monitoring 탐색창에서 대시보드를 클릭합니다.

  3. 목록에서 대시보드 이름을 클릭합니다.

대시보드가 많으면 커스텀 대시보드 또는 새 대시보드 이름으로 필터링할 수 있습니다. 이 목록 필터링에 대한 자세한 내용은 커스텀 대시보드 보기를 참조하세요.

다음 이미지는 Monitoring에서 SAP HANA 측정항목의 커스텀 대시보드 일부를 보여주는 예시입니다.

Monitoring에서 SAP HANA 측정항목의 커스텀 대시보드를 보여주는 화면 캡처