Version 1: Google Cloud's Agent for SAP planning guide

For support and monitoring, Google Cloud provides the Agent for SAP, for SAP workloads running on Compute Engine VM instances, Compute Engine bare metal instances, and Bare Metal Solution servers.

As mandated by SAP, to get support from SAP and to enable SAP to meet its service-level agreements (SLAs), you must install Google Cloud's Agent for SAP on all Compute Engine instances and Bare Metal Solution servers that run any SAP system. For more information on the support prerequisites, see SAP Note 2456406 - SAP on Google Cloud Platform: Support Prerequisites .

Version 1 of Google Cloud's Agent for SAP is the successor of Google Cloud's monitoring agent for SAP NetWeaver version 2. In addition to the mandatory collection of SAP Host Agent metrics, on Linux, Google Cloud's Agent for SAP includes optional features such as collection of Process Monitoring metrics and Workload Manager evaluation metrics. You can opt in to these features that enable products and services such as Workload Manager for your SAP workloads.

For SAP systems running on a Bare Metal Solution server, Google Cloud's Agent for SAP is required when you run SAP NetWeaver connected to any of the following databases:

  • SAP HANA
  • SAP Adaptive Server Enterprise (ASE)
  • SAP MaxDB
  • IBM Db2

You install Google Cloud's Agent for SAP on the host alongside the SAP system. For instructions about how to install and configure the agent, validate your installation, and verify that the agent is running as expected, see:

If you use the following RHEL or SLES "for SAP" OS images that Google Cloud provides, then Google Cloud's Agent for SAP is packaged with the OS images:

  • RHEL: all "for SAP" images
  • SLES: SLES 15 SP4 for SAP and later versions

Metrics collected by the agent

Version 1 of Google Cloud's Agent for SAP enables the collection of the following metrics:

SAP Host Agent metrics

The SAP Host Agent metrics collection is enabled by default. Google Cloud's Agent for SAP collects and sends all the required information that SAP mandates to the SAP Host Agent, including metrics about the following:

  • CPUs, for example, CPU utilization.
  • Persistent disk storage, for example, disk throughput and latency.
  • Memory, for example, memory consumption.
  • Networks, for example, network bandwidth.
  • Configuration, including information about the host machine and its environment.

The metrics collected by Google Cloud's Agent for SAP are determined by SAP. For a description of metrics that the agent collects, see SAP Note 2469354 - Key Monitoring Metrics for SAP on IaaS Infrastructure .

Process Monitoring metrics

On Linux, Google Cloud's Agent for SAP can collect Process Monitoring metrics for your SAP applications and their runtime states. The information collected in the Process Monitoring metrics helps you troubleshoot the issues related to your SAP system. In case of issues, with the help of Process Monitoring metrics, Cloud Customer Care can help you reach a resolution more efficiently.

Process Monitoring metrics collection is an optional feature that you can enable after installing Google Cloud's Agent for SAP. For information about the steps to enable Process Monitoring metrics collection, see Configure Google Cloud's Agent for SAP on Linux.

Process Monitoring metrics are fast-changing metrics that are collected every 5 seconds by default.

The data collected using Process Monitoring metrics provide observability for your SAP HANA high-availability cluster configurations. For observability and setting up alerts based on metric thresholds, you need to install the custom dashboards that Google Cloud provides. For more information about dashboard setup, see View the collected metrics.

The following table describes the Process Monitoring metrics collected by the agent. The metric strings in this table must be prefixed with workload.googleapis.com/. This prefix has been omitted from the entries in the following table.

Metric Category Description
sap/hana/service SAP HANA Numeric response code for SAP HANA service availability.
  • 0: Service is not running
  • 1: Service is running
sap/hana/ha/replication SAP HANA Numeric response code for SAP HANA system replication, based on SAP System ID, SAP Instance Number, and SAP Service Name.
  • 0: Error occurred.
  • 10: Replication is off (standalone mode).
  • 12: Replication is active. The current node is the secondary node.
  • 15: Replication is active. Initialization or sync with the primary is complete and the secondary is continuously replicating.
sap/hana/availability SAP HANA Numeric response code for SAP HANA system availability, based on SAP System ID and SAP Instance Number.
  • 0: One or more processes are not active
  • 1: All processes are active
sap/hana/ha/availability SAP HANA Numeric response code for SAP HANA system high availability state, based on SAP system ID and SAP Instance Number.
  • 0: Unknown state
  • 1: Current node is secondary
  • 2: Primary node has error
  • 3: Primary node is online but replication is not fully functional
  • 4: Primary node is online with replication running
sap/hana/query/state SAP HANA Numeric response code that represents the health check of SAP HANA based on the query select * from dummy. The value 0 indicates success. Any other value indicates failures.
sap/hana/query/overalltime SAP HANA Reported only if query/state is 0. This is the overall time taken by the query, including client side time and server side time, in microseconds.
sap/hana/query/servertime SAP HANA Reported only if query/state is 0. This is the time taken by the server to process the query, in microseconds.
sap/cluster/failcounts SAP HANA The failcount value of the Linux HA resources. If the resource is not present, then there is no failcount registered. Otherwise, the cluster monitoring crm_mon reports the number of failed actions.
sap/cluster/nodes Pacemaker Cluster Numeric response code that indicates the state of the Linux HA cluster state.
  • -10: Unknown
  • -1: Unclean state
  • 0: Shutdown
  • 1: Standby
  • 2: Online
sap/cluster/resources Pacemaker Cluster Numeric response code that indicates if the Linux HA cluster resource is up and running.
  • -10: Unknown
  • 0: Failed
  • 1: Stopped
  • 2: Starting
  • 3: Resource is in one of the following steady states: Master, Slave, or Started
sap/nw/availability SAP NetWeaver Numeric response code for SAP NetWeaver system availability, based on SAP System ID, SAP Instance Number, and SAP Service Name.
  • 0: Unknown state
  • 1: Current node is active or up
sap/nw/service SAP NetWeaver Numeric response code for SAP NetWeaver service availability, based on SAP System ID, SAP Instance Number, and SAP Service Name.
  • 0: Service is not running
  • 1: Service is running
sap/nw/icm/rcode SAP NetWeaver Response code based on the HTTP 1.1 protocol of a non-authenticated ICM URL resource (local call).
sap/nw/icm/rtime SAP NetWeaver Response time in milliseconds of a non-authenticated ICM URL resource (local call).
sap/nw/ms/rcode SAP NetWeaver Response code based on the HTTP 1.1 protocol of a non-authenticated Message Server URL resource (local call).
sap/nw/ms/rtime SAP NetWeaver Response time in milliseconds of a non-authenticated Message Server URL resource (local call).
sap/nw/ms/wp SAP NetWeaver Number of the ABAP work processes (NW ABAP) or Java server nodes (NW Java) reported by the Message Server information page.
sap/nw/abap/proc/busy SAP NetWeaver Number of the busy ABAP work processes by type, such as DIA, ICM, and DISP.
sap/nw/abap/proc/count SAP NetWeaver Number of the all ABAP work processes by type, such as DIA, ICM, and DISP.
sap/nw/abap/queue/current SAP NetWeaver The current number of ABAP queues used by the ABAP work processes, grouped by the work process types like DIA, ICM, DISP, etc.
sap/nw/abap/queue/peak SAP NetWeaver The peak number of ABAP queues used by the ABAP work processes, grouped by the work process types like DIA, ICM, DISP, etc.
sap/nw/abap/sessions SAP NetWeaver Number of the ABAP sessions by session type.
sap/nw/abap/rfc SAP NetWeaver Number of the ABAP RFC connections by session type.
sap/nw/enq/locks/usercountowner SAP NetWeaver Number of enqueue locks in SAP NetWeaver systems. If your system has a lot of open lock entries, then it can lead to performance issues for your users.
sap/mntmode Additional SAP metrics Maintenance mode of the corresponding SAP System ID (SID) that has been set manually to indicate that the system is intentionally down (maintenancemode = TRUE). The value of this metric is used to suppress the alerts for the systems that are unavailable during planned maintenance.

To notify the agent if a particular SID is undergoing planned maintenance, run the following command:

google_cloud_sap_agent maintenance \
    --enable=TRUE or FALSE \
    --sid=SID
sap/service/is-failed Additional SAP metrics Indicates if the OS services related to SAP and cluster services failed. The exit code 0 represents a failure.
sap/service/is-disabled Additional SAP metrics This metric is populated when the pacemaker, corosync, sapconf, saptune, and sapinit services are not enabled.
sap/hana/cpu/utilization Additional SAP metrics Per-process CPU utilization (%) of SAP HANA processes.
sap/nw/cpu/utilization Additional SAP metrics Per-process CPU utilization (%) of SAP NetWeaver processes.
sap/control/cpu/utilization Additional SAP metrics Per-process CPU utilization (%) of SAP Control processes.
sap/hana/memory/utilization Additional SAP metrics Per-process memory utilization (MB) of the HANA processes.
sap/nw/memory/utilization Additional SAP metrics Per-process memory utilization (MB) of the NetWeaver processes.
sap/control/memory/utilization Additional SAP metrics Per-process memory utilization (MB) of the SAP Control processes.
sap/infra/migration Google Cloud infrastructure metrics Indicates if a Compute Engine instance is undergoing a live migration.
sap/agent/health Agent for SAP metrics Indicates if the agent is actively running or not:
  • The value true indicates that the agent is active and running.
  • The value false indicates that the agent is not running.
sap/agent/cpu/utilization Agent for SAP metrics CPU utilization by the agent's daemon process.
sap/agent/memory/utilization Agent for SAP metrics Memory utilization by the agent's daemon process.

Workload Manager evaluation metrics

On Linux, Google Cloud's Agent for SAP can collect Workload Manager evaluation metrics that enable the Workload Manager services for your SAP workloads. The information collected in the Workload Manager evaluation metrics help you check the configuration and settings of your SAP applications, databases, and high-availability configurations.

Workload Manager evaluation metrics collection is an optional feature that you can enable after installing Google Cloud's Agent for SAP. For information about the steps to enable Workload Manager evaluation metrics collection, see Configure Google Cloud's Agent for SAP on Linux.

Workload Manager evaluation metrics are slow-changing metrics that are collected every 5 minutes by default.

The following table describes the Workload Manager evaluation metrics collected by the agent. The metric strings in this table must be prefixed with workload.googleapis.com/. This prefix has been omitted from the entries in the following table.

Metric Category Description
sap/validation/system Workload Manager Numeric metric that is always 1.
sap/validation/corosync Workload Manager Numeric metric for corosync configuration found on the instance:
  • 0: No corosync configuration found
  • 1: Corosync configuration found
sap/validation/pacemaker Workload Manager Numeric metric for pacemaker configuration found on the instance:
  • 0: No pacemaker found
  • 1: Pacemaker configuration found
sap/validation/hana Workload Manager Numeric metric for SAP HANA found on the instance:
  • 0: No SAP HANA found
  • 1: SAP HANA found
sap/validation/netweaver Workload Manager Numeric metric for SAP NetWeaver found on the instance:
  • 0: No SAP NetWeaver found
  • 1: SAP NetWeaver found

Pricing

Google Cloud's Agent for SAP is free to install and run. However, you are responsible for the charges that result from reading and writing data to Cloud Monitoring.

For the metrics collected by the agent, Monitoring charges according to the following:

  • Monitoring API read calls that exceed the free monthly API allotment.
  • Metrics measured by bytes ingested, when the ingested metric data exceeds the free monthly metric allotment.

In Monitoring, ingestion refers to the process of writing time series to Monitoring. Each time series includes some number of data points; those data points are the basis for ingestion charges. For the pricing information, see Monitoring Pricing.

For information about the general concepts in Monitoring, see Metrics, time series, and resources.

Monthly cost estimates

This section illustrates how to estimate monthly costs for collecting metric data for metrics charged by API read calls and bytes ingested.

The examples in this section are for Monitoring pricing as of December, 2022. These examples are intended to illustrate calculations; for comprehensive estimates, use the Pricing Calculator.

The following table summarizes monthly cost estimates for some required and optional features of the agent. For the detailed steps for cost estimation, see SAP Host Agent metrics, Process Monitoring metrics, and Workload Manager evaluation metrics.

Feature Type Number of compute instances Cost ($)
SAP Host Agent metrics collection Required 100 $209
Process Monitoring metrics collection Optional 100 $1,513.17
Workload Manager evaluation metrics collection Optional 500 $4.41

Pricing example for metrics charged by API read calls

The following example illustrates how to get an estimate of costs for collecting metric data for metrics charged by API read calls, such as SAP Host Agent metrics.

SAP Host Agent metrics

Consider a scenario where you have some number of compute instances that make some number of API read calls each month. The variables in the scenario include the following:

  • The rate at which a compute instance makes API read calls.
  • The number of compute instances.

For this cost estimation, let us consider there are roughly 43,800 minutes in a month.

60 * 730 hours (365 days / 12 months * 24 hours)

Assume a compute instance makes API read calls at the rate of 5 calls / minute.

For one compute instance, total API read calls at the rate of 5 calls / minute for one month: 219,000 (43,800 * 5)

Let us consider that you have 100 compute instances.

  • Total number of API read calls per month: 21,900,000

    (219,000 * 100)

  • Number of API read calls per month after free allotment: 20,900,000

    (21,900,000 - 1,000,000 = 20,900,000)

  • Approximate cost per month for 100 compute instances: $209

    (20,900,000 / 1000) * 0.01

No. of reads Rate ($/1000 reads) Cost ($)
Free allotment/month 1,000,000 0.00 $0.00
Chargeable 20,900,000 0.01 $209
Total 21,900,000 $209

Pricing example for metrics charged by bytes ingested

The following example illustrates how to get an estimate of costs for collecting metric data for the metrics charged by bytes ingested, such as Process Monitoring metrics and Workload Manager evaluation metrics.

Process Monitoring metrics

Consider a scenario where you have some number of Compute Engine instances that are writing data from some number of metrics each month. The variables in the scenario include the following:

  • The rate at which the metric data is written.
  • The number of metrics.
  • The number of compute instances.

For this cost estimation, let us consider there are roughly 43,800 minutes in a month.

60 * 730 hours (365 days / 12 months * 24 hours)

For one metric, writing data at the rate of 1 data point / 5 seconds, that is, 12 data points / minute for one month:

  • Total data points is: 525,600 (43,800 minutes * 12 data points)
  • Total volume ingested is:
    • 4,204,800 bytes (525,600 data points * 8 bytes)
    • This is 4.01000977 MiB (4,204,800 bytes / 1,048,576 bytes/MiB)

Let us consider that you have 100 compute instances, each writing 15 metrics.

  • Total monthly ingestion: 6,015.01466 MiB

    4.01000977 MiB for one metric * 1500 (100 compute instances * 15 metrics)

  • Approximate cost per month 100 compute instances: $1,513.17

    (6,015.01466 - 150) * 0.258

MiB ingested Rate ($/MiB) Cost ($)
Free allotment/month 150 0.00 $0.00
Chargeable 5,865.01466 0.258 $1,513.17
Total 6,015.01466 $1,513.17

Workload Manager evaluation metrics

Consider a scenario where you have some number of Compute Engine instances that are writing data from some number of metrics each month. The variables in the scenario include the following:

  • The rate at which the metric data is written.
  • The number of metrics.
  • The number of compute instances.

For this cost estimation, let us consider there are roughly 43,800 minutes in a month.

60 * 730 hours (365 days / 12 months * 24 hours)

For one metric, writing data at the rate of 1 data point / 300 seconds, that is, 0.2 data points / minute for one month:

  • Total data points is: 8,760 (43,800 minutes * 0.2 data points)
  • Total volume ingested is:
    • 70,080 bytes (8,760 data points * 8 bytes)
    • This is 0.0668335 MiB (70,080 bytes / 1,048,576 bytes/MiB)

Let us consider that you have 500 compute instances, each writing 5 metrics.

  • Total monthly ingestion: 167.08375 MiB

    0.0668335 MiB for one metric * 2,500 (500 compute instances * 5 metrics)

  • Approximate cost per month 500 compute instances: $4.41

    (167.08375 - 150) * 0.258

MiB ingested Rate ($/MiB) Cost ($)
Free allotment/month 150 0.00 $0.00
Chargeable 17.08375 0.258 $4.41
Total 167.08375 $4.41

Supported operating systems

Google Cloud's Agent for SAP supports all operating systems that are supported by SAP NetWeaver and SAP HANA. For details, see the list of supported operating systems for SAP NetWeaver and list of supported operating systems for SAP HANA.

Authentication and access

Google Cloud's Agent for SAP requires an Identity and Access Management (IAM) service account for authentication with Google Cloud and for permission to access Google Cloud resources.

IAM roles that are assigned to the service account determine which Google Cloud resources the agent has permission to interact with.

Unless you use an existing or default service account, you need to create the service account in your Google Cloud project and assign one or more roles to the service account.

Specify a service account

If the agent is running on a Compute Engine instance, then the agent uses the service account of the host compute instance by default. The host compute service account is usually a service account with limited roles that you or one of your colleagues create, but it can instead be the Compute Engine default service account, which has broad permissions by default.

If the agent is running on a Bare Metal Solution server, you need to create a service account with a JSON service account key. For information, see Set up a service account.

For more information about service accounts, roles, and permissions, see:

Required IAM roles

Whether you use a new, existing, or default service account, the service account must include roles that grant the required permissions to the agent.

For collecting SAP Host Agent metrics on compute instances, the predefined IAM role Compute Viewer (roles/compute.viewer) grants permission to get and list Compute Engine resources, without being able to read the data stored on them. And, the predefined IAM role Monitoring Viewer (roles/monitoring.viewer) grants permission to view Monitoring data.

For collecting SAP Host Agent metrics on a Bare Metal Solution server, the agent does not access the Google Cloud APIs, so does not require an IAM service account or permissions.

For Process Monitoring metrics and Workload Manager evaluation metrics, in addition to the Compute Viewer (roles/compute.viewer) and Monitoring Viewer (roles/monitoring.viewer) roles, the predefined IAM role Monitoring Metric Writer(roles/monitoring.metricWriter) grants permission to write metrics to Monitoring.

For collecting the Process Monitoring metrics for SAP HANA, if you use Secret Manager, then the predefined role Secret Manager Secret Accessor (roles/secretmanager.secretAccessor) grants permission to access secrets that are stored in Secret Manager.

Access to Google Cloud APIs

Compute Engine recommends configuring your compute instances to allow full access to all Cloud APIs and using only the IAM permissions of the instance service account to restrict access to Google Cloud resources. For more information, see Create a VM that uses a user-managed service account.

If you limit access to the Cloud APIs on a compute instance, then for SAP Host Agent metrics, Google Cloud's Agent for SAP requires the following minimum Google Cloud API access scopes on the host compute instance:

  • Compute Engine: Read Only
  • Stackdriver Monitoring API: Read Only

For Process Monitoring metrics and Workload Manager evaluation metrics, the access scopes of the host compute instance must have the write access to publish metric data to your Google Cloud projects. When you create a new Compute Engine instance, it is automatically configured with the write access scope, https://www.googleapis.com/auth/monitoring.write.

If the agent is not running on a Compute Engine instance, then you need to establish connection to Google Cloud APIs. See Configuring Private Google Access for on-premises hosts for details.

Metrics in Monitoring

For Process Monitoring metrics and Workload Manager evaluation metrics, Google Cloud's Agent for SAP sends the data that it retrieves from your SAP systems to Monitoring as custom metric data. To send the data, the agent uses the Monitoring API, which is enabled by default when you create a Google Cloud project.

For an overview of Monitoring, see Introduction to Monitoring.

Find the metrics data in Monitoring

The metrics data from Google Cloud's Agent for SAP is available to view as soon as Monitoring receives it. To find and visualize the collected data, you can use Metrics Explorer. For more information about finding the metrics data in Monitoring, see Google Cloud's Agent for SAP Operations guide.

For more information about visualizing the collected data in Monitoring, see:

Dashboard definitions on GitHub

On GitHub, you can find the custom dashboard definitions for SAP HANA that you can install in your Google Cloud project. See the dashboards/google-cloud-agent-for-sap directory in the GoogleCloudPlatform/monitoring-dashboard-samples repository on GitHub.

For information about these dashboards, including installation instructions, see View the collected metrics.

Alert notifications

To alert you when a metric reaches a threshold that you define, you can configure alert notifications in Monitoring.

For more information, see Introduction to alerting.

Automatic installation

When you use the Terraform configuration files or the Deployment Manager templates that Google Cloud provides for automated deployment of your Google Cloud infrastructure, Google Cloud's Agent for SAP is automatically installed as part of the deployment process, for the metrics collection that is mandated by SAP.

For instructions for manually installing and configuring Google Cloud's Agent for SAP, see:

Google Cloud's Agent for SAP codebase on GitHub

For security requirements of your enterprise, if required, you can review the source code of Google Cloud's Agent for SAP. The codebase of the agent is available in a read-only GitHub repository, google-cloud-sap-agent under GoogleCloudPlatform/sapagent.

Support

For issues with Google Cloud infrastructure or services, contact Customer Care. You can find the contact information on the Support Overview page in the Google Cloud console. If Customer Care determines that a problem resides in your SAP systems, then you are referred to SAP Support.

For SAP product-related issues, log your support request with SAP support. SAP evaluates the support ticket and, if it appears to be a Google Cloud infrastructure issue, then SAP transfers that ticket to the appropriate Google Cloud component in its system: BC-OP-LNX-GOOGLE or BC-OP-NT-GOOGLE.

Support requirements

Before you can receive support for SAP systems and the Google Cloud infrastructure and services that they use, you must meet the minimum support plan requirements.

For more information about the minimum support requirements for SAP on Google Cloud, see:

What's next