RHELで実現するSAPシステムの高可用性

レッドハット ソリューションアーキテクト石倉です。

この記事は、RED HAT BLOGのブログ記事、High availability for SAP on Red Hat Enterprise Linux の翻訳記事です。

Red Hat Enterprise Linux (RHEL) は、アプリケーションおよびデータベース (DB) レベルでビジネスクリティカルなワークロードに高可用性 (HA) を長期間提供してきました。
これにより、サービスのアップタイムを最大化し、予期しない中断を最小限に抑え、重要な環境をより回復力のあるものにしています。

RHEL High Availability Solutions for SAP (Red Hat Enterprise Linux for SAP Solutions サブスクリプションに含まれるRHEL HA アドオンで実現します) を利用することで、共有ファイルシステム、データベース、メッセージ サーバー、エンキュー サーバーなどの単一障害点 (SPOF) を回避することが出来ます。

SAP HANA の場合、DB にはSAP社が提供する、 SAP HANA システム レプリケーション (HSR) と呼ばれるメカニズムが組み込まれています。
このメカニズムでは、DB を 1 つ以上のノードに複製しますが、問題が発生した場合の自動フェイルオーバーは提供しません。
代わりに、RHEL HA Solutions for SAP が自動フェイルオーバーを処理します。
RHEL HA Solutions for SAP を活用することで、真夜中に DB の手動フェイルオーバーを実行する必要がなくなり、SAP Basis エンジニアはよりぐっすりと眠ることができます。

Red Hat と SAP社 のコラボレーションは、DB レイヤーとアプリケーション レイヤーの両方に組み込まれた新しい HA シナリオとモデルが RHEL HA Solutions for SAP によってカバーされ、利用ユーザがその恩恵を受けることができることを意味します。
Red Hat は、RHEL のさまざまなリリースで HA の広範なテストを実行し、それぞれのシナリオとモデルで SAP社 の認定を取得しています。


アプリケーション レベルでの高可用性について

アプリケーションレベルでは、HA を実現するために ENSA1 と ENSA2 という 2 つのモデルが SAP社 より提供されています。
ENSA1 モデルは SAP NetWeaver ベースの古いバージョンの SAP 製品で使用されます。
一方、ENSA2 モデルは SAP NetWeaver (version 7.51以降) と SAP S/4HANA (version 1809以降) で利用が推奨されています。
どちらのモデルでも、エンキュー サーバー (すべてのユーザーロック依頼をロックテーブルに格納するサーバー) が複製され、障害が発生した場合に DB でデータが上書きされないため、一貫性が保たれます ( ENSA1 と ENSA2 の違いの詳細については、次のブログ、「Evolution of ENSA2 and ERS2… | SAP Blogs」 を参照してください)。

前述の SAP HANA システム レプリケーションのケースと同様に、フェイルオーバーは自動的に行われないため、RHEL HA Solutions for SAP は、このレイヤーを 2 つ、ないし 3 つ以上のノードのクラスターに追加します (3 つ以上のノードは、ENSA2 を実装する場合にのみ適用出来ます)。

一部の利用ユーザは、コストを削減するために、同じサーバーに DB とアプリケーションを配置する場合があります (主にクラウド サービスを使用していて、支出を最小限に抑える必要がある場合)。
また、プライマリ アプリケーション インスタンス (PAS) と他のアプリケーション インスタンスも 1 つのホスト上に持つことができます。
これらのシナリオ、いわゆるコスト最適化デプロイメントも、RHEL HA Solutions for SAP でカバーされています。

HANA システム レプリケーションと ENSA2 の両方を単一クラスターで管理する場合の HA クラスターをセットアップ方法の詳細については、Red Hat カスタマー ポータルの 「Configuring Cost-Optimized SAP S/4HANA ASCS/ERS/HDB with Standalone Enqueue Server 2 (ENSA 2) in a Pacemaker Cluster - Red Hat Customer Portal」を参照してください。


DB レベルでの高可用性について

DB レイヤーの可用性については、ここでは SAP HANA に焦点を当てます。
SAP HANA インスタンスは、1 つのサーバーにインストールすることも、複数のサーバーに分散してリソースを増やすこともできます。

1 つのサーバーにインストールするケースは、追加のリソースが必要な場合に同じサーバーに追加されるため、「スケールアップ構成"scale-up deployment"」と呼ばれ、複数のサーバーに分散するケースは「スケールアウト構成"scale-out deployment"」と呼ばれます。
両方のケースで高可用性を提供できます。
最初のケースでは、同じリソースを持つ同一のインスタンスが (同じリソースと SID を持つ) 別のサーバーにインストールされ、2 番目のケースでは、同じ構成が同じ数のホストに複製されます。

前述したように、SAP HANA システム レプリケーションはデータのレプリケーションと一貫性を提供しますが、問題が発生した場合にリソースの自動フェイルオーバーを処理するには、RHEL HA Solutions for SAP などのクラスター ソリューションが必要です。

さらに冗長性を実現するために、SAP HANA 1.0 SP12 ではマルチティア システム レプリケーション"Multitier System Replication"が導入されました。
これにより、DB が複製され、レプリカが第 3 層に複製されます。

その後、SAP HANA 2.0 SP03 でマルチターゲット システム レプリケーション"Multitarget System Replication"が導入され、元の DB を複数のターゲットに同時にレプリケートすることで、さらなる冗長性が提供されます。
マルチターゲットではセカンダリに障害が発生した場合でも、3 番目はプライマリと同期されますが、マルチティアでは、セカンダリに障害が発生した場合、プライマリの変更が 3 番目に伝播されなくなります。

どちらのシナリオも、RHEL 8 for SAP Solutions 以降の RHEL HA Solutions for SAP の現在のバージョンでサポートされています。

また、もう一つ、追加のコスト最適化シナリオがあります。
このシナリオでは、セカンダリ サーバーはプライマリ DB のレプリカを持つだけでなく、例えば、DEV または QAS といった本番以外のインスタンスの DB もホストします。
両方の DB がシステムリソースを共有することになるため、フェールオーバーの際は、すべてのリソースを本番データベースに割り当てるために、最初に DEV/QAS DB をシャットダウンする必要があります。

RHEL HA Solutions for SAP は、RHEL 8 for SAP Solutions (およびそれ以降) のバージョンでこのソリューションをサポートしています。このソリューションの詳細については、「Automating Cost-Optimized SAP HANA Scale-Up System Replication using the RHEL HA Add-On - Red Hat Customer Portal」を参照してください。

下の記事では、サポートされているすべての HA シナリオの詳細な説明を見つけることができます。
Supported HA Scenarios for SAP HANA, SAP S/4HANA, and SAP NetWeaver - Red Hat Customer Portal


自動化ソリューションの活用について

Red Hat Ansible Automation Platform は、クラスターの作成や運用を含め、IT ランドスケープの多くの部分を自動化できるソリューションです。
自動化ソリューションの活用によって、Pacemaker クラスターを構成するプロセスが簡素化され、人的エラーが減少します。
構成がテストされて検証され、テンプレートとして組み込まれると、Ansible ロールと Playbook が何度でも安定したデプロイを提供します。
次のブログでは、Red Hat Ansible Automation Platform を使用して SAP HANA Pacemaker クラスターを自動的に作成する方法について説明しています。
Automating SAP HANA HA configuration with Ansible and Red Hat HA Add-On | SAP Blogs

また、HA は計画外の停止を回避するだけでなく、自動化ソリューションと組み合わせて使用​​して、計画的なメンテナンス アクティビティのダウンタイムを最小限に抑えることにも利用できます。
詳細は以下のポートフォリオ アーキテクチャを参照してください。
https://www.redhat.com/architect/portfolio/architecturedetail?ppid=11


信頼性もコスト効率も高い SAP システム

SAP ワークロードは組織の中核に位置しており、非常に重要です。
そのため、(計画的および計画外の) 停止を最小限に抑えながらアップタイムを最大化することは、IT 部門の重要なミッションです。
RHEL HA Solutions for SAP がサポートする最新のシナリオにより、利用ユーザは SAP システムがビジネス ニーズに対応できるという確信をさらに深めることができ、より高いレベルのデータ冗長性を実現しながらスムーズなユーザー エクスペリエンスが提供出来ます。

また、SAP HANA のコストが最適化されたソリューションのサポートは、コンピューティング リソースへの支出を大幅に削減するのに役立ちます。
特に、ハイブリッド クラウド環境で、コストをコントロールするためにパブリック クラウドを最大限に活用したいと考えている場合は効果的です。


関連情報

www.redhat.com

www.redhat.com

* 各記事は著者の見解によるものでありその所属組織を代表する公式なものではありません。その内容については非公式見解を含みます。