CentOS 시스템에 SeaweedFS 배포 및 구성

분산 파일 시스템인 SeaweedFS는 대량의 작은 파일을 효율적으로 저장하도록 설계되었습니다. 고성능과 뛰어난 확장성을 자랑하는 이 시스템을 CentOS 운영체제에 설치하고 기본적인 설정을 완료하는 과정을 상세히 안내합니다.

시스템 준비

성공적인 SeaweedFS 설치를 위해 다음 준비 단계를 따르십시오.

  1. 시스템 요구사항 확인: CentOS 시스템이 SeaweedFS 운영에 필요한 최소한의 자원(최소 1GB RAM, 1GB 디스크 공간 권장)을 갖추고 있는지 확인합니다.
  2. 운영체제 업데이트: 시스템의 모든 패키지를 최신 상태로 유지하여 잠재적인 호환성 문제를 방지합니다.
  3. sudo yum update -y
  4. 필수 유틸리티 설치: 파일 다운로드(wget) 및 압축 해제(tar)를 위한 기본 도구를 설치합니다.
  5. sudo yum install wget tar -y

SeaweedFS 다운로드

SeaweedFS의 최신 버전은 공식 GitHub 릴리스 페이지에서 얻을 수 있습니다. 시스템 아키텍처(예: x86_64)에 맞는 .tar.gz 또는 .tar.xz 파일을 선택하여 다운로드합니다.

  1. SeaweedFS GitHub 릴리스 페이지를 방문합니다.
  2. 적절한 바이너리 패키지 링크를 복사한 후, wget 명령을 사용하여 다운로드합니다. 아래 예시에서 RELEASE_TAG는 실제 버전 태그로 대체해야 합니다.
  3. wget https://github.com/chrislusf/seaweedfs/releases/download/RELEASE_TAG/seaweedfs_linux_amd64.tar.gz

파일 압축 해제 및 설치

다운로드한 SeaweedFS 아카이브를 시스템의 적절한 위치에 압축 해제합니다.

  1. 다운로드한 파일을 /usr/local 디렉토리와 같은 위치에 압축 해제합니다.
  2. sudo tar -xzvf seaweedfs_linux_amd64.tar.gz -C /usr/local/
  3. 이 명령을 실행하면 /usr/local 경로 아래에 weed라는 디렉토리가 생성되고, 그 안에 SeaweedFS 실행 파일들이 위치하게 됩니다.

SeaweedFS 설정 및 시작

이제 SeaweedFS를 구성하고 마스터 노드와 볼륨 서버를 시작할 차례입니다.

  1. 환경 변수 설정 (선택 사항): 어느 경로에서든 SeaweedFS 명령을 쉽게 실행할 수 있도록, 실행 파일 경로를 시스템의 PATH 환경 변수에 추가하는 것을 권장합니다. /etc/profile 또는 ~/.bashrc 파일을 편집하여 다음 줄을 추가합니다.
  2. export PATH=$PATH:/usr/local/weed/bin

    변경사항을 적용하려면 다음 명령 중 하나를 실행합니다.

    source /etc/profile

    또는

    source ~/.bashrc
  3. 마스터 노드 시작: SeaweedFS의 마스터 노드는 파일 메타데이터를 관리하고 조율하는 핵심 역할을 합니다. 데이터 저장을 위한 작업 디렉토리를 생성한 후 마스터 노드를 실행합니다.
  4. mkdir -p /data/seaweedfs/master
    /usr/local/weed/bin/weed master -mdir="/data/seaweedfs/master"
  5. 볼륨 서버 시작: 실제 파일 데이터를 저장할 볼륨 서버를 하나 이상 시작해야 합니다. 마스터 서버의 주소를 지정해야 합니다.
  6. mkdir -p /data/seaweedfs/volumes
    /usr/local/weed/bin/weed volume -dir="/data/seaweedfs/volumes" -max=0 -mserver="localhost:9333"

    여기서 -max=0은 저장할 볼륨의 수에 제한을 두지 않음을 의미하며, -mserver는 마스터 서버의 주소를 지정합니다.

  7. 설치 확인: 별도의 터미널을 열고 SeaweedFS의 파일 업로드 도구를 사용하여 설치가 정상적으로 작동하는지 테스트할 수 있습니다.
  8. /usr/local/weed/bin/weed shell upload file_to_upload.txt

    모든 설정이 올바르다면, 파일이 SeaweedFS에 성공적으로 업로드되고 해당 파일의 URL이 반환될 것입니다.

시스템 서비스 등록 (선택 사항)

SeaweedFS를 시스템 부팅 시 자동으로 시작되는 서비스로 등록하려면 systemd 서비스 유닛 파일을 작성해야 합니다. 이 과정은 특정 환경과 요구사항에 따라 세부적인 설정이 달라질 수 있습니다.

보안 및 네트워크 고려사항

운영 환경에서는 적절한 방화벽 규칙과 보안 대책을 적용하는 것이 필수적입니다. SeaweedFS가 기본적으로 사용하는 포트(예: 마스터 노드의 9333, 볼륨 서버의 8080)는 시스템 방화벽에서 외부 접속을 허용하도록 설정해야 할 수 있습니다.

태그: SeaweedFS CentOS 분산 파일 시스템 스토리지 마스터 노드

9월 1일 22:09에 게시됨