FSx for Netapp ONTAPをユニファイドストレージとして利用する

## 今回のテーマ

FSx for Netapp ONTAPをVMware Cloud on AWSのデータストアとして使うことを中心にまとめてきましたが
Netappといえばユニファイドストレージということで、Windowsのファイルサーバとして利用することと、
実際にオンプレミスのADと連携できるかなどをまとめています。

また、 Netappの特徴である稼働したままVolumeの増量、qtreeを用いてディレクトリ単位（共有単位）のquotaなども取り上げています。
さらに、 ファイルシステム（Aggregate）サイズ変更などが稼働中にできるかも試してまとめました。

## おやくそく
:::note info
本記事は、エンジニア向けのナレッジ提供とメモ目的となります。
本番作業などで参考にされる場合は十分にテストを行い、リスク対策などを行った上で実施してください。
:::

## FSx for Netapp ONTAPの3つの使い方。
- NFS（今回は対象外（VMware Cloud on AWS側で書いてます））
- CIFS（ココがメインです）
- iSCSI（今回は対象外（そのうち・・・））

## 実際に動かしてみる（オンプレミスADとの連携）
- 前提条件：オンプレミスときちんと通信ができることです。
オンプレミスのPCからVPN経由で接続できていることを前提としています。ネットワーク設定とかは割愛しますが
Security Groupなども含めて適切に設定されている前提で書きます。
- まずはオンプレミスからのPINGがFSx for Netapp ONTAPまで通るかを確認。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/8f8a7285-36f4-e3c7-5792-9b1e0c02ae1e.png)
- Windowsにログインするための情報を集めておきます。
ログインID/パスワード（管理者権限が必要です。）
Administratorなどの場合は、パスワード変更運用が入ることが多いので、専用アカウントを作成することを推奨します。
（今回は検証目的なのでAdministratorです・・・。スンマセン）
所属するOUの情報（LDAPブラウザとかで見た方がわかりやすい）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/e856c51f-b405-cf68-c5a3-9b6c8a7bc3c0.png)
　当初、CN=Computers,DC=ad01,DC=localで登録するつもりでしたがCN=では登録できませんでした。
　OUを一つ作成し、OU=Cloud,DC=ad01,DC=localで実施しています。
　FSX01はCIFSのサーバ名です。DNS名はfsx01.ad01.localとなります。
　実際にSVM作成画面も貼り付けていますので、書き方は参考にしてください。
DNSサーバのIPアドレス
　オンプレミスのADサーバ（DNS）のIPを準備しましょう。
　今回はオンプレミス側のDNSを参照しています。（172.28.0.39,172.28.0.37）
　なお、Windows2016で動くドメインです。（ad01.local）
サーバの名前
　SVMの名前ではなく、AD側に登録されるホスト名を決めましょう
　今回はfsx01.ad01.localという名前で登録しています。

## SVM作成
- AWSのマネージメントコンソールから作成します。
パラメータは、こちらを参考にどうぞ。特にLDAPのパスは初見では難しいかも。
個別情報のみマスキングの対象としています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/a3ca5df8-4ddf-5455-8eed-be644f38e553.png)
SVM管理パスワードはCLIで入るときに必要ですが、あとからでも変更ができますのでここでは割愛しています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/73f337bd-a7f1-a567-a388-04dc54d71510.png)
サービスアカウントは、上記にも書いていますがパスワード変更運用を行う前提であれば別のIDで作成した方が望ましいです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/fd3cfa1f-57de-c182-bb3f-df8522b49fab.png)


- 2つ目以降のSVMの作成時はVolumeも手動で作成時にアタッチします。
FSx for Netapp ONTAPの初期デプロイ時は、自動的にVolumeを作成しアタッチまでしてくれます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/e05995eb-a7fe-d1b6-7cd5-49fa8be86af5.png)
今回は200Gで作成しました。

- SVM作成後はこんな感じです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/dc16cfb7-4ac5-aa96-2ffa-8864a0b0581f.png)
NFS用のSVM（SVM01）、AWS Managed AD用（SVM02）、オンプレミス用（SVM03）
お気づきになるかもしれませんが、SVMが単独して動いているため、一つのOntapの中に複数のSVMが混在しています。
ユニファイドになってますね。

- SVM03の中身
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/4e4ef84a-5643-1add-76a5-29a1fea99fad.png)
- オンプレミスからの疎通試験（From オンプレミス to AWS(FSx for Netapp Ontap））
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/4ba90dd6-6016-2a55-a823-162d9b6908df.png)
兵庫県から東京リージョンのTGWにIPsecで接続しています。

- 共有の作成
 Windowsのfsmtmg.mscを使います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/657b2c3e-1bfe-905b-8a52-833689226e3f.png)
接続先を変更します。（起動時の接続先は立ち上げたPCです）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/a54b667c-f53e-8ab6-33f4-dd994b41397f.png)
共有用のフォルダですが、UNCパス（例：\\fsx01\c$）で入って、フォルダを作成することも可能ですが、あとからquotaなどを使うなどが想定される場合はqtreeを必要があります。
qtreeの概念はNetappさんのサイトを参照してください。
https://library.netapp.com/ecmdocs/ECMLP2351499/html/GUID-8A8ABA91-A01E-459B-B706-7583C87CF49C.html
このサンプルだと、share01はフォルダで作成、share02とshare03はqtreeで作成しています。
なお、フォルダもqtreeもNTFSの権限は作成可能です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/463f6582-5549-9c90-470e-693d005858da.png)
ウィザードに従って作成します。（権限は適宜設定してください）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/e56a487b-cb09-ad15-a594-89a8689846e0.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/b9590a9f-b8f3-dcd1-4d01-49d68f8d69f4.png)
UNCパスで接続した場合の見え方もサンプルでおいておきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/e723a413-5c1e-1876-8aa3-ca45c2526231.png)
AWSのオフィシャルドキュメントも参考においておきます。
https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/create-smb-shares.html

## qtreeを使ってみる。
- ここからはqtreeを実際に作って使ってみます。
:::note warn
CLIの操作は、直接影響がでますので非常に危険です。
必ずテスト環境などでテストをしっかり行ってから実施してください。
:::
- SSHログインの準備
qtreeはCLIで作成となりますので、SVMのパスワードを設定してSSHでログインします。
先ほどのSVM作成時に管理パスワードは設定していませんので、AWSマネージメントコンソールから設定します。
右上の赤い線の更新を押下して設定します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/3f3fb950-be14-25dc-8387-428251b91010.png)
パスワードを設定します。SSHのログインユーザ名はvsadminです。
なお、Active Directoryのユーザを変更する場合もこちらで可能です。（例：パスワード変更など）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/cd7aebe3-f565-5315-9c13-53c8c5e1f80b.png)

- SSHでログインして実際に操作していきます。
SSHでログインするユーザ名はvsadminです。管理用IP（NFSやCIFS接続先）に接続します。

- qtreeの確認
qtree showで確認可能です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/8d5c68aa-b4b9-a345-9489-a4823045bd47.png)

- qtree作成＆確認
qtree create -volume "volume名" -qtree "qtree名" で作成が可能です。
逆に削除は
qtree delete -volume "volume名" -qtree "qtree名" で削除が可能です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/34262e00-808a-ba8d-38ea-ecfbc260f514.png)
簡単に消せるので注意・・・。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/36417e51-1911-0781-49fb-44b9bf8e75c1.png)

## qtreeにquotaをかけてみる。
- quota rule作成
DefaultのPolicyは作成されていますがQuotaは空で適用されていません。
これに設定を入れていきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/00a05415-3002-1bbd-5d43-327d60bb479b.png)
- quota 状況確認
適用されている状況を確認します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/daed8b71-b9d9-cdbe-1a8b-ca527b5d61c1.png)
- quota policy確認
ポリシー設定確認（Before）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/1036bea4-4be4-8363-b4d6-1d9fb7de698a.png)
- quota設定
先ほど作成したshare03にQuotaを20GBで設定します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/40fec970-4f24-2fca-9dbc-d4cbf4a2c4c8.png)
- quota設定確認
ポリシー設定確認（After）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/55e603ef-dd50-00e7-13dd-a1d662890de3.png)
この時点では未適用です。
フォルダの中身は約19GB分のVMDK
未適用のため、全体の容量で使用領域が見えてます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/78d6f4e9-9a7f-e394-875a-251e3b5af7bf.png)
フォルダの見え方はこんな感じです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/88b5966c-91c6-b095-dc5c-a24c02fc1bda.png)
- quota適用
コマンドで適用します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/0992c01a-671a-3dec-8be8-0eac99a84353.png)
Quota適用前は、Volume全体の使用量でしたが、Quota適用後はqtree内部の容量で試算されるようになりました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/8e1a9ecb-c02f-26cd-6325-2c6051e4a8e9.png)
当然赤くなる・・・。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/9ed72971-05a7-e262-a6ec-b2684568a78a.png)
quotaはいろいろなかけ方があります。ぜひ調べてみてください。

## Volumeサイズを変えてみる。
- Volumeは現在140GBです。（もともと作成した200Gを小さくしています）
増やしていきます。
share02はquota未適用、share03は先ほどquotaを適用済みです。
今回はVolumeを増やすのでshare02側の見え方が変わるはず。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/01078858-a249-b4f4-e043-ff238cc0c876.png)
- CLIでもGUIでも実施可能です。
CLIはこちらの設定です。（瞬間でした・・・）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/e2a73069-ec45-11c0-e603-f4eba4c509ac.png)
133GB->190GBに変更されているのがわかります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/18762347-12c5-1c28-209b-12253ef81e58.png)
- Volumeサイズの変更はGUIでの変更も可能です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/f7e6f9c5-d810-6322-80ce-b2dcc0ea0c3c.png)
:::note alert
テスト中にCLIで変更したところ、GUI側のVolumeサイズが変更されないことが判明したので確認しています。
確認後にアップデートしますので、実施される場合は自己責任でお願いします。
:::

## ファイルシステム（Aggregate）を拡張してみる。
- FSx for Netapp OntapのAggregateを拡張します。
物理の世界だと、ディスクを足すとかのレベルの作業となります。
FSxだと、GUIで簡単に足すことができるので、良い時代ですね・・。ディスク入りのシェルフを購入して、夜間にDC入って入れてとか・・・。懐かしい。ちなみにIOも帯域も同じように追加可能です。（もちろん費用はあがる）
:::note info
こちらの作業はGUI（AWSのマネージメントコンソールからのみです）
:::
- この画面から実施します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/591f060c-baed-8d23-74b3-fbac8df5612d.png)
- ストレージ容量を拡張します。
PercentageかAbsoluteが選べます。
今回は10%追加します（最小容量・・・）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/fa11f1ca-960e-ca38-940c-50a52435b968.png)
:::note warn
ファイルシステム（Aggregate）の容量は増やすと減らせませんのご注意ください。
これは、FSxを畳むタイミングで実施する必要がありましたので・・。時間かかりました。
:::
- 無事に完了（課金も来るよ・・・）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/039eb123-627f-0c01-fe01-0872c3d6a90f.png)


## まとめ
- FSxのCIFSはADに参加が必要です。
実はローカルグループでも使えるらしいですが・・・。割愛しました。
- 共有単位でquotaが必要な場合はqtreeを使いましょう。
CLIでの操作が必要です。
- quotaはかけ方に注意。tree,user,groupとあります。
実際本番に書ける前に必ずテストを行ってください。
- volumeの容量の増量/減量は可能
GUIで実施することも可能ですし、CLIで実施することも可能です。（確認中）
- ファイルシステム（Aggregate）はGUIからのみ変更可能。
容量は増やす方向のみで減らせませんのでご注意ください。