차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

glusterfs_quick_start [2015/07/29 17:32] (현재)
koov 만듦
줄 1: 줄 1:
 + --- //​[[koovis@gmail.com|이강우]] 2015/07/29 16:53//
 +====== GlusterFS Quick Start ======
 +
 +본 문서의 내용은 원분문서 [[http://​gluster.readthedocs.org/​en/​latest/​Quick-Start-Guide/​Quickstart/​]]의 내용을 참고하였습니다.
 +
 +
 +===== 환경 =====
 +  * 본 내용은 CentOS 7 에서 작성되었습니다.
 +  * GlusterFS를 사용하기 위해서는 최소 2개 이상의 노드가 필요합니다.
 +  * 또한 구축된 GlusterFS를 테스트 해보기 위한 별도의 노드가 있으면 더 좋겠습니다.
 +  * GlusterFS로 서비스하기 위한 볼륨은 OS볼륨과 별도의 볼륨으로 되어있는게 좋습니다. 물론 같은 볼륨으로도 서비스는 가능합니다.
 +
 +===== 설치 =====
 +  * GlusterFS 노드 2개를 각각 gluster1, gluster2 로 설치하도록 하겠습니다.
 +  * GlusterFS를 사용하기 위한 추가 라이브러리가 필요하므로 EPEL Repository를 등록하여야 합니다.
 +  * GlusterFS를 설치하기 위한 Gluster.org Repository를 등록하여야 합니다.
 +
 +==== OS설치 ====
 +일반적인 OS설치와 마찬가지로 CentOS 7버전을 각각 gluster1, gluster2 서버에 설치합니다.
 +
 +==== Repository 설정 ====
 +GlusterFS를 사용하기 위한 추가 라이브러리가 필요하므로 EPEL Repository를 설정합니다.
 +:​!:​gluster1,​ gluster2 양쪽 서버에 모두 적용하도록 합니다.
 +
 +<code bash>
 +[root@gluster1 ~]# yum -y install https://​dl.fedoraproject.org/​pub/​epel/​epel-release-latest-7.noarch.rpm
 +</​code>​
 +
 +또한 GlusterFS를 설치하기 위한 Gluster.org Repository를 설정합니다.
 +별도의 릴리즈 패키지를 제공하지 않고 repo 파일을 공식 홈페이지에서 제공합니다. 해당 repo파일을 /​etc/​yum.repos.d 에 설정하도록 합니다.
 +:​!:​gluster1,​ gluster2 양쪽 서버에 모두 적용하도록 합니다.
 +
 +<code bash>
 +[root@gluster1 ~]# cd /​etc/​yum.repos.d/​
 +[root@gluster1 ~]# wget http://​download.gluster.org/​pub/​gluster/​glusterfs/​LATEST/​CentOS/​glusterfs-epel.repo
 +</​code>​
 +
 +==== GlusterFS-server 설치 ====
 +레포지토리 설정이 완료되면 간단하게 아래 명령어를 통해서 패키지를 설치할 수 있습니다.
 +:​!:​gluster1,​ gluster2 양쪽 서버에 모두 적용하도록 합니다.
 +
 +<code bash>
 +[root@gluster1 ~]# yum install glusterfs-server
 +</​code>​
 +
 +설치가 완료되면 Gluster 데몬을 기동하여 정상 기동되는지 확인하도록 합니다.
 +<code bash>
 +[root@gluster1 ~]# systemctl start glusterd
 +[root@gluster1 ~]# systemctl status glusterd
 +glusterd.service - GlusterFS, a clustered file-system server
 +   ​Loaded:​ loaded (/​usr/​lib/​systemd/​system/​glusterd.service;​ disabled)
 +   ​Active:​ active (running) since Wed 2015-07-29 14:15:48 KST; 8s ago
 +  Process: 2270 ExecStart=/​usr/​sbin/​glusterd -p /​var/​run/​glusterd.pid (code=exited,​ status=0/​SUCCESS)
 + Main PID: 2271 (glusterd)
 +   ​CGroup:​ /​system.slice/​glusterd.service
 +           ​└─2271 /​usr/​sbin/​glusterd -p /​var/​run/​glusterd.pid
 +
 +Jul 29 14:15:48 gluster1 systemd[1]: Starting GlusterFS, a clustered file-system server...
 +Jul 29 14:15:48 gluster1 systemd[1]: Started GlusterFS, a clustered file-system server.
 +</​code>​
 +
 +===== Gluster 구성 =====
 +설치가 완료되고 데몬이 정상적으로 기동되면 다음으로 Gluster를 구성해보도록 합니다.
 +Gluster를 구성하기 전에 모든 노드를 /​etc/​hosts에 등록하여 줍니다.
 +
 +<code vim>
 +127.0.0.1 ​  ​localhost localhost.localdomain localhost4 localhost4.localdomain4
 +::1         ​localhost localhost.localdomain localhost6 localhost6.localdomain6
 +
 +192.168.74.133 ​ gluster1
 +192.168.74.134 ​ gluster2
 +</​code>​
 +
 +위와같이 /​etc/​hosts에 각 노드를 등록한 후 노드간에 피어 인식 작업을 진행합니다.
 +
 +<code bash>
 +[root@gluster1 ~]# gluster peer probe gluster2
 +peer probe: success. ​
 +</​code>​
 +
 +Peer간 인식 작업이 끝나고 나면 본격적으로 GlusterFS 볼륨을 생성합니다.
 +<code bash>
 +[root@gluster1 ~]# gluster volume create gv01 replica 2 gluster1:/​data/​brick01 gluster2:/​data/​brick01 force
 +volume create: gv01: success: please start the volume to access data
 +
 +[root@gluster1 ~]# gluster volume info
 +Volume Name: gv01
 +Type: Replicate
 +Volume ID: e586cfd4-f75a-4c87-afa7-2c643cee0eca
 +Status: Created
 +Number of Bricks: 1 x 2 = 2
 +Transport-type:​ tcp
 +Bricks:
 +Brick1: gluster1:/​data/​brick01
 +Brick2: gluster2:/​data/​brick01
 +Options Reconfigured:​
 +performance.readdir-ahead:​ on
 +</​code>​
 +
 +위에서 생성한 GlusterFS 볼륨 "​gv01"​은 replica 형태의 2개 brick으로 구성된 볼륨을 구성한것입니다.
 +
 +볼륨을 구성한 후 활성화를 시켜줍니다.
 +<code bash>
 +[root@gluster1 ~]# gluster volume start gv01
 +</​code>​
 +
 +여기까지 진행하게 되면 GlusterFS 볼륨 생성 및 서버 구성이 완료된것입니다.
 +
 +===== 테스트 =====
 +이제 구성된 GlusterFS 볼륨을 가져다가 사용하는 테스트를 진행해 봅니다.
 +
 +별도의 서버에 GlusterFS를 사용하기 위한 패키지를 설치합니다.
 +
 +여기도 마찬가지로 EPEL과 Gluster.org repository가 설정되어있어야 합니다.
 +
 +<code bash>
 +[root@gluster0 ~]# yum -y install glusterfs-client
 +</​code>​
 +
 +패키지 설치가 완료되면 아래의 명령어로 GlusterFS 볼륨을 마운트해서 테스트 해봅니다.
 +
 +<code bash>
 +[root@gluster0 glusterfs]# mount -t glusterfs gluster1:/​gv01 /mnt
 +
 +[root@gluster0 glusterfs]# df -h
 +Filesystem ​              ​Size ​ Used Avail Use% Mounted on
 +/​dev/​mapper/​centos-root ​  ​19G ​ 1.1G   ​18G ​  6% /
 +devtmpfs ​                ​233M ​    ​0 ​ 233M   0% /dev
 +tmpfs                    242M     ​0 ​ 242M   0% /dev/shm
 +tmpfs                    242M  4.5M  237M   2% /run
 +tmpfs                    242M     ​0 ​ 242M   0% /​sys/​fs/​cgroup
 +/​dev/​sda1 ​               497M  162M  336M  33% /boot
 +gluster1:/​gv01 ​           18G  1.2G   ​17G ​  7% /mnt
 +</​code>​
 +
 +볼륨이 정상적으로 마운트 되는것을 확인 할 수 있습니다.
 +
  
  • glusterfs_quick_start.txt
  • 마지막으로 수정됨: 2015/07/29 17:32
  • 저자 koov