チュートリアル: SAP NetWeaver のモニターリングを設定する - Amazon CloudWatch

チュートリアル: SAP NetWeaver のモニターリングを設定する

このチュートリアルでは、SAP NetWeaver のモニターリングを設定できるよう Amazon CloudWatch Application Insights を設定する方法を説明します。CloudWatch Application Insights の自動ダッシュボードを使用して、問題の詳細を可視化し、トラブルシューティングを加速させ、SAP NetWeaver アプリケーションサーバーでの解決までの平均時間 (MTTR) を短縮できます。

サポートされている環境

CloudWatch Application Insights では、次のシステムおよびパターン用に AWS リソースのデプロイがサポートされています。

  • SAP NetWeaver 標準システムデプロイ

  • 複数の Amazon EC2 インスタンスでの SAP NetWeaver Distributed デプロイ。

  • クロス AZ SAP Netweaver の高可用性セットアップ – SUSE/RHEL クラスタリングにより 2 つのアベイラビリティーゾーンでの高可用性が設定されている SAP Netweaver。

サポートされるオペレーティングシステム

SAP Netweaver 用 CloudWatch Application Insights は、次のオペレーティングシステム上でサポートされています。

  • Oracle Linux 8

  • Red Hat Enterprise Linux 7.6

  • Red Hat Enterprise Linux 7.7

  • Red Hat Enterprise Linux 7.9

  • Red Hat Enterprise Linux 8.1

  • Red Hat Enterprise Linux 8.2

  • Red Hat Enterprise Linux 8.4

  • Red Hat Enterprise Linux 8.6

  • SAP 用 SUSE Linux Enterprise Server 15

  • SAP 用 SUSE Linux Enterprise Server 15 SP1

  • SAP 用 SUSE Linux Enterprise Server 15 SP2

  • SAP 用 SUSE Linux Enterprise Server 15 SP3

  • SAP 用 SUSE Linux Enterprise Server 15 SP4

  • SAP 用 SUSE Linux Enterprise Server 12 SP4

  • SAP 用 SUSE Linux Enterprise Server 12 SP5

  • High Availability パターンを除く SUSE Linux Enterprise Server 15

  • High Availability パターンを除く SUSE Linux Enterprise Server 15 SP1

  • High Availability パターンを除く SUSE Linux Enterprise Server 15 SP2

  • High Availability パターンを除く SUSE Linux Enterprise Server 15 SP3

  • High Availability パターンを除く SUSE Linux Enterprise Server 15 SP4

  • High Availability パターンを除く SUSE Linux Enterprise Server 12 SP4

  • High Availability パターンを除く SUSE Linux Enterprise Server 12 SP5

機能

SAP NetWeaver 7.0x—7.5x (ABAP Platform を含む) 用の CloudWatch Application Insights には、次の機能が用意されています。

  • SAP NetWeaver ワークロードの自動検出

  • 静的しきい値に基づく SAP Netweaver アラームの自動作成

  • SAP Netweaver のログパターンの自動認識

  • SAP NetWeaver 用のヘルスダッシュボード

  • SAP NetWeaver 用の問題ダッシュボード

前提条件

CloudWatch Application Insights で SAP Netweaver を設定するには、以下を前もって実行する必要があります。

  • AWS Systems Manager の有効化 – Amazon EC2 インスタンスに SSM Agent をインストールし、インスタンスを SSM に対して有効にします。SSM Agent のインストールに関する詳細については、「AWS Systems Manager ユーザーガイド」の「AWS Systems Manager のセットアップ」を参照してください。

  • Amazon EC2 インスタンスロール – SAP NetWeaver モニターリングを設定するには、次の Amazon EC2 インスタンスロールをアタッチする必要があります。

  • AWS リソースグループ – アプリケーションを CloudWatch Application Insights にオンボードするには、アプリケーションスタックで使用されるすべての関連する AWS リソースを含むリソースグループを作成する必要があります。これには、SAP NetWeaver アプリケーションサーバーを実行する Amazon EC2 インスタンス、Amazon EFS、および Amazon EBS ボリュームが含まれます。1 つのアカウントに複数の SAP NetWeaver システムがある場合は、各 SAP Netweaver システムの AWS リソースを含む 1 つのリソースグループを作成することをお勧めします。リソースグループの作成についての詳細は、AWS Resource Groups とタグのユーザーガイドを参照してください。

  • IAM アクセス許可 – 管理アクセスが許可されていないユーザーについては、Application Insights でサービスにリンクされたロールを作成できる AWS Identity and Access Management (IAM) ポリシーを作成し、ユーザーの ID にアタッチする必要があります。IAM ポリシーを作成する方法については、「IAM ポリシー」を参照してください。

  • サービスにリンクされたロール – Application Insights は AWS Identity and Access Management (IAM) サービスにリンクされたロールを使用します。Application Insights コンソールで新しい Application Insights アプリケーションを作成する際、サービスにリンクされたロールが作成されます。詳細については、「CloudWatch Application Insights のサービスにリンクされたロールの使用」を参照してください。

  • Amazon CloudWatch エージェント – Application Insights は、CloudWatch エージェントをインストールして設定します。CloudWatch エージェントがインストールされている場合、Application Insights は設定をそのまま維持します。マージ競合を避けるため、既存の CloudWatch エージェント設定ファイルから、Application Insights で使用するリソースの設定を削除してください。詳細については、「CloudWatch エージェント設定ファイルを手動で作成または編集する」を参照してください。

SAP NetWeaver アプリケーションサーバーをモニターリングするように設定する

SAP NetWeaver アプリケーションサーバーのモニターリングを設定するには、次の手順に従います。

モニターリングを設定するには
  1. CloudWatch コンソールを開きます。

  2. 左側のナビゲーションペインで、[Insights] (インサイト) の下にある [Application Insights] を選択します。

  3. [Application Insights] ページには、Application Insights でモニターリングするアプリケーションのリストと、各アプリケーションのモニターリングのステータスが表示されます。右上隅の [Add an application] (アプリケーションの追加) を選択します。

  4. [Specify application details] (アプリケーションの詳細の指定) ページで、[Resource group] (リソースグループ) のドロップダウンリストから、SAP Netweaver リソースを含む作成済みの AWS リソースグループを選択します。アプリケーションのリソースグループを作成していない場合は、[Resource group] (リソースグループ) のドロップダウンリストから、[Create new resource group] (新しいリソースグループの作成) を選択して作成できます。

  5. [Automatic monitoring of new resources] (新しいリソースの自動モニターリング) でチェックボックスをオンにすると、オンボーディング後にアプリケーションのリソースグループに追加されたリソースが Application Insights で自動的にモニターリングされるようになります。

  6. [Monitor EventBridge events] (EventBridge イベントのモニターリング) で、CloudWatch Events と Application Insights のモニターリングを統合できるチェックボックスをオンにすると、Amazon EBS、Amazon EC2、AWS CodeDeploy、Amazon ECS、AWS Health APIs and Notifications、Amazon RDS、Amazon S3、および AWS Step Functions からのインサイトを取得できます。

  7. 選択したアプリケーションの問題が検出されたときにそれらを表示し、通知を受け取るには、[AWS Systems Manager OpsCenter と統合する] にある [修正アクションのため AWS Systems Manager OpsCenter OpsItems を生成する] 横のチェックボックスをオンにします。AWS リソースに関連する OpsItems というオペレーション作業項目を解決するために実行されたオペレーションを追跡するには、SNS トピックの ARN を指定します。

  8. オプションでタグを入力して、リソースを特定し整理できます。CloudWatch Application Insights では、タグベースのリソースグループと AWS CloudFormation スタックベースのリソースグループ (Application Auto Scaling グループを除く) の両方がサポートされています。詳細については、AWS Resource Groups とタグユーザーガイドの「Tag Editor」を参照してください。

  9. 検出されたコンポーネントを確認するには、[次へ] を選択します。

  10. [検出されたコンポーネントを確認] ページには、CloudWatch Application Insights によって自動的に検出されたモニターリング対象のコンポーネントとそれらのワークロードが一覧表示されます。

    1. ワークロードの種類と名前を編集するには、[コンポーネントを編集] を選択します。

      注記

      検出された NetWeaver Distributed ワークロードまたは NetWeaver High Availability ワークロードを含むコンポーネントは、1 つのコンポーネントで 1 つのワークロードのみをサポートします。

      CloudWatch Application Insights コンソールの検出されたコンポーネントの確認セクション: 編集可能なコンポーネントのリスト。
  11. [Next] を選択します。

  12. [Specify component details] (コンポーネントの詳細の指定) ページで [Next] (次へ) を選択します。

  13. アプリケーションのモニターリング設定を確認し [送信] を選択します。

  14. アプリケーションの詳細ページが開き、[アプリケーションの概要][ダッシュボード][コンポーネント] 、および [ワークロード] を表示できます。また、コンポーネントの横にあるラジオボタンをオンにすると、[Configuration history] (設定履歴)、[Log patterns] (ログのパターン)、および作成した [Tags] (タグ) を確認できます。アプリケーションを送信すると、CloudWatch Application Insights は SAP NetWeaver システムのすべてのメトリクスとアラームをデプロイします。デプロイには最大 1 時間かかります。

SAP NetWeaver アプリケーションサーバーのモニターリングを管理する

次の手順を使用して、SAP NetWeaver アプリケーションサーバーのモニターリングを管理します。

モニターリングを管理するには
  1. CloudWatch コンソールを開きます。

  2. 左側のナビゲーションペインで、[Insights] (インサイト) の下にある [Application Insights] を選択します。

  3. [List view] (リストビュー) タブを選択します。

  4. [Application Insights] ページには、Application Insights でモニターリングするアプリケーションのリストと、各アプリケーションのモニターリングのステータスが表示されます。

  5. アプリケーションを選択します。

  6. [Components] (コンポーネント) タブを選択します。

  7. [Monitored components] (モニターリングされているコンポーネント) で、コンポーネント名の横にあるラジオボタンをオンにします。次に、[Manage monitoring] (モニターリングを管理) を選択します。

  8. [Instance logs] (インスタンスログ) で、既存のログパス、ログパターンのセット、およびロググループ名を更新できます。さらに、追加で Application logs (アプリケーションログ) を最大 3 つまで追加できます。

  9. [Metrics] (メトリクス) で、要件に応じて SAP Netweaver メトリクスを選択できます。SAP Netweaver のメトリクス名は、sap で始まります。コンポーネントごとに最大 40 個のメトリクスを追加できます。

  10. [Custom alarms] (カスタムアラーム) では、CloudWatch Application Insights によってモニターリングするアラームを追加できます。

  11. アプリケーションのモニターリング設定を確認し、[Save] (保存) を選択します。設定を送信すると、アカウントで SAP Netweaver システムのすべてのメトリクスとアラームが更新されます。

CloudWatch Application Insights で検出された SAP Netweaver に関する問題の表示とトラブルシューティング

次のセクションでは、Application Insights で SAP Netweaver のモニターリングを設定する際に発生する一般的なトラブルシューティングのシナリオを解決する手順について説明します。

SAP NetWeaver データベース接続の問題

説明

SAP NetWeaver アプリケーションにデータベース接続の問題が発生しています。

原因

接続の問題を特定するには、CloudWatch Application Insights コンソールに移動し、SAP NetWeaver Application Insights の問題ダッシュボードを確認します。[Problem summary] (問題の概要) でリンクを選択すると、特定の問題が表示されます。

CloudWatch Application Insights の検出された問題用のダッシュボードでは、[Problem summary] (問題の概要) 列の [Detected problems] (検出された問題) セクションの下に詳細情報が表示されます。

次の例では、[Problem summary] (問題の概要) の下で「SAP: Availability」(SAP: 可用性) が問題として表示されています。

CloudWatch Application Insights の [Problem summary] (問題の概要) ページの [Problem summary] (問題の概要) セクションの下に表示されます。

[Problem summary] (問題の概要) のすぐ後に、[Insight] (インサイト) セクションには、エラーに関する詳細なコンテキスト、および問題の原因に関する詳細情報を取得できる場所が表示されます。

エラーの原因に関する追加情報を含む CloudWatch Application Insights の問題インサイト。

同じ問題ダッシュボードで、問題の検出によってグループ化された関連ログとメトリクスを表示すると、エラーの原因の切り分けに役立ちます。sap_alerts_Availability メトリクスは、SAP NetWeaver システムの可用性を経時的に追跡します。履歴追跡を使用して、メトリクスがエラー状態になったり、アラームのしきい値を超過したりした日時を関連付けることができます。次の例では、SAP NetWeaver システムに可用性の問題があります。この例では、2 つのアラームが表示されています。これは、SAP アプリケーションサーバーインスタンスが 2 つあり、インスタンスごとに 1 つのアラームが作成されているためです。

エラーが発生した日時の履歴に関する追加情報を含む CloudWatch Application Insights の SAP Availability メトリクス。

各アラームの詳細については、sap_alerts_Availability メトリクス名にカーソルを合わせてください。

エラーに関する追加の詳細を含む CloudWatch Application Insights の SAP Availability メトリクス。

次の例では、sap_alerts_Database メトリクスはデータベースレイヤーに問題や障害があることを示しています。このアラームは、SAP NetWeaver でデータベースへの接続やデータベースとの通信に問題が発生したことを示します。

エラーが発生した日時に関する追加履歴を含む CloudWatch Application Insights の SAP Database メトリクス。

データベースは SAP NetWeaver の重要なリソースであるため、データベースに問題や障害が発生すると、関連するアラームが数多く表示されることがあります。次の例では、データベースが使用できないため、sap_alerts_FrontendResponseTime および sap_alerts_LongRunners メトリクスが開始されます。

データベース障害が原因で作成された、CloudWatch Application Insights の追加の SAP Database メトリクス。
解決方法

Application Insights は、検出された問題を 1 時間ごとにモニターリングします。SAP NetWeaver ログファイルに新しい関連ログエントリがない場合、古いログエントリは解決済みとして処理されます。CloudWatch アラームに関連するエラー条件をすべて修正する必要があります。エラー条件が修正された後、アラームとログが復旧するとアラームが解決されます。CloudWatch ログのエラーとアラームがすべて解決されると、Application Insights はエラーの検出を停止し、問題は 1 時間以内に自動的に解決されます。問題ダッシュボードに最新の問題が表示されるように、ログのエラー条件とアラームすべてを解決することをお勧めします。

次の例では、SAP Availability の問題が解決されています。

SAP Availability の問題が解決された、CloudWatch Application Insights の問題ダッシュボード。

SAP NetWeaver アプリケーションの可用性に関する問題

説明

SAP NetWeaver High Availability Enqueue Replication が機能しなくなりました。

原因

接続の問題を特定するには、CloudWatch Application Insights コンソールに移動し、SAP NetWeaver Application Insights の問題ダッシュボードを確認します。[Problem summary] (問題の概要) でリンクを選択すると、特定の問題が表示されます。

[Problem summary] (問題の概要) の下で詳細情報を表示する CloudWatch Application Insights の問題ダッシュボード。

次の例では、[Problem summary] (問題の概要) の下で、「High Availability Enqueue Replication」が問題として表示されています。

「SAP Availability: Enqueue replication」(SAP Availability: レプリケーションをキューから削除) エラーが表示された、CloudWatch Application Insights の [Problem summary] (問題の概要)。

[Problem summary] (問題の概要) のすぐ後に、[Insight] (インサイト) セクションには、エラーに関する詳細なコンテキスト、および問題の原因に関する詳細情報を取得できる場所が表示されます。

エラーの原因に関する追加情報を含む CloudWatch Application Insights の問題インサイト。

次の例は、エラーの原因の分離に役立つようにグループ化されたログとメトリクスが表示される問題ダッシュボードを示しています。sap_enqueue_server_replication_state メトリクスは値を経時的に追跡します。履歴追跡を使用して、メトリクスがエラー状態になったり、アラームのしきい値を超過したりした日時を関連付けることができます。

エラーが発生した日時に関する追加情報を含む、サーバーレプリケーションの状態に関するメトリクスをキューに追加します。

次の例では、ha_cluster_pacemaker_fail_count メトリクスは、高可用性ペースメーカークラスターでリソース障害が発生したことを示しています。フェイルカウントが 1 以上の特定のペースメーカーリソースは、コンポーネントダッシュボードで特定されます。

フェイルカウントが 1 以上のペースメーカーリソースに対する CloudWatch Application Insights のアプリケーション可用性のメトリクス。

次の例は、問題が検出されたときに SAP アプリケーションのパフォーマンスが低下したことを示す sap_alerts_Shortdumps メトリクスを示しています。

CloudWatch Application Insights のアプリケーション可用性アラートショートダンプのメトリクス。

ログ

ログエントリは、問題が検出されたときに SAP NetWeaver レイヤーで発生した問題をより適切に理解するのに役立ちます。問題ダッシュボードのロググループウィジェットには、問題の具体的な発生時刻が表示されます。

問題が発生した正確な時刻を示す CloudWatch Application Insights のログエントリ。

ログに関する詳細情報を表示するには、右上隅にある縦に並んだ 3 つのドットを選択し、[View in CloudWatch Logs Insights] (CloudWatch Logs Insights で表示) を選択します。

[View in CloudWatch Logs Insights] (CloudWatch Logs Insights で表示) で表示される CloudWatch Application Insights の詳細。

次の手順を使用して、問題ダッシュボードに表示されたメトリクスとアラームに関する詳細情報を取得します。

メトリクスとアラームに関する追加情報を取得するには
  1. CloudWatch コンソールを開きます。

  2. 左側のナビゲーションペインで、[Insights] (インサイト) の下にある [Application Insights] を選択します。次に、[List view] (リストビュー) タブを選択し、アプリケーションを選択します。

  3. [Components] (コンポーネント) タブを選択します。次に、詳細情報を取得する SAP NetWeaver コンポーネントを選択します。

    次の例は、問題ダッシュボードに表示された ha_cluster_pacemaker_fail_count メトリクスを含む [HA Metrics] (HA メトリクス) セクションを示しています。

    ペースメーカーリソースのフェイルカウントを示す CloudWatch Application Insights の HA メトリクス。
解決方法

Application Insights は、検出された問題を 1 時間ごとにモニターリングします。SAP NetWeaver ログファイルに新しい関連ログエントリがない場合、古いログエントリは解決済みとして処理されます。この問題に関連するエラー条件をすべて修正する必要があります。

sap_alerts_Shortdumps アラームについては、トランザクションコード RZ20 → R3Abap → Shortdumps を使用して CCMS アラートに移動し、SAP NetWeaver システム内のアラートを解決する必要があります。CCMS アラートの詳細については、「SAP Web サイト」を参照してください。Shortdumps ツリーのすべての CCMS アラートを解決します。SAP NetWeaver システムですべてのアラートが解決されると、CloudWatch はアラーム状態のメトリクスを報告しなくなります。

CloudWatch ログのエラーとアラームがすべて解決されると、Application Insights はエラーの検出を停止し、問題は 1 時間以内に自動的に解決されます。問題ダッシュボードに最新の問題が表示されるように、ログのエラー条件とアラームすべてを解決することをお勧めします。次の例では、「SAP Netweaver High Availability Enqueue Replication」の問題が解決されています。

「SAP Availability: Enqueue Replication」の問題が [Resolved] (解決済み) のステータスになっていることを示す、CloudWatch Application Insights の問題ダッシュボード。

SAP Netweaver 用 Application Insights のトラブルシューティング

このセクションでは、Application Insights ダッシュボードから返される一般的なエラーを解決するための手順について説明します。

60 を超えるモニターリングメトリクスを追加できない

返されたエラー: Component cannot have more than 60 monitored metrics.

根本原因: The current metric limit is 60 monitor metrics per component.

解決方法: 制限の準拠に必要のないメトリクスを削除します。

オンボーディング処理後、SAP メトリクスがダッシュボードに表示されない

根本原因: コンポーネントダッシュボードでは、データポイントを集約するために 5 分のメトリクス期間が使用されます。

解決方法: 5 分後にすべてのメトリクスがダッシュボードに表示されます。

SAP メトリクスとアラームがダッシュボードに表示されない

次の手順に従って、オンボーディング処理後に SAP メトリクスとアラームがダッシュボードに表示されない理由を特定してください。

メトリクスとアラームの問題を特定するには
  1. CloudWatch コンソールを開きます。

  2. 左側のナビゲーションペインで、[Insights] (インサイト) の下にある [Application Insights] を選択します。次に、[List view] (リストビュー) タブを選択し、アプリケーションを選択します。

  3. [Configuration history] (設定履歴) タブを選択します。

  4. メトリクスのデータポイントが欠落している場合は、prometheus-sap_host_exporter に関連するエラーがないかチェックしてください。

  5. 前のステップでエラーが見つからなかった場合は、Linux インスタンスに接続します。High Availability デプロイでは、プライマリクラスターの Amazon EC2 インスタンスに接続します。

  6. インスタンスで、次のコマンドを使用してエクスポーターが実行されていることを検証します。デフォルトのポート番号は 9680 です。別のポートを使用している場合は、9680 を使用しているポート番号に置き換えてください。

    curl localhost:9680/metrics

    データが返されない場合、エクスポーターは起動に失敗しています。

  7. 次の 2 つのステップで WORKLOAD_SHORT_NAME に使用する正しい命名規則を見つけるには、次のコマンドを実行します。

    注記

    Application Insights は、実行中のワークロードに応じて、サービス名にサフィックス WORKLOAD_SHORT_NAME を追加します。NetWeaver Distributed、Standard、High Availability デプロイの短縮名は SAP_NWDSAP_NWSSAP_NWH です。

    sudo systemctl | grep exporter
  8. エクスポーターのサービスログにエラーがないかチェックするには、次のコマンドを実行します。

    sudo journalctl -e --unit=prometheus-sap_host_exporter_WORKLOAD_SHORT_NAME.service
  9. エクスポーターマネージャーのサービスログにエラーがないかチェックするには、次のコマンドを実行します。

    sudo journalctl -e --unit=prometheus-sap_host_exporter_manager_WORKLOAD_SHORT_NAME.service
    注記

    このサービスを常時起動し稼働させておく必要があります。

    このコマンドでエラーが返されない場合は、次のステップに進みます。

  10. エクスポーターを手動で起動するには、次のコマンドを実行します。次に、エクスポーターの出力をチェックします。

    sudo /opt/aws/sap_host_exporter/sap_host_exporter

    エラーをチェックしたら、エクスポーターの処理を終了できます。

根本原因: この問題の原因はいくつか考えられます。一般的な原因は、エクスポーターがアプリケーションサーバーインスタンスのいずれかに接続できなかったことです。

[Resolution] (解像度)

次の手順を使用して、エクスポーターをアプリケーションサーバーインスタンスに接続します。SAP アプリケーションインスタンスが実行中であることを確認し、SAPControl を使用してインスタンスに接続します。

エクスポーターをアプリケーションサーバーインスタンスに接続するには
  1. Amazon EC2 インスタンスで、次のコマンドを実行して SAP アプリケーションが実行されていることを検証します。

    sapcontrol -nr <App_InstNo> -function GetProcessList
  2. 正常に機能する SAPControl 接続を確立する必要があります。SAPControl 接続が機能しない場合は、関連する SAP アプリケーションインスタンスで問題の根本原因を見つけてください。

  3. SAPControl 接続の問題を修正した後にエクスポーターを手動で起動するには、次のコマンドを実行します。

    sudo systemctl start prometheus-sap_host_exporter.service
  4. SAPControl 接続の問題を解決できない場合は、一時的な修正として次の手順を使用してください。

    1. AWS Systems Manager コンソールを開きます。

    2. 左側のナビゲーションペインで、[State Manager] (ステートマネージャー) を選択します。

    3. [Associations] (関連付け) で、SAP NetWeaver システムの関連付けを検索します。

      Association Name: Equal: AWS-ApplicationInsights-SSMSAPHostExporterAssociationForCUSTOMSAPNW<SID>-1
    4. [Association id] (関連付け ID) を選択します。

    5. [Parameters] (パラメータ) タブを選択し、additionalArguments からアプリケーションサーバー番号を削除します。

    6. [Apply association now] (関連付けを今すぐ適用) を選択します。

      注記

      これは一時的な修正です。コンポーネントのモニターリング設定が更新されると、インスタンスは再び追加されます。