LTN Blog 〜 Lenovo Technology Network 〜

レノボのソリューション・サーバー製品に関する技術情報、お役立ち情報をお届けします

SAP HANA on Nutanixのベストプラクティスについて

皆さん、こんにちは レノボ・エンタープライズ・ソリューションズ 小宮です。本日は以前にもお話したSAP HANA on Nutanixに関するベストプラクティスについてお話したいと思います。

こちらの内容についてですが、ちょうど一年前にNutanixのAHVにおいて、SAP HANAでのAHV認定がちょうど発表された時期だったと思います。

 

Nutanix Enterprise Cloud OSのハイパーコンバージェンスベース・ソリューション、SAP HANA®認証を取得 | Nutanix

 

昨年のNutanix .NEXT TokyoでのセッションにてSAP HANA on Nutanixの話をさせて頂きましたが、当時はまだ製品リリース間もない頃で、必要なテクノロジーの話をさせて頂きました。

 

ついに出たミッションクリティカル向けのNutanixモデル(ThinkAgile HX for SAP HANA)~ThinkAgile HX7820/HX7821のご紹介~ - LTN Blog 〜 Lenovo Technology Network 〜

 

一年ほど経過現在では、HX7820の導入事例もいくつで出てきており、また一部のお客様ではSAP HANA on Nutanixの案件も出てきております。

そこで今回は、SAP HANA on Nutanix に関するポイントとなる点をお話したいと思います。

 

1.CPUに関するベストプラクティス

f:id:t_komiya:20190831203207p:plain

SAP HANA で認定を取るためにはパフォーマンス(SAP値)が出せるようなスペックでなければいけません。

そのため、選択CPUについても現状はSkylake世代(Cascade Lake世代の認定はまだとられておりません)のCPUになっておりますが、SkyLake世代においても、PlatinumのCPUもしくはGoldシリーズ以上が必要になります。加えて最低要件として8コア以上のCPUが必須になります。

NutanixのおいてはCVMがCPUのオーバーヘッドになることから、SAP HANAを動作させるノードにおいては、必ず1CPUはCVM用にリソースを取られることになります。(HANA以外のアプリケーションはCVMと同一CPUで動作させても問題ありません)

f:id:t_komiya:20190831203804p:plain

SAP HANAはインメモリデータベースということもあり、仮想マシン起動時に仮想マシンのメモリ上にデータベースのデータをロードを行います。数百GBもしくは1TBレベルのメモリを必要としますので、1CPUのメモリ領域では収まらないこともありますので、CPU間でメモリ利用できるように共有できるようなアーキテクチャ(NUMA)を利用して、大容量のインメモリデータベースを形成します。

f:id:t_komiya:20190831203033p:plain

例えば、小さなSAP HANAのデータベースがホスト内の3台存在する場合について、このようになります。

768GB以下の容量で起動可能なレベルであれば、1CPUのメモリ空間をそのまま利用できますので、各SAP HANA VMがそのまま固定して動作します。NUMAノードのすべてのCPUのリソースを効率良く活用できるようになります。

f:id:t_komiya:20190831204930p:plain

今度は2つのSAP HANA VMが存在するケースで1つのSAP HANA VMが大きくメモリ領域を確保してしまうケースはこのように最大1.5TBまで確保するVMと768GBまでしか確保できないSAP HANA VMが存在するような形になります。

f:id:t_komiya:20190831205317p:plain

次に1つの巨大VMが3つのCPU分のメモリ領域を利用した場合に関してのイメージです。この場合は3つのCPU(NUMAノード)が固定で利用されます。

このように、CPUとメモリ領域を把握した上での運用がSAP HANAに関しては必要になってきます。

2.メモリに関するベストプラクティス

f:id:t_komiya:20190831205623p:plain

メモリに関する注意事項についてですが、インメモリデータベースということもあり、メモリのパフォーマンスは同一である必要があります。選択するCPUにより、メモリのスピード(周波数)が異なります。必ずメモリのスピードは合わせるようにして下さい。また、メモリオーバーコミットは許可されておりません。

Cascade LakeシリーズのCPUについては、CPUの種類によってメモリ容量が異なります。CPUの型番の末尾に「M」もしくは「L」のタイプのものを選択するようにして下さい。

3.ディスクに関するベストプラクティス

f:id:t_komiya:20190831210355p:plain

ディスク(ストレージ)部分については、トランザクションを即座に処理できるようなデバイスが求められております。

通常はオールフラッシュは必須ですが、インメモリデータベースのトランザクションのため、早いことに越したことはありません。ThinkAgile HX for SAP HANAのアプライアンスに関しては、デフォルトでNVMeの利用を推奨されております。

f:id:t_komiya:20190831211132p:plain

ディスクに関する細かな仕様をこちらに記載します。

SSD部分に関してはは8本以上が必須になります。また、SAP HANA DBのメモリサイズの2.5倍の容量が最小ディスクサイズになります。

サイジングする際はReplication Factorのオーバーヘッドも考慮したサイジングが必要になります。

4.ネットワークに関するベストプラクティス

f:id:t_komiya:20190831211828p:plain

ネットワークについてですが、SAP HANA環境では10GbE以上が推奨となっております。10GbE以上のスループットがあれば、速い分にはいくらでも構いませんが、SAP HANA on Nutanixにおいては、データをネットワーク経由でアクセスする際に、CPUにおけるオーバーヘッドを少なくするために、RDMAの技術を利用することが推奨とされております。この場合、SAP HANAを構成するノードはすべてRDMA対応のNICで構成されていることが前提であり、非RDMAノードとの混在は許可されておりません。

RDMAはデフォルトでCVMのeth3のインタフェースにデプロイされます。

5.仮想マシンのデザインに関するベストプラクティス

f:id:t_komiya:20190831212701p:plain

f:id:t_komiya:20190831213010p:plain

仮想マシンのデザインについては、先ほどお話したNUMAの領域に準拠する必要があります。それ以外の内容についてはイメージに記載してあり通りになります。
落とし穴として考慮しなければいけないところは省電力状態の内容になります。
6.運用に関するベストプラクティス

f:id:t_komiya:20190831213233p:plain

運用に関しては、注意すべき点はやはりAOSのバージョンです。本番環境にSTSのバージョンを利用することは基本的に推奨されておりません。LTSのバージョンで運用するようにして下さい。

詳細はCertified and Supported SAP HANA Hardware Directoryをご参照ください。

7.可用性・バックアップに関するベストプラクティス

f:id:t_komiya:20190831213539p:plain

可用性およびバックアップに関する内容ですが、N+1の考慮は当然のお話として対応しなければいけませんが、4ノードスタートで十分なリソースで運用することをお薦めします。

また、データベースのレプリケーション機能は利用するようにして下さい。NutanixのDRソリューションは現状未サポートになっております。
バックアップについては現状3rdパーティのバックアップソフトウェアを推奨しております。対応しているソフトウェアとしては、Veeam,HYCUなどがあります。

また、バックアップしたデータについては、必ずリストアのテストを行うようにして下さい。バックアップしたデータがリストアできないケースもありますので、非常事態に備えることも必要です。

 

以上、SAP HANA on Nutanixするときには一度参考にして頂ければと思います。

 

よろしくお願い致します。