7 SAP HANAクラスタの設定 #
YaSTウィザードを使用して、SAP HANAシステムレプリケーションを含むベストプラクティスに従って、SAP HANAまたはSAP S/4HANAデータベースサーバクラスタを設定することができます。セットアップオプションの概要は、1.1.3項 「簡素化されたSAP HANAシステムレプリケーションのセットアップ」を参照してください。
管理者はSAP HANA-SRウィザードを使用して、通常はオンプレミス展開で、モジュールを無人で実行できるようになりました。さらに、AzureでSAP HANAクラスタを設定できるようになりました。YaSTモジュールはAzureで実行されている場合にこれを自動的に認識し、Pacemakerで必要な追加のリソースを設定します。
SUSE Linux Enterprise Server for SAP applicationsリソースライブラリ(https://www.suse.com/products/sles-for-sap/resource-library/)の次の「ベストプラクティス」には、セットアップ手順が記載されています。
パフォーマンス最適化シナリオおよび多層/チェーンシナリオ: Setting up an SAP HANA SR Performance Optimized Infrastructure
コスト最適化シナリオ: Setting up an SAP HANA SR Cost Optimized Infrastructure
以下で説明するYaSTウィザードは、初期クラスタ設定にのみ使用できます。
クラスタを再設定するには、別のYaSTモジュール(パッケージ yast2-clusteryastから使用可能)を使用します。その使用法の詳細については、Administration Guide, Part 「Installation, Setup and Upgrade」, Chapter 「Using the YaST Cluster Module」(https://documentation.suse.com/sles-15)を参照してください。
7.1 前提条件 #
次の手順には前提条件があります。
SAPインストールウィザードまたはSAP HANA Application Lifecycle Managementによって作成されたSAP HANAインストールを両方に備えている2台のマシン。両方のマシンが同じL2ネットワーク(サブネット)上にある必要があります。
多層/チェーンシナリオの場合、第3のマシンが他の場所にもある必要があります。
マシンは高可用性クラスタとしてまだ設定されていません。
openSSHは両方のマシンで動作しており、ノード同士をSSHを介して相互に接続できます。ただし、まだ実行されていない場合、ウィザードはSSHキー交換自体を実行します。
SSHに関する詳細については、Security and Hardening Guide, Part 「Network Security」, Chapter 「SSH: Secure Network Operations」(https://documentation.suse.com/sles-15)を参照してください。
SBDの同じパス下の両方のノードで使用可能なディスクデバイス。ホストベースのRAID、cLVM2を使用したり、DRBDインスタンスに配置したりしないでください。デバイスは、100MBなどの小さなサイズにすることができます。
次のいずれかを作成しています。
プライマリノードのSAP HANAセキュアユーザストアのキー
プライマリノードでのSAP HANAの初期バックアップ
パッケージyast2-sap-haは、プライマリノードとセカンダリノードの両方にインストールされます。
HANA-Firewallは、すべての関連ネットワークインタフェースにおいて、
HANA_HIGH_AVAILABILITYとHANA_SYSTEM_REPLICATIONのルールを用いて両方のコンピュータでセットアップされます。HANA-Firewallの設定方法については、10.2項 「HANA-Firewallの設定」を参照してください。
「コスト最適化シナリオのみ」: セカンダリノードには、2番目のSAP HANAがインストールされています。データベースは実行されている可能性がありますが、ウィザードによって自動的に停止されます。
「コスト最適化シナリオのみ」: 非運用環境のSAP HANAインスタンスの場合、モニタリング用にSAP HANAセキュアユーザストアキー
QASSAPDBCTRLを作成しています。詳細については、『SAP HANA System Replication Scale-Up - Cost Optimized Scenario』ドキュメント(https://documentation.suse.com/sles-sap/)を参照してください。
7.2 セットアップ #
次の手順はプライマリノード(「マスタ」とも呼ばれる)で実行する必要があります。続行する前に、7.1項 「前提条件」に一覧表示されている前提条件が満たされていることを確認してください。
YaSTコントロールセンターを開きます。コントロールセンターで、カテゴリのをクリックします。
SAP HANAインスタンスが検出された場合は、スケールアップシナリオ、、またはから選択できます。これらのスケールアップシナリオについては、1.1.3項 「簡素化されたSAP HANAシステムレプリケーションのセットアップ」を参照してください。
で続行します。
ウィザードのこのステップでは、選択したスケールアップシナリオの前提条件のリストが表示されます。これらの前提条件は、7.1項 「前提条件」に表示されるものと同じです。
で続行します。
次のステップでは、クラスタの通信層を設定できます。
クラスタの名前を入力します。
通常は、デフォルトの転送モードが適切です。
では、通常は単一の通信リングで十分です。
冗長性を確保するため、多くの場合、複数の通信リングではなく、ネットワークインタフェースボンディングを使用する方が良いです。詳細については、Administration Guide, Part 「Configuration and Administration」, Chapter 「Network Device Bonding」(https://documentation.suse.com/sles-15)を参照してください。
通信リングのリストから、有効な各リングを設定します。これを行うには、をクリックし、次に通信するためにネットワークマスク()およびポート()を選択します。
をクリックして、作業を完了します。
また、HMAC/SHA1を使用して、設定同期化サービスCsync2およびCorosyncセキュア認証を有効にするかどうかを決定します。
Csync2に関する詳細については、Administration Guide Part 「Installation, Setup and Upgrade」, Chapter 「Using the YaST Cluster Module」, Section 「Transferring the Configuration to All Nodes」(https://documentation.suse.com/sles-15)を参照してください。
Corosyncセキュア認証の詳細については、Administration Guide, Part 「Installation, Setup and Upgrade」, Chapter 「Using the YaST Cluster Module」, Section 「Defining Authentication Settings」(https://documentation.suse.com/sles-15)を参照してください。
で続行します。
ウィザードでSSHを使用してセカンダリマシンに接続できるかどうかを確認します。可能な場合は、マシンへの
rootパスワードを要求します。rootパスワードを入力します。次回プライマリマシンがセカンダリマシンに接続する必要がある場合、パスワードではなく、SSH証明書を使用して接続します。
両方のマシンで、ホスト名およびIPアドレス(各リング用)をセットアップします。
ここで選択したホスト名は、SAP HANAで選択した仮想ホスト名とは独立しています。ただし、SAP HANAとの問題を避けるため、ホスト名にハイフン文字(
-)を含めないでください。これがSAP HANAの初期インストール中など、以前に実行されていない場合は、すべてのクラスタサーバのホスト名をファイル
/etc/hostsに追加する必要があります。このため、を有効にします。で続行します。
NTPがまだ設定されていない場合は、設定してください。これにより、時刻の違いによって2台のマシンで問題が発生することがなくなります。
をクリックします。
タブで、を有効にします。
をクリックして、タイムサーバを追加します。、の順にクリックします。次に、クラスタ外のタイムサーバのIPアドレスを指定します。をクリックして、サーバへの接続をテストします。
公開タイムサーバを使用するには、 › の順にクリックし、タイムサーバを選択します。をクリックして、作業を完了します。
をクリックして、続行します。
タブで、を有効にします。
で続行します。
次のステップでは、フェンシングオプションを選択します。YaSTウィザードでは、フェンシングメカニズムSBD (「STONITHブロックデバイス」)のみをサポートしています。スプリットブレイン状況を避けるため、SBDはクラスタの状態を保存するディスクデバイスを使用します。
選択したディスクは、クラスタのすべてのマシンから同じパスで使用できる必要があります。理想的には識別用にまたはのいずれかを使用します。
ディスクはホストベースのRAID、cLVM2を使用したり、DRBDインスタンスに配置したりしないでください。デバイスは、100MBなどの小さなサイズにすることができます。
警告: デバイスのデータは失われる選択した1つ以上のSBDデバイスの全データが削除されます。
使用するデバイスを定義するには、をクリックしてからなどの識別方法を選択し、適切なデバイスを選択します。をクリックします。
追加のSBDコマンドラインパラメータを定義するには、それらをに追加します。
マシンが特に速く再起動する場合は、を有効にします。
フェンシングの詳細については、『Administration Guide』(https://documentation.suse.com/sles-15)を参照してください。
で続行します。
次のページでは、SBDデーモン自体の障害から保護し、そのような場合にマシンを強制的に再起動するウォッチドッグの設定が可能です。
また、YaSTを使用してすでに設定されているウォッチドッグ、および現在読み込まれている(
lsmodによって検出された)ウォッチドッグが一覧表示されています。ウォッチドッグを設定するには、を使用します。次にハードウェアに適したウォッチドッグを選択し、をクリックしてダイアログを閉じます
テストするには、ウォッチドッグ
softdogを使用できます。ただし、softdogではなく、運用環境でハードウェアウォッチドッグを使用することを強くお勧めします。ウォッチドッグの選択に関する詳細については、Administration Guide, Part 「Storage and Data Replication」, Chapter 「Storage Protection」, Section 「Conceptual Overview」, Section 「Setting Up Storage-based Protection」, Section 「Setting up the Watchdog」(https://documentation.suse.com/sles-15)を参照してください。で続行します。
SAP HANAのインストール用(1つ以上のインスタンスも可)パラメータを設定します。コスト最適化シナリオを選択している場合は、非運用SAP HANAインスタンスに関連した詳細を追加入力します。
- 運用SAP HANAインスタンス
およびが、SAP HANA設定のそれらと一致していることを確認します。
およびは通常、変更する必要はありません。
これらのパラメータの詳細については、SAPによって提供される、『HANA Administration Guide』を参照してください。
で、プライマリSAP HANAインスタンスの仮想IPアドレスを指定します。で、に適用するサブネットマスクの長さをCIDR形式で設定します。
では、セカンダリインスタンスがプライマリインスタンスのジョブを自動的に引き継ぐ()かどうかを定義します。または、クラスタはプライマリマシンでSAP HANAを再起動します。
は、テイクオーバー後にプライマリマシンとセカンダリマシンが役割を切り替えるかどうかを決定します。
とで2つのノードの運用SAP HANAインスタンスのサイト名を指定します。
データベースのバックアップを持つことが、SAP HANAレプリケーションを設定するための前提条件です。
以前にバックアップを作成したことがない場合は、を有効にします。で、バックアップ用のおよびを設定します。プライマリノードのSAP HANAセキュアユーザストアのキーは、ウィザードの開始前に作成されている必要があります。
詳細については、SAPによって提供されるドキュメントを参照してください。
「コスト最適化シナリオのみ」: 内で、SAP HANAの運用インスタンスがセカンダリノードで無効になっているときの動作方法を設定します。
を設定すると、メモリ使用量を直接制限できます。を有効にすると、メモリ使用量が増加します。
必要なグローバル割り当て制限については、SAPが提供するドキュメントを参照してください。
- 「コスト最適化シナリオのみ」: 非運用SAP HANAインスタンス
およびが、非運用SAP HANAインスタンスのそれらと一致していることを確認します。
これらのパラメータは、SAPインスタンスリソースエージェントを使用して、非運用SAP HANAインスタンスのステータスを監視できるようにするために必要です。
非運用インスタンスを停止し、運用インスタンスを開始し、運用システムの制約を取り除くフックスクリプトを生成します。このスクリプトは、Python 2で記述され、必要に応じて後で変更できます。
をクリックしてから、データベースの正しいユーザ名およびパスワードを設定します。をクリックします。
生成されたフックスクリプトの詳細を、手動で確認および変更できるようになりました。完了したら、をクリックして、フックスクリプトを
/hana/shared/SID/srHookに保存します。警告: パスワードはプレーンテキストで保存されるデフォルトで、フックスクリプトはプレーンテキストですべての資格情報を保存します。セキュリティを向上させるには、スクリプトを自分で変更してください。
で続行します。
図 7.1: SAP HANAのオプション(コスト最適化シナリオ) #ページで、セットアップが正しいことを確認します。
設定の詳細を変更するには、下線付き見出しのいずれかをクリックして、該当するウィザードページに戻ります。
で続行します。
追加のソフトウェアをインストールするかどうかを尋ねられたら、で確認します。
セットアップが完了した後で、クラスタセットアップのログを表示する画面が表示されます。
ダイアログを閉じるには、をクリックします。
「多層/チェーンシナリオのみ」: 運用SAP HANAインスタンスの管理ユーザアカウントを使用して、システムレプリケーション用にクラスタ外ノードを登録します。
SIDadm >hdbnsutil-sr_register --remoteHost=SECONDARY_HOST_NAME \ --remoteInstance=INSTANCE_NUMBER --replicationMode=async \ --name=SITE_NAME
7.3 SAP HANA-SRウィザードを使用した無人セットアップ #
無人セットアップでは、まず、HANAの手動インストールが必要です。その結果が、選択されたすべての設定オプションを含むファイルに保存されます。管理者がインストールを再現する必要がある場合、このファイルを使用してインストールを無人で自動的に実行できます。
そのファイルを使用するには、両方のノードで次の手順を実行します。
SAP HANAがインストールされている運用マシンで、
sap_haYaSTモジュールを実行して、設定ファイルを作成します。最後の画面で、ボタンをクリックします。
実行する操作を決定します。
設定を確認するには、プライマリSAP HANAマシンに設定をアップロードして検証し、次のコマンドを実行します。
#yast2 sap_ha readconfig CONFIGURATION_FILE_PATH確認画面でインストールを開始することができます。
提供された設定ファイルに基づいてインストールを無人で開始するには、次のコマンドを実行します。
#yast2 sap_ha readconfig CONFIGURATION_FILE_PATH unattended
提供された設定ファイルに基づいて、クラスタを無人でインポート、検証、インストールします。
#yast2 sap_ha readconfig CONFIGURATION_FILE_PATH unattended
7.4 Hawkの使用 #
ウィザードを使用してクラスタを設定した後で、ウィザードの最後の画面からHawkを直接開くことができます。
Hawkに再度アクセスするには、ブラウザを開き、URL欄にHawk Webサービスを実行している任意のクラスタノードのIPアドレスまたはホスト名を入力します。または、7.2項 「セットアップ」で設定した仮想IPアドレスを入力します。
https://HAWKSERVER:7630/
Hawkログイン画面で、次のログイン資格情報を使用します。
:
hacluster:
linux
デフォルトのパスワードはできるだけ早くセキュリティ保護されたパスワードに変更します。
#passwd hacluster
7.5 詳細の参照先 #
Hawk. 『Administration Guide』、「Configuration and Administration」パート、「Configuring and Managing Cluster Resources with Hawk」の章(https://documentation.suse.com/sles-15)
SAP HANAシステムレプリケーションのほぼゼロのダウンタイム. Use SAP HANA System Replication for Near Zero Downtime Upgradesボタンをクリックします。
PythonフックSAPHanaSRの実装. https://documentation.suse.com/sbp/all/html/SLES4SAP-hana-sr-guide-PerfOpt-15/


