AWSを利用してファイルサーバを構築する方法 - Amazon FSx for Windows File Server -


初めまして。デジタル・トランスフォーメーション推進開発部のH・Sと申します。

先日、初の試みとして、社内のAWS事業推進チーム内で自由研究の発表を行いました。

今まで触れたことのない、または気になっているAWSサービスをテーマとして取り上げて検証してみよう、という思いから、自由研究を行うこととなりました。

発表者は、調査内容や検証結果をまとめて、15分~20分の持ち時間で発表しました。新入社員の方々や先輩社員の発表を聞いて、自分には思いつかなかったテーマもあり、とても勉強になりました。

チーム内で、せっかくなら調べたことをブログにまとめてみては?ということになり、今回こちらの記事を書くこととなりました。

テーマとして取り上げたAWSのサービス

私がテーマとして取り上げたAWSのサービスは「Amazon FSx for Windows File Server」になります。

今までAWSのファイルストレージサービスを触ったことが無かったので、標準的な用途で利用できる「Amazon FSx for Windows File Server」をピックアップしました。

「Amazon FSx for Windows File Server」は、AWSのマネージドサービスで、実際に内部でWindows Serverが稼働している、Windowsとの相性がよいファイルストレージサービスになります。

FSxには、4種類のサービスが存在しますが、高機能・高性能を求める場合を除き、基本的にはこちらを選ぶことが多いようです。

実際に構築

利用するAWSサービス

今回の検証にあたり利用するサービスは、以下の3点です。

  • EC2(Windows Server 2019)2台
  • AWS Managed Microsoft AD
  • Amazon FSx for Windows

※VPC周りは事前に準備済

作業内容

  1. FSxを接続するEC2を構築する。
  2. AWS Managed Microsoft ADを作成する。
  3. Amazon FSx for Windowsを作成する。
  4. EC2へRDP接続して、ドメイン参加させる。
  5. 作成したFSxをマウントする。
  6. もう一台のEC2にもマウントし、ファイル共有できていることを確認
1. FSxを接続するEC2を構築する

事前作成したパブリックサブネットにWindows Server 2019 を2台用意します。

セキュリティグループのルールは、以下の通り設定します。

 ・インバウンドルール:PC端末のIPアドレスからポート3389番(RDP)を許可

 ・アウトバウンドルール:全て許可

※EC2の詳細な設定値は、割愛します。

2. AWS Managed Microsoft AD を作成

FSx の場合、ディレクトリタイプは「AWS Managed Microsoft AD」のみ利用可能です。

  • ディレクトリタイプ: AWS Managed Microsoft AD

今回は検証用なのでスタンダードを選択

  • エディション: スタンダード

  • ディレクトリのDNS名:任意の値(今回はXXX-test.localで作成)
  • Adminのパスワードを設定

1で作成したEC2のあるVPCとサブネットを選択します。

設定内容を確認して、ディレクトリの作成をクリックします。

完成までに30分程時間がかかりました。

3. Amazon FSx for Window の作成

セキュリティグループの作成

FSxにアタッチするセキュリティグループを作成します。

作成したEC2のセキュリティグループのインバウンド通信にて、ポート445番と5985番を許可します。アウトバウンド通信は、全て許可しています。

※ 445番:ディレクトリサービスの SMB ファイル共有

  5985番:WinRM 2.0 (マイクロソフトの Windows リモート管理)

 ・WinRM:Powershellを遠隔から操作する機能

Amazon VPC を使用したファイルシステムアクセスコントロール - Amazon FSx for Windows File Server

FSxの作成

「Amazon FSx for Window ファイルサーバー」を選択します。

ファイルシステムの詳細にて、以下を設定します。

  • ファイルシステム名:任意の値(今回はXXX-testで作成)
  • デプロイタイプ:マルチAZ
  • ストレージタイプ:SSD
  • SSDストレージ容量:32GiB(最小)

デプロイタイプの「シングルAZ1」と「シングルAZ2」は世代の違いとなっています。要件が無い限り、基本的には「シングルAZ2」を選択します。

Amazon VPC を使用したファイルシステムアクセスコントロール - Amazon FSx for Windows File Server

VPC、セキュリティグループ、サブネットは、 AWS Managed Microsoft ADで作成したものを選択します。

2で作成したAWS Managed Microsoft ADを選択します。

今回、暗号化はデフォルトのままで設定しました。

確認画面にて入力内容を確認する際、画面右側に「作成後に編集可能」という項目が表示されます。×印の付いているものは変更できないため、設定内容に誤りが無いことを確認してから作成を開始します。

完了までに40分程かかりました。

4. EC2へRDP接続して、ドメイン参加させる。

作成したEC2へRDP接続して、ドメイン参加させます。

ドメイン参加は、下記のドキュメントを参考に行いました。

Windows インスタンスを手動で結合させる - AWS Directory Service

「ネットワーク接続」にて「優先 DNS サーバー」と「代替 DNS サーバー」のIPアドレスを登録します。登録情報は「AWS Managed Microsoft AD」の「DNSアドレス」に記載されているIPアドレスになります。

 

登録ができたら、「システムのプロパティ」にてドメイン名とAdminのパスワードを入力してコンピュータ名/ドメイン名を変更します。変更後は再起動が必要になります。

5. 作成したFSxをマウントする

AWSコンソールからFSxの画面を開き、アタッチをクリックすると、「デフォルトのDNS名を使用」のコマンドが表示されます。

このコマンドをコマンドプロンプトにて実行します。

  • ユーザ名:ユーザネーム に Admin@を付けて、ドメイン名を入力。
  • パスワード:Active Directory 構築時に設定したAdmin パスワードを入力。

Zドライブとしてマウントされました。

もう一台のEC2も同様に構築して、FSxをマウント用のコマンドを実行します。

タイムラグは、ほとんど感じられずに利用できました。

Amazon FSx for Windowsでできること

今回の構築や調査を通して、FSxでできることをまとめました。

標準バックアップ機能について

  • 日次でのバックアップが可能で、保持世代数は1~90日間で設定可能
  • 手動でのバックアップ取得も可能
  • AWS Backupを利用すれば、リージョン間のコピーやAWSアカウント間のコピーも可能。日次よりも細かいバックアップを取りたい場合や90日以上の世代管理したい場合も、AWS Backupを利用すれば取得できます。

AWS Backupを使用したAmazon FSxのクロスリージョン及びクロスアカウントバックアップ | Amazon Web Services ブログ

アクセス履歴について

  • 以下の監査ログをCloudWatchLogs への出力も可能

 ・ファイルとフォルダへのアクセス

 ・ファイル共有へのアクセス

※ CloudWatchLogsに対する料金は、別途発生します。

ファイルアクセスの監査 - Amazon FSx for Windows File Server

FSxのホスト名を任意の値に変更

  • Z: \\amznfsxcrbdyaug.XXX-test.local\share

  ⇒ Z: \\file-server01.XXX-test.local\share

  • システム移行時にアプリやツール側でホスト名を指定していた場合も、既存のFQDN名を利用することができる。

 ※今回は検証できませんでしたが、ドメイン参加しているWindowsServerからPowershellを使って設定を行う必要があります。

DNS エイリアスを管理する - Amazon FSx for Windows File Server

Amazon FSx for Windowsでできないこと

ストレージタイプの変更

  • HDD → SSD へ変更
  • SSD → HDD へ変更

※バックアップから別のストレージタイプの新しいファイルシステムに復元することは可能。

デプロイタイプの切り替え

  • シングルAZ → マルチAZへ変更
  • マルチAZ → シングルAZへ変更

ウイルススキャン機能

「Amazon FSx for NetApp ONTAP」のみ搭載。

それ以外のFSxのサービスでウイルススキャン機能を使いたい場合は、ウイルススキャンソフトを導入しているEC2にドライブとしてマウントし、定期的にスキャンするなどの対応が必要になります。

FSx for ONTAP で NetApp ONTAP Vscan を使用する - FSx for ONTAP

その他の調査内容

Windowsのシステム管理ツールやPowershellを使って、下記のような管理を行う場合、管理用のEC2インスタンスを用意する必要があります。

  • 重複排除設定:ファイルの内容を解析して重複したデータ領域を見つけ、複数のファイル間で同じデータ領域を共有してディスクを節約する
  • クォータ制限:ユーザが使用できるストレージ量の制限
  • シャドウコピー:スナップショット機能

ファイルシステムの管理 - Amazon FSx for Windows File Server

FSxの月額利用料

今回構築した環境を1か月間利用した場合、どのくらい月額利用料がかかるのか算出しました。

■AWS月額利用料(マルチAZの場合)

  • SSD:32GiB利用。重複排除設定は無効。

  32.00 GiB/月 x 0.276 USD = 8.83 USD

  • スループットキャパシティ:32MBps(推奨値)

  32.00 MBps x 5.175 USD = 165.60 USD

  • バックアップストレージ:平均32GB

  32.00 GiB/月 x 0.05 USD = 1.60 USD

  • 合計:176.03 USD →  26,229 円 ※1ドル149円で計算

料金 - Amazon FSx for Windows File Serve | AWS

実際に構築した所感

調査と検証を通して、サービスと料金に対する所感を簡単にまとめました。

FSxのサービスについて

  • マネージドサービスのため、OSの管理が不要
  • 必要に応じて容量を増やせるので、必要最低限の容量から始められる
  • ドメイン参加が必須のため、Directory Serviceの管理も必要
  • マネージドサービスであるものの、管理用のEC2は必要

料金について

  • 用途に合わせて、SSDとHDDを選択できる

  ※ 料金を抑えたい場合は、シングルAZ構成にする、HDDを利用する、などといった選択が可能

  • 料金へ直接影響はないものの、重複排除を有効化することで、物理的なストレージ消費量を抑えることができる

最後に

実際にサービスを触ることで理解できたことも多かったので、また機会があれば、今回時間切れで検証できなかったところも再チャレンジできたらと思います。

ここまで読んでくださり、ありがとうございました。

何かしらの参考になれば幸いです。