セルフマネージドADを利用したFSx for Windows構築のハンズオン

## はじめに
AWS Managed Microsoft ADでFSx for Windows（以下、FSxW）を構築したことはありましたが、今回既存のセルフマネージド型のAD（EC2でのAD設定）からFSxWを構築ということで、「そもそもADサーバなるものを作ったことがない！」ということもあり、AD作成〜FSx作成までの手順を記載していきます。

## 構成イメージ
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-11-8.46.26-640x534.png)
## 構築設定イメージ
1.1.では、図の赤枠部分に相当する、ADサーバでの設定
1.2.では、図の青枠部分に相当する、制御の委任の設定
2.1 では、1で作成した設定を利用して、FSxWの設定をしていきます
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-11-7.59.57-640x312.png)

## ハンズオン
### 1.ADサーバでの設定
#### 1.1.ADのリソース作成
##### 1.1.2.``Windows管理ツール``を選択``ActiveDirectoy ユーザとコンピュータ``を押下
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-10.32.10-538x640.png)
##### 1.1.3.``ActiveDirectoy ユーザとコンピュータ``での画面でADが設定されているかの確認
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-10.32.24-640x218.png)
##### 1.1.4.左ペインで右クリック``新規作成``を選択``組織単位(OU)``を選択
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-13.24.28-640x449.png)
##### 1.1.5.``新しいオブジェクト``で``名前``の入力
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-13.27.40-1-640x540.png)
##### 1.1.6.上記で作成した``オブジェクト名``の上で右クリック``新規作成``を選択``ユーザー``を押下する
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-13.39.44-640x501.png)
##### 1.1.7. ドメインユーザ（サービスアカウント）を作成のため項目を入力
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-13.44.31-640x538.png)
##### 1.1.8. パスワードの入力
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-13.46.15-640x542.png)
##### 1.1.9. ``完了``のボタンを押下
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-13.46.27-640x542.png)
##### 1.1.10. ドメインユーザ（サービスアカウント）が作成されていることを確認する
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-13.49.03-1-640x449.png)
##### 1.1.11.　再度左ペインで右クリック``新規作成``を選択``グループ``を選択
※スクショ撮り忘れ
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-13.39.44-1-640x501.png)
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-13.54.11-1-640x544.png)
##### 1.1.12. グループが作成されていることを確認する
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-13.54.25-640x448.png)
##### 1.1.13.　グループ配下に所属させる、ユーザーを　1.1.7のように作成
1.1.7. で作成したユーザーはサービスアカウント（単なるドメインユーザの1人ですが、AWSドキュメント表記に従い**サービスアカウント**と記載）は、FSxを作成する際に利用するユーザです。
実際のEC2インスタンスでマウントする際は、こちらのユーザ(FSxAdmin)で実行します。
※パスワード入力画面・ユーザ確認画面を割愛
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-13.56.21-640x541.png)
##### 1.1.14.　グループ配下にユーザーを所属させるため、右クリック``プロパティ``を選択
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-13.58.40.png)
##### 1.1.15.　タブより``メンバー``を選択し追加を押下、ポップアップされた画面の``選択するオブジェクト名を入力してください``に、1.1.13で作成したユーザを入力
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-13.59.31-1-640x489.png)
##### 1.1.16 左下``適応``を押下して、グループにメンバーを所属させる
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-13.59.50-1-577x640.png)


#### 1.2.制御の委任
FSxを作成するために必要なサービスアカウント（FSxServiceAccount）に必要な権限を与える設定が必要となります。
対象の OU を右クリックしてメニューから選択します。
※設定内容については下記URLのベストプラクティスに従います
参照：[FSx for Windows ファイル サーバー ファイル システムをセルフマネージド Microsoft Active Directory ドメインに参加させるためのベスト プラクティス](https://docs.aws.amazon.com/fsx/latest/WindowsGuide/self-managed-AD-best-practices.html)

##### 1.2.1.``対象の OU を右クリックしてメニューから選択する
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-14.10.43-1-640x500.png)

##### 1.2.2.``オブジェクト制御の委任ウィザード``画面で``次へ``を押下
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-14.10.58-640x484.png)

##### 1.2.3.``選択するオブジェクト名を入力してください``に、1.1.7で作成した``サービスアカウント(FSxServiceAccount）``を入力する
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-14.12.07-640x334.png)

##### 1.2.4.``ActiveDirectoryオブジェクトの種類``で``フォルダー内の次のオブジェクトのみ``を選択し、``コンピュータオブジェクト``と画面下の``選択されたオブジェクトをこのフォルダーに作成する``及び``選択されたオブジェクトをこのフォルダーから削除する``を選択
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-14.13.03-640x478.png)

##### 1.2.5.``アクセス許可``で``パスワードのリセット``と``アカウントの制限の読み取りと書き込み``と、``DNSホスト名への検証された書き込み``と、``サービスプリンシパル名への検証された書き込み``を選択
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-11-7.00.13-640x585.png)

##### 1.2.6.``オブジェクト制御の委任ウィザードの完了``で 1.2.4で設定した4つが反映されて以下を確認して``完了``を押下
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-14.14.33-1-640x480.png)

### 2. AWS での設定
#### 2.1 FSx for Windowsの設定
##### 2.1.1 AWS FSx for Windowsの設定画面①
今回は``マルチAZ``で設定、ストレージタイプは検証ということもあり``HDD:2000GB``で構築します
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-14.22.04.png)
#### 2.1.2 AWS FSx for Windowsの設定画面②
SGは[Amazon VPC を使用したファイルシステムアクセスコントロール](https://docs.aws.amazon.com/ja_jp/fsx/latest/WindowsGuide/limit-access-security-groups.html)を参考に事前に作成しています
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-14.22.17-640x321.png)
SGのCFnも参考に記載します
```
AWSTemplateFormatVersion: "2010-09-09"
Description: 
  fsx sg

Parameters:
#VPCID
  VpcId:
    Description : "VPC ID"
    Type: AWS::EC2::VPC::Id

Resources: 
  secGroupName:
    Type: AWS::EC2::SecurityGroup
    Properties:
      GroupName: cfn-sg-fsx
      GroupDescription: cfn-sg-fsx
      VpcId: !Ref 'VpcId'
      SecurityGroupEgress:
        - IpProtocol: tcp
          FromPort: 53
          ToPort: 53
          CidrIp: 0.0.0.0/0
        - IpProtocol: udp
          FromPort: 53
          ToPort: 53
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 88
          ToPort: 88
          CidrIp: 0.0.0.0/0
        - IpProtocol: udp
          FromPort: 88
          ToPort: 88
          CidrIp: 0.0.0.0/0
        - IpProtocol: udp
          FromPort: 123
          ToPort: 123
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 135
          ToPort: 135
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 389
          ToPort: 389
          CidrIp: 0.0.0.0/0
        - IpProtocol: udp
          FromPort: 389
          ToPort: 389
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 445
          ToPort: 445
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 464
          ToPort: 464
          CidrIp: 0.0.0.0/0
        - IpProtocol: udp
          FromPort: 464
          ToPort: 464
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 636
          ToPort: 636
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 3268
          ToPort: 3268
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 3269
          ToPort: 3269
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 9389
          ToPort: 9389
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 49152
          ToPort: 65535
          CidrIp: 0.0.0.0/0
      SecurityGroupIngress:
        - IpProtocol: tcp
          FromPort: 445
          ToPort: 445
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 5985
          ToPort: 5985
          CidrIp: 0.0.0.0/0
      Tags:
        - Key: "Name"
          Value: "cfn-sg-fsx"

Outputs:
  SG:
    Value: !Ref secGroupName
    Export:
      Name: "cfn-sg-fsx"
```
##### 2.1.3 AWS FSx for Windowsの設定画面③
AWSマネジメントコンソールでの画面
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-14.25.45-459x640.png)
##### 2.1.3 補足図
ADとAWSマネジメントコンソールでの対応表
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-11-8.21.27-640x340.png)

##### 2.1.4 AWS FSx for Windowsの設定画面④
これ以降がはデフォルトのまま``次へ``を押下する
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-04-14.26.18-640x523.png)
##### 2.1.5 AWS FSx for Windows構築完了
20-30分程度待機し、ステータス部分が``利用可能``になれば構築が終了し、インスタンスからマウントすることが可能な状態となりました
![](https://cloud5.jp/wp-content/uploads/2022/09/スクリーンショット-2022-09-11-8.27.50-640x128.png)


## おわりに
AD〜FSxの構築までで一度区切りをいれます。
今後のインスタンスから、FSxをマウントするにあたっては、[Microsoft Windows ファイル共有を使用する](https://docs.aws.amazon.com/ja_jp/fsx/latest/WindowsGuide/using-file-shares.html)を参考にして検証を進めていきたいと思います。
VPCのピアリングを忘れてFSxを構築してしまい無駄に30分が過ぎたこと、ピアリング後サブネットのルーティング設定を更新せず無駄に30分が過ぎたことなど、検証なのでと思い設定をよく確認せずリソースを構築→FSxWの構築ステータスの変化を待つ→ステータスが``失敗``となってしまうことが多々あり、なんでも確認していこうという良い薬となりました。