次の方法で共有


Azure Monitor for SAP ソリューション用に SAP NetWeaver を構成する

この攻略ガイドでは、Azure Monitor for SAP Solutions 用に SAP NetWeaver プロバイダーを構成する方法について説明します。

SAP システムから情報を収集するように SAP Netweaver プロバイダーを構成するときに、ユーザーは 2 つの接続の種類を選択できます。 メトリックは、 以下を使用して収集されます

  • SAP コントロール - SAP 起動サービスにより、SAP システムの監視など、複数のサービスが提供されます。 Azure Monitor for SAP Solutions の両バージョンで、これらの機能を公開する SOAP Web サービス インターフェイスである SAPControl が使用されます。 SAPControl インターフェイスでは、保護された Web サービス メソッドと保護されていない Web サービス メソッドが区別されます。 NetWeaver で Azure Monitor for SAP Solutions を使用するには、一部のメソッドの保護を解除する必要があります。
  • SAP RFC - Azure Monitor for SAP ソリューションでは、Standard SAP RFC を使用して SAP システムから追加情報を収集する機能も提供されます。 これは、Azure Monitor for SAP ソリューションの一部としてのみ使用できます。

SAP NetWeaver プロバイダーを使用して、次のメトリックを収集できます

  • SAP システムおよびアプリケーション サーバーの可用性 (例: ディスパッチャー、ICM、ゲートウェイ、メッセージ サーバー、Enqueue Server、IGS Watchdog のインスタンス プロセス) (SAPControl)
  • 作業プロセス使用の統計と傾向 (SAPControl)
  • エンキュー ロックの統計と傾向 (SAPControl)
  • キュー 使用の統計と傾向 (SAPControl)
  • SMOメトリクス(トランザクションコード - /SDF/SMON) (RFC)
  • SWNC ワークロード、メモリ、トランザクション、ユーザー、RFC 使用頻度 (トランザクションコード - St03n) (RFC)
  • Short Dumps (トランザクションコード - ST22) (RFC)
  • オブジェクトロック (トランザクションコード - ST12) (RFC)
  • 失敗した更新(トランザクションコード - ST13) (RFC)
  • システム ログ解析 (トランザクションコード - SM21) (RFC)
  • バッチ ジョブStatistics (トランザクションコード - SM37) (RFC)
  • 送信キュー(トランザクションコード - SMQ1) (RFC)
  • 受信キュー(トランザクションコード - SMQ2) (RFC)
  • トランザクション RFC (トランザクションコード - SM59) (RFC)
  • STMS 変更トランスポート システム メトリック (トランザクション コード - STMS) (RFC)

前提条件

Azure Monitor for SAP Solutions 用に NetWeaver を構成する

現在の Azure Monitor for SAP Solutions バージョン用に NetWeaver プロバイダーを構成するには、次の手順を実行する必要があります。

  1. 前提条件 - メトリックのメソッドの保護を解除する
  2. RFC メトリックを有効にする前提条件
  3. SAP NetWeaver プロバイダーを追加する

SAP NetWeaver プロバイダーの追加中に発生した問題を解決するには、「トラブルシューティング」セクションを参照してください。

メトリックの前提条件の保護解除メソッド

このステップは、SAP NetWeaver プロバイダーを構成するときに 必須です。 特定のメトリックをフェッチするには、各 SAP インスタンスの一部のメソッドの保護を解除する必要があります:

  1. SAP サーバーへの SAP GUI 接続を開きます。

  2. 管理アカウントでサインインします。

  3. トランザクション RZ10 を実行します。

  4. 適切なプロファイル (推奨されるインスタンス プロファイル) を選択します。

  5. [Extended Maintenance](拡張メンテナンス)>[Change](変更) を選択します。

  6. プロファイル パラメーター service/protectedwebmethods を選択します。

  7. 値を次に変更します。

    SDEFAULT -GetQueueStatistic -ABAPGetWPTable -EnqGetStatistic -GetProcessList -GetEnvironment -ABAPGetSystemWPTable
    
  8. [コピー] を選択します。

  9. [プロファイル]>[保存] を選択して変更を保存します。

  10. SAP システム内の各インスタンスで SAPStartSRV サービスを再起動します。 サービスを再起動しても、システム全体は再起動されません。 このプロセスでは、SAPStartSRV (Windows の場合) またはデーモン プロセス (Unix または Linux) のみが再起動されます。

    SAPControl Web メソッドの保護を解除するには、SAP システムの各インスタンスで SAPStartSRV サービスを再起動する必要があります。 NetWeaver プロバイダーが SAP システムからメトリック データをフェッチするには、これらの読み取り専用の SOAP API が必要です。 これらのメソッドの保護を解除しないと、NetWeaver メトリック ブックで視覚化が空または不足します。

    1. Windows システムでは、SAP Microsoft 管理コンソール (MMC) または SAP 管理コンソール (MC) を使用してサービスを再起動します。 各インスタンスを右クリックします。 次に、[すべてのタスク]>[サービスの再起動] を選択します。 Screenshot of the MMC console, showing the Restart Service option being selected.

    2. Linux システムでは、次のコマンドを使用してホストを再起動します。 <instance number> を SAP システムのインスタンス番号に置き換えます。

    sapcontrol -nr <instance number> -function RestartService
    
    1. インスタンス プロファイルごとに前の手順を繰り返します。または、別のオプションとして、下位環境で SAP システムを再起動できます。

Web メソッドの保護を解除する PowerShell スクリプト

リンクを参照して、SAP Windows 仮想マシンの Web メソッドの保護を解除できます。

RFC メトリックを有効にする前提条件

RFC メトリックは AS ABAP アプリケーションでのみサポートされ、SAP JAVA システムには適用されません。 選択した接続の種類が SOAP+RFC の場合、この手順は必須です。 RFC を有効にするには、以下のステップを前提条件として実行する必要があります

  1. SAP NW ABAP システムでロールを作成またはアップロードします。 Azure Monitor for SAP Solutions では、SAP に接続するためにこのロールが必要です。 ロールは、最小限の特権アクセスを使用します。 Z_AMS_NETWEAVER_MONITORING.zip をダウンロードして解凍 する

    1. SAP システムにログインします。
    2. メニューの [ロールのアップロード] で選択したトランザクション コードPFG> を使用します。
    3. ZIP ファイルから Z_AMS_NETWEAVER_MONITORING.SAP ファイルをアップロードします。
    4. [実行] を選択してロールを生成します。 (ロールのアップロードの一部としてプロファイルも生成されていることを確認します)

    SAP システムでロールをインポートするトランスポート

    また、プロファイルを生成して 、SAP システムの Netweaver プロバイダーを正常に構成するためのリンク を参照して、ロールをインポートすることもできます。

  2. 新しい RFC ユーザーを作成して承認します

    1. RFC ユーザーを作成します。
    2. ロール Z_AMS_NETWEAVER_MONITORING をユーザーに割り当てます。 前のセクションでアップロードしたロールです。
  3. SICF サービス が SAP インターネットコミュニケーションフレームワーク (ICF) を介して RFC にアクセスできるようにする

    1. トランザクション コード SICF に移動します。
    2. サービス パス /default_host/sap/bc/soap/ に移動します。
    3. サービスの wsdlwsdl11RFC をアクティブにします。

また、ICF ポートを有効にしていることを確認することもお勧めします。

  1. SMON - SMON を有効にして、システムのパフォーマンスを監視します。 ST-PI のバージョンが SAPK-74005INSTPI であることを確認します。
    ブックが構成されていない場合は、ブックの一部として空の視覚化が表示されます。

    1. システムの SDF/SMON スナップショット サービスを有効にします。 毎日の監視を有効にします。 手順については、SAP ノート 2651881 をご覧ください。
    2. 毎分集計されるように SDF/SMON メトリックを構成します。
    3. ターゲット SAP クライアントで 1 分ごとにバックグラウンド ジョブとして SDF/SMON をスケジュールすることをお勧めします。
    4. ブックタブ "System Performance - CPU and Memory (/SDF/SMON)" の一部として空の視覚化が表示される場合は、次の SAP ノートを適用してください。
      1. リリース 740 SAP KB (キロバイト)74006-SAP KB (キロバイト)74025 - リリース 755 から SAPK-75502INSAPBASIS まで。 特定のサポート パッケージバージョンについては、SAP NOTE を参照してください。- SAP Note 2246160
      2. メトリック コレクションが上記のメモで動作しない場合は、SAP Note 3268727
  2. セキュリティで保護された通信を有効にするには

    SAP NetWeaver プロバイダーで TLS 1.2 以降を有効にするには、この SAP ドキュメントに記載されている手順を行ってください。

    TLS 1.2 以降を使用したセキュリティで保護された通信用に SAP システムが構成されているかどうかを確認する

    1. トランザクション RZ10 に移動します。
    2. DEFAULT プロファイルを開き、[拡張メンテナンス] を選択し、[変更] をクリックします。
    3. TLS1.2 の構成を次に示します。ビット マスクは 544: PFS になります。 TLS バージョンが高い場合、ビット マスクは 544 より大きくなります。

    tlsimage1

    作成の提供プロセス中に提供される HTTPS ポートを確認する

    1. トランザクション SMICM に移動します。
    2. メニュー GOTO -> サービスから選択します。
    3. HTTPS プロトコルがアクティブな状態であるかどうかを確認します。

    tlsimage2

NetWeaver プロバイダーの追加

すべての前提条件が正常に完了していることを確認します。 NetWeaver プロバイダーを追加するには、次の手順に従います。

  1. Azure portal にサインインします。

  2. Azure Monitor for SAP Solutions サービス ページに移動します。

  3. [作成] を選び、リソース作成ページを開きます。

  4. [基本] タブの情報を入力します。

  5. [プロバイダー] タブを選択します。次に、[プロバイダーの追加] を選択します。

  6. 新しいプロバイダーを構成するには、次の手順に従います。

    1. [種類] で、 [SAP NetWeaver] を選択します。

    2. [名前]に、プロバイダーの一意の名前を指定します

    3. [システム ID (SID)] には、3 文字の SAP システム識別子を入力します。

    4. アプリケーション サーバーの場合は、監視する SAP NetWeaver システムの IP アドレスまたは完全修飾ドメイン名 (FQDN) を入力します。 たとえば、ホスト名 sapservername とドメイン contoso.comsapservername.contoso.com などです。 ホスト名を使用している場合は、Azure Monitor for SAP Solutions リソースの作成に使用した仮想ネットワークからの接続があることを確認します。

    5. [インスタンス番号] に、SAP NetWeaver のインスタンス番号を指定します (00 から 99)

    6. [接続の種類] - 収集されたメトリックに基づいて SOAP + RFC または SOAP を選択します (詳細については、上記のセクションを参照してください)

    7. [SAP クライアント ID] に、SAP クライアント識別子を指定します。

    8. [SAP ICM HTTP Port](SAP ICM HTTP ポート) の場合は、ICM で使用されているポート、例: 80(NN) を入力します。ここで、(NN) はインスタンス番号です。

    9. [SAP ユーザー名] に、SAP システムに接続するために作成したユーザーの名前を入力します。

    10. [SAP パスワード] に、ユーザーのパスワードを入力します。

    11. [ホスト ファイル エントリ] には、SID に関連付けられているすべての SAP VM の DNS マッピングを指定します。[ ホスト ファイル エントリ] にすべてのSAP アプリケーション サーバーと ASCS ホスト ファイル エントリを入力します。 ホスト ファイルのマッピングをコンマ区切り形式で入力します。 各エントリに必要な形式は、IP アドレス、FQDN、ホスト名です。 例: 192.X.X.X sapservername.contoso.com sapservername,192.X.X.X sapservername2.contoso.com sapservername2。 SID に関連付けられているすべての SAP ホスト名を確認するには、sidadm ユーザーを使用して SAP システムにサインインします。 次に、次のコマンド (または) を実行して、以下のスクリプトを利用して hostfile エントリを生成します。

      特定の SID に関連付けられているインスタンスの一覧を検索するコマンド

          /usr/sap/hostctrl/exe/sapcontrol -nr <instancenumber>  -function GetSystemInstanceList
      

    hostfile エントリを生成するスクリプト

    ホストファイル エントリを生成するためのリンク詳細な手順に従うことを強くお勧めします。 これらのエントリは、SAP システムの Netweaver プロバイダーを正常に作成するために重要です。

SAP Netweaver プロバイダーのトラブルシューティング

Netweaver プロバイダーの追加時の一般的な問題。

  1. SAP ホスト名に到達できません。 ErrorCode: SOAPApiConnectionError

    1. 入力ホスト名、インスタンス番号、およびホスト ファイル マッピングで、指定されたホスト名を確認します。

    2. hostfile エントリの [ホスト ファイル エントリ] セクションを決定する手順に従います。

    3. NSG/ファイアウォールでポート (5XX13 または 5XX14) がブロックされていないことを確認します。 (XX - SAP インスタンス番号)

    4. AMS と SAP VM が同じ vNet 内にあるか、vNet ピアリングを使用して接続されているかどうかを確認します。

      接続されていない場合は、次 のリンク を参照して vNet を接続します。

  2. 保護されていない更新された規則を確認します。 ErrorCode: SOAPWebMethodsValidationFailed

    SAP サービスを再起動した後、更新されたルールが各インスタンスに適用されていることを確認します。

    1. SAP システム sidadmにサインインする場合: 次のコマンドを実行します。 <instance number> をシステムのインスタンス番号に置き換えます。

      sapcontrol -nr <instance number> -function ParameterValue service/protectedwebmethods
      
    2. SIDADM 以外のユーザーとしてサインインする場合。 次のコマンドを実行し、<instance number> をシステムのインスタンス番号に、<admin user>管理者のユーザー名に、<admin password>パスワードにそれぞれ置き換えます。

      sapcontrol -nr <instance number> -function ParameterValue service/protectedwebmethods -user "<admin user>" "<admin password>"
      
    3. 出力結果を確認します。 出力に、GetQueueStatistic ABAPGetWPTable EnqGetStatistic GetProcessList GetEnvironment ABAPGetSystemWPTable メソッド の名前が表示されていることを確認します

    4. インスタンス プロファイルごとに前の手順を繰り返します。

    ルールを検証するには、Web メソッドに対してテスト クエリを実行します。 <hostname> ホスト名に、<instance number> を SAP インスタンス番号、メソッド名を適切なメソッドに置き換えます。

    $SAPHostName = "<hostname>"
    $InstanceNumber = "<instance number>"
    $Function = "ABAPGetWPTable"
    [System.Net.ServicePointManager]::ServerCertificateValidationCallback = {$true}
    $sapcntrluri = "https://" + $SAPHostName + ":5" + $InstanceNumber + "14/?wsdl"
    $sapcntrl = New-WebServiceProxy -uri $sapcntrluri -namespace WebServiceProxy -class sapcntrl
    $FunctionObject = New-Object ($sapcntrl.GetType().NameSpace + ".$Function")
    $sapcntrl.$Function($FunctionObject)
    
  3. インターネット通信フレームワーク のポートが開かれているかどうかを確認します。 ErrorCode: RFCSoapApiNotEnabled

    1. SAP システムにサインインします

    2. トランザクション コード SICF に移動します。

    3. サービス パス/default_host/sap/bc/soap/ に移動します。

    4. ping サービスを右クリックし、[テスト サービス] を選択します。 SAP によって既定のブラウザーが起動されます。

    5. ポートに到達できない場合、またはテストが失敗した場合は、SAP VM でポートを開きます。

      1. Linux の場合は、次のコマンドを実行します。 <your port> を構成したポートに置き換えます。

        sudo firewall-cmd --permanent --zone=public --add-port=<your port>/TCP
        
        sudo firewall-cmd --reload
        
      2. Windows の場合は、[スタート] メニューから Windows Defender ファイアウォールを開きます。 サイド メニューの [詳細設定] を選択し、[受信ルール] を選択します。 ポートを開くには、[新しいルール] を選択します。 ポートを追加し、プロトコルを TCP に設定します。

メトリックの収集と考えられる解決策に関する一般的な問題

  1. SMON メトリック

    前提条件の SMON セクションを 参照してください。

  2. バッチ ジョブメトリック

    ブック タブ "Application Performance -Batch Jobs (SM37)" の一部として空の視覚化が表示される場合は、SAP システムで SAP Note 2469926の SAP Note を適用してください。

    この OSS を適用した後、RFC 関数モジュールを実行する必要があります。BAPI_XMI_LOGON_WS次のパラメーターを指定します。

    この汎用モジュールには、BAPI_XMI_LOGONと同じパラメーターがありますが、テーブルのBTCOPTIONS に格納されます。

    INTERFACE = XBP VERSION = 3.0 EXTCOMPANY = TESTC EXTPRODUCT = TESTP

  3. SWNC メトリック

    SWNC メトリックを確実に正常に取得するには、SAP システムとオペレーティング システム (OS) の両方が時刻を同期していることを確認する必要があります。

次のステップ