AWS S3(Simple Storage Service)
コンテンツ
AWS S3は、AWSのクラウドストレージサービスです。
1GBあたり0.025ドル(2020/10 時点 東京ストレージ)の格安のストレージサービスです。
S3は主にデータの保存先として利用します。サーバーにマウントして使うことは推奨されていないようで、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
..