AWS

[AWS] s3fs-fuse 설치하기

pullwall 2024. 1. 10. 10:30
728x90

s3fs-fuse란 파일시스템을 AWS S3 스토리지에 마운트하여 클라우드 스토리지를 로컬 파일시스템처럼 사용할 수 있도록 해주는 오픈소스 소프트웨어다.

EC2 amazon Linux 환경에서 설치를 진행하였다.

 

1. S3 버킷 생성

s3fs-fuse 이용하여 S3 Bucket과 마운트 하기 위해 Bucket을 생성한다.
보안 자격 증명 -> 사용자 생성

 

사용자 -> 보안 자격 증명 -> 액세스 키 만들기 
(처음 생성 시에만 키를 확인할 수 있으니, 나중에 확인하기 위해 csv 파일로 키를 저장해 놓아야 한다)

 

앞서 생성했던 User의 권한 -> 권한 정책 -> 권한 추가 -> AmazonS3FullAccess 권한으로 추가

 

 

AWS S3 에서 새로운 버킷 생성
리전 이슈가 발생하여 안정적인 연결을 위해 도쿄로 설정하였다.
(나는 이상하게 대한민국으로 설정하면 연결이 불안정하거나 되지 않았다.)
 

2. s3fs-fuse 빌드

EC2 s3fs-fuse 빌드한다.

 

아래와 같이 10개의 패키지를 설치한다.

sudo yum install automake autotools-dev g++ git libcurl4-gnutls-dev libfuse-dev libssl-dev libxml2-dev make pkg-config

 

오픈소스를 clone 해온다.

git clone https://github.com/s3fs-fuse/s3fs-fuse

 

clone한 디렉토리에서 아래와 같이 빌드를 진행한다.

./autogen.sh
./configure
make
sudo make install

 

 

 

3. 마운트

EC2 /etc/passwd-s3fs 파일의 내용을 1에서 발급받았던 AcessKey:SecretKey 형식으로 수정한다.
해당 파일의 권한을 600으로 설정한다.
 
아래의 커맨드로 마운트를 진행한다.
sudo s3fs <bucket name> /mnt -o passwd_file=/etc/passwd-s3fs -o url=https://s3-ap-northeast-1.amazonaws.com -o endpoint=ap-northeast-1
df -h

s3fs 마운트 완료

 

728x90