AWSのS3バケットを作成し、EC2にマウントする方法

AWS S3(Simple Storage Service)

AWS S3は、AWSのクラウドストレージサービスです。

1GBあたり0.025ドル(2020/10 時点 東京ストレージ)の格安のストレージサービスです。

S3は主にデータの保存先として利用します。サーバーにマウントして使うことは推奨されていないようで、S3へのアクセスが増加するとマウントが外れがちになったりする障害があります。

ただやはりマウントして使いたいというニーズがあるので、ここではサーバーにマウントして利用する方法を説明します。

参考:Amazon S3公式ページ

AWSのS3バケットを作成

AWSにアクセスします:https://aws.amazon.com/jp/s3/

サービスからS3を選択します。

「バケットを作成する」を選びS3バケッドを作成します。

バケット名(英数、記号はハイフン)を入力し、リージョンはアジアパシフィック(東京)を選択します。

バージョニングをONにすれば、誤ってオブジェクトを削除した場合でも、復元が可能になります。

しかし、データが増えるたびにバージョニング情報を増えるため、ライフサイクルポリシーで不要なデータを削除するように設定します。

AWS S3 でライフサイクルポリシーを使い、古くなったファイルを自動削除する

バケットを作成します。初期値ではパブリックアクセスはすべてブロックになっています。

バケットを作成します。

S3マウントツール s3fs

S3バケットを作成したら、次にサーバーにマウントを行います。

マウントには ツール s3fs を使用してマウントします。ここでは EC2インスタンスにマウントを行います。

s3fsインストール

事前準備

# 事前にyumアップデート
$ sudo yum -y update
# s3fsインストールのためのライブラリをインストール
$ sudo amazon-linux-extras install -y epel

s3fsインストール

# s3fsインストール
$ sudo yum -y install s3fs-fuse
# バージョン確認
$ s3fs --version
Amazon Simple Storage Service File System V1.83(commit:e1dafe7) with OpenSSL
Copyright (C) 2010 Randy Rizun <rrizun@gmail.com>
License GPL2: GNU GPL version 2 <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

マウント

マウントするディレクトリを作成します。

#マウントするディレクトリを作成
$sudo /mnt/s3-bucket

#s3fsコマンドでマウント
$sudo  s3fs バケット名 /mnt/s3-bucket -o rw,endpoint=p-northeast-1,allow_other,use_cache=/tmp,uid=222,gid=500,passwd_file=/etc/passwd-s3fs,nonempty,umask=0000

マウント確認

$ls /mnt/s3-bucket
..

この記事のご感想やコメントはこちら

メールアドレスが公開されることはありません。 が付いている欄は必須項目です