Linux の SAP NetWeaver での VM の手動デプロイ

このガイドでは、SAP NetWeaver を実行するように構成された VM を Google Cloud 上の Linux ベースのシステムにデプロイし、その VM に接続する方法を説明します。Windows を実行する VM をデプロイする場合は、Windows デプロイガイドをご覧ください。

この手順でデプロイする VM 構成

この手順でデプロイする VM は 3 層構成で使用されます。この構成では、SAP NetWeaver とデータベース サーバーがそれぞれ別個の VM 上で稼働します。デプロイの際には Google のモニタリング エージェントもインストールするため、SAP に指標が送信されていることを確認できます。

SAP NetWeaver がデータベース サーバーと同じ VM 上で稼働している 2 層構成を設定するには、最初にデータベース サーバーをデプロイし、VM を作成して、その時点でデータベース サーバーと SAP NetWeaver の両方に必要なディスク ドライブを作成します。その後、データベース サーバーと同じ VM に SAP NetWeaver をインストールします。2 層構成では、SAP NetWeaver と SAP HANA がそれぞれ異なる SAP システム ID(SID)を使用する必要があります。

データベース サーバー用の VM のデプロイについては、データベース サーバー用のデータベース デプロイガイドをご覧ください。

実装の計画について詳しくは、プランニング ガイドをご覧ください。システムの IT オペレーションの概要については、オペレーション ガイドをご覧ください。

プロジェクトの作成

プロジェクトを作成するには:

  1. Google アカウントにログインします。

    Google アカウントをまだお持ちでない場合は、新しいアカウントを登録します。

  2. Cloud Console のプロジェクト セレクタページで、Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタのページに移動

  3. Google Cloud プロジェクトに対して課金が有効になっていることを確認します。プロジェクトに対して課金が有効になっていることを確認する方法を学習する

gcloud コマンド環境の構成

この手順では、Google Cloud リソースをデプロイまたは構成するための gcloud コマンドを、Cloud Shell を使用して入力します。Cloud Shell には、ブラウザの Cloud Console からアクセスします。

Cloud Shell は、Cloud Shell を起動するたびに Google Cloud がプロビジョニングする VM 上で動作します。初めて Cloud Shell を使用するときには、Google Cloud は永続的な $HOME ディレクトリも作成します。このディレクトリは、Cloud Shell を開くたびに復元されます。

プロビジョニングされた VM には、gcloud コマンドライン インターフェースを提供する最新の Cloud SDK が含まれています。したがって、Cloud Shell で使用する gcloud コマンドは、Cloud SDK のローカルにインストールされたインスタンスで使用するコマンドと同じです。

Cloud SDK がインストールされている場合は、以下の手順の中で使用されている gcloud コマンドをローカルマシンから発行できます。ただし、ローカルにインストールされた Cloud SDK では、必ず最新バージョンの Cloud SDK を使用していることを確認してください。

Cloud Shell と Cloud SDK のどちらを使用する場合も、gcloud コマンド環境のプロパティを設定および変更し、それらを 1 つの構成として保存できます。構成は、gcloud コマンドの動作に影響を与える Key-Value ペアのコレクションです。

Cloud Shell の構成で実行できる基本的な操作は次のとおりです。

  • 構成を gcloud init で初期化する。

  • 現在の gcloud 構成の設定を gcloud config list で確認する。

  • gcloud config set project [PROJECT_ID] を使用して、作業している Google Cloud プロジェクトを変更する。[PROJECT_ID] は Google Cloud プロジェクトを表します。

  • デフォルトのリージョンを gcloud config set compute/region [REGION] で設定する([REGION] は Google Cloud リージョン)。

  • デフォルト ゾーンを gcloud config set compute/zone [ZONE] で設定する([ZONE] は Google Cloud ゾーン)。

  • 新しい構成を gcloud config configurations create [NAME] で作成する([NAME] は構成の名前)。

構成に対する操作について詳しくは、Cloud SDK 構成の管理をご覧ください。

ネットワークの作成

セキュリティ上の目的で新しいネットワークを作成します。アクセスできるユーザーを制御するために、ファイアウォール ルールを追加するか、別のアクセス制御方法を使用します。

プロジェクトにデフォルトの VPC ネットワークがある場合、デフォルトは使用せず、明示的に作成したファイアウォール ルールが唯一の有効なルールとなるように、独自の VPC ネットワークを作成してください。

  1. Cloud Shell に移動します。

    Cloud Shell を開く

  2. カスタム サブネットワーク モードで新しいネットワークを作成します。

    gcloud compute networks create [YOUR_NETWORK_NAME] --subnet-mode custom

    ここで

    • [YOUR_NETWORK_NAME] は新しいネットワークの名前です。ネットワーク名に使えるのは、小文字、数字、ダッシュ(-)のみです。

    デフォルトの自動モードでは、各 Compute Engine リージョンにサブネットが自動的に作成されます。この自動モードを使用しないようにするには、--subnet-mode custom を指定します。詳しくは、サブネット作成モードをご覧ください。

  3. サブネットワークを作成し、リージョンと IP アドレス範囲を指定します。

    gcloud compute networks subnets create [YOUR_SUBNETWORK_NAME] \
        --network [YOUR_NETWORK_NAME] --region [YOUR_REGION] --range [YOUR_RANGE]
    

    ここで

    • [YOUR_SUBNETWORK_NAME] は、新しいサブネットワークです。
    • [YOUR_NETWORK_NAME] は、前の手順で作成したネットワークの名前です。
    • [REGION] は、サブネットワークを配置するリージョンです。SAP NetWeaver でサポートされているリージョンを使用してください。
    • [YOUR_RANGE] は、10.1.0.0/24. などの CIDR 形式で指定された IP アドレス範囲です。複数のサブネットワークを追加する場合は、ネットワーク内の各サブネットワークが重なりあわないように CIDR IP アドレス範囲を割り当ててください。各サブネットワークとその内部 IP アドレス範囲は、単一のリージョンにマッピングされることに注意してください。
  4. 必要に応じて前の手順を繰り返し、サブネットワークを追加します。

NAT ゲートウェイを設定する

パブリック IP アドレスを持たない VM を作成する場合は、VM がインターネットにアクセスして Google のモニタリング エージェントをダウンロードできるように、NAT ゲートウェイを作成する必要があります。VM に外部パブリック IP アドレスを割り当てる場合は、この手順をスキップできます。

  1. 前の手順で作成したサブネットで NAT ゲートウェイとして機能する VM を作成します。

    gcloud compute instances create [YOUR_VM_NAME] --can-ip-forward \
        --zone [YOUR_ZONE] --image-family [YOUR_IMAGE_FAMILY] \
        --image-project [YOUR_IMAGE_PROJECT] --machine-type=[YOUR_MACHINE_TYPE] \
        --subnet [YOUR_SUBNETWORK_NAME] \
        --metadata startup-script="sysctl -w net.ipv4.ip_forward=1; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE" \
        --tags [YOUR_VM_TAG]
    

    ここで

    • [YOUR_VM_NAME] は、作成する VM の名前です。この VM を NAT ゲートウェイに使用します。
    • [YOUR_ZONE] は、VM を配置するゾーンです。
    • [YOUR_IMAGE_FAMILY][YOUR_IMAGE_PROJECT] には、NAT ゲートウェイ VM に使用するイメージを指定します。SAP NetWeaver コンポーネントに SUSE Linux Enterprise Server(SLES)を使用する場合は、ゲートウェイに対して SLES VM も指定する必要があります。ただし、Red Hat Enterprise Linux(RHEL)を使用する場合、ゲートウェイのプレミアム イメージを選択する必要はありません。たとえば、最新バージョンの Debian を選択するには、--image-family debian--image-project debian-cloud を指定します。
    • [YOUR_MACHINE_TYPE] は、サポートされている任意のマシンタイプです。高いネットワーク トラフィックが予想される場合は、少なくとも 8 つの仮想 CPU を搭載したマシンタイプを選択してください。
    • [YOUR_SUBNETWORK_NAME] は、VM を配置するサブネットワークの名前です。
    • [YOUR_VM_TAG] は、作成する VM に適用されるタグです。この VM を踏み台インスタンスとしても使用する場合、このタグはファイアウォール ルールをこの VM にのみ適用するために使用されます。
  2. トラフィックがデフォルトのインターネット ゲートウェイではなく NAT VM を通過するようにタグ付けされたルートを作成します。

    gcloud compute routes create [YOUR_ROUTE_NAME] --network [YOUR_NETWORK_NAME] \
        --destination-range 0.0.0.0/0 --next-hop-instance [YOUR_VM_NAME] \
        --next-hop-instance-zone [YOUR_ZONE] --tags [YOUR_TAG_NAME] --priority 800
    

    ここで

    • [YOUR_ROUTE_NAME] は、作成するルートの名前です。
    • [YOUR_NETWORK_NAME] は、作成したネットワークです。
    • [YOUR_VM_NAME] は、NAT ゲートウェイに使用している VM です。
    • [YOUR_ZONE] は、VM を配置するゾーンです。
    • [YOUR_TAG_NAME] は、NAT VM を通過するようにトラフィックを誘導するルート上のタグです。
  3. NAT ゲートウェイ VM を踏み台インスタンスとしても使用する場合は、次のコマンドを実行してインターネットからこのインスタンスへの受信 SSH アクセスを許可します。

    gcloud compute firewall-rules create allow-ssh --network [YOUR_NETWORK_NAME] \
        --allow tcp:22 --source-ranges 0.0.0.0/0 --target-tags "[YOUR_VM_TAG]"
    

    ここで

    • [YOUR_NETWORK_NAME] は、作成したネットワークです。
    • [YOUR_VM_TAG] は、NAT ゲートウェイ VM を作成したときに指定したタグです。このタグを使用すると、このファイアウォール ルールが NAT ゲートウェイをホストする VM にのみ適用され、ネットワーク内のそれ以外の VM には適用されません。

ファイアウォール ルールの追加

デフォルトでは、Google Cloud ネットワークの外部からの受信接続はブロックされています。受信側の接続を許可するには、VM にファイアウォール ルールを設定します。ファイアウォール ルールは、VM への新しい受信接続のみを規制します。VM との接続が確立された後、トラフィックはその接続の両方向で許可されます。

指定したポートへのアクセスや、同じサブネットワーク上の VM 間のアクセスを許可するファイアウォール ルールを作成できます。

次のようなアクセスを許可するためのファイアウォール ルールを作成します。

  • TCP/IP Ports of All SAP Products に記述されている SAP NetWeaver によって使用されるデフォルトのポート。
  • 自分のパソコンまたは企業のネットワーク環境から Compute Engine VM インスタンスへの接続。使用すべき IP アドレスがわからない場合は、会社のネットワーク管理者に相談してください。
  • 3 層構成またはスケールアウト構成の VM 間の通信。たとえば、3 層システムをデプロイしている場合、サブネットワークに少なくとも 2 つの VM(SAP NetWeaver 用の VM とデータベース サーバー用の VM)が存在することになります。2 つの VM 間の通信を有効にするには、サブネットワークから発信されるトラフィックを許可するファイアウォール ルールを作成する必要があります。
  • ポート 22 を介した VM インスタンスへの SSH 接続(ブラウザからの SSH 接続など)。
  • サードパーティ製ツール(ローカル ターミナルや PuTTY など)から VM インスタンスへの接続。ファイアウォール ルールを作成して、ツールのアクセスを許可します。詳細については、サードパーティ製ツールを使用して接続するをご覧ください。

ファイアウォール ルールを作成するには:

  1. Cloud Console で、[ファイアウォール ルール] ページに移動します。

    [ファイアウォール ルール] ページを開く

  2. ページ上部の [ファイアウォール ルールを作成] をクリックします。

    • [ネットワーク] フィールドで、VM が配置されているネットワークを選択します。
    • [ターゲット] フィールドで、[ネットワーク上のすべてのインスタンス] を選択します。
    • [ソースフィルタ] フィールドで、次のいずれかを選択します。
      • 特定の IP アドレスからのトラフィックを許可する場合は、[IP 範囲] を選択します。[ソース IP の範囲] フィールドで IP アドレスの範囲を指定します。
      • サブネット: 特定のサブネットワークからの受信トラフィックを許可する場合に使用します。次の [サブネット] フィールドにサブネットワーク名を指定します。このオプションを使用すると、3 層構成またはスケールアウト構成で VM 間のアクセスを許可できます。
    • [プロトコルとポート] セクションで、[指定したプロトコルとポート] を選択して tcp:[PORT_NUMBER]; を指定します。
  3. [作成] をクリックしてファイアウォール ルールを作成します。

VM を手動でデプロイする

以下の手順で、Linux を実行するサンプルの 3 層 SAP システムをデプロイする方法を説明します。このシステムがデータベースとして実行するのは、SAP HANA、SAP ASE、または IBM Db2 for Linux、UNIX、Windows(IBM Db2)のいずれかです。データベース コンポーネントは、SAP セントラル サービスを含むその他の SAP コンポーネントが稼働する VM とは異なる VM 上で稼働します。

スケールアウト システムに関する一般的な考慮事項については、3 層スケールアウト システムのデプロイをご覧ください。

VM を作成して設定する

VM を作成するときに、オペレーティング システム、リージョン、マシンタイプ、永続ディスクなど、いくつかのオプションを指定できます。VM のデプロイ後、SAP NetWeaver 用の Google Cloud モニタリング エージェントも VM にインストールする必要があります。

VM を作成するには:

  1. Compute Engine の [イメージ] ページに移動します。

    [イメージ] ページに移動

  2. 公開イメージを使用するには、次のいずれかのイメージ ファミリーのイメージを選択します。

    • RHEL の場合は、名前が rhel- で始まるイメージを選択します(rhel-7-sap-apps など)。
    • SLES の場合は、名前が sles- で始まるイメージを選択します(sles-12-sp3-sap など)。
  3. [インスタンスを作成] ボタンをクリックします。

  4. VM の名前を入力します。

    名前は最大 13 文字です。これは SAP でサポートされている最大文字数です。詳細については、SAP Note 611361: Hostnames of SAP servers をご覧ください。

  5. 内部リソースとユーザーのロケーション、使用する CPU プラットフォームに基づいて、VM のリージョンとゾーンを選択します。

    SAP NetWeaver でサポートされているゾーンについて詳しくは、以下のガイドと SAP Note をご覧ください。

  6. [マシンタイプ] で、定義済みマシンタイプの n1-standard または n1-highmem を選択するか、見込まれるワークロードとより正確に一致するように VM をカスタマイズします。

    サポートされているマシンタイプとそれぞれの永続ディスクの制限を比較するには、プランニング ガイドをご覧ください。

  7. 必要に応じて、[ブートディスク] セクションの [変更] をクリックして、ブートディスクを構成します。Linux システムの場合は必ず、ブートディスクのサイズが 16 GB 以上になるようにしてください。

  8. [サービス アカウント] で、VM から Google Cloud リソースへのアクセスを適切に制限するサービス アカウントを選択します。

    サービス アカウントを作成していない場合はデフォルトのサービス アカウントを使用できますが、デフォルトのサービス アカウントは、企業ユーザーの大半にとっては制限が緩すぎます。サービス アカウントの詳細については、SAP プログラム向け IAM をご覧ください。

  9. [アクセス スコープ] で、次の操作を行います。

    • Compute Engine のデフォルト サービス アカウントを使用している場合は、[各 API にアクセス権を設定] を選択します。
    • Google Cloud リソースへのアクセスを制限するカスタム サービス アカウントを使用している場合は、[すべての API への完全アクセス権を許可] を選択します。

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

    [各 API にアクセス権を設定] を選択した場合、VM インスタンスが Compute Engine や Cloud Monitoring とやり取りできるようにして、Google モニタリング エージェントが正常に機能するようにするには、サービス アカウントに次の API アクセス スコープを設定することをおすすめします。

    API アクセス
    Cloud Source Repositories 読み取り / 書き込み
    Compute Engine 読み取り / 書き込み
    Service Control 有効
    Service Management 読み取りのみ
    Cloud Logging API フル
    Cloud Monitoring API フル
    Cloud Trace 書き込みのみ
    Storage フル
  10. [管理、セキュリティ、ディスク、ネットワーク、単一テナンシー] セクションを展開します。

  11. NAT ゲートウェイを使用している場合は、[ネットワーキング] タブの [ネットワーク タグ] で、トラフィックがゲートウェイを通過するようにルートを設定したときに [YOUR_TAG_NAME] として指定したタグを追加します。

  12. [管理] タブの [可用性ポリシー] で、次の設定をデフォルトのままにします。

    • SAP システムの可用性を確保するために、[プリエンプティブ] 設定を [オフ(推奨)] のままにします。
    • メンテナンスまたは障害のイベントが発生した場合に VM が確実に再起動できるように、[自動再起動] 設定を [オン(推奨)] のままにします。
    • インフラストラクチャのメンテナンス中に VM が他のハードウェアに確実に移行されるように、[ホスト メンテナンス時] 設定を [VM インスタンスを移行(推奨)] のままにします。
  13. 必要に応じて、[ディスク] タブの [ブートディスク] > [削除ルール] で、[インスタンスを削除する際にブートディスクを削除する] チェックボックスをオフにします。

  14. [ディスク] タブの [追加ディスク] で [新しいディスクを追加] をクリックし、ストレージ用の永続ディスクを追加します。

    NetWeaver の場合、SAP NetWeaver バイナリ用のディスクとスワップ ディスクを追加します。データベース サーバーの場合は、データベース データやログなどのためのディスクも必要です。選択できる永続ディスクの種類については、永続ディスク ストレージをご覧ください。

    1. 必要に応じて、[名前] フィールドに名前を入力します。

    2. [ディスクの作成] ウィンドウの [ディスクタイプ] で、ディスクの目的に応じてディスクタイプを選択します。

    3. [ソースの種類] で [空のディスク] を選択します。

    4. ディスクのサイズを指定します。

      スワップ ディスクの場合は、必要に応じてディスクのサイズを調整します。推奨される最小サイズは 24 GB です。インスタンスのサイズが大きい場合は、これよりもサイズを大きくする必要があります。詳しくは、SAP のドキュメント( SAP Note 1597355 - Swap-space recommendation for Linux など)をご覧ください。

    5. [完了] をクリックします。

    6. 以上の手順を繰り返して、システムに必要な各ディスクを作成します。

  15. [ネットワーキング] タブの [ネットワーク インターフェース] で鉛筆アイコンをクリックし、選択したネットワーク インターフェースを編集します。

    1. 前に作成したネットワークを選択します。
    2. サブネットワークを選択します。
    3. [完了] をクリックします。
  16. [作成] をクリックしてインスタンスを作成し、そのインスタンスを起動します。

ページの下部にある [REST] または [コマンドライン] をクリックすると、作成中のインスタンスに対する同等の REST や gcloud コマンドを確認できます。これは、さらに VM を作成する際に役立ちます。

VM に接続する

ポート 22 でアクセスを許可するファイアウォール ルールを定義した場合は、一般的な SSH ツールを使用して Linux VM に接続できます。

GCP では簡単な 2 つの接続方法として、Cloud Console でボタンをクリックして接続することも、ターミナルから gcloud コマンドを使用して接続することもできます。

Console

Google Cloud Console でウェブブラウザから SSH に直接接続するには、次の手順を行います。

  1. Cloud Console で、[VM インスタンス] ページに移動します。

    [VM インスタンス] ページに移動

  2. 仮想マシン インスタンスのリストで、接続するインスタンスの行にある [SSH] をクリックします。

    インスタンス名の横にある SSH ボタン。

gcloud

gcloud コマンドライン ツールは、必要に応じて新しいプロジェクト全体の SSH 認証鍵を生成して適用することによって、SSH 認証鍵を管理します。gcloud ツールを使用して接続するには、次のコマンドを使用します。コマンドに含まれる角かっことその内容は、実際の値で置き換えてください。

gcloud compute --project "[VM-GCP-PROJECT]" ssh --zone "[VM-ZONE]" "[VM-NAME]"

このコマンドを送信すると、ターミナルが Google Cloud 上の VM に接続され、Linux VM に対してコマンドを実行できるようになります。完了したら、exit コマンドを使用して VM との接続を解除します。

また、Linux VM 用に新しい鍵ペアを生成してプロジェクトに適用すると、Windows ワークステーション用の PuTTY などのサードパーティ製ツールを使用した接続も可能になります。詳しくは、新しい SSH 認証鍵ペアの作成をご覧ください。

ここでは説明しませんが、他にも使用できる接続オプションがあります。

Google Cloud 上の Linux VM に接続する方法について詳しくは、Linux インスタンスへの接続をご覧ください。

ディスク ドライブのフォーマットとマウント

VM に接続したら、ディスク ドライブをフォーマットしてマウントします。これには、SAP ディスク ドライブとスワップ ディスク ドライブも含まれます。

SAP ディスク ドライブをフォーマットしてマウントする

/usr/sap ディスクをフォーマットしてマウントするには、以下の手順に従います。/sapmnt/backup などの他のディスクの場合は、コマンド例で使用している usrsap/usr/sap といったボリューム識別子およびマウント ポイント識別子を、該当するディスクの識別子で置き換えてください。

  1. VM に接続されているターミナルで、スーパー ユーザーに切り替えます。

    sudo su -

  2. ディスクの物理ボリュームを作成します。

    pvcreate /dev/disk/by-id/google-[DISK]

  3. ディスクのボリューム グループを作成します。

    vgcreate vg_usrsap /dev/disk/by-id/google-[DISK]

  4. ディスクの論理ボリュームを作成します。

    lvcreate -l 100%FREE -n vol vg_usrsap

  5. ディスクをフォーマットします。次のコマンドは、各ディスクを、単一の xfs ファイル システムを使用し、パーティション テーブルを使用せずにフォーマットします。

    mkfs -t xfs /dev/vg_usrsap/vol

  6. ファイル システム テーブル fstab を更新します。

    echo "/dev/vg_usrsap/vol /usr/sap xfs defaults,discard,nofail 0 2" >>/etc/fstab

    ディスクが存在しない場合でもインスタンスがブートを継続できるように、nofail オプションを指定します。たとえば、ブートディスクのスナップショットを作成し、永続ディスクをアタッチせずに新しいインスタンスを作成した場合、インスタンスは起動プロセスを続行でき、いつまでも一時停止することはありません。

  7. マウント ポイントを作成します。

    mkdir -p /usr/sap

  8. ディスクを VM にマウントします。

    mount -a

  9. ディスクが正しくマウントされていることを確認します。

    df -h

    出力は次のようになります。

     Filesystem                 Size  Used Avail Use% Mounted on
     devtmpfs                    15G  8.0K   15G   1% /dev
     tmpfs                       23G     0   23G   0% /dev/shm
     tmpfs                       15G  9.7M   15G   1% /run
     /dev/sda1                   16G  1.8G   14G  12% /
     tmpfs                       15G     0   15G   0% /sys/fs/cgroup
     tmpfs                      3.0G     0  3.0G   0% /run/user/1001
     /dev/mapper/vg_usrsap-vol   15G   33M   15G   1% /usr/sap
     /dev/mapper/vg_sapmnt-vol   15G   33M   15G   1% /sapmnt

  10. 追加するルールごとに上記の手順を繰り返します。

スワップ ディスクをフォーマットしてマウントする

  1. VM に接続されているターミナルで、スワップ ディスクの物理ボリュームを作成します。

    pvcreate /dev/disk/by-id/google-[DISK]

  2. スワップ ディスクのボリューム グループを作成します。

    vgcreate vg_swap /dev/disk/by-id/google-[DISK]

  3. スワップ ディスクの論理ボリュームを作成します。

    lvcreate -l 100%FREE -n vol vg_swap

  4. スワップ ディスクをフォーマットします。

    mkswap /dev/vg_swap/vol

  5. fstab を更新します。

    echo "/dev/vg_swap/vol none swap defaults,nofail 0 2" >>/etc/fstab

  6. ディスクを VM にマウントします。

    swapon /dev/vg_swap/vol

オペレーティング システムの準備

VM を作成したら、インストールに関する以下の SAP Note を参照し、そこで指定されているソフトウェア コンポーネントがシステムに含まれていることを確認します。

データベースの設定

データベースを Google Cloud にまだデプロイしていない場合は、データベース用の Google Cloud デプロイガイドとデータベース ベンダーから提供されるデータベース ドキュメントの両方のデータベース設定手順に従ってください。

Google Cloud では、以下の SAP 認定データベース用のデプロイガイドを用意しています。

SAP NetWeaver とデータベース サーバーが 3 層アーキテクチャの異なる VM 上で実行されている場合は、ファイアウォール ルールが VM 間の通信を許可するように定義されていることを確認してください。

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

Cloud Logging エージェントは、オペレーティング システム イベント(SAP HANA を使用している場合は SAP HANA イベント)などの Google Cloud システム アクティビティのロギング ソリューションを提供します。Cloud Logging エージェントは省略可能ですが、おすすめのコンポーネントです。Google Cloud Logging について詳しくは、Google Cloud 上の SAP NetWeaver オペレーション ガイドをご覧ください。

Cloud Logging エージェントを新しい VM にインストールするには、エージェントのインストールの Linux および Windows 用の手順をご覧ください。

SAP NetWeaver 用の Google Cloud モニタリング エージェントをインストールする

SAP NetWeaver 用の Google Cloud モニタリング エージェントは、Google Cloud 上での SAP NetWeaver の SAP サポートに必要です。SAP NetWeaver 用のモニタリング エージェントは、Monitoring と Compute Engine API のモニタリング データを結合し、そのデータを SAP Host Agent に提供します。

Google Cloud モニタリング エージェントの前提条件

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

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

  • Compute Engine: 読み取り専用
  • Stackdriver Monitoring API: 読み取り専用

外部 IP アドレスのない VM で SAP NetWeaver を実行している場合は、Google Cloud モニタリング エージェントが Google API とサービスにアクセスできるように、VM のサブネットで限定公開の Google アクセスを有効にする必要があります。

サブネットで限定公開の Google アクセスを有効にするには、限定公開の Google アクセスの構成をご覧ください。

SAP NetWeaver 用のモニタリング エージェントのインストール

エージェントをインストールするには、ホスト VM で root として次のコマンドを実行します。

# curl -s https://storage.googleapis.com/sap-netweaver-on-gcp/setupagent_linux.sh | bash

モニタリング エージェントをインストールすると、付属のインストール スクリプトによって以下のタスクが実行されます。

  • 最新バージョンのモニタリング エージェントをダウンロードします。
  • OpenJDK ライブラリや SIGAR ライブラリなどの依存関係をダウンロードします。
+ 次のタスクを実行する 2 つの cron ジョブを root として作成します。

+  Monitors whether the metrics agent is running and restarts the agent if
   necessary.
+  Refreshes the agent when Google updates the metrics agent provider.
  • これらの cron エントリを表示するには、次を実行します。

    sudo crontab -l

SAP NetWeaver と SAP Host Agent のインストール後に、モニタリング エージェントのインストールを検証します。

Google モニタリング エージェントの詳細については、オペレーション ガイドをご覧ください。

SAP NetWeaver をインストールする

新しい VM に SAP NetWeaver をインストールする手順については、SAP ヘルプポータルSAP NetWeaver マスターガイドをご覧ください。

SAP NetWeaver をインストールしたら、次の手順を実施します。

  1. SAP カーネルをサポートされている最小のパッチレベルに更新します。

    サポートされている SAP カーネルのパッチレベルについて詳しくは、SAP Note 2446441 - Linux on Google Cloud (IaaS): Adaptation of your SAP License をご覧ください。

  2. SAP NetWeaver の永続ライセンスをインストールします。

    SAP NetWeaver ライセンスの管理に関する SAP の詳細情報については、SAP Licensing Procedure をご覧ください。

SAP Host Agent をインストールする

SAP Host Agent が Google Cloud 上で動作するように拡張されました。Google Cloud 環境に必要な最小バージョンの SAP Host Agent を必ず実行してください。

詳しくは、以下の SAP Note をご覧ください。

モニタリング エージェントのインストールを確認する

VM をデプロイして SAP NetWeaver をインストールしたら、Google のモニタリング エージェントが SAP の拡張モニタリングで正しく機能していることを確認します。

Google のモニタリング エージェントが実行されていることを確認する

サーバーからヘルスチェックをポーリングすることで、モニタリング エージェントが実行されているかどうかを確認できます。手順は次のとおりです。

  1. Cloud Console で Cloud Shell を開きます。

    Cloud Shell を開く

  2. モニタリング対象の VM インスタンスに接続します。接続方法の詳細については、VM に接続するをご覧ください。

  3. コマンド プロンプトで、次のコマンドを入力します。

    curl http://localhost:18181/health

モニタリング エージェントが正常に機能している場合、status の値は UP になります。例:

{"status":"UP","diskSpace":{"status":"UP","total":105552769024,"free":103920615424,"threshold":10485760}}

モニタリング エージェントが実行されていない場合は、オペレーション ガイドの Google のモニタリング エージェントの再起動についてのセクションをご覧ください。

SAP NetWeaver が指標を受け取っていることを確認する

Google のモニタリング エージェントと SAP NetWeaver の間の接続が意図したとおりに機能するかどうか確認するには、SAP NetWeaver ABAP システムにトランザクション ST06 を入力します。概要ウィンドウで可用性と以下のフィールドの内容を確認し、SAP と Google モニタリング インフラストラクチャのエンドツーエンドの設定が正しいか調べます。

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

トラブルシューティング

このセクションでは、一般的な問題を修正する方法について説明します。

データベース サーバーとの通信問題のトラブルシューティング

3 層 SAP システムを設定していて、VM 間の接続に問題がある場合は、サブネットワーク上の VM 間のトラフィックを許可するファイアウォール ルールを作成したことを確認してください。

VM への接続に関するトラブルシューティング

ssh 経由で VM に接続する際に問題がある場合は、使用している Google Cloud ネットワーク上でポート 22 をオープンにするファイアウォール ルールが作成されていることを確認してください。

その他の考えられる問題については、ブラウザから SSH 経由で接続する際の既知の問題をご覧ください。

Google のモニタリング エージェントのトラブルシューティング

モニタリング エージェントのトラブルシューティングについては、オペレーション ガイドをご覧ください。