Recommanded Free YOUTUBE Lecture: <% selectedImage[1] %>

Contents

AWS S3에 대해서

S3는 Simple Storage Server의 약자로 인터넷에서 사용 할 수 있는 오브젝트 스토리지다. ElasticCache, RDS와 함께 AWS에서 가자 유용하게 사용하는 서비스들 중 하나다.

AWS S3 Bucket 마운트

파일 관리 서비스를 만들려고 하는데, API 호출해서 사용하는게 영 귀찮다. 그냥 마운트하기로 했다. goofyss3fs를 주로 사용한다. s3fs는 예전에 사용해봤으니, 새로운 기분을 느끼기 위해서(...) goofys를 사용하기로 했다. goofys를 설치한 또다른 이유는 golang으로 만든녀석이고 내가 golang을 좋아하기 때문이다. 성능관련 궁금한게 있다면 S3FS가 느리다구요? 그럼 goofys를 사용해 보세요를 참고하자.

aws cli tool 설치

AWS 우분투 리눅스에서 테스트를 했다. aws cli를 설치한다.
# apt-get install awscli

S3 접근을 위해서 config파일과 credentials파일을 만들었다. 인스턴스에 IAM룰을 주는 방법도 있는데, 이건 따로 살펴봐야겠다.
# cat $HOME/.aws/config
region = ap-northeast-2

# cat $HOME/.aws/credentials 
[default]
aws_access_key_id = <MY_ACCESS_KEY>
aws_secret_access_key =  <MY_SECRET_KEY>

마운트할 버킷확인
# aws s3 ls
2017-12-15 06:56:07 img.joinc.co.kr
2017-12-27 09:08:53 doc.joinc.co.kr 

goofys 설치 및 마운트

goofys는 fuse기반으로 작동한다. fuse를 설치하자.
$ yum install -y fuse

go 언어를 설치해야 한다. https://golang.org 에서 최신버전 다운로드해서 설치했다.
# cd /usr/local
# wget https://dl.google.com/go/go1.9.2.linux-amd64.tar.gz
# tar -xvzf go1.9.2.linux-amd64.tar.gz
환경 설정
# cat ~/.bash_profile
export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin
# go version
go version go1.9.2 linux/amd64
goofys 설치
# go get github.com/kahing/goofys

img.joinc.co.kr를 /home/joinc/img 에 마운트했다.
# goofys img.joinc.co.kr /home/joinc/img 
이제 파일 시스템처럼 사용하면 된다.