Google Cloud の SAP 用エージェントを Compute Engine インスタンスにインストールして構成する

このガイドでは、Compute Engine インスタンス(X4 シリーズまたは C3 シリーズをベースとするインスタンスを含む)に Google Cloudの SAP 用エージェントのバージョン 2 をインストールして構成する方法について説明します。

Google Cloudの SAP 用エージェントは、SAP NetWeaver、SAP HANA、SAP ASE、SAP MaxDB など、 Google Cloud上で実行される SAP システムの SAP サポートに必要です。

SAP Host Agent の指標の場合、Compute Engine インスタンスに Google Cloudの SAP 用エージェントをインストールすると、Cloud Monitoring と Compute Engine API のモニタリング データが結合され、そのデータが SAP Host Agent に提供されます。

Google Cloudが提供する次の「SAP 用」RHEL または SLES OS イメージを使用する場合、 Google Cloudの SAP 用エージェントは OS イメージに含まれています。

  • RHEL: すべての「SAP 用」イメージ
  • SLES: SAP 用 SLES 15 SP4 以降のバージョン

Google Cloudの SAP 用エージェントでサポートされているオペレーティング システムについては、サポートされているオペレーティング システムをご覧ください。

Bare Metal Solution サーバーにGoogle Cloudの SAP 用エージェントのバージョン 2 をインストールして構成するには、Bare Metal Solution サーバーに Google Cloudの SAP 用エージェントをインストールするをご覧ください。

インストールの概要

Linux の場合は、標準のオペレーティング システム パッケージ管理コマンド(RHEL の場合は yum コマンド、SLES の場合は zypper コマンド)を使用して、 Google Cloudの SAP 用エージェントをインストールします。パッケージ管理コマンドは次のタスクを実行します。

  • Google Cloudの SAP 用エージェントをダウンロードします。
  • エージェントを google-cloud-sap-agent という名前の Linux systemd サービスとして作成します。
  • サービス google-cloud-sap-agent を有効にして開始します。

Windows の場合は、GooGet パッケージ管理コマンド googet を使用して、 Google Cloudの SAP 用エージェントをインストールします。パッケージ管理コマンドは次のタスクを実行します。

  • Google Cloudの SAP 用エージェントをダウンロードします。
  • google-cloud-sap-agent という名前の Windows サービスと、毎分実行されるスケジュール設定されたタスクを作成して、サービスがまだ稼働中かどうかを確認し、必要に応じて再起動します。

エージェントの前提条件

Google Cloudの SAP 用エージェントをインストールする前に、次の前提条件を満たしていることを確認する必要があります。

必要な IAM ロールを設定する

Google Cloudの SAP 用エージェントが使用するサービス アカウントには、少なくとも Compute 閲覧者(roles/compute.viewerモニタリング閲覧者(roles/monitoring.viewerWorkload Manager Insights ライター(roles/workloadmanager.insightWriterのロールを含める必要があります。

サービス アカウントに必要なロールを追加する手順は次のとおりです。

  1. Google Cloud コンソールで、[IAM] ページに移動します。

    [IAM] に移動

  2. Google Cloud プロジェクトを選択します。

  3. ロールを追加するサービス アカウントを特定します。

    • サービス アカウントがまだプリンシパル リストに含まれていない場合、サービス アカウントには何もロールが割り当てられていません。[追加] をクリックし、サービス アカウントのメールアドレスを入力します。
    • このサービス アカウントがすでにプリンシパル リストに含まれている場合、サービス アカウントには既存のロールがあります。編集するサービス アカウントの [編集] ボタンをクリックします。
  4. 使用可能なロールのリストから必要なロールを選択します。

    • Compute Engine > Compute 閲覧者
    • Monitoring > モニタリング閲覧者
    • Workload Manager > Workload Manager Insights ライター
  5. [追加] または [保存] をクリックして、サービス アカウントにロールを適用します。

Google Cloud APIs へのアクセスを有効にする

Compute Engine では、すべての Cloud APIs にすべてのアクセス スコープを使用できるようにコンピューティング インスタンスを構成し、インスタンス サービス アカウントの IAM 権限のみを使用して Google Cloud リソースへのアクセスを制御することをおすすめします。詳細については、ユーザー管理のサービス アカウントを使用する VM を作成するをご覧ください。

Cloud APIs へのアクセスを制限する場合、 Google Cloudの SAP 用エージェントには、ホスト Compute Engine インスタンスで次の最小 Cloud API アクセス スコープが必要です。

  • Cloud Platform: 有効
  • Compute Engine: 読み取り専用
  • Stackdriver Monitoring API: 読み取り専用

外部 IP アドレスを持たないコンピューティング インスタンスで SAP アプリケーションを実行している場合は、コンピューティング インスタンスのサブネットでプライベート Google アクセスを有効にして、 Google Cloudの SAP 用エージェントが Google API とサービスにアクセスできるようにする必要があります。サブネットでプライベート Google アクセスを有効にするには、プライベート Google アクセスの構成をご覧ください。

エージェントをインストールする

より多くの機能をサポートする Google Cloudの SAP 用エージェントの最新バージョンをインストールすることをおすすめします。手順については、 Google Cloudの SAP 用エージェントを Compute Engine インスタンスにインストールして構成するをご覧ください。

Google Cloudの SAP 用エージェント バージョン 2 をインストールする場合は、Cloud カスタマーケアにお問い合わせください。

Google Cloudの SAP 用エージェントと SAP Host Agent をインストールしたら、エージェントのインストールを検証するの説明に従って、 Google Cloudの SAP 用エージェントのインストールを検証します。

エージェントのインストールを検証する

エージェントが実行されていることを確認するには、ご使用のオペレーティング システムに合わせて次の操作を行います。

Linux

  1. Compute Engine インスタンスと SSH 接続を確立します。

  2. 次のコマンドを実行します。

    systemctl status google-cloud-sap-agent

    エージェントが正常に機能している場合、出力には active (running) が含まれます。次に例を示します。

    google-cloud-sap-agent.service - Google Cloud Agent for SAP
    Loaded: loaded (/usr/lib/systemd/system/google-cloud-sap-agent.service; enabled; vendor preset: disabled)
    Active:  active (running)  since Fri 2022-12-02 07:21:42 UTC; 4 days ago
    Main PID: 1337673 (google-cloud-sa)
    Tasks: 9 (limit: 100427)
    Memory: 22.4 M (max: 1.0G limit: 1.0G)
    CGroup: /system.slice/google-cloud-sap-agent.service
           └─1337673 /usr/bin/google-cloud-sap-agent
    

Windows

  1. RDP を使用して Compute Engine インスタンスに接続します。

  2. 管理者として PowerShell から次のコマンドを実行します。

    $(Get-Service -Name 'google-cloud-sap-agent' -ErrorAction Ignore).Status
    エージェントが実行されている場合、ステータスは Running になります。

エージェントが実行されていない場合は、エージェントを再起動します。

SAP Host Agent が指標を受信していることを確認する

Google Cloudの SAP 用エージェントによってインフラストラクチャの指標が収集され、SAP Host Agent に正しく送信されていることを確認するには、次の操作を行います。

  1. SAP システムで、トランザクションとして「ST06」を入力します。
  2. 概要ウィンドウで可用性と以下のフィールドの内容を確認し、SAP と Google モニタリング インフラストラクチャのエンドツーエンドの設定が正しいか調べます。

    • クラウド プロバイダ: Google Cloud Platform
    • Enhanced Monitoring Access: TRUE
    • Enhanced Monitoring Details: ACTIVE

Linux で Google Cloudの SAP 用エージェントを構成する

Google Cloudの SAP 用エージェントをインストールしたら、必要に応じて、次の構成を行うことでエージェントの他の機能を有効にできます。デフォルトでは、SAP Host Agent 指標のみの収集が有効になっています。

デフォルトの構成ファイル

次のスニペットは、 Google Cloudの SAP 用エージェント バージョン 2 のデフォルト構成の例です。

{
  "provide_sap_host_agent_metrics": true,
  "bare_metal": ,
  "log_level": "INFO",
  "log_to_cloud": true,
  "collection_configuration": {
    "collect_workload_validation_metrics": false,
    "collect_process_metrics": false,
    "sap_system_discovery": true
  },
  "hana_monitoring_configuration": {
    "enabled": false
  }
}

構成パラメータ

次の表に、 Google Cloudの SAP 用エージェント バージョン 2 の構成パラメータを示します。

パラメータ
provide_sap_host_agent_metrics

Boolean

SAP Host Agent に必要な指標の収集を有効にするには、true を指定します。デフォルトは true です。
Cloud カスタマーケアまたは SAP サポートから求められない限り、provide_sap_host_agent_metricsfalse に設定しないでください。

bare_metal

Boolean

エージェントが Bare Metal Solution サーバーにインストールされている場合は、true を指定します。デフォルトは false です。

log_level

String

エージェントのロギングレベルを設定するには、必要な値を設定します。使用可能なログレベルは次のとおりです。

  • DEBUG
  • INFO
  • WARNING
  • ERROR

デフォルトは INFO です。Cloud カスタマーケアから求められない限り、ロギングレベルを変更しないでください。

log_to_cloud

Boolean

エージェントのログを Cloud Logging にリダイレクトするには、true を指定します。デフォルトは true です。

sap_system_discovery

Boolean

SAP システム ディスカバリを有効にするには、true を指定します。デフォルトは、true です。

cloud_properties.project_id

String

SAP システムが Bare Metal Solution サーバーで実行されている場合は、Bare Metal Solution で使用する Google Cloud プロジェクトのプロジェクト ID を指定します。

エージェントが Compute Engine インスタンスで実行されている場合、デフォルトでは、プロジェクト ID が自動的に検出されます。

cloud_properties.instance_name

String

SAP システムが Compute Engine インスタンスで実行されている場合は、そのコンピューティング インスタンスの名前を指定します。エージェントは、インストール時にコンピューティング インスタンス名を自動的に検出します。

SAP システムが Bare Metal Solution サーバーで実行されている場合は、そのサーバーの名前を指定します。

cloud_properties.region

String

SAP システムが Bare Metal Solution サーバーで実行されている場合は、Bare Metal Solution サーバーのリージョンを指定します。

エージェントがコンピューティング インスタンスで実行されている場合、デフォルトでは、エージェントはコンピューティング インスタンスがデプロイされているリージョンを使用します。

cloud_properties.zone

String

エージェントがコンピューティング インスタンスで実行されている場合、デフォルトでは、エージェントはコンピューティング インスタンスがデプロイされているゾーンを使用します。

cloud_properties.image

String

インスタンスの OS イメージ名を指定します。

エージェントがコンピューティング インスタンスで実行されている場合、デフォルトでは、コンピューティング インスタンスで使用される OS イメージが自動的に検出されます。

cloud_properties.numeric_project_id

String

SAP システムが実行されている Google Cloud プロジェクトの数値 ID を指定します。

エージェントがコンピューティング インスタンスで実行されている場合、デフォルトでは、プロジェクト番号が自動的に検出されます。

collection_configuration.collect_process_metrics

Boolean

Process Monitoring 指標の収集を有効にするには、true を指定します。デフォルトは false です。
このパラメータは Linux にのみ適用されます。

SAP HANA のプロセス指標の収集を有効にする場合は、hana_metrics_config の下にリストされている追加のパラメータを設定する必要があります。

collection_configuration.process_metrics_frequency

Int

バージョン 2.6 以降では、このパラメータによって急速に変化する Process Monitoring 指標の収集頻度(秒単位)が決定されます。急速に変化する Process Monitoring 指標は、sap/hana/availabilitysap/hana/ha/availabilitysap/nw/availability です。

このパラメータのデフォルト値は 5 秒です。このデフォルト値を使用することをおすすめします。

変化が緩やかな他の Process Monitoring 指標はすべて、デフォルトの 30 秒の頻度で収集されます。変化が緩やかな Process Monitoring 指標の収集頻度を変更するには、slow_process_metrics_frequency パラメータを使用します。

collection_configuration.slow_process_metrics_frequency

Int

変化が緩やかな Process Monitoring 指標の収集頻度を秒単位で指定します。

このパラメータのデフォルト値は 30 秒です。

collection_configuration.process_metrics_to_skip

Array

エージェントで収集しない Process Monitoring 指標を指定します。このパラメータには、Process Monitoring 指標名のカンマ区切り値を指定できます。例: "process_metrics_to_skip": ["/sap/nw/abap/sessions", "/sap/nw/abap/rfc"]

collection_configuration.hana_metrics_config.hana_db_user

String

エージェントが SAP HANA のクエリに使用するデータベース ユーザー アカウントを指定します。デフォルトは SYSTEM です。

collection_configuration.hana_metrics_config.hana_db_password

String

エージェントが SAP HANA のクエリに使用するデータベース ユーザー アカウントのパスワード(書式なしテキスト)を指定します。

書式なしテキスト パスワードを指定する代わりに、次のいずれかのオプションを使用することをおすすめします。

  • hana_db_password_secret_nameSecret Manager に保存されているシークレットを指定します。
collection_configuration.hana_metrics_config.hana_db_password_secret_name

String

エージェントが SAP HANA のクエリに使用するデータベース ユーザー アカウントのパスワードを安全に指定するには、データベース ユーザー アカウントのセキュリティ認証情報を含むシークレットの名前を指定します。

hana_db_password_secret_name または hana_db_password のいずれかを指定した場合にのみ、エージェントが SAP HANA 関連の指標を収集します。

collection_configuration.hana_metrics_config.sid

String

SAP HANA インスタンスの SID を指定します。

collection_configuration.collect_workload_validation_metrics

Boolean

Workload Manager 評価指標の収集を有効にするには、true を指定します。バージョン 3.2 以降、デフォルト値は true です。
このパラメータは Linux にのみ適用されます。

collection_configuration.workload_validation_metrics_frequency

Int

Workload Manager 評価指標の収集頻度(秒)。デフォルト値は 300 秒です。

Workload Manager 指標の収集頻度を変更する必要がある場合は、collection_configuration セクションに workload_validation_metrics_frequency パラメータを追加して必要な値を指定します。

collection_configuration.workload_validation_db_metrics_config.hana_db_user

String

SAP HANA インスタンスのクエリに使用するユーザー アカウントを指定します。ユーザー アカウントには、SAP HANA データベースに対する読み取り権限が必要です。

collection_configuration.workload_validation_db_metrics_config.hana_db_password

String

SAP HANA インスタンスのクエリに使用するユーザー アカウントのパスワードを指定します。

collection_configuration.workload_validation_db_metrics_config.hana_db_password_secret_name

String

ユーザー アカウントのパスワードを保存する Secret Manager にシークレットの名前を指定します。

collection_configuration.workload_validation_db_metrics_config.sid

String

SAP HANA インスタンスの SID を指定します。

collection_configuration.workload_validation_db_metrics_config.hostname

String

SAP HANA インスタンスをホストするマシン(ローカルまたはリモート)の識別子を指定します。サポートされている値は次のとおりです。

  • ホストがローカルマシンの場合は、文字列 localhost または localhost ループバック IP アドレス(127.0.0.1 など)を指定します。
  • ホストがリモートマシンの場合は、内部 IP アドレスまたは外部 IP アドレスを指定します。
collection_configuration.workload_validation_db_metrics_config.port

String

SAP HANA インスタンスがクエリを受け付けるポートを指定します。最初の、または唯一のテナント データベース インスタンスの場合、ポートは 3NN15 になります。ここで、NN は、SAP HANA インスタンスのインスタンス番号です。

collection_configuration.workload_validation_db_metrics_frequency

Int

Workload Manager の評価に関する SAP HANA データベース指標の収集頻度(秒)。デフォルトは 3600 秒です。

SAP HANA データベースの指標の収集頻度は更新できますが、デフォルト値を使用することをおすすめします。デフォルト値を変更する必要がある場合は、collection_configuration セクションに workload_validation_db_metrics_frequency パラメータを追加して必要な値を指定します。収集頻度は 3600 秒以下にしてください。

hana_monitoring_configuration.enabled

Boolean

省略可。 Google Cloudの SAP 用エージェントが SAP HANA モニタリング指標を収集できるようにするには、true を指定します。デフォルト値は false です。

次の子パラメータは、hana_monitoring_configuration.enabled: true を指定した場合にのみ適用されます。
hana_monitoring_configuration.sample_interval_sec

Int

省略可。サンプル間隔を秒単位で指定します。これにより、 Google Cloudの SAP 用エージェントが 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.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 または localhost ループバック IP アドレス(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 パラメータに指定する必要があります。
hana_monitoring_configuration.hana_instances.secret_name

String

省略可。ユーザー アカウントのパスワードを保存する Secret Manager に Secret の名前を指定します。

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

構成ファイルでカスタムクエリを定義している場合は、カスタムクエリごとに一意の名前を指定する必要があります。

クエリ名は、Monitoring で指標のデフォルト URL を構築するために使用されるため、一意であることが必要です。

hana_monitoring_configuration.queries.run_on

String

省略可。SAP HANA HA システムをモニタリングしていて、プライマリ ノードまたはセカンダリ ノードのいずれかで SAP HANA モニタリング クエリを実行する場合は、このパラメータを指定します。サポートされる値: PRIMARYSECONDARYALL。値 ALL を指定すると、エージェントは HA クラスタ内のプライマリ ノードとセカンダリ ノードの両方で SAP HANA モニタリング クエリを実行します。

このパラメータは、エージェントのバージョン 3.7 以降でサポートされています。また、セカンダリ ノードでクエリを実行するには、HA システムがアクティブ / アクティブ(読み取り可能)構成でデプロイされていることを確認します。

hana_monitoring_configuration.queries.sql

String

エージェントが SAP HANA インスタンスに発行する SQL ステートメントを指定します。

SQL ステートメントは、SAP HANA SQL と System Views Reference で 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_LABELMETRIC_GAUGE、または METRIC_CUMULATIVE のいずれかの指標タイプを指定します。

METRIC_LABEL タイプの指標は、Monitoring に送信されるすべての METRIC_GAUGE 指標と METRIC_CUMULATIVE 指標にラベルとして追加されます。

hana_monitoring_configuration.queries.columns.value_type

String

Monitoring で処理する場合は、指標タイプでサポートされているデータ型を指定します。

サポートされているデータ型は、VALUE_BOOLVALUE_INT64VALUE_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

トラブルシューティング

Google Cloudの SAP 用エージェントをインストールして構成するときに発生する可能性のある問題の診断と解決については、Google Cloudの SAP 用エージェントのトラブルシューティング ガイドをご覧ください。

サポートを利用する

Google Cloudの SAP 用エージェントの問題を解決するには、利用可能なすべての診断情報を収集し、Cloud カスタマーケアにお問い合わせください。カスタマーケアへのお問い合わせ方法については、 Google Cloudでの SAP に関するサポートを利用するをご覧ください。