Debian 12.x 에서 MinIO (Object storage service) 를 파일시스템처럼 마운트하기

리눅스/OS 일반|2024. 7. 3. 13:44
반응형

원래 Object storage 는 파일시스템에 마운트 하는 형식이 아닌, API 또는 시스템 명령어를 통해 파일 (객체) 을 송수신하는 개념입니다.

그러나 S3FS-Fuse 를 설치하면 NFS 나 SMB 마운트한 것처럼 파일시스템에 마운트하여 파일 저장 및 읽기가 가능해집니다.

본 테스트는 Debian 12.x 환경에서 진행하였으나 Ubuntu 에서도 동일한 명령 사용이 가능합니다.

 

 

1. 설치

 

필수 구성 패키지를 먼저 설치합니다.

# apt -y update

# apt -y install automake autotools-dev fuse g++ git libcurl4-gnutls-dev libfuse-dev libssl-dev libxml2-dev make pkg-config

 

github 에서 소스파일을 다운로드 받아 설치합니다.

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

# cd s3fs-fuse

# ./autogen.sh

# ./configure

# make

# make install

 

 

2. 설정 및 마운트

 

사용하는 계정정보를 입력합니다.

# echo "ACCESS_KEY_ID:SECRET_ACCESS_KEY" > ~/.passwd-s3fs

# chmod 600 ~/.passwd-s3fs

 

마운트할 디렉토리를 생성하고 버킷 이름과 Object 스토리지 서버 IP, PORT 번호로 마운트 합니다.

# mkdir /data

# s3fs <bucket-name> /data -o allow_other -o use_path_request_style -o url=http://<Object 스토리지 서버 IP:PORT> -o passwd_file=~/.passwd-s3fs -o nonempty

 

마운트 된 파일시스템을 확인합니다.

# df -h
Filesystem                        Size  Used Avail Use% Mounted on
udev                              7.7G     0  7.7G   0% /dev
tmpfs                             1.6G  1.1M  1.6G   1% /run
/dev/mapper/pve-root               67G  9.9G   54G  16% /
tmpfs                             7.8G   63M  7.7G   1% /dev/shm
tmpfs                             5.0M     0  5.0M   0% /run/lock
tmpfs                             1.6G     0  1.6G   0% /run/user/0
/dev/fuse                         128M   32K  128M   1% /etc/pve
s3fs                               64P     0   64P   0% /data

 

단위가 이상하게 표시 되어도 마운트 및 파일 입출력은 잘 됩니다.

# echo test > /data/lasttest.txt
# cat /data/lasttest.txt
test

 

반응형

댓글()