Amazon SageMakerとAmazon FSx for NetApp ONTAPで実現する機械学習基盤 第3回

# はじめに
こんにちは。ネットアップ合同会社 Specialist SEの月岡です。
「Amazon SageMakerとAmazon FSx for NetApp ONTAPで実現する機械学習基盤」を全4回でお届けします。
第1回と第2回の記事はご覧になられましたでしょうか。
ご覧になられていない方は、是非ご覧ください。
- 第1回記事：https://qiita.com/Yoshinori_Tsukioka/items/e02537feb8008db46a99
- 第2回記事：https://qiita.com/Yoshinori_Tsukioka/items/0bdb5162f2ee25c82f32

# やってみた
今回は、**③ NetApp DataOps Toolkitをインストールし、NFS VolumeのSnapshot取得 / FlexCloneを作成**をやってみたいと思います。

　① Amazon FSx for NetApp ONTAPを作成し、Notebookインスタンス用のNFS Volumeを作成
　② Notebookインスタンスを作成し、NFS Volumeをマウント
　③ NetApp DataOps Toolkitをインストールし、NFS VolumeのSnapshot取得 / FlexCloneを作成
　④ ライフサイクル設定により、再起動後もNFS Volumeの自動マウント / NetApp DataOps Toolkitの自動インストール
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2806894/f07adeef-bffc-f60a-5f33-45d11a9fdc14.png)

# NetApp DataOps Toolkitとは
NetApp ONTAPを利用するストレージ向けに提供されるPythonライブラリです。
NetApp DataOps Toolkitを利用することで、データサイエンティストやデータエンジニア自身でネットアップストレージのVolume作成や複製、Snapshot取得などの処理を簡単に操作可能です。
GitHubに公開されていますので、どなたでも利用することが可能です。
https://github.com/NetApp/netapp-dataops-toolkit

# NetApp DataOps Toolkitをインストールし、NFS VolumeのSnapshot取得 / FlexCloneを作成

## Jupyter NotebookインスタンスにNetApp DataOps Toolkitをインストールする。
- NetApp DataOps Toolkitをインストールする。（netapp-dataops-traditional）
 インストール方法や利用できるコマンドはGitHubに公開されています。
  https://github.com/NetApp/netapp-dataops-toolkit/tree/main/netapp_dataops_traditional
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2806894/32ba8a45-13f7-1e52-6a4e-d45c3c75967a.png)

- NetApp DataOps Toolkitがインストールされたことを確認する。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2806894/f4e82b8f-588e-0835-287f-202c1e388a83.png)

- NetApp DataOps ToolkitのConfigを設定する。
  このとき、”ONTAP management LIF hostname or IP address” はストレージ仮想マシンの管理IPアドレス、   ONTAP API username / password はストレージ仮想マシンのユーザ (vsadmin) の指定を推奨
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2806894/e97b4986-789d-761f-848a-4885b1713f3e.png)

## NetApp DataOps Toolkitを使ったVolume操作をしてみる。
- Amazon FSx for NetApp ONTAPのVolume一覧を取得してみる。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2806894/40a49acb-d2be-89ee-b878-caae65db9af8.png)

- NFS Volumeを複製してみる。（複製元：vol1、複製先：vol1_clone） 
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2806894/eeb57819-6622-5b25-4c68-7a77cd9d49f6.png)

- 複製したVolumeをAmazon SageMakerのJupyter Notebookインスタンスにマウントしてみる。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2806894/5915a557-7d06-67c8-05a9-627034e70720.png)

以上でNetApp DataOps Toolkitを利用し、Amazon FSx for NetApp ONTAP内のVolumeを操作できました。
Jupyter Notebookインスタンスを利用するエンジニア自身でデータセットやスクリプトが格納されたVolumeの複製やSnapshotによるバージョン管理が可能になります。

# 次回予告
いよいよ最終回です。
Amazon SageMakerのライフサイクル設定を投入し、実運用でも発生するJupyter Notebookインスタンスの再起動や作成を時のNFS Volumeの自動マウント / NetApp DataOps Toolkitの自動インストールができることを確認します。

# 主な参照元
- https://aws.amazon.com/jp/sagemaker/
- https://aws.amazon.com/jp/fsx/netapp-ontap/
- https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/what-is-fsx-ontap.html
- https://aws.amazon.com/jp/blogs/news/customize-your-notebook-volume-size-up-to-16-tb-with-amazon-sagemaker/
- https://github.com/NetApp/netapp-dataops-toolkit
- https://github.com/NetApp/netapp-dataops-toolkit/tree/main/netapp_dataops_traditional