クラウドサービスaws s3をEC2(サーバ)にマウントして利用してみます

・概要

S3といえば色々なファイル(主に画像系)を収納して外部から参照させるようなイメージが強いですが、今回はそんなS3をEC2からマウントしてローカルドライブ的な使い方をしてみようと思います。



・S3マウントするまでのやること

S3をEC2へマウントするまでのやることは以下の通り。

 ・EC2に対してS3を触れるようにするための権限付与

 ・マウントするバケットの作成

 ・ライブラリインストールと設定

 ・マウントするためのディレクトリ作成とマウント

こんな感じです。一つづつやっていきましょう。


・EC2に対してS3を触れるようにするための権限付与

AWSのサービス「IAM」を使って、EC2にS3を触れるようにするための権限を作成します。

EC2にロールを割り当てていない場合、以下手順にて実施

 コンソールにログインし、上記検索窓に「IAM」を入力・「ロール」を開きます。

 「ロールの作成」を選択し、新しいロールを作成します。

 「ユースケースの選択」から「EC2」を選び、「次のステップ:アクセス権限」を押下します。

 ポリシーのフィルタに「S3」と入力、「AmazonS3FullAccess」にチェックを入れて「次のステップ:タグ」を押下します。

 タグの追加ですが、これは運用面で管理しやすい名前などを付けるとよいでしょう。

 本件ではキー値「name」、値「S3 Only mount」としています。入力後「次のステップ:確認」を押下します。

 あとは「ロール名」、「ロールの説明」を入力して「ロールの作成」を押下で完了です。

 作成後に、EC2へアタッチしましょう。

EC2にロールが割りあたっている場合は以下手順

 AWSログイン後、検索窓より「IAM」を入力し、「ロール」を選択します。

 EC2に割りあたっているロールを選択し「ポリシーをアタッチします」を選択します。

 ポリシーのフィルタから「S3」を検索し、「AmazonS3FullAccess」にチェックを入れて「ポリシーのアタッチ」を押下して完了です。


・マウントするバケットの作成

マウントするためのS3バケットを作成します。

AWSコンソールにログインし、検索窓に「S3」を入力、サービスから「S3」を選択します。

「バケットを作成」を選択し、本件では以下の通りに設定しました。ご自身の運用環境に合わせてせってを実施ください。

 ・バケット名:only-mount-hogehoge
 ・AWSリージョン:アジアパシフィック(東京)ap-northeast-1
 ・パブリックアクセスを全てブロック:チェックを入れる
 ・バケットのバージョニング:無効にする
 ・デフォルトの暗号化:無効にする

最後に「バケットを作成」を選択して完了です。


・ライブラリのインストールと設定

次に必要となるライブラリのインストールと設定を実行します。rootユーザでの作業を想定しています。

以下の通りコマンドを実行し、「go」をインストールしパスを設定します。

yum install golang fuse git -y
export GOPATH=${HOME}/go

以下コマンドを実行し、「goofys」をインストール・実行権限を付与します。

最新Versionを確認する

wget https://github.com/kahing/goofys/releases/download/v0.24.0/goofys -P /usr/local/bin/
chmod 755 /usr/local/bin/goofys

・マウントするためのディレクトリ作成とマウント

マウントさせるためのディレクトリを作成しますが、これは運用しているサーバの環境に合わせて作成場所を検討ください。本件では/home配下へ作成・マウントします。

mkdir /home/ec2-user/mount-s3
/usr/local/bin/goofys only-mount-hogehoge /home/ec2-user/mount-s3

マウントの確認
df -h
only-mount-hogehoge  1.0P     0  1.0P   0% /home/ec2-user/mount-s3

ファイル書き込みの確認
touch /home/ec2-user/mount-s3/test.txt
ll /home/ec2-user/mount-s3/
total 0
-rw-r--r-- 1 root root 0 Jun 22 20:39 test.txt

実際にS3のバケットを除いてみましょう。ばっちり作成されていますね。

これで作業は完了です。あとは通常のドライブとして利用できます。

確認までができたら、自動マウントできるよう「/etc/fstab」に追加しましょう。


返信を残す

メールアドレスが公開されることはありません。

CAPTCHA