ホストの自動フェイルオーバーを使用した SAP HANA スケールアウト システムの導入ガイド

このガイドでは、Cloud Deployment Manager を使用して、SAP HANA スケールアウト システムをデプロイする方法について説明します。これには、SUSE Linux Enterprise Server(SLES)上の SAP HANA ホスト自動フェイルオーバー障害復旧ソリューションが含まれます。Deployment Manager を使用すると、SAP のサポート要件を満たすシステムをデプロイし、SAP と Compute Engine 両方のベスト プラクティスに準拠できます。作成された SAP HANA システムでは、1 つのマスターホスト、最大 15 までのワーカーホスト、最大 3 つまでのスタンバイ ホストを、1 つの Compute Engine ゾーン内に作成できます。

ホスト自動フェイルオーバー機能が不要な場合は、このガイドを使用せずに SAP HANA デプロイガイドを使用してください。単一ホスト構成のスケールアップ SAP HANA システム用に、Linux の高可用性クラスタをデプロイする必要がある場合は、SLES での SAP HANA 高可用性クラスタのデプロイガイドを使用してください。

このガイドは、高可用性のためのスタンバイ ホストおよびネットワーク ファイル システムを含む SAP のスケールアウト構成に精通した SAP HANA の上級ユーザーを対象としています。

前提条件

SAP HANA 高可用性スケールアウト システムを作成する前に、以下の要件を確認してください。

  • 個人または組織の GCP アカウントがあり、SAP HANA をデプロイするためのプロジェクトが作成済み。GCP アカウントとプロジェクトの作成については、SAP HANA 導入ガイドの Google アカウントの設定をご覧ください。
  • SAP HANA のインストール メディアが、ユーザーのデプロイ プロジェクトおよびリージョンで利用可能な Cloud Storage バケットに格納されている。SAP HANA インストール メディアを Cloud Storage バケットにアップロードする方法については、SAP HANA 導入ガイドの Cloud Storage バケットの作成をご覧ください。
  • マネージド Cloud Filestore ソリューションなどの NFS ソリューションがあり、スケールアウト SAP HANA システム内のホスト間で SAP HANA の /hana/shared ボリュームおよび /hanabackup ボリュームを共有できる。Deployment Manager の構成ファイルで NFS サーバーのマウント ポイントを指定してから、システムをデプロイします。Cloud Filestore NFS サーバーをデプロイするには、インスタンスの作成を参照してください。

ネットワークの作成

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

プロジェクトにデフォルトの VPC ネットワークがあっても、使用しないでください。代わりに独自の VPC ネットワークを作成することで、明示的に作成したファイアウォール ルールのみを有効にできます。

デプロイ中、VM インスタンスは通常、Google のモニタリング エージェントをダウンロードするためにインターネットにアクセスする必要があります。GCP から入手できる SAP 認定の Linux イメージのいずれかを使用している場合も、ライセンスを登録して OS ベンダーのリポジトリにアクセスするために、VM インスタンスからインターネットにアクセスする必要があります。ターゲット VM に外部 IP がない場合でも、NAT ゲートウェイと VM ネットワーク タグを使用した構成でこのアクセスがサポートされます。

ネットワークを設定するには:

  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] は、サブネットワークを配置するリージョンです。
    • [YOUR_RANGE] は、10.1.0.0/24 などの CIDR 形式で指定された IP アドレス範囲です。複数のサブネットワークを追加する場合は、ネットワーク内の各サブネットワークに重複しない CIDR IP 範囲を割り当ててください。各サブネットワークとその内部 IP 範囲は、単一のリージョンにマッピングされることに注意してください。
  4. 必要に応じて、前の手順を繰り返して、サブネットワークを追加します。

NAT ゲートウェイの設定

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

VM に外部パブリック IP アドレスを割り当てる場合は、この手順をスキップできます。

NAT ゲートウェイを作成するには:

  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] は、NAT ゲートウェイに使用する、作成中の VM の名前です。
    • [YOUR_ZONE] は、VM を配置するゾーンです。
    • [YOUR_IMAGE_FAMILY][YOUR_IMAGE_PROJECT] には、NAT ゲートウェイに使用するイメージを指定します。
    • [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 には適用されないようにするために使用されます。

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

デフォルトでは、暗黙のファイアウォール ルールにより、Virtual Private Cloud(VPC)ネットワークの外部からの受信接続がブロックされます。受信接続を許可するには、VM にファイアウォール ルールを設定します。VM との接続が確立された後、トラフィックはその接続を介して双方向に許可されます。

特定のポートへの外部アクセスを許可したり、同じネットワーク上の VM 間のアクセスを制限するためのファイアウォール ルールを作成したりできます。VPC ネットワーク タイプとして default が使用されている場合は、default-allow-internal ルールなどの追加のデフォルト ルールも適用されます。追加のデフォルト ルールでは、すべてのポートで同じネットワーク上の VM 間の接続が許可されます。

ご使用の環境に適用可能な IT ポリシーによっては、データベース ホストへの接続を分離するか制限しなければならない場合があります。これを行うには、ファイアウォール ルールを作成します。

目的のシナリオに応じて、次の対象にアクセスを許可するファイアウォール ルールを作成できます。

  • すべての SAP プロダクトの TCP/IP にリストされているデフォルトの SAP ポート。
  • パソコンまたは企業のネットワーク環境から Compute Engine VM インスタンスへの接続。使用すべき IP アドレスがわからない場合は、社内のネットワーク管理者に確認してください。
  • VM 間の通信(例: データベース サーバーとアプリケーション サーバーが異なる VM 上で実行されている場合)。VM 間の通信を有効にするには、サブネットワークから発信されるトラフィックを許可するファイアウォール ルールを作成する必要があります。
  • VM インスタンスへの SSH 接続。ブラウザからの SSH 接続など。
  • Linux のサードパーティ製ツールを使用した VM への接続。ファイアウォール ルールを作成して、ツールのアクセスを許可します。

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

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

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

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

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

スタンバイ ホストを使用した SAP HANA スケールアウト システムの作成

次の手順では、以下の作業を実行します。

  • 作成済みの構成ファイルのテンプレートを使用して Deployment Manager を呼び出し、SAP HANA システムを作成します。
  • デプロイを確認します。
  • ホストエラーをシミュレーションして、スタンバイ ホストをテストします。

次の手順の一部では、Cloud Shell を使用して gcloud コマンドを入力します。最新バージョンの Cloud SDK がインストールされている場合は、ローカル ターミナルからも gcloud コマンドを入力できます。

SAP HANA システムの定義と作成

次の手順では、Deployment Manager の構成ファイル テンプレートをダウンロードして完成させ、Deployment Manager を呼び出します。これにより、VM、永続ディスク、SAP HANA インスタンスがデプロイされます。

  1. 永続ディスクや CPU などプロジェクトのリソースの現在の割り当てが、インストールしようとしている SAP HANA システムに対して十分であることを確認します。割り当てが不足していると、デプロイは失敗します。SAP HANA の割り当て要件については、SAP HANA の料金と割り当てに関する考慮事項をご覧ください。

    [割り当て] ページに移動します。

  2. Cloud Shell を開きます。

    Cloud Shell に移動

  3. SAP HANA 高可用性スケールアウト システム用に、template.yaml 構成ファイルのテンプレートを作業ディレクトリにダウンロードします。

    wget https://storage.googleapis.com/sapdeploy/dm-templates/sap_hana_scaleout/template.yaml
    
  4. 必要に応じて template.yaml のファイル名を変更し、このファイルで定義する構成がわかるようにします。たとえば、hana2sp3rev30-scaleout.yaml のようなファイル名を使用できます。

  5. Cloud Shell コードエディタで template.yaml ファイルを開きます。

    Cloud Shell コードエディタを開くには、Cloud Shell ターミナル ウィンドウの右上隅にある鉛筆アイコンをクリックします。

  6. template.yaml ファイルで、括弧で囲まれた内容をご使用のインストール環境の値で置き換えて、以下のプロパティ値を更新します。たとえば、[ZONE] を「us-central1-f」に置き換えます。

    プロパティ データ型 説明
    instanceName 文字列 SAP HANA マスターホストの VM インスタンスの名前。名前の指定に使用できるのは、小文字、数字、ハイフンに限られます。ワーカーホストとスタンバイ ホストの VM インスタンスの名前は同じになり、「w」とホスト番号が追加された名前を用います。
    instanceType 文字列 SAP HANA を実行する Compute Engine 仮想マシンのタイプ。
    zone 文字列 SAP HANA システムをデプロイして実行するゾーン。サブネットに選択したリージョン内である必要があります。
    subnetwork 文字列 前のステップで作成したサブネットワークの名前。共有 VPC にデプロイする場合は、この値を [SHAREDVPC_PROJECT]/[SUBNETWORK] の形式で指定します。たとえば、myproject/network1 とします。
    linuxImage 文字列 SAP HANA で使用する Linux オペレーティング システム イメージまたはイメージ ファミリーの名前。イメージ ファミリーを指定するには、ファミリー名にプレフィックス family/ を追加します。たとえば、family / sles-12-sp3-sap とします。特定のイメージを指定するには、イメージ名のみを指定します。利用可能なイメージ ファミリーの一覧については、GCP Console の [イメージ] ページをご覧ください。
    linuxImageProject 文字列 使用するイメージを含む GCP プロジェクト。このプロジェクトはご自身のプロジェクトか、GCP イメージ プロジェクトです。SLES の場合は、suse-sap-cloud を指定します。GCP イメージ プロジェクトの一覧については、Compute Engine ドキュメントのイメージのページをご覧ください。
    sap_hana_deployment_bucket 文字列 前のステップでアップロードした SAP HANA インストール ファイルを含む、プロジェクト内の Cloud Storage バケットの名前。
    sap_hana_sid 文字列 SAP HANA システム ID。ID は英数字 3 文字で、最初の文字はアルファベットである必要があります。文字は大文字のみ使用できます。
    sap_hana_instance_number 整数 SAP HANA システムのインスタンス番号(0〜99)。デフォルトは 0 です。
    sap_hana_sidadm_password 文字列 オペレーティング システムの管理者パスワード。パスワードは 8 文字以上で設定し、少なくとも英大文字、英小文字、数字をそれぞれ 1 文字以上含める必要があります。
    sap_hana_system_password 文字列 データベースのスーパー ユーザー用パスワード。パスワードは 8 文字以上で設定し、少なくとも英大文字、英小文字、数字をそれぞれ 1 文字以上含める必要があります。
    sap_hana_worker_nodes 整数 追加で必要な SAP HANA ワーカーホストの数。1〜15 のワーカーホスト数を指定できます。デフォルトの値は 1 です。
    sap_hana_standby_nodes 整数 追加で必要な SAP HANA スタンバイ ホストの数。1〜3 のスタンバイ ホスト数を指定できます。デフォルト値は 1 です。
    sap_hana_shared_nfs 文字列 /hana/shared ボリュームの NFS マウント ポイント。たとえば、10.151.91.122:/hana_shared_nfs のようになります。
    sap_hana_backup_nfs 文字列 /hanabackup ボリュームの NFS マウント ポイント。たとえば、10.216.41.122:/hana_backup_nfs になります。
    networkTag 文字列 省略可。ファイアウォールまたはルーティングの目的で使用される、VM インスタンスを表すネットワーク タグ。カンマ区切りで複数指定できます。publicIP: No を指定していて、ネットワーク タグを指定しない場合は、インターネットへの別のアクセス手段を必ず指定してください。
    publicIP ブール値 省略可。パブリック IP アドレスを VM インスタンスに追加するかどうかを指定します。デフォルトは Yes です。
    sap_hana_double_volume_size 整数 省略可。HANA のボリューム サイズを 2 倍にします。複数の SAP HANA インスタンスまたは障害復旧 SAP HANA インスタンスを、同じ VM にデプロイする場合に便利です。デフォルトでは、ボリューム サイズは SAP の認定要件とサポート要件を満たしつつ、メモリ フットプリントに必要な最小サイズになるように自動的に計算されます。
    sap_hana_sidadm_uid 整数 省略可。[SID]adm ユーザー ID のデフォルト値をオーバーライドします。デフォルト値は 900 です。SAP ランドスケープ内での整合性を保つために、別の値に変更できます。
    sap_hana_sapsys_gid 整数 省略可。sapsys のデフォルトのグループ ID をオーバーライドします。デフォルトは 79 です。
    sap_deployment_debug ブール値 省略可。この値が Yes に設定されている場合、デプロイメントの際に詳細なログが生成されます。Google のサポート エンジニアからデバッグを有効にするように求められない限り、この設定はオンにしないでください。
    post_deployment_script ブール値 省略可。デプロイが完了した後に実行するスクリプトの URL または保存場所。スクリプトは、ウェブサーバーか Cloud Storage バケットでホストする必要があります。値は、http://、https://、gs:// のいずれかで始めます。このスクリプトは、テンプレートで作成されたすべての VM で実行されることに注意してください。マスター インスタンスでのみ実行したい場合は、スクリプトの先頭にチェックを追加する必要があります。

    以下は、us-central1-f ゾーンに 3 つのワーカーホストと 1 つのスタンバイ ホストを設定して、SAP HANA スケールアウト システムをデプロイする構成ファイルの例です。各ホストは、SLES 12 SP2 オペレーティング システムを実行する n1-highmem-32 VM にインストールされています。ワーカーホストとスタンバイ ホストは、2 つの NFS インスタンスを介して /hana/shared ボリュームおよび /hanabackup ボリュームにアクセスします。

    imports:
    ‐ path: https://storage.googleapis.com/sapdeploy/dm-templates/sap_hana_scaleout/sap_hana_scaleout.py
    
    resources:
    ‐ name: sap_hana_ha_scaleout
      type: https://storage.googleapis.com/sapdeploy/dm-templates/sap_hana_scaleout/sap_hana_scaleout.py
      properties:
        instanceName: hana-scaleout-w-failover
        instanceType: n1-highmem-32
        zone: us-central1-f
        subnetwork: example-sub-network-sap
        linuxImage: family/sles-12-sp2-sap
        linuxImageProject: suse-sap-cloud
        sap_hana_deployment_bucket: hana2-sp3-rev30
        sap_hana_sid: HS0
        sap_hana_instance_number: 00
        sap_hana_sidadm_password: Google123
        sap_hana_system_password: Google123
        sap_hana_worker_nodes: 3
        sap_hana_standby_nodes: 1
        sap_hana_shared_nfs: 10.151.91.122:/hana_shared_nfs
        sap_hana_backup_nfs: 10.216.41.122:/hana_backup_nfs
    
  7. 次のコマンドを実行して、インスタンスを作成します。

    gcloud deployment-manager deployments create [DEPLOYMENT_NAME] --config [TEMPLATE_NAME].yaml
    

    上記のコマンドによって Deployment Manager が起動すると、template.yaml ファイルの仕様に従って VM がデプロイされ、SAP HANA ソフトウェアがストレージ バケットからダウンロードされて SAP HANA がインストールされます。この処理には数分かかることがあります。

デプロイの確認

デプロイを確認するには、Stackdriver でデプロイログを確認し、プライマリ ホストとワーカーホストの VM 上でディスクとサービスを確認し、SAP HANA Studio でシステムを表示して、スタンバイ ホストでテイクオーバーのテストを行います。

デプロイログを確認する

  1. Stackdriver Logging を開き、インストールの進行状況をモニタリングして、エラーを確認します。

    Stackdriver Logging に移動

  2. リソース リストボックスから、[Global] を選択します。すべての VM で "INSTANCE DEPLOYMENT COMPLETE" と表示されれば、Deployment Manager の処理は完了しています。

    Stackdriver Logging の表示。

VM に接続して、ディスクと SAP HANA サービスを確認する

デプロイが完了したら、マスターホストといずれか 1 つのワーカーホストのディスクとサービスの状態をみて、ディスクと SAP HANA サービスが正しくデプロイされていることを確認します。

  1. Compute Engine VM インスタンスのページで、2 つの VM インスタンスそれぞれの行に表示された [SSH] ボタンをクリックして、マスターホストの VM といずれか 1 つのワーカーホストの VM に接続します。

    [VM インスタンス] に移動

    ワーカーホストに接続するときは、スタンバイ ホストに接続していないことを確認してください。スタンバイ ホストはワーカーホストと同じ命名規則を使用しますが、最初のテイクオーバーが行われるまでは、最も大きな数字のサフィックスをもつワーカーがスタンバイ ホストになります。たとえば、3 つのワーカーホストと 1 つのスタンバイ ホストがある場合、最初のテイクオーバーまでは、スタンバイ ホストのサフィックスは「w4」になります。

  2. 各ターミナル ウィンドウで、root ユーザーに変更します。

    sudo su -
  3. 各ターミナル ウィンドウで、ディスク ファイル システムを表示します。

    df -h

    マスターホストでは、出力は次のようになります。

    hana-scaleout-w-failover:~ # df -h
      Filesystem                       Size  Used Avail Use% Mounted on
      devtmpfs                         103G     0  103G   0% /dev
      tmpfs                            103G     0  103G   0% /dev/shm
      tmpfs                            103G   18M  103G   1% /run
      tmpfs                            103G     0  103G   0% /sys/fs/cgroup
      /dev/sda3                         44G  2.3G   40G   6% /
      /dev/sda2                        200M  660K  200M   1% /boot/efi
      10.113.193.146:/hana_shared_nfs 1007G   40G  917G   5% /hana/shared
      172.26.41.90:/hana_backup_nfs    2.0T   80M  1.9T   1% /hanabackup
      /dev/mapper/vg_hana-data         1.5T  6.7G  1.5T   1% /hana/data/HF0/mnt00001
      /dev/mapper/vg_hana-log          256G  5.2G  251G   2% /hana/log/HF0/mnt00001
      tmpfs                             21G     0   21G   0% /run/user/900
      tmpfs                             21G     0   21G   0% /run/user/489
      tmpfs                             21G     0   21G   0% /run/user/1001

    ワーカーホストで、/hana/data ディレクトリと /hana/log ディレクトリのマウントが異なることに注意してください。障害が発生したホストからテイクオーバーされるまでは、スタンバイ ホストにデータ ディレクトリとログ ディレクトリはマウントされません。

    hana-scaleout-w-failoverw2:~ # df -h
      Filesystem                       Size  Used Avail Use% Mounted on
      devtmpfs                         103G     0  103G   0% /dev
      tmpfs                            103G     0  103G   0% /dev/shm
      tmpfs                            103G   18M  103G   1% /run
      tmpfs                            103G     0  103G   0% /sys/fs/cgroup
      /dev/sda3                         44G  2.3G   40G   6% /
      /dev/sda2                        200M  660K  200M   1% /boot/efi
      10.113.193.146:/hana_shared_nfs 1007G   40G  917G   5% /hana/shared
      172.26.41.90:/hana_backup_nfs    2.0T   80M  1.9T   1% /hanabackup
      tmpfs                             21G     0   21G   0% /run/user/0
      /dev/mapper/vg_hana-data         1.5T  291M  1.5T   1% /hana/data/HF0/mnt00003
      /dev/mapper/vg_hana-log          256G  2.1G  254G   1% /hana/log/HF0/mnt00003
      tmpfs                             21G     0   21G   0% /run/user/1001

  4. 各ターミナル ウィンドウで、SAP HANA オペレーティング システムのユーザーに切り替えます。[SID] を、構成ファイルのテンプレートで指定した [SID] 値に置き換えます。

    su - [SID]adm
    
  5. 各ターミナル ウィンドウで、hdbnameserverhdbindexserver などの SAP HANA サービスが、インスタンスで実行されていることを確認します。

    HDB info
    

    マスターホストでは、出力は次のようになります。

    hf0adm@hana-scaleout-w-failover:/usr/sap/HF0/HDB00> HDB info
      USER       PID  PPID %CPU    VSZ   RSS COMMAND
      hf0adm   19179 19178  0.4  14244  4128 -sh
      hf0adm   19237 19179  0.0  13392  3444  _ /bin/sh /usr/sap/HF0/HDB00/HDB info
      hf0adm   19268 19237  0.0  36884  2996      _ ps fx -U hf0adm -o user,pid,ppid,pcpu,vsz,rss,
      hf0adm   10350     1  0.0  22752  2924 sapstart pf=/hana/shared/HF0/profile/HF0_HDB00_hana-sc
      hf0adm   10358 10350  0.0 229216 49092  _ /usr/sap/HF0/HDB00/hana-scaleout-w-failover/trace/
      hf0adm   10374 10358 14.0 15907624 11835064      _ hdbnameserver
      hf0adm   10566 10358  0.5 5237888 427576      _ hdbcompileserver
      hf0adm   10568 10358 64.6 15150420 13585664      _ hdbpreprocessor
      hf0adm   10608 10358 15.3 16239280 12293788      _ hdbindexserver -port 30003
      hf0adm   10610 10358  1.3 5982992 1295864      _ hdbxsengine -port 30007
      hf0adm   11029 10358  0.6 5539856 443452      _ hdbwebdispatcher
      hf0adm   10224     1  0.0 562984 29324 /usr/sap/HF0/HDB00/exe/sapstartsrv pf=/hana/shared/HF0
      hf0adm   10086     1  0.0  36868  4640 /usr/lib/systemd/systemd --user
      hf0adm   10091 10086  0.0  86144  1780  _ (sd-pam)

    ワーカーホストでは、出力は次のようになります。

    hf0adm@hana-scaleout-w-failoverw2:/usr/sap/HF0/HDB00> HDB info
      USER       PID  PPID %CPU    VSZ   RSS COMMAND
      hf0adm   14537 14536  0.1  14244  4060 -sh
      hf0adm   14595 14537  0.0  13392  3460  _ /bin/sh /usr/sap/HF0/HDB00/HDB info
      hf0adm   14626 14595  0.0  36884  3000      _ ps fx -U hf0adm -o user,pid,ppid,pcpu,vsz,rss,
      hf0adm    8138     1  0.0  22756  2980 sapstart pf=/hana/shared/HF0/profile/HF0_HDB00_hana-sc
      hf0adm    8147  8138  0.0 229216 49260  _ /usr/sap/HF0/HDB00/hana-scaleout-w-failoverw2/trac
      hf0adm    8163  8147  0.7 5695208 669864      _ hdbnameserver
      hf0adm    8377  8147  0.4 4320596 373216      _ hdbcompileserver
      hf0adm    8379  8147  0.5 4996000 433976      _ hdbpreprocessor
      hf0adm    8419  8147  2.2 6607404 1885664      _ hdbindexserver -port 30003
      hf0adm    8605  8147  0.6 4753424 428688      _ hdbwebdispatcher
      hf0adm    8057     1  0.0 497336 28788 /hana/shared/HF0/HDB00/exe/sapstartsrv pf=/hana/shared

SAP HANA Studio を接続する

  1. SAP HANA Studio から、SAP HANA のマスターホストに接続します。

    GCP 外の SAP HANA Studio のインスタンス、あるいは GCP のインスタンスから接続できます。ターゲット VM と SAP HANA Studio 間で、ネットワーク アクセスを有効にする必要がある場合があります。

    SAP HANA Studio を GCP で使用して、SAP HANA システムへのアクセスを有効にする方法については、Compute Engine の Windows VM での SAP HANA Studio のインストールをご覧ください。

  2. SAP HANA Studio で、デフォルトのシステム管理パネルの [Landscape] タブをクリックすると、次のように表示されます。

    SAP HANA Studio のランドスケープ ビューのスクリーンショット

確認ステップの途中でインストールに失敗したことが示された場合、次の手順を行います。

  1. エラーを修正します。
  2. [デプロイ] ページで、デプロイメントを削除します。
  3. デプロイを再実行します。

フェイルオーバー テストを実行する

SAP HANA システムが正常にデプロイされたことを確認したら、フェイルオーバー機能をテストします。

次の手順では、SAP HANA オペレーティング システムのユーザーに切り替えて HDB stop コマンドを入力し、フェイルオーバーをトリガーします。HDB stop コマンドは、SAP HANA の正常なシャットダウンを開始してホストからディスクを切断します。このため、比較的迅速なフェイルオーバーが可能です。

フェイルオーバーを行うには、次の手順に従います。

  1. SSH を使用して、ワーカーホストの VM に接続します。各 VM インスタンスの [SSH] ボタンをクリックして、Compute Engine VM インスタンス ページから接続するか、任意の SSH メソッドを使用できます。

    [VM インスタンス] に移動

  2. SAP HANA オペレーティング システムのユーザーに切り替えます。次の例では、[SID] を、ユーザーがシステム用に定義した SID で置き換えます。

    su - [SID]adm
  3. SAP HANA を停止して、障害をシミュレートします。

    HDB stop

    HDB stop コマンドで SAP HANA のシャットダウンが開始され、フェイルオーバーがトリガーされます。フェイルオーバーの間、ディスクは障害が発生したホストから切断され、スタンバイ ホストに再接続されます。障害が発生したホストは、再起動してスタンバイ ホストになります。

  4. テイクオーバーの完了を待って、障害が発生したホストを引き継いだホストに、SSH を使用して再接続します。

  5. root ユーザーに切り替えます。

    sudo su -
  6. マスターホストとワーカーホスト用の VM のディスク ファイル システムを表示します。

    df -h

    出力は次のようになります。障害が発生したホストの /hana/data および /hana/log ディレクトリが、テイクオーバーしたホストにマウントされています。

    hana-scaleout-w-failoverw4:~ # df -h
      Filesystem                       Size  Used Avail Use% Mounted on
      devtmpfs                         103G     0  103G   0% /dev
      tmpfs                            103G     0  103G   0% /dev/shm
      tmpfs                            103G   18M  103G   1% /run
      tmpfs                            103G     0  103G   0% /sys/fs/cgroup
      /dev/sda3                         44G  2.3G   40G   6% /
      /dev/sda2                        200M  660K  200M   1% /boot/efi
      10.113.193.146:/hana_shared_nfs 1007G   40G  917G   5% /hana/shared
      172.26.41.90:/hana_backup_nfs    2.0T   80M  1.9T   1% /hanabackup
      tmpfs                             21G     0   21G   0% /run/user/0
      /dev/mapper/vg_hana-data         1.5T  483M  1.5T   1% /hana/data/HF0/mnt00003
      /dev/mapper/vg_hana-log          256G  2.1G  254G   1% /hana/log/HF0/mnt00003
      tmpfs                             21G     0   21G   0% /run/user/1001

  7. SAP HANA Studio で、SAP HANA システムの [Landscape] ビューを開き、フェイルオーバーが正常に完了したことを確認します。

    • フェイルオーバーに関係したホストのステータスは、INFO と表示されます。
    • [Index Server Role(Actual)] 列に、障害が発生したホストが新しいスタンバイ ホストとして表示されます。

    SAP HANA Studio のランドスケープ ビューのスクリーンショット

NAT ゲートウェイのインストールを実行する

NAT ゲートウェイを作成した場合は、Cloud Shell で次の手順を行います。

  1. Cloud Shell で、ワーカーホストを含むすべてのインスタンスにタグを追加します。

    export NETWORK_NAME="[YOUR_NETWORK_NAME]"
    export TAG="[YOUR_TAG_TEXT]"
    gcloud compute instances add-tags "[PRIMARY_VM_NAME]" --tags="$TAG" --zone=[PRIMARY_VM_ZONE]
    gcloud compute instances add-tags "[SECONDARY_VM_NAME]" --tags="$TAG" --zone=[SECONDARY_VM_ZONE]
  2. Cloud Shell で、外部 IP を削除します。

    gcloud compute instances delete-access-config "[PRIMARY_VM_NAME]" --access-config-name "external-nat" --zone=[PRIMARY_VM_ZONE]
    gcloud compute instances delete-access-config "[SECONDARY_VM_NAME]" --access-config-name "external-nat" --zone=[SECONDARY_VM_ZONE]

SAP HANA 用に Google のモニタリング エージェントを設定する

必要に応じて、SAP HANA 用に Google のモニタリング エージェントを設定できます。これは、SAP HANA から指標を収集して、Stackdriver Monitoring に送信するものです。Stackdriver Monitoring を使用すると、指標に関するダッシュボードの作成や、指標のしきい値に基づいたカスタム アラートの設定が可能になります。SAP HANA 用の Google のモニタリング エージェントの設定と構成の詳細については、SAP HANA モニタリング エージェント ユーザーガイドをご覧ください。

SAP HANA へ接続する

この手順では SAP HANA に外部 IP を使用しないため、SAP HANA インスタンスに接続できるのは、SSH を使用して踏み台インスタンスを経由するか、SAP HANA Studio を使用して Windows サーバーを経由する場合だけになることに注意してください。

  • 踏み台インスタンスを介して SAP HANA に接続するには、踏み台インスタンスに接続してから、任意の SSH クライアントを使用して SAP HANA インスタンスに接続します。

  • SAP HANA Studio を経由して SAP HANA データベースに接続するには、リモート デスクトップ クライアントを使用して、Windows Server インスタンスに接続します。接続後、手動で SAP HANA Studio をインストールし、SAP HANA データベースにアクセスします。

デプロイ後の作業を実行する

SAP HANA インスタンスを使用する前に、次のデプロイ後の手順を実行することをおすすめします。詳しくは、SAP HANA のインストールおよび更新ガイドをご覧ください。

  1. SAP HANA ソフトウェアを、最新のパッチで更新します。

  2. アプリケーション機能ライブラリ(AFL)またはスマートデータ アクセス(SDA)などの、追加コンポーネントがあればインストールします。

  3. 新しい SAP HANA データベースを、構成してバックアップをとります。詳細については、SAP HANA オペレーション ガイドをご覧ください。

次のステップ

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...