Quản trị net diễn đàn chia sẻ thông tin các thủ thuật mạng, internet bảo mật thông tin dành cho giới IT VIệt hy vọng là nơi bổ ích cho cộng đồng

Quản trị net diễn đàn chia sẻ thông tin các thủ thuật mạng, internet bảo mật thông tin dành cho giới IT VIệt hy vọng là nơi bổ ích cho cộng đồng (http://quantrinet.com/forum/index.php)
-   Hardware Raid, NAS, SAN, Clustering, Redundent (http://quantrinet.com/forum/forumdisplay.php?f=280)
-   -   Xây dựng hệ thống lưu trữ có độ sẵn sàng cao với GlusterFS trên Centos 5.6 (http://quantrinet.com/forum/showthread.php?t=9121)

emailhoc 06-03-2012 05:09 PM

Xây dựng hệ thống lưu trữ có độ sẵn sàng cao với GlusterFS trên Centos 5.6
 
Như chúng ta biết sẽ như thế nào nếu hệ thống File server trong Cty bị sụp đổ hay trục trặc do chỉ có 1 server duy nhất làm File server, Công việc truy xuất dữ liệu của các nhân viên sẽ bị ảnh hưởng và gián đoạn ...

Vì thế chúng ta phải xây dựng 1 hệ thống File server sao cho khi server đó bị lỗi thì công việc truy xuất dữ liệu vẫn được diễn ra bình thường .

Giới thiệu đôi chút về GlusterFS:

GlusterFS là một open source .

GlusterFS là tập hợp file hệ thống có thể được nhân rộng tới vài peta-byte và có thể xử lý hàng ngàn Client.

GlusterFS có thể linh hoạt kết hợp với các thiết bị lưu trữ vật lý, ảo, và tài nguyên điện toán đám mây để cung cấp 1 hệ thống lưu trữ có tính sẵn sàng cao và khả năng performant cao .

Chương trình có thể lưu trữ dữ liệu trên các mô hình, thiết bị khác nhau qua giao thức Infiniband RDMA hoặc TCP/IP được kết nối vào 1 hệ thống lớn song song với các tập tin mạng. Những thiết bị lưu trữ này phải tương thích tốt với hệ điều hành server x86_64 như SATA-II RAID và Infiniband HBA.

Chuẩn bị và xây dựng hệ thống .


Bài lab này sử dụng 3 máy Centos5.6_X64 , bạn có thể dùng bao nhiêu server tùy

hệ thống của bạn .

Nội dung file /etc/hosts cả 3 máy này như sau :

sv1.kenhgiaiphap.vn: IP address 192.168.11.100 (server 1)
sv2.kenhgiaiphap.vn: IP address 192.168.11.200 (server 2)
client.kenhgiaiphap.vn: IP address 192.168.11.250 (client)

http://kenhgiaiphap.vn/UserFiles/Ima...%20%281%29.png

Hoặc bạn có thể phân giải 3 máy này bằng DNS .

Hệ thống lưu trữ trong lab này tôi sử dụng LVM trên 2 server để lưu trữ Data và dung lượng 2 ổ đĩa này bằng nhau .

Kham khảo LVM tại đây .

Lưu ý : nên đặt tên các Volume trên 2 server giống nhau và dung lượng như nhau .

Và mount volume này vào /mnt/lvm trên cả hai server .


http://kenhgiaiphap.vn/UserFiles/Ima...S%281.1%29.png

Install các Package cần thiết để biên dịch GlusterFS từ Source .

(Các bước này làm trên 3 máy)

# yum –y update
# yum groupinstall 'Development Tools'
# yum groupinstall 'Development Libraries'
# yum install libibverbs-devel fuse-devel

# wget http://download.fedora.redhat.com/pu...el5.x86_64.rpm

# rpm –ihv python-ctypes-1.0.2-2.el5.x86_64.rpm

Download Source GlusterFS và Biên dịch .

(Các bước này làm trên 3 máy)

# cd /tmp
# wget http://download.gluster.com/pub/glus...s-3.2.3.tar.gz
# tar –xzvf glusterfs-3.2.3.tar.gz
# cd glusterfs-3.2.3

# ./configure
# make
# make install
# ldconfig

Kiểm tra Phiên bản GlusterFS

# glusterfs --version

http://kenhgiaiphap.vn/UserFiles/Ima...%20%282%29.png

Tạo Replicate Volume trên server:


Volume này sẽ là nơi sẽ lưu trữ data trên 2 server và máy Client sẽ móc vào Volume này đề sử dụng .

Trước tiên ta phải Adding Servers to Trusted Storage Pool.

Bên máy Server 1 :


# gluster peer probe sv2.kenhgiaiphap.vn

Bên máy Server 2 :

# gluster peer probe sv1.kenhgiaiphap.vn

Kiểm tra lại danh sách các server đã Trust .

Bên máy Server 1 :


# gluster peer status

http://kenhgiaiphap.vn/UserFiles/Ima...%20%283%29.png


Bên máy Server 2 :


# gluster peer status

http://kenhgiaiphap.vn/UserFiles/Ima...%20%284%29.png


Nếu hệ thống có nhiều server thì ta add thêm các server đó vào .

Tạo Relicate Volume :

Bên máy Server 1 hoặc 2 :

bước tạo volume này chỉ cần thực hiện trên 1 trong 2 server thì server còn lại sẽ tự có .

# gluster volume create volumelvm replica 2 transport tcp sv1.kenhgiaiphap.vn:/mnt/lvm (có_khoảng_cách_chỗ này nha !) sv2.kenhgiaiphap.vn:/mnt/lvm

http://kenhgiaiphap.vn/UserFiles/Ima...%20%285%29.png

Gán quyền cho các ip hay lớp mạng được phép truy cập
.

# gluster volume set volumelvm auth.allow 192.168.11.*

Ta có thể sử dụng Wildcards như 192.168.11.* hoặc gán nhiều Ip ,các Ip này cách nhau bằng dấu phẩy (,)

vidu : 192.168.11.250,192.168.11.254

Start volume

# gluster volume start volumelvm

Kiểm tra thông tin về volume và xem nó đã start chưa .

Server 1

# gluster volume info

http://kenhgiaiphap.vn/UserFiles/Ima...%20%286%29.png

Server 2

# gluster volume info

http://kenhgiaiphap.vn/UserFiles/Ima...%20%289%29.png

Mount volumelvm này vào
/mnt/ok
( Làm trên 2 máy server )

# mkdir /mnt/ok

# mount -t glusterfs sv1.kenhgiaiphap.vn:/volumelvm /mnt/ok

Hoặc

# mount -t glusterfs sv2.kenhgiaiphap.vn:/volumelvm /mnt/ok

Kiểm tra xem đã mount thành công chưa .


Server1

http://kenhgiaiphap.vn/UserFiles/Ima...%20%287%29.png

Server 2

http://kenhgiaiphap.vn/UserFiles/Ima...%20%288%29.png
http://kenhgiaiphap.vn/UserFiles/Ima...20%2810%29.png


Sửa file /etc/fstab để auto mount volumelvm này khi boot .

(làm trên 2 server )

# vim /etc/fstab

http://kenhgiaiphap.vn/UserFiles/Ima...20%2810%29.png

Cho GlusterFS start lúc boot .

(làm bên 3 máy)

# chkconfig glusterd on

# /etc/init.d/glusterd restart

Thiết lập GlusterFS bên máy Client .

Cài đặt các gói để biên dịch và Install GlusterFS như 2 máy server .

Mount volumelvm từ server về sử dụng .


# mkdir /mnt/ok

# mount -t glusterfs sv1.kenhgiaiphap.vn:/ volumelvm /mnt/ok

Sửa file /etc/fstab để tự động mount lúc boot .

# sv1.kenhgiaiphap.vn:/volumelvm /mnt/ok glusterfs defaults,_netdev 0 0

http://kenhgiaiphap.vn/UserFiles/Ima...20%2811%29.png

Lưu ý :
Nếu ko có thấy gì thì khi mount thì Fix bằng cách sau :

# yum install fuse

Và reboot lại máy

# modprobe fuse

Sau đó chạy lại lệnh mount trên thì sẽ ok !

Tạo và ghi dữ liệu vào volume vừa mount /mnt/ok và xem trên server 1 và server 2 sẽ có dữ liệu mà máy Client tạo ra ko .

Bên máy Client

http://kenhgiaiphap.vn/UserFiles/Ima...20%2812%29.png

Bên máy Server 1

http://kenhgiaiphap.vn/UserFiles/Ima...20%2813%29.png

Bên máy Server 2

http://kenhgiaiphap.vn/UserFiles/Ima...20%2814%29.png

Như vậy là dữ liệu tự động đồng bộ giữa 2 máy server .

Thử shutdown server1 và chỉ còn server2 chạy nhưng máy Client có thể tạo và ghi file vào được .

Khi server1 khởi động lại thì nó sẽ đồng bộ dữ liệu từ server 2 mà Client mới ghi thêm vào .

Như vậy là ta đã hoàn tất xây dựng hệ thống File server có độ sẵn sàng cao trong linux .

GlusterFS có khả năng tùy biến mềm dẻo và linh hoạt , do đó tùy theo nhu cầu của từng hệ thống mà chúng ta xây dựng , cấu hình và phát triển thêm cho phù hợp với nhu cầu của mình .

Theo Kenhgiaiphap


Bây giờ là 04:34 PM. Giờ GMT +7

Diễn đàn tin học QuantriNet
quantrinet.com | quantrimang.co.cc
Founded by Trương Văn Phương | Developed by QuantriNet's members.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.