티스토리 뷰

예전에 파일 업로드를 위한 서버를 구성을 한적이 있었다. 들어온 요청(파일)을 특정 경로에 저장시켜주는 역할을 하는 하나의 JSP 파일을 가진 초간단 파일 업로드 서버였다. 이정도 역할만 해주면 되어서 더이상의 작업은 하지 않았는데 돌이켜 생각해보면 참 위험한 행동이었다...

세월이 흘러 이제는 이런 상황에 유용하게 사용할 수 있는 MinIO 라는 것이 나왔다. (이 글을 쓰고 있는 지금도 이걸 민아이오라고 읽어야 할지 미니오라고 읽어야 할지 모르겠다.. 일단은 민아이오라고 읽는걸로.. 누가좀 알려주세요) 파일업로드를 쉽게 할 수 있도록 지원해주는 어플리케이션이라고 생각하면 이해하기 쉬울것 같다. MinIO는 지금 설명한 이런 기능만을 제공하기 위해 나온것이 아니고 Amazon의 S3 클라우드 스토리지 서비스와 호환되는 API도 지원한다. 

 

MinIO is a cloud storage server compatible with Amazon S3, released under Apache License v2.

As an object store, MinIO can store unstructured data such as photos, videos, log files, backups and container images. The maximum size of an object is 5TB.                                                                  라고 위키에 써있다.

 

일단은 Amazon S3 클라우드 스토리지 서비스는 사용하지 않고 Object Storage 기능만을 사용하게끔 구성해본다.


MinIO 설치

 

설치에 대한 가이드는 공식홈페이지 (docs.min.io/docs/) 에 잘 나와있다. 여러가지 설치방법이 있지만 필자는 binary 파일을 받아서 설치하는 방법을 선택하였다. 

 

$ wget https://dl.min.io/server/minio/release/linux-amd64/minio
$ chmod +x minio
$ ./minio server /data

 

이렇게 간단하다고? 이렇게 명령어를 한번 그대로 날려보면..

이렇게 나온다. 끝난거다.. 엄청나게 간단하게 설치할 수 있다. 다만 minio가 지금은 background에서 도는것이 아니고 이상태가 기동된 상태이므로 이 상태를 끝내지 말고 유지해야한다. (백그라운드 상태로 실행하고 싶으면 명령어 맨 뒤에 & 를 추가해준다. )

Browser Access에 나온 주소 중 첫번째 (설치한 서버) 주소로 한번 접속을 해보자. 

 

세상 깔끔한 minio 초기 화면을 볼 수 있다. 여기에서 AccessKey, SecretKey 를 넣어서 접속을 해보자. 초기 키값은 minioadmin/minioadmin 이다. 

 

정상적으로 잘 기동이 되고 있는것을 확인할 수 있다. 


Minio Option

 

위에서 나온 Endpoint, AccessKey, SecretKey, Storage 위치 등 모두 변경을 할 수 있다. 

일단 Endpoint 를 정의를 하는것은 최초 실행을 할때 정의할 수 있다. 기존에 ./minio server /data 이런식으로 실행을 시켰었다면 다음과 같이 실행을 해보자. 

 

$ minio server --address ip:9000(기본포트) /data

이처럼 --address 옵션으로 endpoint 를 지정해 줄 수 있다. ip를 지정하지 않으면 현재 서버가 설정이 된다. 그리고 실행한것을 보면 위 명령문 앞에 MINIO_ACCESS_KEY, MINIO_SECRET_KEY 를 지정을 해줬는데 빨간줄로 나온 것처럼 즉시 Key에 대한 초기화를 진행하지 않으면 이렇게 실행을 시킬때 Key를 같이 명시해줘야한다. 그럼 이 Key에 대한 초기화는 어디서 할까?

$ vi /data(설정한경로)/.minio.sys/config/config.json

이곳에서 초기 비밀번호인 minioadmin 으로 검색을 해서 변경을 하면 된다. 

그리고 minio의 기본 저장경로는 실행 명령문의 마지막에 있는 /data 부분이다. 자신이 쓰고자 하는 경로를 미리 만들고 이 경로를 매핑시켜주면 된다. 

 

끝!

댓글
최근에 올라온 글
최근에 달린 댓글
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31