콘텐츠로 이동


Glusterfs rpm 설치

Centos환경에서 GlusterFS설치 및 운용

  1. 다운로드 : http://download.gluster.org/pub/gluster/glusterfs/3.3/3.3.1/CentOS/

설치 진행

  1. 패키지 설치
    $> yum install -y fuse
    $> rpm -ivh glusterfs-3.3.1-1.el5.i386.rpm
    $> rpm -ivh glusterfs-fuse-3.3.1-1.el5.i386.rpm
    $> rpm -ivh glusterfs-devel-3.3.1-1.el5.i386.rpm
    $> rpm -ivh glusterfs-server-3.3.1-1.el5.i386.rpm
    
  2. gluster 데몬 실행으로 설정

    $> /etc/rc.d/init.d/glusterd start
    $> chkconfig glusterd on
    
    * 관련경로
    $> /etc/glusterfs/, /var/lib/glusterd/
    

  3. 서버에 fuse 모듈 적용 및 확인하기

    $> modprobe fuse
    $> echo "modprobe fuse" >> /etc/rc.local
    $> dmesg | grep -i fuse
    
    * 해당 내용이 없으면 fuse 모듈 적재가 안된 부분임.

  4. Storage Pool 구성

    1. Management 서버에서 스토리지로 연결할 서버 등록(자신은 등록하지 않아도 됨)
       $> gluster peer probe 서버IP
       $> ef) gluster peer probe 192.168.150.19
      

확인

  1. Pool 구성 확인
    $> gluster peer status
    Number of Peers: 1
    Hostname: 192.168.150.19
    Uuid: 0bb2e93b-1ab1-4420-91c0-e5bcf203586b
    State: Peer in Cluster (Connected)
    
  2. Storage pool 제거
    $> gluster peer detach 서버IP
    ef) gluster peer detach 192.168.150.19
    
  3. Volume 구성정보
    1. Volume 구성방식은 Distributed(분산저장, 기본)
      - 데이터가 들어오면 Brick중 한군데 서버에 저장이 됨
      - Distributed 모드에서 어느 하나 Brick이 중단될 경우, 중단된 Brick이 가지고 있는 데이터는 보이지 않게 됨.
    2. replicated(분산저장, replication 수 만큼 파일복사) - 데이터가 들어오면 Brick이 모두 데이터를 가지게 됨, 가장 안정적.
    3. stripe(단독저장) 로 구성가능
      - 데이터가 들어오면 한 데이터를 Brick에 분산 저장됨
      - Stripe 모드에서 어느 하나 Brick이 중단될 경우, 데이터가 깨짐
  4. volume 생성 (Distributed 방식)
    $> gluster volume create 볼륨이름 vmlnx001:/data vmlnx002:/data vmlnx003:/data vmlnx004:/data
    ef) gluster volume create data 192.168.150.18:/data 192.168.150.19:/data
    gluster> volume status data
    Status of volume: data
    Gluster process                                         Port    Online  Pid
    ------------------------------------------------------------------------------
    Brick 192.168.150.18:/data                              24011   Y       3245
    Brick 192.168.150.19:/data                              24011   Y       2481
    NFS Server on localhost                                 38467   Y       3251
    NFS Server on 192.168.150.19                            38467   Y       2487
    gluster> volume info data
    Volume Name: data
    Type: Distribute
    Volume ID: 556d6065-f888-4198-8782-65bc03979a0b
    Status: Started
    Number of Bricks: 3
    Transport-type: tcp
    Bricks:
    Brick1: 192.168.150.18:/data
    Brick2: 192.168.150.19:/data
    Brick3: 192.168.150.16:/data
    
  5. volume 생성 (Replicate 방식)
    gluster> volume create data replica 2 192.168.150.18:/data 192.168.150.19:/data
    생성한 volume 확인
    gluster> volume info all
    Volume Name: data
    Type: Replicate
    Volume ID: c2ecd1b8-708e-47d4-8f15-adcd1b081987
    Status: Started
    Number of Bricks: 1 x 2 = 2
    Transport-type: tcp
    Bricks:
    Brick1: 192.168.150.19:/data
    Brick2: 192.168.150.18:/data
    
  6. volume 생성 (stripe 방식)
    $> gluster volume create data stripe 2 transport tcp 192.168.150.18:/data 192.168.150.19:/data
    
  7. volume 생성시 기존에 생성된 volume일 경우, 생성이 실패 한다

    ef) gluster volume create data replica 3 192.168.150.18:/data 192.168.150.19:/data 192.168.150.16:/data  
    /data or a prefix of it is already part of a volume
    -  경우, 등록한 노드 폴더에 들어가면, .glusterfs라는 폴더가 존재한다.
    
    $>  ls -al
    합계 44
    drwxr-xr-x  4 root root  4096 12월  6 16:00 .
    drwxr-xr-x 24 root root  4096 12월  6 16:01 ..
    drw-------  7 root root  4096 12월  6 15:17 .glusterfs
    drwx------  2 root root 16384 12월  5 13:48 lost+found
    

      해결책은 해당 폴더 권한 수정 후 폴더 삭제하면 된다.  
      ```shell
      $> setfattr -x trusted.glusterfs.volume-id /data/
      $> setfattr -x trusted.gfid /data/
      $> rm -rf .glusterfs
      ```
    
  8. 생성할 볼륨 활성화

    gluster> volume start data
    

  9. 생성한 볼륨 접근 허가 대역 지정
    gluster volume set <volume_name> auth.allow <허가IP대역>
    ef) gluster> volume set data  auth.allow 192.168.150.*
    
  10. Volume 삭제 방법
    gluster volume stop <volume_name>
    gluster volume delete <volume_name>
    ef)
    gluster volume stop data
    gluster volume delete data
    
  11. 생성한 Volume 마운트
    mount -t glusterfs <server_name>:<volume_name> <mount point>
    mount -t glusterfs 192.168.150.18:/data /test/
    $> df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/sda2             4.9G  1.5G  3.2G  31% /
    /dev/sda5             9.6G  151M  9.0G   2% /data
    /dev/sda1              99M   12M   83M  13% /boot
    tmpfs                1014M     0 1014M   0% /dev/shm
    glusterfs#192.168.150.18:/data
                         9.6G  151M  9.0G   2% /test
    
  12. 자동으로 마운트시 /etc/fstab에 내용 추가

    192.168.150.18:/data    /mnt                    glusterfs defaults,_netdev      0 0
    

    * 이 경우, netfs 서비스가 활성화 되어있어야 재부팅 해도 마운트를 한다.

  13. Volume 확장

    • 용량 부족시 증설가능 (replicate모드는 최초 설정한 Brick만큼 추가 해 주어야 한다.)
      $> gluster volume add-brick dist_vol 172.27.0.9:/data
      ef) gluster volume add-brick data 192.168.150.16:/data
      Brick추가  volume 상태
      추가 )
      gluster> volume status data
      Status of volume: data
      Gluster process                                         Port    Online  Pid
      ------------------------------------------------------------------------------
      Brick 192.168.150.18:/data                              24011   Y       3245
      Brick 192.168.150.19:/data                              24011   Y       2481
      NFS Server on localhost                                 38467   Y       3251
      NFS Server on 192.168.150.16                            38467   Y       4216
      NFS Server on 192.168.150.19                            38467   Y       2487
      추가 )
      gluster> volume status data
      Status of volume: data
      Gluster process                                         Port    Online  Pid
      ------------------------------------------------------------------------------
      Brick 192.168.150.18:/data                              24011   Y       3245
      Brick 192.168.150.19:/data                              24011   Y       2481
      Brick 192.168.150.16:/data                              24011   Y       4384
      NFS Server on localhost                                 38467   Y       3268
      NFS Server on 192.168.150.16                            38467   Y       4390
      NFS Server on 192.168.150.19                            38467   Y       2501
      
  14. 성능튜닝
    gluster> volume set data performance.write-behind-window-size 1024MB
    gluster> volume set data  performance.cache-size 512MB
    


back
perplexity에서 생성한 AI이미지






작성일: 2026년 7월 11일 ,  마지막 업데이트: 2026년 7월 14일