Microsoft SharePoint Server on AWSのMultiAZをやってみた

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

SharePoint on AWS

今回もQESさんの協力を得て記事化してます。前回は社内イントラネットにあるSharePointサイトをAWSに移行してみました。 今回は可用性を勘案し、アベイラビリティゾーンをまたいでコンポーネントを構成してみます。

作業手順

  • 前回、社内イントラネットのSharePointサイトを移行しましたが、別のアベイラビリティゾーンに、SharePoint認証用にDomain Controllerを作成します。
  • VPNによる仮想専用線を使って社内Domain Controllerと同期。
  • VPCのVPN接続を使って社内Domain Controllerと同期をします。
  • 前回作成したシングル構成のSharePointサイトと同様に、今回作成するアベイラビリティゾーンにWebFront、Application、SQLの各サーバーを1台づつEC2に設定します。
  • SQL サーバーについては、前回作成したSQL サーバーと同期を取り、可用性を高めるためにAlwaysOn(複数SQL Serverをクラスタリングにより一つのインスタンスに見せる技術)の設定を行います。
  • 前回作成したApplicationサーバーと同様の内容(ディレクトリィ構成やWebパーツ等)を、今回作成したApplicationサーバーに移行します。これによってApplicationサーバーの可用性も高めます。
  • ELBを使って前回と今回のアベイラビリティゾーンに作成したWebFrontサーバーに対して負荷分散の設定を行います。

使用したソフトウェア

  • Active Directory (Windows Server 2012) x 2台
  • ShaarePoint Server 2013 St(Windows Server 2012) × 4台
  • SQL Server 2012 st × 2台

以下のAMIを使っています。

  • Active Directory (m1.medium)(AMIの「Microsoft Windows Server 2008 R2 Base」を使用)
  • SharePoint (m1.large)(AMIの「Microsoft Windows Server 2008 R2 Base」を使用)
  • SQL Server (m1.large)(AMIの「Microsoft Windows Server 2008 R2 with SQL Server Standard」を使用)

WebFrontで使っている技術は以下です。

  • C#
  • ASP.NET(.NET Framework 3.5)
  • JavaScript

構成図

構成図を以下に示します。

sharepoint-001

まとめ

メリットは以下の通りです。

  • 新たな物理的データセンターを利用せず、クラウドでSharePointサイトの可用性を高める結果を得られるとともに、物理的なデータセンターを使用するより安価な構成になります。
  • SQLサーバーのAlwaysOn機能により、データベースの可用性、データ保護が強固なものになります。
  • WebFront、Applicationの各サーバーも2重化することで、可用性が高まります。

注意点もあります。AlwaysOn機能によりSQLサーバーはアベイラビリティゾーン間でパケット通信を行います。この際、AWSに対して通信費用が発生しますので、常時同期ではなく、定期的に同期させるなど、運用設計が必要です。AZ間の通信費用はそんなに高くないですけどね。

参考資料

AWS での Microsoft SharePoint Server