반응형
Amazon Linux 2에서 goofys 설치 및 S3 마운트하기
Golang fuse 설치
yum install -y golang fuse
$ yum install -y golang fuse
==========================================================================
Package Arch Version
==========================================================================
Installing:
fuse x86_64 2.9.2-11.amzn2
golang x86_64 1.15.12-1.amzn2.0.1
Installing for dependencies:
apr x86_64 1.6.3-5.amzn2.0.2
apr-util x86_64 1.6.1-5.amzn2.0.2
apr-util-bdb x86_64 1.6.1-5.amzn2.0.2
cpp x86_64 7.3.1-13.amzn2
emacs-filesystem noarch 1:27.1-1.amzn2.0.1
gcc x86_64 7.3.1-13.amzn2
git x86_64 2.32.0-1.amzn2.0.1
git-core x86_64 2.32.0-1.amzn2.0.1
git-core-doc noarch 2.32.0-1.amzn2.0.1
glibc-devel x86_64 2.26-48.amzn2
glibc-headers x86_64 2.26-48.amzn2
gnutls x86_64 3.3.29-9.amzn2
golang-bin x86_64 1.15.12-1.amzn2.0.1
golang-src noarch 1.15.12-1.amzn2.0.1
kernel-headers x86_64 4.14.238-182.422.amzn2
libatomic x86_64 7.3.1-13.amzn2
libcilkrts x86_64 7.3.1-13.amzn2
libitm x86_64 7.3.1-13.amzn2
libmodman x86_64 2.0.1-8.amzn2.0.2
libmpc x86_64 1.0.1-3.amzn2.0.2
libmpx x86_64 7.3.1-13.amzn2
libproxy x86_64 0.4.11-10.amzn2.0.3
libquadmath x86_64 7.3.1-13.amzn2
libsanitizer x86_64 7.3.1-13.amzn2
mercurial x86_64 2.6.2-10.amzn2
mpfr x86_64 3.1.1-4.amzn2.0.2
neon x86_64 0.30.0-3.amzn2.0.2
pakchois x86_64 0.4-10.amzn2.0.2
perl-Error noarch 1:0.17020-2.amzn2
perl-Git noarch 2.32.0-1.amzn2.0.1
perl-TermReadKey x86_64 2.30-20.amzn2.0.2
subversion x86_64 1.7.14-16.amzn2.0.1
subversion-libs x86_64 1.7.14-16.amzn2.0.1
trousers x86_64 0.3.14-2.amzn2.0.2
==========================================================================
go version
$ go version
go version go1.15.12 linux/amd64
go 환경 변수 설정
$ which go
/usr/bin/go
export GOBIN=/usr/bin
go env | egrep 'GOROOT|GOBIN|GOPATH'
$ go env | egrep 'GOROOT|GOBIN|GOPATH'
GOBIN="/usr/bin"
GOPATH="/root/go"
GOROOT="/usr/lib/golang"
goofys 설치
goofys GITHUB : https://github.com/kahing/goofys
1) 설치 실패 ㅠㅠ
$ go get github.com/kahing/goofys
# github.com/kahing/goofys/api/common
/root/go/src/github.com/kahing/goofys/api/common/conf_azure.go:272:34: accountsRes.Value undefined (type storage.AccountListResultPage has no field or method Value)
/root/go/src/github.com/kahing/goofys/api/common/conf_azure.go:373:35: not enough arguments in call to client.ListKeys
have (context.Context, string, string)
want (context.Context, string, string, storage.ListKeyExpand)
$ go install github.com/kahing/goofys
# github.com/kahing/goofys/api/common
/root/go/src/github.com/kahing/goofys/api/common/conf_azure.go:272:34: accountsRes.Value undefined (type storage.AccountListResultPage has no field or method Value)
/root/go/src/github.com/kahing/goofys/api/common/conf_azure.go:373:35: not enough arguments in call to client.ListKeys
have (context.Context, string, string)
want (context.Context, string, string, storage.ListKeyExpand)
2) 설치
wget http://bit.ly/goofys-latest -O /usr/local/bin/goofys
chmod +x /usr/local/bin/goofys
goofys --version
$ goofys --version
goofys version 0.19.0-943e017724ea820eb4185419ef3c41d6f921a324
728x90
AWS Access Key 등록
: EC2 인스턴스에서 S3에 액세스하기 위한 액세스 키 설정
aws --version
$ aws --version
aws-cli/1.18.147 Python/2.7.18 Linux/4.14.232-177.418.amzn2.x86_64 botocore/1.18.6
aws configure 명령어로 Access Key 등록
aws configure
$ aws configure
AWS Access Key ID [None]: accesskey
AWS Secret Access Key [None]: secretkey
Default region name [None]: ap-northeast-2
Default output format [None]: json
edit로 Access Key 등록
vim ~/.aws/credentials
$ vim ~/.aws/credentials
[default]
aws_access_key_id = accesskey
aws_secret_access_key = secretkey
vim ~/.aws/config
$ vim ~/.aws/config
[default]
output = json
region = ap-northeast-2
Access Key 리스트 확인
aws configure list
$ aws configure list
Name Value Type Location
---- ----- ---- --------
profile <not set> None None
access_key ****************KKK7 shared-credentials-file
secret_key ****************LyeU shared-credentials-file
region ap-northeast-2 config-file ~/.aws/config
AWS S3 마운트(Goofys 마운트)
goofys <S3버킷> <마운트할 경로>
goofys <S3버킷:접두사> <마운트할 경로>
mkdir /awsS3
goofys test-goofys1 /awsS3
df -h | grep -v tmpfs
$ df -h | grep -v tmpfs
Filesystem Size Used Avail Use% Mounted on
/dev/nvme0n1p1 8.0G 4.8G 3.3G 60% /
test-goofys1 1.0P 0 1.0P 0% /awsS3
fstab 마운트(/etc/fstab)
goofys#<S3버킷> <마운트할 경로> fuse [마운트 옵션]
umount /awsS3
vim /etc/fstab
goofys#test-goofys1 /awsS3 fuse _netdev,allow_other 0 0
mount -av
$ mount -av
/ : ignored
/awsS3 : successfully mounted
df -h | grep -v tmpfs
$ df -h | grep -v tmpfs
Filesystem Size Used Avail Use% Mounted on
/dev/nvme0n1p1 8.0G 4.8G 3.3G 60% /
test-goofys1 1.0P 0 1.0P 0% /awsS3
참고URL
- https://github.com/kahing/goofys
728x90
반응형
'퍼블릭 클라우드' 카테고리의 다른 글
[AWS] AWS Billing and Cost Management 콘솔에 대한 IAM 사용자 및 역할 액세스를 활성화 (0) | 2021.08.09 |
---|---|
Amazon CloudFront 파일 무효화 (0) | 2021.08.06 |
Amazon ALB를 사용하여 소스 IP를 제한하는 방법(IP Blocking) (0) | 2021.07.30 |
[AWS] AWS CloudWatch 경보를 Slack으로 보내는 방법_ver2 (0) | 2021.07.29 |
AWS Session Manager를 사용하여 EC2 인스턴스에 연결하는 방법 (0) | 2021.07.26 |