Azure Files SMB を使用した HA SAP NetWeaver のインストール

Microsoft と SAP では、Azure Files Premium Server Message Block (SMB) ファイル共有が完全にサポートされるようになりました。 SAP Software Provisioning Manager (SWPM) 1.0 SP32 および SWPM 2.0 SP09 (以降) では、Azure Files Premium SMB ストレージがサポートされます。

Azure Files Premium SMB 共有のサイズ設定には特別な要件があります。 この記事では、ワークロードを分散し、適切なストレージ サイズを選択し、Azure Files Premium SMB の最小インストール要件を満たす方法に関する具体的な推奨事項について説明します。

高可用性 (HA) SAP ソリューションでは、sapmnt ディレクトリ、トランスポート ディレクトリ、インターフェイス ディレクトリをホストするための高可用性ファイル共有が必要です。 Azure Files Premium SMB は、SAP on Windows 環境用の共有ファイル システム用のシンプルな Azure サービスとしてのプラットフォーム (PaaS) ソリューションです。 Azure Files Premium SMB は、可用性セットおよび可用性ゾーンと共に使用できます。 別のリージョンへのディザスター リカバリー (DR) シナリオに Azure Files Premium SMB を使用することもできます。

Note

ファイル共有を使用した SAP ASCS/SCS インスタンスのクラスタリングは、SAP Kernel 7.22 (以降) を使用する SAP システムでサポートされています。 詳細については、「SAP Note 2698948」を参照してください。

SAP システム用の Azure Files Premium SMB のサイズ設定と分散

Azure Files Premium SMB のデプロイを計画する場合は、次の点を評価します。

  • ファイル共有名 sapmnt は、ストレージ アカウントごとに 1 回作成できます。 /sapmnt/<SID1>/sapmnt/<SID2> など、同じ /sapmnt 共有上のディレクトリとして追加のストレージ ID (SID) を作成できます。
  • 適切なサイズ、IOPS、スループットを選択します。 共有の推奨サイズは、SID あたり 256 GB です。 共有の最大サイズは 5,120 GB です。
  • ストレージ アカウントあたり 100 万ファイルを超える非常に大きな sapmnt 共有では、Azure Files Premium SMB のパフォーマンスが低下する可能性があります。  何百万ものジョブ ログ ファイルを作成する何百万ものバッチ ジョブがあるお客様は、SAP Note 16083 で説明されているように、それらのジョブを定期的に再構成する必要があります。 必要に応じて、古いジョブ ログを別の Azure Files Premium SMB ファイル共有に移動またはアーカイブすることができます。 sapmnt が非常に大きくなることが予想される場合は、他のオプション (Azure NetApp Files など) を検討してください。
  • プライベート ネットワーク エンドポイントを使用することお勧めします。
  • 1 つのストレージ アカウントとそのファイル共有に配置する SID が多くなりすぎないようにしてください。
  • 一般的なガイダンスとして、4 つ以上の非運用環境 SID をまとめないでください。
  • 開発、運用、品質保証システム (QAS) 全体を 1 つのストレージ アカウントまたはファイル共有に配置しないでください。 共有が失敗すると、SAP ランドスケープ全体のダウンタイムが発生します。
  • sapmnt ディレクトリと トランスポート ディレクトリは、小規模なシステムを除き、 異なるストレージ アカウントに配置することをお勧めします。 SAP プライマリ アプリケーション サーバーのインストール中は、SAPinst によってトランスポート ホスト名の入力を求められます。 別のストレージ アカウントの FQDN を <storage_account>.file.core.windows.net として入力します。
  • インターフェイスに使用されるファイル システムを /sapmnt/<SID> と同じストレージ アカウントに配置しないでください。
  • SAP ユーザーとグループを sapmnt 共有に追加する必要があります。 Azure portal で、ストレージ ファイル データ SMB 共有の管理者特権共同作成者アクセス許可を設定します。

トランスポートインターフェイスsapmnt を個別のストレージ アカウントに分散すると、スループットと回復性が向上します。 また、パフォーマンス分析も簡略化します。 1 つの Azure Files Storage アカウントに多数の SID やその他のファイル システムを配置し、スループットの制限に達しているためにストレージ アカウントのパフォーマンスが低下している場合、問題の原因となっている SID またはアプリケーションを特定するのは困難です。

計画

重要

Active Directory 統合を使用して Azure Files Premium SMB に SAP HA システムをインストールするには、チーム間のコラボレーションが必要です。 次のチームが連携してタスクを達成することをお勧めします。

  • Azure チーム: ストレージ アカウント、スクリプトの実行、Active Directory 同期を設定して構成します。
  • Active Directory チーム: ユーザー アカウントとグループを作成します。
  • 基礎チーム: SWPM を実行し、必要に応じてアクセス制御リスト (ACL) を設定します。

Active Directory 統合を使用して Azure Files Premium SMB に SAP NetWeaver HA システムをインストールするための前提条件を次に示します。

  • SAP サーバーを Active Directory ドメインに参加させます。
  • Microsoft Entra Connect を使用して、SAP サーバーを含む Active Directory ドメインを Microsoft Entra ID にレプリケートします。
  • Azure ExpressRoute を通過してオンプレミスのドメイン コントローラーに接続しないように、少なくとも 1 つの Active Directory ドメイン コントローラーが Azure ランドスケープにあることを確認します。
  • Azure サポート チームが、Azure Files SMB と Active Directory の統合に関するドキュメントを必ず確認するようにしてください。 ビデオでは、簡略化のために変更 (DNS) およびスキップ (DFS-N) された追加の構成オプションを示しています。 ただし、これらは有効な構成オプションです。
  • Azure Files PowerShell スクリプトを実行しているユーザーが、Active Directory でオブジェクトを作成するアクセス許可を持っていることを確認します。
  • インストールには、SWPM バージョン 1.0 SP32 および SWPM 2.0 SP09 以降を使用します。 SAPInst パッチは 749.0.91 以降である必要があります。
  • スクリプトが実行されている Windows Server インスタンスに PowerShell の最新リリースをインストールします。

インストールの順序

ユーザーとグループを作成する

Active Directory 管理者は、ローカル管理者権限を持つ 3 人のドメイン ユーザーと、ローカル Windows Server Active Directory インスタンスに 1 つのグローバル グループを事前に作成する必要があります。

SAPCONT_ADMIN@SAPCONTOSO.local にはドメイン管理者権限があり、SAPinst<sid>admSAPService<SID> を SAP システム ユーザーおよび SAP_<SAPSID>_GlobalAdmin グループとして実行するために使用されます。 SAP インストール ガイドには、これらのアカウントに必要な具体的な詳細が含まれています。

Note

SAP ユーザー アカウントをドメイン管理者にすることはできません。 一般に、SAPInst の実行には <sid>adm を使用しないことをお勧めします。

Synchronization Service Manager をチェックする

Active Directory 管理者または Azure 管理者は、Microsoft Entra Connect で Synchronization Service Manager をチェックする必要があります。 既定では、Microsoft Entra ID へのレプリケートには約 30 分かかります。

ストレージ アカウント、プライベート エンドポイント、ファイル共有を作成する

Azure 管理者は、次のタスクを完了する必要があります。

  1. [基本] タブで、Premium ゾーン冗長ストレージ (ZRS) またはローカル冗長ストレージ (LRS) を使用してストレージ アカウントを作成します。 ゾーン デプロイをお持ちのお客様は、ZRS を選択する必要があります。 ここでは、管理者が Standard アカウントまたは Premium アカウントの設定を選択する必要があります。

    Screenshot of the Azure portal that shows basic information for creating a storage account.

    重要

    運用環境で使用する場合は、Premium アカウントを選択することをお勧めします。 運用環境以外で使用する場合は、Standard アカウントで十分です。

  2. [詳細設定] タブでは、既定の設定で問題ありません。

    Screenshot of the Azure portal that shows advanced information for creating a storage account.

  3. [ネットワーク] タブで、管理者はプライベート エンドポイントの使用を決定します。

    Screenshot of the Azure portal that shows networking information for creating a storage account.

    1. ストレージ アカウントの [プライベート エンドポイントの追加] を選択し、プライベート エンドポイントを作成するための情報を入力します。

      Screenshot of the Azure portal that shows options for private endpoint definition.

    2. 必要に応じて、WINDOWS DNS に DNS A レコードを追加します <storage_account_name>.file.core.windows.net。 (これは新しい DNS ゾーンに存在する必要がある場合があります。)これについては、DNS 管理者と相談してください。 新しいゾーンは、organization の外部で更新しないでください。

      Screenshot of DNS Manager that shows private endpoint DNS definition.

  4. 適切なサイズの sapmnt ファイル共有を作成します。 推奨されるサイズは 256 GB で、650 IOPS、75 MB/秒のエグレス、50 MB/秒のイングレスを提供します。

    Screenshot of the Azure portal that shows SMB share definition.

  5. Azure Files GitHub コンテンツをダウンロードし、スクリプトを実行します。

    このスクリプトは、Active Directory にコンピューター アカウントまたはサービス アカウントを作成します。 これには次の要件があります。

    • スクリプトを実行しているユーザーは、SAP サーバーを含む Active Directory ドメインにオブジェクトを作成するアクセス許可を持っている必要があります。 通常、organization では、SAPCONT_ADMIN@SAPCONTOSO.local などのドメイン管理者アカウントを使用します。
    • ユーザーがスクリプトを実行する前に、この Active Directory ドメイン ユーザー アカウントが Microsoft Entra ID と同期されていることを確認します。 たとえば、Azure portal を開いて Microsoft Entra ユーザーに移動し、ユーザー SAPCONT_ADMIN@SAPCONTOSO.local が存在することをチェックし、Microsoft Entra ユーザー アカウントを確認します。
    • ファイル共有を保持するストレージ アカウントを含むリソース グループに対して、この Microsoft Entra ユーザー アカウントに共同作成者ロールベースのアクセス制御 (RBAC) ロールを付与します。 この例では、ユーザー SAPCONT_ADMIN@SAPCONTOSO.onmicrosoft.com に、それぞれのリソース グループへの共同作成者ロールが付与されます。
    • ユーザーは、前に指定したアクセス許可を持つ Active Directory ドメイン ユーザー アカウントを使用して、Windows Server インスタンスにログオンしているときにスクリプトを実行する必要があります。

    このシナリオ例では、Active Directory 管理者は SAPCONT_ADMIN@SAPCONTOSO.local として Windows Server インスタンスにログオンします。 管理者が PowerShell コマンド Connect-AzAccount を使用している場合、管理者はユーザー SAPCONT_ADMIN@SAPCONTOSO.onmicrosoft.com として接続します。 理想的には、Active Directory 管理者と Azure 管理者が、このタスクで連携する必要があります。

    Screenshot of the PowerShell script that creates a local Active Directory account.

    Screenshot of the Azure portal after successful PowerShell script execution.

    重要

    ユーザーが PowerShell スクリプト コマンド Connect-AzAccount を実行している場合は、Windows Server インスタンスへのログオンに使用された Active Directory ドメイン ユーザー アカウントに対応し、マップされる Microsoft Entra ユーザー アカウントを入力することを強くお勧めします。

    スクリプトが正常に実行されたら、 [ストレージ]>[ファイル共有] に移動し、[Active Directory: 構成済み] が表示されることを確認します。

  6. SAP ユーザー <sid>admSAPService<SID>、および SAP_<SAPSID>_GlobalAdmin グループを、Azure Files Premium SMB ファイル共有に割り当てます。 Azure portal で、ストレージ ファイル データ SMB 共有管理者特権共同作成者のロールを選択します。

  7. インストール後に sapmnt ファイル共有の ACL を確認します。 次に、DOMAIN\CLUSTER_NAME$ アカウント、DOMAIN\<sid>adm アカウント、DOMAIN\SAPService<SID> アカウント、および SAP<_SID>_GlobalAdmin グループを追加します。 これらのアカウントとグループは、sapmnt ディレクトリを完全に制御する必要があります。

    重要

    SAPinst のインストールの前に、この手順を完了します。 SAPInst がファイル共有にディレクトリとファイルを作成した後、ACL を変更することは困難または不可能になります。

    次のスクリーンショットは、コンピューター/マシン アカウントを追加する方法を示しています。

    Screenshot of Windows Server that shows adding the cluster name to the local Active Directory instance.

    DOMAIN\CLUSTER_NAME$ アカウントを見つけるには、[オブジェクトの種類][コンピューター] を選択します。

    Screenshot of selecting an object type for an Active Directory computer account.

    Screenshot of options for the computer object type.

    Screenshot of computer account access properties.

  8. 必要に応じて、Azure Files 用に作成されたコンピューター アカウントを、アカウントの有効期限がない Active Directory コンテナーに移動します。 コンピューター アカウントの名前は、ストレージ アカウントの短縮名です。

    重要

    SMB 共有の Windows ACL を初期化するには、共有をドライブ文字に 1 回マウントします。

    ストレージ キーはパスワードで、ユーザーは AZURE\<SMB 共有名>です。

    Windows screenshot of the one-time mount of the SMB share.

SAP 基準タスクを完了する

SAP Basis 管理者は、次のタスクを完了する必要があります。

  1. ASCS/ERS ノードに Windows クラスターをインストールし、クラウド監視を追加します
  2. 最初のクラスター ノードのインストールでは、Azure Files SMB ストレージ アカウント名の入力を求められます。 FQDN <storage_account_name>.file.core.windows.netを入力します。 SAPInst が 13 文字を超える文字を受け入れない場合は、SWPM のバージョンが古すぎます。
  3. ASCS/SCS インスタンスの SAP プロファイルを変更します
  4. SAP のプローブ ポートを更新する Windows Server フェールオーバー クラスター (WSFC) の <SID> ロール。
  5. 2 番目の ASCS/ERS ノードの SWPM インストールを続行します。 SWPM では、プロファイル ディレクトリのパスのみが必要です。 プロファイル ディレクトリへの完全な UNC パスを入力します。
  6. データベースの UNC プロファイル パスと、プライマリ アプリケーション サーバー (PAS) と追加アプリケーション サーバー (AAS) のインストール用の UNC プロファイル パスを入力します。
  7. PAS のインストールでは、トランスポート ホスト名の入力を求められます。 トランスポート ディレクトリ用の別のストレージ アカウント名の FQDN を指定します。
  8. SID とトランスポート ディレクトリの ACL を確認します。

ディザスター リカバリーのセットアップ

Azure Files Premium SMB では、ディザスター リカバリーのシナリオとリージョン間レプリケーションのシナリオがサポートされます。 Azure Files Premium SMB ディレクトリ内のデータはすべて、DR リージョンのストレージ アカウントに継続的に同期できます。 詳細については、「AzCopy とファイル ストレージを使用してデータを転送する」のファイルを同期する手順を参照してください。

DR イベントが発生し、ASCS インスタンスが DR リージョンにフェールオーバーした後、SAPGLOBALHOST プロファイル パラメーターを変更して、DR リージョンの Azure Files SMB をポイントします。 DR ストレージ アカウントで同じ準備手順を実行して、ストレージ アカウントを Active Directory に参加させ、SAP ユーザーとグループに RBAC ロールを割り当てます。

トラブルシューティング

前にダウンロードした PowerShell スクリプトには、構成を検証するための基本的なチェックを行うデバッグ スクリプトが含まれています。

Debug-AzStorageAccountAuth -StorageAccountName $StorageAccountName -ResourceGroupName $ResourceGroupName -Verbose

デバッグ スクリプトの出力の PowerShell スクリーンショットを次に示します。

Screenshot of the PowerShell script to validate configuration.

次のスクリーンショットは、成功したドメイン参加を検証するための技術情報を示しています。

Screenshot of the PowerShell script to retrieve technical info.

オプションの構成

次の図は、VM の合計数を減らすために、Windows Server フェールオーバー クラスターを実行している Azure VM 上の複数の SAP インスタンスを示しています。

この構成には、SAP ASCS/SCS クラスター上のローカル SAP アプリケーション サーバー、または Microsoft SQL Server Always On ノードの SAP ASCS/SCS クラスター ロールを指定できます。

重要

SQL Server Always On ノードへのローカル SAP アプリケーション サーバーのインストールはサポートされていません。

SAP ASCS/SCS と Microsoft SQL Server データベースはどちらも単一障害点 (SPOF) です。 Azure Files SMB を使用すると、Windows 環境でこれらの SPOF を保護できます。

SAP ASCS/SCS のリソース消費量はかなり小さくなりますが、SQL Server または SAP アプリケーション サーバーのメモリ構成を 2 GB 削減することをお勧めします。

Azure Files SMB を使用した WSFC ノード上の SAP アプリケーション サーバー

次の図は、ローカルにインストールされている SAP アプリケーション サーバーを示しています。

Diagram of a high-availability setup with additional application servers.

Note

この図は、追加のローカル ディスクの使用を示しています。 このセットアップは、OS ドライブ (ドライブC) にアプリケーション ソフトウェアをインストールしないお客様にはオプションです。

Azure Files SMB を使用した SQL Server Always On ノードでの SAP ASCS/SCS

次の図は、ローカル SQL Server セットアップを使用した Azure Files SMB を示しています。

重要

SQL Server ボリュームに対する Azure Files SMB の使用はサポートされていません。

Diagram of SAP ASCS/SCS on SQL Server Always On nodes using Azure.

Note

この図は、追加のローカル ディスクの使用を示しています。 このセットアップは、OS ドライブ (ドライブC) にアプリケーション ソフトウェアをインストールしないお客様にはオプションです。