Amazon FSx for NetApp ONTAPを使ってみる。

##APN Ambassadorsのアドベントカレンダーの記事です。
Qiita初投稿が、アドベントカレンダーだなんて怖いもの知らずもいいところ・・・:p
お手柔らかにお願いします。

2022/2/8 更新しました。

##自己紹介
TIS株式会社 IT基盤コンサルティングで、VMware CloudやSD-WANなどの導入支援を行っています。
2020年、AWS Top Enginners、2021年 APN Ambassadorsです。
AWSの中でもVMware Cloud on AWSを取り扱っているので、VMCとかHCXを多く触ってます。
あとオンプレミスのサーバも、スイッチもルータもFirewallも。（何でも屋に近い）
この記事は、所属企業を代表した発言ではありません。よろしくお願いします。

##記事について
AWSのFSxシリーズに、ユニファイドストレージ定番のNetappのONTAPが使えるようになりました。
実際にデプロイするにあたって、注意点は導入のポイントを記載していこう思います。

Re:Invent 2021でFSx for OpenZFSも発表されたんですが、今回はFSx for Netappです・・・。

##NetApp ONTAPの概要
#####Amazon FSx for Netapp ONTAPを使うだけなら、知らなくてよいこともあるけど、とりあえずメモ。
- NetAppの一般的な構成は、2つのコントローラと複数本のディスクです。
- 複数本のディスクをRaidGroupで束ねてAggregateを構成します。
- Aggregateを小さく切り出してVolumeを作成します。
- ユーザへのサービスはSVM（Storage Virtual Machine）という仮想マシンが提供します。
- SVMはNetAppの2つのコントローラの片方で動作し、コントローラに障害時は正常なコントローラに移動します。
- NetAppは物理I/FをLIF、仮想I/FをVIFと呼びます。（CLI操作時にわかっておいた方がよい）
- ユーザデータの保存先はVolumeです。上記のSVMにユーザデータ用のVolumeをアタッチして利用します。
- SVMはコントローラ間を移動する特性のため仮想IPアドレスで動作します。
- FSx for NetApp ONTAPは198.19.255.0/24という特殊なアドレスを利用します。（アドレスレンジは作成時に指定可能）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/e31d5950-ed5c-c7c2-2d2d-0346289d04b8.png)

> Wikipediaより参照。https://en.wikipedia.org/wiki/Reserved_IP_addresses
> NetAppの概要は、Networldさんのサイトがわかりやすいです。https://www.networld.co.jp/product/netapp/
> IPアドレスはVPCのレンジ外を指定できるようです。何もしていしなければ、特殊なアドレスになります。
> Private3経路（172.16/16、10/8、192.168/16）を拠点ですべて使っているケースもあるので、
> むしろ無指定で特殊アドレスはむしろよく考えているかもしれません。

##デプロイの前提条件
- オンプレミスから接続する場合はTransit Gateway（TGW）が必要です。
- AZを分けてサブネットを2つ作っておく必要があります。
- CIFSで利用する場合は、Active Directory環境が必要です。
- SVMが見に行くDNSは、Active Directoryの名前解決が必要です（CIFSの場合）

##デプロイ時の注意点
####FSx for NetApp ONTAPのディスク総容量は作成後に変更できません。（最小1TB/SSD）
- FSx for Windows（最小32GB/SSD）のように後から足せません。注意しましょう。
- Volumeサイズは変更可能です。（増やすことも減らすことも）
- 一番最初のFSxを作るとき以外、変更できないパラメータが多くあるので注意しましょう。
- SVMが動くために若干Volumeを使います。それほど多くはないですが注意を。

####RouteTableも付替不可です。EC2とかと分けて作成しておくことをおすすめ。
- VMC on AWSのENIがあるVPCでFSx for Netappを使う場合は注意が必要です。NSX-Tが非対称通信を許容しません。
- 複数のVPCから利用する場合は、VPCを独立させましょう。（TGW経由の接続です。）

####ENIのSecurity Groupを要注意。
- DefaultのSecurity GroupのIN側にはポリシーがありません・・・。
- Security Groupを置き換えて使いましょう。（ハマりました）

####最低1TBからスタート。
- 個人で使うには意外とお金かかります。
- SSDなので、速度は文句なし。（3IOPS/GB）
- まぁNetApp買うより絶対に安いけど。

####iSCSIを使う場合は、NetappのCLIを操作する必要あり。
- Volumeを作成し、LUNを作成し、iSCSIのターゲットを作る必要があります。
- CLIは独自です。（NetappのSVMのCLIです）
- iSCSIの接続先IPは、AWSのSubnetのIPとなります。

####オンプレミスから利用する場合、特殊アドレスが利用可能かをネットワーク担当に確認しましょう。
- 特にBGPやOSPFなどダイナミックルーティングで動かしている場合は、ネットワーク設計が必要です。
- Staticで接続している場合や、キャリア経由のHosted VIFの場合も念のため確認しましょう。
- Transit GatewayのPrefixの追加も忘れないように。（経路が流れてこない）

####実際のデプロイ
- CIFSやNFSを使うだけなら、GUIからパラメータを入れてボタンを押すだけです。
- 簡単にNetappが使えるなんていい時代になりましたね。

####画面イメージ
デプロイ時の画面です。
作成後に編集可能じゃないパラメータが多くあることに注意してください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/b2c1269c-3473-b621-4185-2c4b56382ac3.png)
iSCSIのみ、Subnetのアドレスになっています。
SVM01は、fsxの中で起動した、Storage Virtual Machine（SVM）です。CIFS対応しているため、Active Directoryに登録されています。
AD側のDNSにAレコードを書いておけば、UNCパス名で名前が引けます。(ex: \\ad01\share01など）
SVM作成時に、Active DirectoryにComputer Accountは作成されますが、DNSのレコードは作られません。
FSx側にセットアップする、アカウントの権限はこちらを参照してください。

Netapp社のナレッジサイトです。
当然となりますが、オンプレミスのADと連携する場合は、DNSの名前解決も必要です。
https://library.netapp.com/ecmdocs/ECMLP2372140/html/GUID-33458E15-4BCE-4933-AF33-5B7681808ED8.html


iSCSIのサブネットは、/25で作っていますので実はAZが違います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/881d1df6-71f6-5f4a-653c-6c5214283ceb.png)

####ちょっと楽しみなネタ
re:Invent2021で、VMwareからVMC on AWSの外部ストレージとしてFSx for Netappが利用できるようになるようです。

ストレージの容量が足りなくなったときに、ホストを足すしかなかったのが、FSx for Netappと組み合わせられるようになるのは
非常に大きいですね。

https://blogs.vmware.com/cloud/2021/12/01/vmware-cloud-on-aws-going-big-reinvent2021/?fbclid=IwAR3oKnHnPit9E0hvsnKdakrQZNA5hxODhTcaFSKmna_QmYWaAGyhcEyxudI

#### 今後の活動
Qiitaのデビューもできたので、少しつづネタを書いていこうと思います。
よろしくお願いします。

### 2022/2/8 更新
たまたま、FSx for Netappを動かしたところ。
ファイルシステムの容量が変更できるようになったようです。
SSDストレージ容量が増やす方向だけですが可能になってました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/775358/15cac801-a0b4-6846-397c-fee10209e2d7.png)