3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【30日でAWSをマスターするハンズオン問題集】Day23:Storage Gatewayを使ってEC2からS3をマウントしてみよう

Posted at

こちらの投稿は2025 Japan AWS Jr.Championsの有志メンバーで作成した『30日間で主要AWSサービスを構築できるようになる』をテーマにした初学者向けのハンズオン問題集のDAY23になります!
問題集の趣旨や作成に至るまでの経緯は以下の記事をご覧いただければと思います。

📝 概要

項目 内容
所要時間 約2時間
メインサービス Amazon EC2, Amazon S3, AWS Storage Gateway
学べること EC2-S3間の各種マウント方法
想定費用 約500円(※稼働時間により変動します)

⚠️ 注意:以下のリソースを削除し忘れると課金が継続します。

🎯 課題内容

EC2とS3の接続パターンをいくつかやってみましょう。

  1. Linux - S3バケットをStorage GatewayでNFSマウント

  2. Linux - CLIでS3バケット内のファイルを操作

📊 アーキテクチャ図

storagegateway-01

🔧 実装機能

  • EC2にS3をマウントし、ファイルを操作できます。

💡 実装のヒント

セキュリティグループの設定

作成したリソース同士の繋がりを考え、「どのリソースが」「どのポートで疎通する必要があるか」を考えましょう。

✅ 完成後のチェックポイント

  • (S3の場合)EC2内で作成・配置したファイルが、マネジメントコンソールから確認できる

🧰 使用資材

特になし

🔗 リファレンスリンク

🛠️ 解答・構築手順(クリックで開く)

解答と構築手順を見る

✅ ステップ0: 接続元EC2の準備

  1. AWS マネジメントコンソールを開く
  2. 「EC2」→「インスタンス」→「インスタンスを起動」
  3. パラメータは以下の通り。

    AMI:Amazon Linux2023

    セキュリティグループを作成
    その他の項目は全てデフォルト
  4. 入力項目を確認し、「インスタンスを起動」

✅ ステップ1: S3バケット の作成

  1. AWS マネジメントコンソールを開く

  2. 「S3」→「バケットを作成」

  3. パラメータは以下の通り。

    バケットタイプ:汎用

    バケット名:グローバル一意の値(例:handson-[名前]-[日付])

    パブリックアクセスをすべてブロック:チェックを入れる
    その他の項目は全てデフォルト

  4. 入力項目を確認し、「バケットを作成」

📷
storagegateway-02

✅ ステップ2: Storage Gatewayの作成

  1. AWS マネジメントコンソールを開く

  2. 「VPC」→「セキュリティグループ」→「セキュリティグループを作成」

  3. パラメータは以下の通り。

    セキュリティグループ名:任意(作成後編集不可)

    VPC:EC2と同じ

    他はデフォルトで[セキュリティグループを作成]する。

storagegateway-03

※8.で追記を行うので、タブを残しておく。
  1. 「VPC」→「エンドポイント」→「エンドポイントを作成」

  2. パラメータは以下の通り。

    タイプ:AWSのサービス

    サービス:com.amazonaws.[リージョン].storagegateway

    VPC:接続元のEC2と同じVPC

    DNS名を有効化:チェックを入れる

    DNSレコードのIPタイプ:IPv4

    サブネット:接続元のEC2と同じAZ・サブネット

    セキュリティグループ:3.で作成したもの
    他はデフォルトで[エンドポイントを作成]する。

storagegateway-04-1

storagegateway-04-2

storagegateway-04-3

  1. 「Storage Gateway」→「ゲートウェイ」→「ゲートウェイの作成」

  2. パラメータは以下の通り。

    ゲートウェイ名:任意の名前

    ゲートウェイタイプ:Amazon S3 ファイルゲートウェイ

    プラットフォームオプション:Amazon EC2

    デフォルト設定を使用:チェックを入れる

    VPCネットワーク:接続元のEC2と同じ

    VPCサブネット:接続元のEC2と同じ

    キーペア:任意のキーペア

storagegateway-05

storagegateway-06

storagegateway-07

[インスタンスを起動]し、[次へ]進む。

storagegateway-08

  1. 3.で使用していたセキュリティグループのタブに戻り、以下のインバウンドルールを追加する。

    タイプ:HTTPS

    プロトコル:TCP

    ポート:443

    ソース:7.で作成したEC2インスタンスのセキュリティグループ

  2. 続いて、7.で作成したEC2インスタンスのセキュリティグループに以下2つのインバウンドルールを追加する。

    タイプ:カスタムTCP

    プロトコル:TCP

    ポート:111

    ソース:接続元のEC2のセキュリティグループ

    タイプ:NFS

    プロトコル:TCP

    ポート:2049

    ソース:接続元のEC2のセキュリティグループ

  3. 接続元となるEC2インスタンスのセキュリティグループに、以下2つのインバウンドルールを追加する。

    タイプ:カスタムTCP

    プロトコル:TCP

    ポート:111

    ソース:7.で作成したEC2インスタンスのセキュリティグループ

    タイプ:カスタムTCP

    プロトコル:TCP

    ポート:2049

    ソース:7.で作成したEC2インスタンスのセキュリティグループ

  4. StorageGateway用のセキュリティグループに、以下6つのインバウンドルールを追加する。

    タイプ:カスタムTCP

    プロトコル:TCP

    ポート:1026

    ソース:7.で作成したEC2インスタンスのセキュリティグループ

    タイプ:カスタムTCP

    プロトコル:TCP

    ポート:1027

    ソース:7.で作成したEC2インスタンスのセキュリティグループ

    タイプ:カスタムTCP

    プロトコル:TCP

    ポート:1028

    ソース:7.で作成したEC2インスタンスのセキュリティグループ

    タイプ:カスタムTCP

    プロトコル:TCP

    ポート:1031

    ソース:7.で作成したEC2インスタンスのセキュリティグループ

    タイプ:カスタムTCP

    プロトコル:TCP

    ポート:2222

    ソース:7.で作成したEC2インスタンスのセキュリティグループ

    タイプ:HTTPS

    プロトコル:TCP

    ポート:443

    ソース:接続元のEC2のセキュリティグループ

  5. 7.のタブに戻り、Storage Gatewayの作成を進める。

    パラメータは以下の通り。

    接続オプション:IPアドレス

    IPアドレス:規定値

    サービスエンドポイント:ホストされたVPC

    既存のVPCエンドポイントを識別する方法を選択:VPCエンドポイントID

    VPCエンドポイントID:5.で作成したもの

storagegateway-09

他のパラメータはデフォルトで作成・アクティブ化する。

✅ ステップ3: ファイル共有の作成

  1. AWS マネジメントコンソールを開く

  2. 「Storage Gateway」→「ストレージリソース」→「ファイル共有」→「ファイル共有の作成」

  3. パラメータは以下の通り。

    ゲートウェイ:上記手順で作成したもの

    ファイル共有プロトコル:NFS(Linuxの場合)、SMB(Windowsの場合)

storagegateway-10

  1. 入力内容を確認し、[ファイル共有の作成]を実施する

✅ ステップ4:動作確認

  1. EC2にサインインし、任意の名前でマウント用のディレクトリを作成する
mkdir storage01
  1. ステップ3で作成したファイル共有から確認したマウントコマンドでマウントし、確認する

storagegateway-11

df -h 

storagegateway-12

  1. EC2側のディレクトリ内に配置したファイルを、マネジメントコンソールのS3側から確認する
touch test

storagegateway-13

🧹 片付け(リソース削除)

  • EC2からアンマウント
  • ファイル共有を削除
  • Storage Gatewayを削除
  • デプロイ先のEC2を削除
  • VPCエンドポイント(StorageGateway用)を削除
  • エンドポイント用セキュリティグループを削除
  • デプロイ先のEC2用セキュリティグループを削除

🏁 おつかれさまでした!

この課題では Storage Gateway を用いたEC2 と S3 間でのファイル連携を通して、クラウドデータ管理スキルが身につきます。次回は応用編としてIoTサービスやデータ収集・分析サービスとの連携にも挑戦してみましょう!

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?