Nghiên cứu và thực hành thiết lập RAID Linux

20 36 0
Nghiên cứu và thực hành thiết lập RAID Linux

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

khái niệm RAID, các loại RAID, stripping (RAID 0) và monitoring (RAID 1), giải pháp sử dụng khả năng tính toán (RAID 56), khi nào nên sử dụng RAID và nên chọn loại RAID nào, khôi phục ổ đĩa hỏng, phân vùng logic, mở rộng và giảm kích thước phân vùng logic

NGHIÊN CỨU VÀ THỰC HÀNH THIẾT LẬP RAID LINUX RAID Các loại RAID Stripping (RAID 0) Mirroring (RAID 1) Giải pháp sử dụng khả tính tốn (RAID 5/6) RAID 10 (Mirroring + Stripping) Khi nên sử dụng RAID Nên chọn loại RAID nào? Tạo mảng (Thiết lập với RAID 1) Thiết lập với RAID 10 Khôi phục ổ đĩa hỏng 13 11 Quản lý phân vùng logic (Logical Volume Manager LVM) 13 12 Tạo nhóm phân vùng 15 13 Mở rộng phân vùng logic 17 14 Giảm kích thước phân vùng logic 18 RAID RAID Lưu trữ liệu hard disk việc cần thiết để hỗ trợ việc truy cập liệu máy chủ, ổ đĩa bị hỏng, liệu bị Có vài cách để giải vấn đề Một sử dụng LVM để nhóm nhiều ổ đĩa thể chúng thiết bị Hai sử dụng BtrFS để làm thực chiến lược LVM Và cách cuối sử dụng RAID RAID cho phép sử dụng nhiều ổ đĩa thể ổ đĩa lớn, với tùy chọn built-in khác Có loại RAID phổ biến sau: Hardware RAID Fake RAID Software RAID Hardware RAID sử dụng điều khiển phần cứng thường gọi RAID controllers, giúp quản lý RAID cách suốt với hệ điều hành Các máy chủ mức độ doanh nghiệp thường sử dụng điều khiển phần cứng Ở hệ thống, việc thiết lập RAID thường thao tác qua BIOS (basic input/output system) UEFI(Unified extensible firmware interface) Fake RAID dạng nhỏ hardware RAID sử dụng hệ thống nhỏ máy tiín để bàn Các nhà sản xuất thêm chức RAID vào mainboard thơng qua chip Loại cài đặt RAID thứ thông qua phần mềm nhân Linux Hệ thống md đa ổ đĩa hệ thống md thuờng thể tốt fake RAID, mảng md RAID di chuyển máy Báo cáo tập trung việc sử dụng md RAID Các loại RAID Có vài loại - vài mức độ RAID Mức dộ sử dụng phụ thuộc vào điều gi quan trọng Các mức độ khác đưa đánh đổi khơng gian ổ đĩa sẵn có, độ tin cậy tốc độ Các mức độ RAID thường sử dụng Sức chứa lưu trữ tính N(tổng số lượng ổ đĩa) mảng RAID (trừ ổ đĩa lẻ) sau nhân với kích thước ổ đĩa Thông thường ổ đĩa cứng sử dụng ổ đĩa dự trữ Khi có ổ đĩa mảng lỗi, ổ đĩa dự trữ thay Striping (RAID 0) Morroring (RAID 1) Cách để sử dụng RAID với ổ đĩa, thiết lập RAID mức RAID mức độ RAID 0, gọi striping, coi ổ đĩa ổ đĩa kết hợp với kích thước nhân đôi Khi ghi liệu vào mảng RAID, phần liệu nằm ổ đĩa Vì việc ghi liệu Linux thực thi đồng thời ổ đĩa, nên ghi liệu vào RAID nhanh việc ghi liệu vào ổ đĩa đơn Tuy nhiên, bất lợi ổ đĩa hỏng, phần files mà lan truyền ổ đĩa biến Vì tất liệu bị RAID 1, gọi mirroring, cho phép lưu trữ liệu mảng ổ đĩa đơn Nó luu trữ chép giống files ổ đĩa, nêu ổ đĩa hỏng, liệu nhận từ ổ đĩa cịn lại Vì tất liệu cần ghi lên ổ đĩa, RAID khơng cung cấp khả cải thiện hiệu ghi liệu, Lưu trữ file RAID RAID Giải pháp sử dụng khả tính tốn (RAID 5/6) Để tối ưu lựa chọn tốt - redunancy(dư thừa), storage size (kích thước lưu trữ) speed (tốc độ) gọi hỗ trợ khả vi xử lý RAID mức độ sử dụng tối thiểu ổ đĩa cung cấp khả sử dụng hiệu khơng gian lưu trữ có sẵn gia tăng tốc độ đọc ghi Điều đạt đươc cách striping liệu nhiều ổ đĩa ghi checksum stripe vào ổ đĩa khác(còn biết đến block parity (tính chẵn lẻ khối) Nếu ổ đĩa lỗi, checksum sử dụng xây dựng lại liệu stripe bị thiếu Đánh đổi cách tiếp cận sử dụng sức mạnh khả tính tốn để tính checksum Khi liệu ghi mảng, checksum cần tính lưu trữ ổ đĩa Nếu ổ đĩa lỗi, checksum sau sử dụng cách kết hợp với liệu cịn lại ổ đĩa để tính lại phần thiếu liệu Ảnh mô tả cách liệu checksum tách ổ đĩa B1, B2 B3 phần file B Bp checksum parity (chẵn lẻ) Nếu đĩa hỏng, B2 tính từ B1, B3 Bp, ổ đĩa thay thêm vào, nội dung khôi phục Bố cục RAID stripe ổ đĩa RAID RAID thường lựa chọn tốt cho máy chủ web, máy chủ file hệ thống mục đích chung khác nơi mà hầu hết giao dịch đọc RAID RAID lựa chọn tốt cho môi trường cần ghi nhiều liệu, cụ thể máy chủ sở liệu, làm hại tới hiệu tổng thể Trong trường hợp ổ đĩa hỏng, cần phải hy sinh hiệu để giữ hệ thống hoạt động Một ổ đĩa hỏng thay, liệu cần xây dựng lại dựa thông tin chẵn lẻ Điều khoảng đáng kể toàn hiệu mảng Thời gian cho lần xây dựng lại tiếp tục tăng lên sau năm, ổ đĩa ngày lớn Lưu ý rằng, sử dụng RAID giải pháp thay cho việc tạo backup thông thường Sử dụng RAID phịng ngừa trường hợp phần cứng hỏng khơng phải cho việc xóa liệu có chủ đích RAID 10 (Morroring + Stripping) RAID 10 yêu cầu ổ đĩa kết hợp RAID RAID Điều giúp tăng tốc độ dự trữ RAID 10 thường khuyến nghị sử dụng có nhu cầu tốc độ cần dư thừa Trong trường hợp dùng ổ đĩa cứng, hai ổ đĩa cứng tạo (mirroring) giữ nửa liệu cắt (strip) hai lại giữ nửa liệu cịn lại Điều có nghĩa ổ đĩa hỏng, họăc chí có thêm ổ đĩa thứ bị hỏng (ổ đĩa nhóm ổ chép cịn lại) liệu không bị Khi nên sử dụng RAID RAID hữu dụng thời gian vận hành tính sẵn có quan trọng Backup đảm bảo việc mát liệu Nhưng, việc phục hồi lượng lớn liệu, gặp cố ổ đĩa hỏng, hàng tiếng đồng hồ để thực Các backup từ hàng hàng ngày trước, phần liệu lưu thay đổi khơng có backup gần RAID cho phép dù có nhiều ổ đĩa hỏng khơng có liệu bị nhiều trường hợp, chịu thời gian ngưng chạy hệ thống RAID hữu dụng có vấn đề liên quan đến đọc ghi (IO), trường hợp mà ứng dụng đợi ổ đĩa để thực công việc RAID cung cấp nhiều thông lượng việc cho phép đọc ghi liệu từ nhiều ổ cứng thay Nên chọn loại RAID nào? Khơng sử dụng RAID: hệ thống chịu đựng vài tiếng đồng hồ bị down và/ họă liệu khôi phục hệ thống từ backup RAID 0: Nếu liệu khơng quan trọng để mất, hiệu lại quan trọng (cụ thể cache) RAID 1: Nêu cần ưu tiên việc dư liệu để đảm bảo thời gian chạy hệ thống (uptime) cách khơng tốn RAID 5/6: Nêu có máy chủ web, môi trường đọc liệu cao họăc có mảng lưu trữ lớn đối tượng RAID 10: Cân tốc độ đọc ghi việc dự trữ liệu Tạo mảng (Thiết lập với RAID 1) Để bảo vệ liệu máy khỏi trường hợp ô đĩa bị hỏng, việc sử dụng RAID cần thiết Việc sử dụng mức độ RAID phụ thuộc số lượng ổ đĩa cứng có sẵn Đầu tiên cần bảo đảm có ổ đĩa tạo partition có kích thước giống chúng Nếu khơng có đủ ổ đĩa để sử dụng RAID, sử dụng nhiều partitions có kích thước giống ổ đĩa sử dụng chúng thành phần mảng RAID Cách cho phép thử cài đặt quản lý RAID Hiệu theo cách thiết lập chậm, liệu cần ghi vào phần khác ổ đĩa nhiều lần Nó khơng cung cấp khả phục hồi chống lại ổ đĩa lỗi Nếu ổ đĩa hỏng, mảng RAID lỗi Ví dụ khởi tạo RAID 1, cần sử dụng partition (ở ví dụ /dev/sda2 /dev/sda3 /dev/sda4) với kích thước giống RAID hoạt động Thiết lập tạo partition G thiết lập loại partition fd00 - Linux RAID $ sudo gdisk /dev/sda3 GPT fdisk (gdisk) version 0.8.6 Partition table scan: MBR: not present BSD: not present APM: not present GPT: not present Creating new GPT entries Command (? for help): n Partition number (1-128, default 1): First sector (34-16777182, default = 2048) or {+-}size{KMGTP}: Last sector (2048-16777182, default = 16777182) or {+-}size{KMGTP}: 2G Current type is 'Linux filesystem' Hex code or GUID (L to show codes, Enter = 8300): fd00 Changed type of partition to 'Linux RAID' Command (? for help): w Final checks complete About to write GPT data THIS WILL OVERWRITE EXISTING PARTITIONS!! Do you want to proceed? (Y/N): y OK; writing new GUID partition table (GPT) to /dev/sdc The operation has completed successfully Xóa bảng phân vùng tạo phân vùng RAID Lặp lại tiến trình cho partition /dev/sda2 /dev/sda4 Tuy nhiên ổ đĩa có kích thước (lựa chọn tốt ổ đĩa nhà sản xuất), việc phân chia ổ đĩa không cần thiết Sử dụng package mdadm để thao tác quản lý RAID Để tạo mảng, cần định chế độ create , mức độ RAID partition thành phần mảng $ sudo mdadm create /dev/md0 level=raid1 raid-devices=2 /dev/sda2 /dev/sda3 spare-devices=1 /dev/sda4 mdadm: Note: this array has metadata at the start and may not be suitable as a boot device If you plan to store '/boot' on this device please ensure that your boot-loader understands md/v1.x metadata, or use metadata=0.90 Continue creating array? y mdadm: Defaulting to version 1.2 metadata mdadm: array /dev/md0 started Câu lệnh tạo thiết bị gắn (mount) /dev/md0 thiết bị RAID tạo partitions /dev/sda2 /dev/sda3 , /dev/sda4 partition dự trữ Tạo chạy mảng RAID khiến module nhân md tải lên hiển thị thông tin trạng thái Kiểm tra log nhân qua lệnh dmesg $ sudo dmesg [ 9508.794689] md: bind [ 9508.795609] md: bind [ 9508.795996] md: bind [ 9508.806492] md: raid1 personality registered for level [ 9508.807304] md/raid1:md0: not clean starting background reconstruction [ 9508.807306] md/raid1:md0: active with out of mirrors [ 9508.807318] md0: detected capacity change from to 8584626176 [ 9508.809302] RAID1 conf printout: [ 9508.809305] - wd:2 rd:2 [ 9508.809306] disk 0, wo:0, o:1, dev:sdc [ 9508.809307] disk 1, wo:0, o:1, dev:sdd [ 9508.812318] md: resync of RAID array md0 [ 9508.812320] md: minimum _guaranteed_ speed: 1000 KB/sec/disk [ 9508.812321] md: using maximum available idle IO bandwidth (but not more than 200000 KB/sec) for resync [ 9508.812323] md: using 128k window, over a total of 8383424k [ 9508.821845] md0: unknown partition table [ 9550.509411] md: md0: resync done [ 9550.516479] RAID1 conf printout: [ 9550.516481] - wd:2 rd:2 [ 9550.516483] disk 0, wo:0, o:1, dev:sdc [ 9550.516484] disk 1, wo:0, o:1, dev:sdd [ 9550.517712] RAID1 conf printout: [ 9550.517715] - wd:2 rd:2 [ 9550.517716] disk 0, wo:0, o:1, dev:sdc [ 9550.517717] disk 1, wo:0, o:1, dev:sdd Để kiểm tra trạng thái thiết bị RAID, sử dụng lệnh mdadm với chế độ truy vấn detail $ sudo mdadm query detail /dev/md0 /dev/md0: Version : 1.2 Creation Time : Mon Jun 20 09:41:18 2016 Raid Level : raid1 Array Size : 8383424 (8.00 GiB 8.58 GB) Used Dev Size : 8383424 (8.00 GiB 8.58 GB) Raid Devices : Total Devices : Persistence : Superblock is persistent Update Time : Mon Jun 20 09:42:00 2016 State : clean Active Devices : Working Devices : Failed Devices : Spare Devices : Name : au-mel-centos-1.example.com:0 (local to host gateway.example.com) UUID : ca66c4e2:49e8c87e:94d311de:01ca4f55 Events : 17 Number Major Minor RaidDevice State 33 active sync /dev/sda2 49 active sync /dev/sda3 65 - spare /dev/sda4 Hiển thị thông tin mảng, trang thái chi tiết thành phần Trong ví dụ sử dụng mảng RAID 1, thấy /dev/sda2` /dev/sda3 ở trạng thái active sync Điều có nghĩa bất kì liệu ghi vào thiết bị RAID ghi vào cả /dev/sda2 /dev/sda3` Nếu có thiết bị hỏng, partition dự trữ (/dev/sda4) tự động kích hoạt đồng Có thể kiểm tra nhanh thiết bị RAID cách truy vấn file hệ thống /proc : $ sudo cat /proc/mdstat Personalities : [raid1] md0 : active raid1 sda4[2](S) sda3[1] sda2[0] 2045952 blocks super 1.2 [2/2] [UU] unused devices: Kí hiệu [UU] thể [2/2] thiết bị hoạt động Nêu thiết bị gỡ hỏng, kết [U_] (S) sau thiết bị thể sử dụng vùng dự trữ Vào lúc khởi động, máy Linux gọi mdadm Phụ thuộc vào thiết lập nó, công cụ quét tất partition ổ đĩa định nghĩa cho siêu khối RAID Nếu tìm nào, phân tích chúng cố gắng lắp ghép bắt đầu tất mảng RAID Có thể định nghĩa rõ ràng mảng RAID file thiết lập mdadm , để đảm bảo tên node thiết bị không thay đổi File thiết lập định nghĩa mảng /etc/mdadm/mdadm.conf Ubuntu # mdadm.conf # # Please refer to mdadm.conf(5) for information about this file # # by default (built-in), scan all partitions (/proc/partitions) and all # containers for MD superblocks alternatively, specify devices to scan, using # wildcards if desired #DEVICE partitions containers # auto-create devices with Debian standard permissions CREATE owner=root group=disk mode=0660 auto=yes # automatically tag new arrays as belonging to the local system HOMEHOST # instruct the monitoring daemon where to send mail alerts MAILADDR root # definitions of existing MD arrays # This file was auto-generated on Tue, 10 May 2016 21:55:12 +1000 # by mkconf $Id$ File config madadm.conf mặc định Để thêm định nghĩa cho mảng RAID 1, thêm vào mdadm.conf dòng sau: ARRAY /dev/md0 level=raid1 num-devices=2 spares=1 UUID=b2847c74:af06ebb0:9a1f19f6:132aed7f devices=/dev/sda2,/dev/sda3,/dev/sda4 Thiết lập với RAID Nêu có ổ đĩa cứng, tạo RAID Để tạo mảng RAID 5, cần tháo mảng RAID Để dừng mảng RAID 1, giải phóng tất thiết bị sử dụng: $ sudo mdadm manage /dev/md0 stop mdadm: stopped /dev/md0 Có thể sử dụng thiết bị tháo rời (/dev/sda2 , ) cho mảng RAID Xóa thiết lập thêm file mdadm.conf Thiết lập partition dạng "Linux RAID" lệnh sudo gdisk /dev/sdax Tạo mảng RAID với thiết bị thiết bị dùng để dự trữ $ sudo mdadm create /dev/md0 level=raid5 raid-devices=3 -sparedevices=1 /dev/sda5 /dev/sda6 /dev/sda7 /dev/sda8 [sudo] password for vpoat: mdadm: partition table exists on /dev/sda5 mdadm: partition table exists on /dev/sda5 but will be lost or meaningless after creating array mdadm: partition table exists on /dev/sda6 mdadm: partition table exists on /dev/sda6 but will be lost or meaningless after creating array mdadm: partition table exists on /dev/sda7 mdadm: partition table exists on /dev/sda7 but will be lost or meaningless after creating array mdadm: partition table exists on /dev/sda8 mdadm: partition table exists on /dev/sda8 but will be lost or meaningless after creating array Continue creating array? y mdadm: Defaulting to version 1.2 metadata mdadm: array /dev/md0 started $ cat /proc/mdstat Personalities : [raid1] [raid6] [raid5] [raid4] md0 : active raid5 sda7[4] sda8[3](S) sda6[1] sda5[0] 2043904 blocks super 1.2 level 5, 512k chunk, algorithm [3/3] [UUU] unused devices: Mảng RAID tạo Nếu có đủ ổ đĩa cứng, tăng kích thước mảng RAID Điều khiến cho liệu dịch checksum tính lại khoảng thời gian Ví dụ thêm ổ đĩa /dev/sda9 vào mảng qua lệnh mdadm với tùy chọn add $ sudo mdadm manage /dev/md0 add /dev/sda9 mdadm: added /dev/sda9 Để thêm nhiều thiết bị lệnh, cần liệt kê ổ đĩa sau tùy chọn add Kiểm tra nhanh qua lệnh cat /proc/mdstat thể sda8 sda9 liệt kê ổ đĩa dự trữ $ cat /proc/mdstat Personalities : [raid1] [raid6] [raid5] [raid4] sda9[5](S) sda7[4] sda8[3](S) sda6[1] sda5[0] md0 : active raid5 2043904 blocks super 1.2 level 5, 512k chunk, algorithm [3/3] [UUU] unused devices: Việc thêm /dev/sda9 sử dụng ổ dự trữ, mở rộng mảng từ ổ thành ổ đĩa lưu trữ với lệnh mdadm chế độ grow Một ổ dự trữ tự động sử dụng cho việc Nếu có cố điện xảy mở rộng mảng, liệu bị Để ngăn chặn điều này, thêm tùy chọn backup-file Đảm bảo không lưu file backup thư mục /tmp (thư mục bị làm rỗng trình khởi động) $ sudo mdadm grow /dev/md0 raid-disks=4 backupfile=/root/raidbackup-file mdadm: Need to backup 3072K of critical section Kiểm tra lại thông tin mảng RAID $ cat /proc/mdstat Personalities : [raid1] [raid6] [raid5] [raid4] md0 : active raid5 sda9[5] sda7[4] sda8[3](S) sda6[1] sda5[0] 3065856 blocks super 1.2 level 5, 512k chunk, algorithm [4/4] [UUUU] unused devices: Kiểm tra cho thấy có ổ đĩa hoạt động ổ đĩa dự trữ Khôi phục ổ đĩa hỏng Để mơ ổ đĩa hỏng, sử dụng mdadm để thông báo với kernel ổ đĩa /dev/sda9 hỏng $ sudo mdadm manage /dev/md0 fail /dev/sda9 mdadm: set /dev/sda9 faulty in /dev/md0 Bây giờ, hệ thống RAID biết ổ đĩa hỏng Điều giống với thông báo lỗi driver RAID phát có lỗi xảy ổ đĩa mảng $ cat /proc/mdstat Personalities : [raid1] [raid6] [raid5] [raid4] md0 : active raid5 sda9[5](F) sda7[4] sda8[3] sda6[1] sda5[0] 3065856 blocks super 1.2 level 5, 512k chunk, algorithm [4/4] [UUUU] unused devices: ổ đĩa /dev/sda9 đánh dấu hỏng với kí hiệu (F) /dev/sda8 (trước đánh dấu ổ đĩa dự trữ) sử dụng ổ đĩa lưu trữ mảng Kiểm tra log hệ thống để đảm bảo giám sát RAID nhận biết thay đổi hành động hợp lý Sử dụng lệnh journalctl -xb để xem thông điệp Hệ thống RAID hoạt động để bảo vệ liệu mảng nguyên Tiếp theo, cầ xóa ổ đĩa hỏng khỏi mảng thay Đầu tiên, gọi lệnh mdadm để xóa ổ đĩa hỏng khỏi mảng RAID $ sudo mdadm manage /dev/md0 remove /dev/sda9 mdadm: hot removed /dev/sda9 from /dev/md0 Bước phụ vào điều khiển ổ đĩa Nêu hỗ trợ thay nóng ổ đĩa, tháo ổ đĩa hỏng thay với Nếu không, cần tắt máy để thay ổ đĩa Khi thay ổ đãi khởi động máy, cần phân vùng ổ đĩa giống ổ đĩa thay Khi việc phân vùng hoàn thành, thêm phân vùng vào mảng RAID qua lệnh mdadm $ sudo mdadm manage /dev/md0 add /dev/sda10 mdadm: added /dev/sda10 cat /proc/mdstat Personalities : [raid1] [raid6] [raid5] [raid4] md0 : active raid5 sda10[5](S) sda7[4] sda8[3] sda6[1] sda5[0] 3065856 blocks super 1.2 level 5, 512k chunk, algorithm [4/4] [UUUU] unused devices: Ổ đĩa thêm vào ổ đĩa dự trữ, sẵn sàng để thay có ổ đĩa khác hỏng Quản lý phân vùng logic (Logical Volume Manager LVM) Theo cách thông thường, ổ đĩa cần phân vùng tạo file hệ thống phân vùng để truy cập Vấn đề là, phân vùng ổ đĩa, khó thay đổi kích thước phân vùng thêm phân vùng khác Hơn thêm ổ đĩa phân vùng, liệu lan truyền nhiều vị trí thư mục Điều khiến việc hợp nhất, back up quản lý liệu khó có khả khiến khó cho người sử dụng để tìm liệu họ Để vượt qua vấn đề này, quản lý phân vùng logic tạo Thay tách ổ đĩa thành phân vùng cố định mà lưu trữ vùng cố định ổ đĩa, LVM trộn lẫn nhiều phân vùng thiết bị thành nhóm phân vùng logic Sau linh hoạt tạo, thay đổi kích thước xóa phân vùng nhóm phân vùng, xóa bỏ việc cần phải gỡ (unmount) phân vùng khởi động lại hệ thống để cập nhật ánh xạ phân vùng Hệ thống LVM có lớp Lớp gồm phân vùng vật lý: ổ đãi, phân vùng mảng RAID Phân vùng vật lý sử dụng để tạo nhóm phân vùng Một nhóm phân vùng bao gồm nhiều phân vùng vật lý Cuối cùng, nhóm phân vùng chứa số lượng phân vùng vật lý Mơ hình LVM Nhóm phân vùng Phân vùng vật lý Tạo nhóm phân vùng Nêu muốn sử dụng phân vùng với LVM, cần thiết lập loại thành 8e00 - Linux LVM sử dụng gdisk Cũng sử dụng toàn ổ đĩa mảng RAID để lưu trữ cho LVM Trong ví dụ đây, thiết lập LVM mảng RAID dược tạo trước Các bước tương tự thiết lập LVM RAID 1, phân vùng riêng lẻ toàn ổ đĩa Mỗi thiết bị thiết bị lưu trữ sử dụng LVM gọi phân vùng vật lý (physical volume PV) Có thể đánh dấu thiết bị qua lệnh pvcreate (nêu package lvm2 chưa cài đặt, dùng lệnh sudo apt install lvm2 ) $ sudo pvcreate /dev/md0 Physical volume "/dev/md0" successfully created Lệnh thực thi ghi watermark nhỏ vào phần đầu thiết bị, nhận dạng cho việc sử dụng LVM Có thể liệt kê tất thiết bị hệ thống qua lệnh pvs $ sudo pvs PV VG Fmt /dev/md0 Attr PSize PFree lvm2 - 2.92g 2.92g Tạo nhóm phân vùng sudo vgcreate vol_group /dev/md0 Liệt kê tất nhóm phân vùng hệ thống qua lệnh vgs $ sudo vgs VG vol_group #PV #LV #SN Attr Tạo phân vùng logic VSize VFree wz n- 2.92g 2.92g $ sudo lvcreate -L 2G -n logic_vol vol_group Logical volume "logic_vol" created Xóa phân vùng logic $ sudo lvremove /dev/vol_group/logic_vol Tạo phân vùng logic qua lệnh lvcreate , tham số cần định tên, kích thước nhóm phân vùng Câu lệnh tạo thêm phân vùng logic với kích thước 0.9G $ sudo lvcreate name www size 0.9G vol_group Rounding up size to full physical extent 924.00 MiB Logical volume "www" created $ sudo lvs LV VG Attr LSize Pool Origin Data% Move Log Cpy%Sync Convert logic_vol vol_group -wi-a www vol_group -wi-a - 924.00m Meta% 2.00g Phần lại cần làm tạo file hệ thống phân vùng logic gắn Để làm vậy, cần tên node thiết bị cho phân vùng logic Điều quản lý driver gọi devicemapper , mà tạo đầu vào node thiết bị cho phần vùng tạo Một phân vùng logic truy cập qua /dev/mapper/- symlink từ /dev// Bởi đơi với phân vùng logic www tạo, sử dụng /dev/vol_group/www Nên tạo file hệ thống XFS cho phân vùng logic sử dụng câu lệnh sau: $ sudo mkfs.xfs /dev/vol_group/www meta-data=/dev/vol_group/www = = crc=1 isize=512 agcount=8, agsize=29568 blks sectsz=512 attr=2, projid32bit=1 finobt=1, sparse=0, rmapbt=0, reflink=0 data = = =version log sectsz=512 extsz=4096 bsize=4096 blocks=236544, imaxpct=25 sunit=128 swidth=256 blks naming bsize=4096 ascii-ci=0 ftype=1 log =internal bsize=4096 blocks=624, version=2 = sunit=8 blks, lazy-count=1 realtime =none blocks=0, rtextents=0 Có thể sử dụng phân vùng thể phân vùng thơng thường thêm vào file /etc/fstab , tự động gắn /var/wwww máy khởi động Đối với điều này, sử dụng tên node thiết bị UUID file hệ thống tạo Lệnh blkid hiển thị tất thơng tin đó, có thơng tin phân vùng logic vừa tạo sau /dev/mapper/vol_group-www: UUID="dbfb90af-6d4d-41ae-8dcc-97ce2d95d9e8" TYPE="xfs" Nội dung thêm vào file /etc/fstab # /dev/mapper/vol_group-www UUID=dbfb90af-6d4d-41ae-8dcc-97ce2d95d9e8 /var/www xfs defaults 0 Sau tạo thư mục /var/www gắn $ sudo mkdir /var/www $ sudo mount /var/www Mở rộng phân vùng logic Sử dụng LVM dường cung cấp khả sử dụng ổ đĩa cách mềm dẻo Giả sử, phân vùng /var/www sử dụng cho trang web kích thước chuẩn bị vượt 0.9G Nếu khơng có LVM, cần tạo phân vùng có đủ dụng lượng, chép tất liệu sang đảm bảo /etc/fstab cập nhật Tuy nhiên, với LVM đơn giản mở rộng phân vùng logic thay đổi kích thước file hệ thống Nếu khơng cịn dung lượng nhóm phân vùng, thêm phân vùng vật lý vào nhóm Cần hồn thành bước để an tồn thay đổ kích thước file hệ thống chứa phân vùng logic Đầu tiên, cần thay đổi kích thước phân vùng logic này, thứ hai, thay đổi kích thước file hệ thống LVM làm cơng việc dễ dàng Phân vùng mở rộng sử dụng lvextend Cần định tổng kích thước kích thước đựợc tăng lên theo ý muốn, tên phân vùng Bằng cách thêm dấu + trước tham số kích thức định kích thước thêm vào kích thước $ sudo lvextend size +1G resizefs /dev/vol_group/www Size of logical volume vol_group/www changed from 924.00 MiB (231 extents) to 1.90 GiB (487 extents) Logical volume vol_group/www successfully resized meta-data=/dev/mapper/vol_group-www isize=512 agcount=8, agsize=29568 blks data = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=1 spinodes=0 rmapbt=0 = reflink=0 = bsize=4096 = =version =internal sectsz=512 extsz=4096 498688 blocks=236544, imaxpct=25 sunit=128 swidth=256 blks naming bsize=4096 ascii-ci=0 ftype=1 log bsize=4096 blocks=624, version=2 = sunit=8 blks, lazy-count=1 realtime =none blocks=0, rtextents=0 data blocks changed from 236544 to Câu lệnh thêm 1G (+1G) vào phân vùng logic /dev/vol_group/www Tùy chọn resizefs cho phép LVM thực thi xfs_growfs sau thay đổi kích thước phân vùng logic Để định kích thước tổng mà không tự động resize file hệ thống, bỏ tùy chọn -r , sau thay đổi kích thước file hệ thống thủ công sử dụng xfs_growfs Nếu file hệ thống Ext4, sử dụng công cụ resize2fs $ df -h /var/www /dev/mapper/vol_group-www 1.9G 35M 1.9G 2% /var/www $ sudo lvextend -s 0.5G /dev/vol_group/www Size of logical volume vol_group/www changed from 1.90 GiB (487 extents) to 2.50 GiB (640 extents) Logical volume vol_group/www successfully resized $ sudo xfs_growfs /dev/vol_group/www meta-data=/dev/mapper/vol_group-www isize=512 agcount=17, agsize=29568 blks data = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=1 spinodes=0 rmapbt=0 = reflink=0 = bsize=4096 blocks=498688, imaxpct=25 = sunit=128 swidth=256 blks naming =version bsize=4096 ascii-ci=0 ftype=1 log =internal bsize=4096 blocks=624, version=2 = sectsz=512 sunit=8 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 498688 to 655360 $ df -h /var/www Filesystem Size /dev/mapper/vol_group-www 2.5G Used Avail Use% Mounted on 36M 2.5G 2% /var/www Giảm kích thước phân vùng logic File hệ thống co lại Để co lại file thống phân vùng vật lý, làm theo bước phần trước theo chiều ngược lại sử dụng câu lệnh lvreduce Đảm bảo rằng, không thu nhỏ phân vùng logic nhỏ file hệ thống chứa Ví dụ tạo phân vùng logic, format dạng Ext4 giảm kích thước $ sudo lvcreate name logic2 size 0.3G vol_group Rounding up size to full physical extent 308.00 MiB WARNING: ext4 signature detected on /dev/vol_group/logic2 at offset 1080 Wipe it? [y/n]: y Wiping ext4 signature on /dev/vol_group/logic2 Logical volume "logic2" created $ sudo mkfs.ext4 /dev/vol_group/logic2 mke2fs 1.44.1 (24-Mar-2018) Creating filesystem with 315392 1k blocks and 78936 inodes Filesystem UUID: 961bf628-7a04-41e7-aef1-13ec99371cb5 Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729, 204801, 221185 Allocating group tables: done Writing inode tables: done Creating journal (8192 blocks): done Writing superblocks and filesystem accounting information: done $ sudo lvreduce size -0.1G -r /dev/vol_group/logic2 Rounding size to boundary between physical extents: 100.00 MiB fsck from util-linux 2.31.1 /dev/mapper/vol_group-logic2: clean, 11/78936 files, 20232/315392 blocks resize2fs 1.44.1 (24-Mar-2018) Resizing the filesystem on /dev/mapper/vol_group-logic2 to 212992 (1k) blocks The filesystem on /dev/mapper/vol_group-logic2 is now 212992 (1k) blocks long Size of logical volume vol_group/logic2 changed from 308.00 MiB (77 extents) to 208.00 MiB (52 extents) Logical volume vol_group/logic2 successfully resized ... Personalities : [raid1] md0 : active raid1 sda4 [2] (S) sda3[1] sda2[0] 20 459 52 blocks super 1 .2 [2/ 2] [UU] unused devices: Kí hiệu [UU] thể [2/ 2] thiết bị hoạt động Nêu thiết bị gỡ hỏng, kết... /dev/vol_group/logic2 Rounding size to boundary between physical extents: 100.00 MiB fsck from util-linux 2. 31.1 /dev/mapper/vol_group-logic2: clean, 11/78936 files, 20 2 32/ 3153 92 blocks resize2fs 1.44.1 (24 -Mar -20 18)... resize2fs 1.44.1 (24 -Mar -20 18) Resizing the filesystem on /dev/mapper/vol_group-logic2 to 21 29 92 (1k) blocks The filesystem on /dev/mapper/vol_group-logic2 is now 21 29 92 (1k) blocks long Size

Ngày đăng: 08/03/2022, 15:39

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan