AWS EC2にS3をマウントする方法

環境
AWS EC2
S3

操作方法
1.IAMロールに権限を追加する
追加IAMポリシー

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetBucketLocation"
],
"Resource": [
"arn:aws:s3:::{マウントするバケット名}"
]
},
{
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:GetObject",
"s3:DeleteObjectVersion",
"s3:DeleteObject",
"s3:GetObjectVersion"
],
"Resource": [
"arn:aws:s3:::{マウントするバケット名}/*"
]
}
]
}
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::{マウントするバケット名}" ] }, { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObjectVersion", "s3:DeleteObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::{マウントするバケット名}/*" ] } ] }
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket",
                "s3:GetBucketLocation"
            ],
            "Resource": [
                "arn:aws:s3:::{マウントするバケット名}"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:DeleteObjectVersion",
                "s3:DeleteObject",
                "s3:GetObjectVersion"
            ],
            "Resource": [
                "arn:aws:s3:::{マウントするバケット名}/*"
            ]
        }
    ]
}

2.EC2にs3fsをインストールします。
EC2のコマンドラインからroot権限で実行します。
# yumアップデート

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
yum -y update
yum -y update
yum -y update

# s3fsのパッケージを入れるためにライブラリを追加する

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
amazon-linux-extras install -y epel
amazon-linux-extras install -y epel
amazon-linux-extras install -y epel

# s3fsインストール

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
yum -y install s3fs-fuse
yum -y install s3fs-fuse
yum -y install s3fs-fuse

# s3fsのバージョン確認

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
s3fs --version
s3fs --version
s3fs --version

3.S3のマウントを行います
S3のマウントポイントを作成する

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
mkdir /mnt/cft
mkdir /mnt/cft
mkdir /mnt/cft

EC2再起動時もS3がマウントされるよう/etc/fstabに以下を追加
# umaskを指定しないとftpユーザーが読み書きできない

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
echo "backet234 /mnt/cft fuse.s3fs _netdev,allow_other,iam_role=auto,umask=022 0 0" | sudo tee -a /etc/fstab
echo "backet234 /mnt/cft fuse.s3fs _netdev,allow_other,iam_role=auto,umask=022 0 0" | sudo tee -a /etc/fstab
echo "backet234 /mnt/cft fuse.s3fs _netdev,allow_other,iam_role=auto,umask=022 0 0" | sudo tee -a /etc/fstab

# マウント実行

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
mount -a
mount -a
mount -a

# マウント確認

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
df -h
df -h
df -h

 

AWS

Posted by arkgame