Quản trị viên Linux - Quản lý khối lượng

Logical Volume Management (LVM)là một phương pháp được Linux sử dụng để quản lý khối lượng lưu trữ trên các đĩa cứng vật lý khác nhau. Điều này không được nhầm lẫn với RAID. Tuy nhiên, nó có thể được coi theo một khái niệm tương tự như RAID 0 hoặc J-Bod. Với LVM, có thể có (ví dụ) ba đĩa vật lý, mỗi đĩa 1TB, sau đó là một khối lượng hợp lý khoảng 3TB như / dev / sdb. Hoặc thậm chí hai khối lượng hợp lý 1,5TB, 5 khối lượng 500GB hoặc bất kỳ kết hợp nào. Một đĩa duy nhất thậm chí có thể được sử dụng để chụp nhanh các Tập lôgic.

Note- Sử dụng Logical Volumes thực sự làm tăng I / O đĩa khi được cấu hình đúng. Điều này hoạt động tương tự như RAID 0 phân chia dữ liệu trên các đĩa riêng biệt.

Khi tìm hiểu về quản lý âm lượng với LVM, sẽ dễ dàng hơn nếu chúng ta biết từng thành phần trong LVM là gì. Hãy nghiên cứu bảng sau để nắm chắc từng thành phần. Nếu bạn cần, hãy sử dụng Google để nghiên cứu. Hiểu từng phần của một tập hợp lý là điều quan trọng để quản lý chúng.

PV Khối lượng vật lý sda
PP Phân vùng vật lý sda1, sda2
VG Nhóm âm lượng Tài nguyên vật chất tổng hợp
LV Khối lượng logic Được xem như một phương tiện lưu trữ cho hệ điều hành

A physical volumesẽ được xem là / dev / sda, / dev / sdb; một đĩa vật lý được phát hiện bởi Linux.

A physical partitionsẽ là một phần của đĩa được phân vùng bởi một tiện ích đĩa như fdisk. Hãy nhớ rằng phân vùng vật lý không được khuyến khích trong hầu hết các thiết lập LVM phổ biến. Ví dụ: disk / dev / sda được phân vùng để bao gồm hai phân vùng vật lý: / dev / sda1/ dev / sda1

Nếu chúng tôi có hai đĩa vật lý 1TB mỗi đĩa, chúng tôi có thể tạo một nhóm khối lượng gần 2TB giữa hai đĩa.

Từ nhóm âm lượng, chúng ta có thể tạo ba tập hợp lý, mỗi tập có kích thước bất kỳ không vượt quá tổng kích thước nhóm tập.

Công cụ quản trị đĩa Linux truyền thống

Trước khi làm quen với các công cụ tính năng mới nhất và tuyệt vời nhất cho Quản lý LVM trong CentOS 7, trước tiên chúng ta nên khám phá thêm các công cụ truyền thống đã được sử dụng để quản lý đĩa Linux. Những công cụ này sẽ trở nên hữu ích và vẫn được sử dụng với các công cụ LVM nâng cao hiện nay như Trình quản lý lưu trữ hệ thống: lsblk, parted và mkfs.xfs.

Bây giờ, giả sử chúng ta đã thêm một hoặc hai đĩa khác vào hệ thống của mình, chúng ta cần liệt kê các đĩa được Linux phát hiện. Tôi luôn khuyên bạn nên liệt kê các đĩa mọi lúc trước khi thực hiện các hoạt động được coi là phá hoại.lsblklà một công cụ tuyệt vời để lấy thông tin đĩa. Hãy xem CentOS phát hiện những đĩa nào.

[root@localhost rdc]# lsblk
NAME         MAJ:MIN    RM    SIZE    RO    TYPE MOUNTPOINT
sda            8:0       0     20G     0        disk 
├─sda1         8:1       0      1G     0     part /boot
└─sda2         8:2       0     19G     0        part 
  ├─cl-root  253:0       0     17G     0      lvm  /
  └─cl-swap  253:1       0      2G     0      lvm  [SWAP]
    sdb       8:16       0      6G     0       disk 
    sdc       8:32       0      4G     0       disk 
    sr0       11:0       1   1024M     0       rom

Như bạn có thể thấy, chúng tôi có ba đĩa trên hệ thống này: sda, sdb và sdc.

Disk sda chứa cài đặt CentOS đang hoạt động của chúng tôi, vì vậy chúng tôi không muốn đùa giỡn với sda. Cả sdbsdc đã được thêm vào hệ thống cho hướng dẫn này. Hãy làm cho những đĩa này có thể sử dụng được cho CentOS.

Tạo nhãn đĩa

[root@localhost rdc]# parted /dev/sdb mklabel GPT
Warning: The existing disk label on /dev/sdb will be destroyed and all data on this
   disk will be lost. Do you want to continue?
Yes/No? Yes                               
[root@localhost rdc]#

Bây giờ chúng tôi có một đĩa được dán nhãn. Chỉ cần chạy lệnh parted theo cách tương tự trên sdc .

Tạo các phân vùng trên đĩa

Chúng tôi sẽ chỉ tạo một phân vùng duy nhất trên mỗi đĩa. Để tạo phân vùng, lệnh parted được sử dụng lại.

[root@localhost rdc]# parted -a opt /dev/sdb mkpart primary ext4 0% 100%

Warning - Bạn yêu cầu phân vùng từ 0,00B đến 6442MB (các cung 0..12582911).

Vị trí gần nhất mà chúng tôi có thể quản lý là 17,4kB đến 1048kB (các ngành 34..2047).

Điều này vẫn còn chấp nhận được đối với bạn?

Có không? KHÔNG

[root@localhost rdc]# parted -a opt /dev/sdc mkpart primary ext4 0% 100%

Information - Bạn có thể cần cập nhật / etc / fstab.

[root@localhost rdc]# lsblk                                               
NAME        MAJ:MIN   RM    SIZE    RO    TYPE MOUNTPOINT
sda           8:0      0     20G     0        disk 
├─sda1        8:1      0      1G     0      part / boot
└─sda2        8:2      0     19G     0        part 
 ├─cl-root  253:0      0     17G     0       lvm  /
 └─cl-swap  253:1      0      2G     0       lvm  [SWAP]
sdb          8:16      0      6G     0        disk 
└─sdb1       8:17      0      6G     0        part 
 sdc         8:32      0      4G     0        disk 
└─sdc1       8:33      0      4G     0        part 
sr0          11:0      1   1024M     0        rom

[root@localhost rdc]#

Như bạn có thể thấy từ đầu ra lsblk, bây giờ chúng ta có hai phân vùng, mỗi phân vùng trên sdb và sdc.

Tạo hệ thống tệp

Cuối cùng, trước khi gắn và sử dụng bất kỳ ổ đĩa nào, chúng ta cần thêm một hệ thống tệp. Chúng tôi sẽ sử dụng hệ thống tệp XFS.

root@localhost rdc]# mkfs.xfs -f /dev/sdb1
meta-data = /dev/sdb1               isize = 512    agcount = 4, agsize = 393088 blks
            =                      sectsz = 512    attr = 2, projid32bit = 1
            =                         crc = 1      finobt = 0, sparse = 0
data        =                       bsize = 4096   blocks = 1572352, imaxpct = 25
            =                       sunit = 0      swidth = 0 blks
naming      = version 2             bsize = 4096   ascii-ci = 0 ftype = 1
log         = internal log          bsize = 4096   blocks = 2560, version = 2
            =                      sectsz = 512    sunit = 0 blks, lazy-count = 1
realtime    = none                  extsz = 4096   blocks = 0, rtextents = 0
[root@localhost rdc]# mkfs.xfs -f /dev/sdc1
meta-data   = /dev/sdc1             isize = 512    agcount = 4, agsize = 262016 blks
            =                      sectsz = 512    attr = 2, projid32bit = 1
            =                         crc = 1      finobt = 0, sparse = 0
data        =                       bsize = 4096   blocks = 1048064, imaxpct = 25
            =                       sunit = 0      swidth = 0 blks
naming      = version 2             bsize = 4096   ascii-ci = 0 ftype = 1
log         = internal log          bsize = 4096   blocks = 2560, version = 2
            =                      sectsz = 512    sunit = 0 blks, lazy-count = 1
realtime    = none                  extsz = 4096   blocks = 0, rtextents = 0

[root@localhost rdc]#

Hãy kiểm tra để đảm bảo mỗi tệp có một hệ thống tệp có thể sử dụng được.

[root@localhost rdc]# lsblk -o NAME,FSTYPE
NAME           FSTYPE
sda         
├─sda1         xfs
└─sda2         LVM2_member
 ├─cl-root     xfs
 └─cl-swap     swap
sdb         
└─sdb1         xfs
sdc         
└─sdc1         xfs
sr0

[root@localhost rdc]#

Mỗi cái hiện đang sử dụng hệ thống tệp XFS. Hãy gắn kết chúng, kiểm tra gắn kết và sao chép một tệp vào mỗi tệp.

[root@localhost rdc]# mount -o defaults /dev/sdb1 /mnt/sdb
[root@localhost rdc]# mount -o defaults /dev/sdc1 /mnt/sdc

[root@localhost ~]# touch /mnt/sdb/myFile /mnt/sdc/myFile
[root@localhost ~]# ls /mnt/sdb /mnt/sdc
 /mnt/sdb:
  myFile

 /mnt/sdc:
  myFile

Chúng tôi có hai đĩa có thể sử dụng tại thời điểm này. Tuy nhiên, chúng sẽ chỉ sử dụng được khi chúng ta gắn chúng theo cách thủ công. Để gắn kết mỗi khi khởi động, chúng ta phải chỉnh sửa tệp fstab . Ngoài ra, quyền phải được đặt cho các nhóm cần quyền truy cập vào đĩa mới.

Tạo nhóm khối lượng và khối lượng logic

Một trong những bổ sung tuyệt vời nhất cho CentOS 7 là bao gồm một tiện ích có tên là System Storage Manager hoặc ssm .System Storage Manager đơn giản hóa đáng kể quá trình quản lý nhóm LVM và khối lượng lưu trữ trên Linux.

Chúng ta sẽ đi qua quá trình tạo một nhóm khối lượng đơn giản và khối lượng hợp lý trong CentOS. Bước đầu tiên là cài đặt Trình quản lý lưu trữ hệ thống.

[root@localhost rdc]# yum  install system-storage-manager

Hãy xem xét các đĩa của chúng ta bằng lệnh ssm list .

Như đã thấy ở trên, có tổng cộng ba đĩa được cài đặt trên hệ thống.

  • /sdba1 - Lưu trữ cài đặt CentOS của chúng tôi

  • /sdb1 - Gắn tại / mnt / sdb

  • /sdc1 - Gắn tại / mnt / sdc

Những gì chúng ta muốn làm là tạo một Nhóm âm lượng bằng hai đĩa (sdb và sdc). Sau đó, cung cấp ba Tập lôgic 3GB cho hệ thống.

Hãy tạo Nhóm Khối lượng của chúng tôi.

[root@localhost rdc]# ssm create -p NEW_POOL /dev/sdb1 /dev/sdc1

Theo mặc định, ssm sẽ tạo một khối lượng hợp lý duy nhất mở rộng toàn bộ 10GB của nhóm. Chúng tôi không muốn điều này, vì vậy hãy xóa nó.

[root@localhost rdc]# ssm remove /dev/NEW_POOL/lvol001
 Do you really want to remove active logical volume NEW_POOL/lvol001? [y/n]: y
 Logical volume "lvol001" successfully removed
[root@localhost rdc]#

Cuối cùng, hãy tạo ba Tập lôgic.

[root@localhost rdc]# ssm create -n disk001 --fs xfs -s 3GB -p NEW_POOL
[root@localhost rdc]# ssm create -n disk002 --fs xfs -s 3GB -p NEW_POOL
[root@localhost rdc]# ssm create -n disk003 --fs xfs -s 3GB -p NEW_POOL

Bây giờ, hãy kiểm tra các tập mới của chúng tôi.

Bây giờ chúng ta có ba tập hợp lý riêng biệt trải dài trên hai phân vùng đĩa vật lý.

Khối lượng logic là một tính năng mạnh mẽ hiện được tích hợp trong CentOS Linux. Chúng tôi đã chạm vào bề nổi về việc quản lý những điều này. Nắm vững các nhóm và khối lượng hợp lý đi kèm với thực hành và học tập mở rộng từ Tutorials Point. Hiện tại, bạn đã học được những kiến ​​thức cơ bản về quản lý LVM trong CentOS và có khả năng tạo các Tập hợp logic sọc cơ bản trên một máy chủ duy nhất.