Các bạn đã được đọc những kiến thức ơ bản về các công nghệ lưu trữ ( Hệ Thống Lưu Trữ ), phần này các bạn sẽ được dọc những kiến thức liên quan đến đặc tính gluster bên cạnh đó các bạn sẽ được học những ý nghĩa cơ bản các lệnh trong hệ thống glusterfs.
1.Requirement:
a.Hardware:
- Processor: Intel/AMD x86 64-bit
- Disk: 8GB minimum using direct-attached-storage, RAID, Amazon EBS, and FC/Infiniband/iSCSI
- SAN disk backends using SATA/SAS/FC disks
- Memory: 1GB minimum
- Gigabit Ethernet 10
- Gigabit Ethernet
- InfiniBand
d.Packages:
- wget
- xfsprogs
- fuse
- fuse-libs
- perl
- python-ctypes
- rrdtool-perl
- samba
- glustermg-backend-1.0.0alpha-1.x86_64.rpm (optional)
- Redhat khuyên bạn nên dùng XFS khi định dạng phân vùng ổ đĩa. XFS hỗ trợ metadata journaling, tạo điều kiện phục hồi dữ liệu nhanh hơn nếu có sự cố xảy ra.
- Có thể làm việc với Ext3, Ext4, ReiserFS (chưa thử nghiệm)
- yum -y install wget fuse fuse-libs
- # rpm -Uvh glusterfs-core–3.2.0-1.fc11.x86_64.rpm
- # rpm -Uvh glusterfs-fuse–3.2.0-1.fc11.x86_64.rpm
- # rpm -ivh glusterfs-geo-replication-3.2.0-1.fc11.x86_64.rpm
a.Trusted Storage Pools
Trước khi cấu hình GlusterFS volume bạn cần tạo trusted storage pool. Để thêm 1 node vào pool thì thực hiện lệnh sau:
- gluster peer probe server
- gluster peer status
- gluster peer detach server
Dùng công cụ fdisk hoặc cfdisk tạo phân vùng mới (ví dụ: /dev/sda4)
- mkfs.xfs /dev/sda4
- mount /dev/sda4 /exp1
Distributed volume: là loại volume sẽ lưu trữ Files lần lượt vào từng bricks. Ví dụ file1 nằm trong brick 1, file 2 nằm brick 2,…. Bởi thế có thể nó có thể dẫn đến nguy cơ mất file nếu 1 trong số những brick đó hay node bị delete.
- gluster volume create test-volume server3:/exp3 #distributed
- gluster volume create test-volume replica 2 transport tcp server1:/exp1 server2:/exp2
- gluster volume create test-volume stripe 2 transport tcp server1:/exp1 server2:/exp2
- gluster volume create test-volume stripe 4 transport tcp server1:/exp1 server2:/exp2 server3:/exp3 server4:/exp4
Distributed replicated: Tuơng tự là loại volume kết hợp từ distributed và replicated phù hợp cho những môi trường lưu trữ dữ liệu quan trọng. Số lượng brick là một bội số số lượng replica.
- gluster volume create test-volume replica 2 transport tcp server1:/exp1 server2:/exp2 server3:/exp3 server4:/exp4
- gluster volume start test-volume
- gluster volume info all
- gluster volume stop test-volume
- gluster volume delete test-volume
Mount dùng native client
- mount -t glusterfs :
- mount -t glusterfs ubuntu64:test-volume /mnt/gluster
- ubuntu64:test-volume /mnt/glusterfs glusterfs defaults,_netdev 0 0
- mount -o mountproto=tcp -t nfs ubuntu64:test-volume /mnt/gluster
- gluster volume add-brick test-volume client:/test #add brick
- gluster volume remove-brick test-volume client:/test
Bạn có thể di chuyển dữ liệu từ 1 brick đến 1 brick khác. Vi dụ sau sẽ mô tả làm sao để di chuyển dữ liệu từ brick ext3 đến ext5.
- gluster volume replace-brick test-volume server3:/exp3 server5:exp5 start
- gluster volume replace-brick test-volume server3:/exp3 server5:exp5 abort
- gluster volume replace-brick test-volume server3:/exp3 server5:/exp5 status
- gluster volume replace-brick test-volume server3:/exp3 server5:/exp5 commit
Khi bạn thêm 1 brick mới muốn đồng bộ dữ liệu cho brick mới thêm mà ko cần di chuyển dữ liệu thì sử dụng:
- gluster volume rebalance VOLNAME fix-layout start
- gluster volume rebalance VOLNAME migrate-data start
- gluster volume rebalance VOLNAME start
Khi bạn muốn đồng bộ dữ liệu từ 1 volume đến một vị trí khác có thể là thư mục hay 1 volume khác thì GEO là một giải pháp tốt trong trường hợp này.
MASTER —> SLAVE
Trên master:
- ssh-keygen -f /etc/glusterd/geo-replication/secret.pem
- gluster volume geo-replication Volume1 example.com:/data/remote_dir start
#example.com:/data/remote_dir: đường dẫn đến server làm slave
Trên slave:
Copy nội dung /etc/glusterd/geo-replication/secret.pem.pub to /root/.ssh/authorized_keys
#Lưu ý: Có thể sử dụng volume để làm geo-replication slave
#Lệnh kiểm tra trạng thái geo-replication
- gluster volume geo-replication test-volume gateway:geo-volume status
Cung cấp thông tin I/O của mỗi brick trong từng tác vụ của volume. Giúp phát hiện bottleneck trong hệ thống.
- gluster volume profile {start|info|stop}
- gluster volume top {[open|read|write|opendir|readdir] |[read-perf|write-perf bs count ]} [brick ] [list-cnt ]
- gluster volume top test-volume open brick server:/export/ list-cnt 10
- gluster volume top test-volume read brick server:/export list-cnt 10
- gluster volume top test-volume read-perf bs 256 count 1 brick server:/export/ list-cnt 10
- volume quota <enable|disable|limit-usage|list|remove [path] [value]
- gluster volume quota test-volume enable
No comments:
Post a Comment