AWS Sagemakerでセキュリティに強い機械学習環境を構築する ①

## はじめに
学習データやその分析結果の保存先はもちろん、ワークフローの設計や経路制御まで、一貫して機密性が保持された環境を構築し、情報漏洩のリスクを最小限に抑えること。

ローカル環境でこれを担保しようとすれば、専門知識が必要になるうえ、非常に手間がかかります。かといって、じっくりと分析作業に集中できない、という状況は避けたい。

このジレンマを解決するサービス群が、AWSには用意されています。

本連載では、AWSアカウント作成後、初期設定から何も変更を加えていない状態からスタートし、強固なセキュリティに守られた機械学習環境をクラウド上に構築するまでを、ハンズオンで行います。


## 本稿のゴール
連載の第一回目として、

1.  学習データや分析結果を格納するためのストレージとして、**[AWS S3](https://aws.amazon.com/jp/s3/)**バケットを作成し、
2.  機械学習のワークフロー全体をカバーするサービスである、**[AWS SageMaker](https://aws.amazon.com/jp/sagemaker/)**を立ち上げ、 
3.  セキュアなクラウド環境を実現するためのアドバイザーをくれる、**[AWS Trusted Advisor](https://aws.amazon.com/jp/premiumsupport/trustedadvisor/)** を開く、

というところまで行います。



## 対象者
- 所属する組織、もしくは個人でAWSを導入済
- AWS上に蓄積されているデータを機械学習にかけようとしている 
- 既にローカル環境で分析を行っているが、セキュリティが不安


## 実行環境
- Windows 10


## AWS SageMakerとは？
データサイエンスの領域全体をカバーする、完全マネージド型の機械学習サービスです。特徴は下記の通り。


- より少ない労力と費用で、本番稼働
- 大容量のデータも効率的に実行
- 一般的な機械学習アルゴリズムを使用可
- 自前のアルゴリズムもネイティブでサポート
- 分ごとの使用料で課金

[AWS SageMaker 公式サイト](https://aws.amazon.com/jp/sagemaker/)



## AWS Trusted Advisorとは？
AWSに蓄積されたノウハウやベストプラクティスをもとに、現状からどのように設定変更すればより良いクラウド環境になるのか、下記の観点から詳細にアドバイスしてくれるサービスです。

> ![00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/334de89f-2a16-45d1-da39-a411d35a23bf.png)
> [AWS TrustedAdvisor 公式サイト](https://aws.amazon.com/jp/premiumsupport/trustedadvisor/) 



## 手順
### 1. Sagemaker用の[S3](https://aws.amazon.com/jp/s3/)バケットを作成

コンソール画面で、S3を選択
![1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/03cc89c3-4861-5496-217c-f7ffdf8cb6fe.png)

バケットを作成するをクリック
![02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/22c9fe35-a98a-d80a-2a6b-7ac7f479e444.png)


バケット名を入力、作成をクリック
![3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/40919d01-45f5-80e1-ec5b-199d3615b463.png)

完成！
![4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/2cc7e3ca-0d83-b84d-bfb7-629cce928fde.png)



### 2. SageMaker立ち上げ、Notebookの表示まで
コンソール画面で、Amazon SageMakerを選択
![5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/e83150b1-2110-7012-8b1a-6634afe56800.png)


左側のタブの、ノートブックインスタンスをクリック
![6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/618852b6-d92d-9709-12fe-9e331479c6f4.png)


右上のCreate notebook instanceをクリック
![7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/8ed63c8d-ccd8-29f3-ae1f-56a8d6f78865.png)


ノートブックインスタンス名を入力、IAMロールの項目で、新しいロールの作成を選択
![8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/d6aa9342-d2ba-98e3-6a27-bb08b6f6d419.png)


指定するバケットのオプションの、**なし**にチェックを入れ、ロールの作成をクリック
![9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/af7c07ef-73f8-ecf1-5a93-7d6b1dbdbf91.png)


新しくIAMロールが作られました
![10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/56cc1a67-d7d7-3c32-857e-763c17a5aeb2.png)

下までスクロールし、ノートブックインスタンスの作成をクリック
![11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/eea2488f-485b-58f5-ecef-de26dad79130.png)


この画面でしばし待つと、ステータスがPendingから...
![12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/d1fb277b-2198-9d6c-e76a-6f66af923374.png)


InServiceに。作成したノートブックインスタンスを開いてみましょう
![13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/1f036567-00a5-f620-e7a9-61f51ecdb627.png)

Newをクリックし、conda_python3を選択
![14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/7c55d1ce-024e-c6e0-765a-b42305a444b7.png)


ノートが立ち上がります。タイトルをクリック、
![15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/56e572ea-34e3-633a-b6ad-8c79e0be1041.png)

名称を変更...
![16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/1a9e89c2-c6b6-63a0-f987-7fd3fab24ccb.png)

できました。
![17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/9d88bc26-0da8-1108-9e2b-d9752e52ae80.png)


### 3. Trusted Advisorを見てみる
TrustedAdvisorは、アカウントを作成した直後から有効になっているので、特別な設定をする必要はありません。早速見てみましょう。

コンソール画面でTrusted Advisorを検索
![18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/d4dcedcf-0efb-0ce6-5929-7b90b85c1e79.png)

セキュリティの項目にアラートがあります。タブを開いてみましょう
![19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/c46046d4-ef89-d022-1640-fb67edaf0134.png)

何やら重大な欠陥がありそうです
![20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363781/1702b30a-3a10-05ed-52f9-f3c770d80d88.png)


## まとめ
次回はTrusted Advisorで指摘された項目について、どうやって解消すればよいか、ひとつづつ見ていきます。お楽しみに！