[SAP] Azure の SAP on SQL Server - プロキシ サーバーを使用せずに Backup to URL を実行する方法

執筆者: Cameron (MSFT SAP Program Manager)

このポストは、2018 年 6 月 25 日に投稿された SAP on SQL Server on Azure – How to Bypass Proxy Server During Backup to URL の翻訳です。

 

今回の記事では、Backup to URL を実行するときにオンプレミスもしくは Azure 上のプロキシ サーバーのオーバーロードを回避する方法をお伝えします。一般的な .Net 構成ファイルを作成してプロキシ サーバーを無効化することで、BackupToURL.exe を使用して HTTPS 経由で Azure Blob ストレージと直接通信できるようになります。

1. SQL Server Backup to URL

最新リリースの SQL Server では、Azure Blob ストレージへのバックアップをサポートしています。これは、Azure で SAP on SQL を実行している環境で、データベースのフル バックアップやトランザクション ログのバックアップによく利用される便利な手段です。

SQL Server Backup to URL を実行しているお客様で、特にデータベースで透過的なデータ暗号化 (TDE) を行っている場合は、最新の Service Pack や累積更新プログラムを適用することを強く推奨しています。

https://blogs.msdn.microsoft.com/saponsqlserver/2017/04/04/more-questions-from-customers-about-sql-server-transparent-data-encryption-tde-azure-key-vault/ (英語)

 

SAP は、最新の SQL Server の Service Pack と累積更新プログラムをサポートしています。 https://launchpad.support.sap.com/#/notes/62988

2.プロキシ サーバー構成と Backup to URL

Backup to URL 機能は、BackupToURL.exe という独立した実行可能ファイルとして実装されています。HTTPS トラフィックの送信中に、このファイルが標準の Windows API を呼び出します。既定では、この API が [コントロール パネル] > [インターネット オプション] > [接続] > [LAN の設定] で設定されている Windows のプロキシ サーバー構成を読み込みます。

Azure でSAP on SQL Server を利用しているお客さまにとって、プロキシ サーバーに関する主なシナリオは、以下の 2 つです。

  1. Azure から、既存のオンプレミス データ センター内にあるセントラル プロキシ サーバーを使用する。
  2. Azure VM や Azure サービス専用のプロキシ サーバーが Azure 上にセットアップされている。

 
いずれの場合も、プロキシ サーバーは必須ではなく、使用するとバックアップ パフォーマンスが大幅に低下することもあります。プロキシ サーバーがオンプレミス環境にある場合、HTTPS 経由でプロキシ サーバーを呼び出すと ExpressRoute 回線を往復する通信が発生し、データ コストが増大します。

最新バージョンの SQL Server は多数の URL への同時バックアップをサポートしているため、トラフィック量が大幅に増加し、プロキシ サーバーや ExpressRoute 回線が飽和することもあります。

通常、SQL Server Backup to URL がバックアップ先のストレージ アカウントと直接通信できるように、BackupToURL.exe 専用のプロキシ サーバーを無効化しておくことをお勧めします。これにはいくつかの方法がありますが、以下の推奨手順をご紹介します。

3. SQL Server Backup to URL のプロキシ サーバーを無効化する方法

BackupToURL.exe で既定のプロキシ サーバーを使用しないようにするには、以下のパスにファイルを作成します。

C:\Program Files\Microsoft SQL Server\MSSQL13.\<InstanceName>\MSSQL\Binn

 

SQL Server の特定のバージョンとインスタンス名用のディレクトリにある BackupToURL.exe と同じディレクトリに構成ファイルを配置する必要があります。

ファイル名は以下を使用します。

BackuptoURL.exe.config

ファイルの内容は以下のとおりです。

<?xml version =”1.0″?>

<configuration>

<system.net>

<defaultProxy enabled=”false” useDefaultCredentials=”true”>

<proxy usesystemdefault=”true” />

</defaultProxy>

</system.net>

</configuration>

 

詳しくは次のドキュメントをご確認ください。 /ja-jp/sql/relational-databases/backup-restore/sql-server-backup-to-url-best-practices-and-troubleshooting?view=sql-server-2017

 

TDE 用に Azure Key Vault の読み込みや書き込みを行うなど、構成内容によっては SQL Server の実行可能ファイルが有効なプロキシ サーバーを必要とする場合もあります。そのため、コントロール パネルからプロキシ サーバーを完全に無効にする際は注意してください。

このほかに、UDR を構成してルーティングを制御する方法や、SQL VM 上の VNET の BLOB ストレージ アカウント用のプライベートなローカル エンドポイントを作成する方法もあります。IP アドレスが VM に対してローカルであれば、プロキシ サーバーが使用されることはありません。

 

追加情報

以下の記事の「6」の項目で Backup to URL のチューニングについて説明しています。 https://blogs.technet.microsoft.com/jpitpro/2017/12/13/sap-on-sql-general-update-for-customers-partners-march-2017/ /ja-jp/sql/relational-databases/backup-restore/sql-server-backup-to-url?view=sql-server-2017 /ja-jp/sql/t-sql/statements/backup-transact-sql?view=sql-server-2017 /ja-jp/sql/relational-databases/backup-restore/deleting-backup-blob-files-with-active-leases?view=sql-server-2017

Azure Blob ストレージへのマネージド バックアップについては、こちらの記事をご覧ください。 /ja-jp/sql/relational-databases/backup-restore/sql-server-managed-backup-to-microsoft-azure?view=sql-server-2017