HƯỚNG DẪN Quản lý LVM volumes trên CentOS/RHEL 7 với System Storage Manager

Thảo luận trong 'KIẾN THỨC VPS/SERVER' bắt đầu bởi quyet1990, 16/12/16.

  1. quyet1990

    quyet1990 New Member

    Tham gia ngày:
    22/10/16
    Bài viết:
    220
    Đã được thích:
    0
    LVM là một phương pháp cho phép ấn định không gian đĩa cứng thành những Logical Volume khiến cho việc thay đổi kích thước trở nên dễ dàng ( so với partition ). Với kỹ thuật Logical Volume Manager (LVM) bạn có thể thay đổi kích thước mà không cần phải sửa lại partition table của OS. Điều này thực sự hữu ích với những trường hợp bạn đã sử dụng hết phần bộ nhớ còn trống của partition và muốn mở rộng dung lượng của nó.

    Có một tin tốt cho người dùng CentOS / RHEL.CentOS /RHEL 7 mới nhất bây giờ đi kèm với System Storage Manager (aka SSM) là một giao diện dòng lệnh thống nhất phát triển bởi Red Hat để quản lý tất cả các loại thiết bị lưu trữ. Hiện nay có ba loại quản lý khối lượng có sẵn cho ssm: LVM, Btrfs, và Crypt.
    Trong hướng dẫn này, tôi sẽ chứng minh làm thế nào để quản lý LVM volumes với SSM.
    Chuẩn bị SSM
    Trên CentOS / RHEL 7, bạn cần phải cài đặt System Storage Manager đầu tiên.
    Mã:
     sudo yum install system-storage-manager 
    Trước tiên, hãy kiểm tra thông tin về các ổ đĩa cứng có sẵn và khối lượng LVM. Các lệnh sau đây sẽ hiển thị thông tin về các thiết bị lưu trữ đĩa hiện có, storage pools, khối lượng LVM và lưu trữ snapshots. Kết quả đầu ra là việc cài đặt CentOS 7 trong đó sử dụng LVM và tập tin hệ thống XFS theo mặc định.
    Mã:
     sudo ssm list 
    [​IMG]
    Trong ví dụ này, có hai thiết bị vật lý ( "/dev/sda" và "/dev/sdb"), một storage pool ("centos"), và hai LVM volumes ( "/dev/centos/root" và "/dev/centos/swap ") tạo ra trong hồ bơi.

    Thêm một đĩa vật lý đến một LVM pool
    Hãy thêm một đĩa vật lý mới (ví dụ: /dev/sdb) tới một pool lưu trữ hiện có (ví dụ, centos). Câu lệnh sau sẽ thêm một thiết bị lưu trữ vật lý tới một pool hiện có như sau.
    Mã:
     sudo ssm add -p <pool-name> <device> 
    [​IMG]
    Sau khi một thiết bị mới được thêm vào một pool, pool sẽ tự động được mở rộng bởi kích thước của thiết bị. Kiểm tra kích thước của pool lưu trữ có tên centos như sau.
    [​IMG]
    Như bạn có thể thấy, pool centos đã được mở rộng thành công từ 7.5GB đến 8.5GB. Tại thời điểm này, tuy nhiên, disk volumes (ví dụ: /dev/centos/root và /dev/centos/swap) tồn tại trong pool không được tận dụng các không gian thêm. Cho rằng, chúng ta cần phải mở rộng LVM volumes hiện có.

    Mở rộng một LVM volume
    Nếu bạn có không gian phụ trong một pool lưu trữ, bạn có thể mở rộng disk volumes hiện có trong pool. Cho rằng, sử dụng tùy chọn thay đổi kích thước với lệnh SSM.
    Mã:
     sudo ssm resize -s [size] [volume] 
    Hãy tăng kích thước của volume dev/centos/root tới 500MB.
    Mã:
     sudo ssm resize -s+500M /dev/centos/root 
    [​IMG]

    Xác minh các kích thước được cập nhật của các khối lượng hiện có.
    Mã:
     sudo ssm list volumes 
    [​IMG]
    Chúng tôi có thể xác nhận rằng kích thước của khối lượng /dev/centos/root đã tăng từ 6.7GB đến 7.2GB. Tuy nhiên, điều này không có nghĩa là bạn có thể ngay lập tức sử dụng thêm không gian trong hệ thống tập tin được tạo ra bên trong khối lượng. Bạn có thể thấy rằng kích thước tập tin hệ thống ("FS size") vẫn còn là 6.7GB.

    Để làm cho hệ thống tập tin nhận ra sự gia tăng kích thước khối lượng, bạn cần phải "mở rộng" một hệ thống tập tin hiện có của chính nó. Tùy thuộc vào hệ thống tập tin mà bạn đang sử dụng, có các công cụ khác nhau để mở rộng một hệ thống tập tin hiện có. Ví dụ, resize2fs sử dụng cho EXT2/EXT3/EXT4, xfs_growfs cho XFS, btrfs cho btrfs, vv

    Trong ví dụ này, chúng tôi sử dụng CentOS 7, nơi mà hệ thống tập tin XFS được tạo ra theo mặc định. Do đó, chúng tôi sử dụng xfs_growfs để mở rộng một hệ thống tập tin XFS hiện có.

    Sau khi mở rộng một hệ thống tập tin XFS, xác minh rằng hệ thống tập tin chiếm hoàn toàn ổ đĩa 7.2GB.
    [​IMG]

    [​IMG]

    Tạo mới LVM Pool/Volume
    Trong thí nghiệm này, chúng ta hãy xem làm thế nào chúng ta có thể tạo ra một pool lưu trữ mới và một khối lượng LVM mới trên đầu của một ổ đĩa vật lý. Với công cụ LVM truyền thống, toàn bộ quy trình là rắc rối; chuẩn bị các phân vùng, tạo ra khối lượng vật lý, các nhóm khối lượng và logical volumes, và cuối cùng là xây dựng một hệ thống tập tin.

    Tuy nhiên, với SSM, toàn bộ thủ tục có thể được hoàn thành rất nhanh chóng.
    Lệnh sau đây sẽ tạo ra một pool lưu trữ có tên mypool, tạo ra một khối lượng LVM 500M có tên disk0 trong pool, định dạng khối lượng với hệ thống tập tin XFS, và mount nó dưới /mnt/test. Bạn ngay lập tức có thể thấy sức mạnh của SSM.
    Mã:
     sudo ssm create -s 500M -n disk0 –fstype xfs -p mypool /dev/sdc /mnt/test 
    [​IMG]
    Xác minh quá trình tạo disk volume
    [​IMG]

    [​IMG]

    Snapshot của một LVM Volume
    Sử dụng công cụ SSM, bạn cũng có thể có được snapshot của khối lượng đĩa hiện có. Lưu ý snapshot chỉ hoạt động nếu back-end mà khối lượng thuộc về có hỗ trợ snapshotting. LVM backend hỗ trợ snapshotting trực tuyến, có nghĩa là chúng ta không cần phải lấy khối lượng được snapshotted offline.
    Ngoài ra, kể từ khi LVM backend của SSM hỗ trợ LVM2, các snapshot đọc/viết sẽ được kích hoạt.
    Hãy lấy một snapshot của một khối lượng LVM hiện có (ví dụ: /dev/mypool/disk0).
    Mã:
     sudo ssm snapshot /dev/mypool/disk0 
    Khi một snapshot được lấy, nó sẽ lưu trữ như là một khối lượng snapshot đặc biệt mà lữu trữ tất cả các dữ liệu trong khối lượng ban đầu tại thời điểm snapshotting.
    [​IMG]
    Sau một snapshot được lưu trữ, bạn có thể loại bỏ khối lượng ban đầu, và gắn kết những khối lượng snapshot để truy cập dữ liệu trong các snapshot.
    [​IMG]
    Lưu ý rằng khi bạn cố gắng để gắn kết những khối lượng snapshot trong khi khối lượng ban đầu được gắn kết, bạn sẽ nhận được thông báo lỗi sau đây.
    Mã:
     kernel: XFS (dm-3): Filesystem has duplicate UUID 27564026-faf7-46b2-9c2c-0eee80045b5b - can't mount 
    Loại bỏ một LVM Volume và storage pool
    Loại bỏ một khối lượng đĩa hiện có hoặc pool lưu trữ là dễ dàng. Nếu bạn cố gắng để loại bỏ một khối lượng gắn kết, SSM sẽ tự động gỡ bỏ nó đầu tiên và không có rắc rối gì xảy ra.

    Để loại bỏ một LVM volume:
    Mã:
     sudo ssm remove <volume> 
    Để loại bỏ một pool lưu trữ:
    Mã:
     sudo ssm remove <pool-name> 
    [​IMG]

    Phần kết luận
    Hy vọng rằng bây giờ bạn thấy sức mạnh của SSM. Trong các môi trường lưu trữ doanh nghiệp, nó là khá phổ biến để đối phó với một loạt các thiết bị lưu trữ, số lượng đĩa và hệ thống file.

    Thay vì cố gắng sử dụng một số công cụ khác nhau để quản lý một hỗn hợp phức tạp của các cấu hình lưu trữ, bạn chỉ cần phải nắm vững các công cụ dòng lệnh SSM, và có phần backend của nó sẽ thực hiện công việc cho bạn. SSM chắc chắn là một công cụ phải có cho bất kỳ người quản trị hệ thống khi làm việc trong một môi trường quản lý lưu trữ phức tạp.
     

Chia sẻ trang này

Đang tải...