Hướng dẫn cài đặt GlusterFS trên centos 6 (dịch vụ lưu trữ)

1.Chuẩn bị 

Cài đặt kho epel link tham khảo click here

3 vps 

89.163.142.208   server1.xobic.com

89.163.142.209   server2.xobic.com

107.178.97.14   client.xobic.com

Chỉnh sửa file /etc/hosts

# nano /etc/hosts

Có nội dung như sau 

# Generated by SolusVM
127.0.0.1       localhost localhost.localdomain
89.163.142.208   server1.xobic.com     server1
89.163.142.209   server2.xobic.com     server2
107.178.97.14    client.xobic.com      client1
::1     localhost localhost.localdomain

2.Cài đặt trên server 

Trên con server1 và server2 chạy các lệnh sau

# yum -y install centos-release-gluster

# yum -y install glusterfs-server

Khởi động glusterfs và cho chạy cùng hệ thống

# service glusterd start

# chkconfig glusterd on 

Kiểm tra version 

# glusterfsd --version

[root@maxserver1  ~]# glusterfsd --version
glusterfs 3.8.1 built on Jul  8 2016 15:43:29
Repository revision: git://git.gluster.com/glusterfs.git
Copyright (c) 2006-2013 Red Hat, Inc. <http://www.redhat.com/>
GlusterFS comes with ABSOLUTELY NO WARRANTY.
It is licensed to you under your choice of the GNU Lesser
General Public License, version 3 or any later version (LGPLv3
or later), or the GNU General Public License, version 2 (GPLv2),
in all cases as published by the Free Software Foundation.


Trên server1 ,chạy lệnh sau

# gluster peer probe server2.xobic.com

[root@maxserver1  ~]# gluster peer probe server2.xobic.com
peer probe: success.

Chạy lệnh sau để kiểm tra 

# gluster peer status

[root@maxserver1  ~]# gluster peer status
Number of Peers: 1

Hostname: server2.xobic.com
Uuid: 834faf5b-ab56-41da-8b14-2f58098b2851
State: Peer in Cluster (Connected)

Ta gõ tiếp lệnh sau 

# gluster volume create testvol replica 2 transport tcp server1.xobic.com:/data server2.xobic.com:/data force

create testvol : tạo tên mới của volume

replica 2 : 2 bản sao (số lượng bạn sao phải bằng số lược server ở đây ta có 2 server)

/data : thư mục được sync

Chạy volume với lệnh sau

# [root@maxserver1 ~]# gluster volume start testvol
volume start: testvol: success

Bây giờ chạy lệnh sau để kiểm tra trên cả server1 và server2

# netstat -tap | grep glusterfsd

nó sẽ hiển thị như sau 

[root@maxserver1 ~]# netstat -tap | grep glusterfsd
tcp        0      0 *:49152                     *:*                         LISTEN      4312/glusterfsd
tcp        0      0 *:49153                     *:*                         LISTEN      25137/glusterfsd
tcp        0      0 server1.xobic.com:49153     server1.xobic.com:49139     ESTABLISHED 25137/glusterfsd
tcp        0      0 server1.xobic.com:49152     server2.xobic.com:49147     ESTABLISHED 4312/glusterfsd
tcp        0      0 server1.xobic.com:49152     server1.xobic.com:49147     ESTABLISHED 4312/glusterfsd


Nếu như trên server2 mà không hiển thị gì thì ta phải restart lại service và gõ lại lệnh kiểm tra

# service glusterd restart 

Bây giờ quay về server1 ,chạy lệnh sau để kiểm tra trạng thái volume

# gluster volume info

Volume Name: testvol
Type: Replicate
Volume ID: e1f825ca-c9d9-4eeb-b6c5-d62c4aa02376
Status: Started
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: server1.xobic.com:/data
Brick2: server2.xobic.com:/data
Options Reconfigured:
performance.readdir-ahead: on


Mặc định , tất cả các client đểu có thể truy cập vào server ,nếu muốn chỉ 1 client truy cập ta gõ lệnh như sau : (ở đây ta có 107.178.97.14 : client.xobic.com)

# gluster volume set testvol auth.allow 107.178.97.14

Các thông tin ổ đĩa bây giờ sẽ hiển thị trạng thái cập nhật:

# gluster volume info

Volume Name: testvol
Type: Replicate
Volume ID: e1f825ca-c9d9-4eeb-b6c5-d62c4aa02376
Status: Started
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: server1.xobic.com:/data
Brick2: server2.xobic.com:/data
Options Reconfigured:
auth.allow: 107.178.97.14
performance.readdir-ahead: on

3.Thiết lập khách hàng

Trên client gỗ lệnh sau để cài dặt

# yum -y install glusterfs-client

sau đó ta tạo ra các thư mục sau

# mkdir /mnt/data

Bây giở chúng ta cần mount các glusterfs tới thư mục /mnt/data bằng lệnh sau (trong lệnh này các bạn có thể khai báo server 1 hoặc server 2 tùy ý

# mount.glusterfs server1.xobic.com:/testvol1 /mnt/data

Các bạn chạy lênh

# mount

[root@client ~]# mount
/dev/vda1 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
server1.xobic.com:/testvol1 on /mnt/data type fuse.glusterfs (rw,default_permissions,allow_other,max_read=131072)

Chạy lệnh sau để kiểm tra

# df -h

[root@client ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/vda1              50G  1.6G   46G   4% /
tmpfs                 2.0G     0  2.0G   0% /dev/shm
server1.xobic.com:/testvol1
                       50G  1.8G   45G   4% /mnt/data


Để cho gluster tự động mount ta sẽ cấu hình trong file nano /etc/rc.local

# nano /etc/rc.local

Thêm câu lệnh sau vào nội dung của file 

mount.glusterfs server1.xobic.com:/testvol1 /mnt/data

Để kiểm tra file rc.local đã hoạt động chưa ta restart lại vps 

# reboot

Reboot xong kiểm tra xong bằng lệnh sau:

# df -h

# mount

Kiểm tra bằng cách tạo các file trên client và xem trên server 1 hoặc server2 

Tham khảo thêm các cách cấu hình lưu trư ở link đây click here