Đây có phải là cách snapshot LVM hoạt động?


19

Tôi đang cố gắng tìm ra cách các ảnh chụp nhanh LVM hoạt động để tôi có thể triển khai nó trên máy chủ tệp của mình nhưng tôi gặp khó khăn khi tìm bất cứ thứ gì trên google giải thích cách thức hoạt động của nó, thay vì sử dụng nó cho hệ thống sao lưu cơ sở.

Từ những gì tôi đã đọc, tôi nghĩ rằng nó hoạt động như thế này:

  • Bạn có LVM với phân vùng chính và rất nhiều giao diện không phân bổ không có trong phân vùng
  • Sau đó, bạn chụp ảnh nhanh và gắn nó vào Tập hợp logic mới. Ảnh chụp nhanh được cho là có thay đổi, vì vậy ảnh chụp nhanh đầu tiên này sẽ là một bản sao hoàn toàn, đúng không?
  • Sau đó, ngày hôm sau bạn chụp một ảnh chụp nhanh khác (kích thước phân vùng của một người này không cần phải quá lớn) và gắn kết nó.
  • Bằng cách nào đó LVM theo dõi các ảnh chụp nhanh và không lưu trữ các bit không thay đổi trên ổ đĩa chính.
  • Sau đó, bạn quyết định rằng bạn có đủ ảnh chụp nhanh và thoát khỏi cái đầu tiên. Tôi không biết làm thế nào điều này hoạt động hoặc làm thế nào sẽ ảnh hưởng đến ảnh chụp nhanh tiếp theo.

Ai đó có thể sửa cho tôi nơi tôi sai. Tốt nhất, tôi đoán, tôi không thể tìm thấy bất cứ điều gì trên google.


vgdiplay

obu1: / nhà / tù / nhà / qps / sao lưu / D # vgdisplay
  --- Nhóm tập ---
  Máy chủ tên VGLVM
  ID hệ thống
  Định dạng lvm2
  Khu vực siêu dữ liệu 1
  Chuỗi siêu dữ liệu số 3
  Truy cập đọc / ghi VG
  Tình trạng VG thay đổi kích thước
  MAX LV 0
  Cur LV 2
  Mở LV 2
  Tối đa PV 0
  Cur 1
  Đạo luật PV 1
  Kích thước VG 931,51 GB
  Kích thước PE 4,00 MB
  Tổng PE 238467
  Alloc PE / Kích thước 238336 / 931,00 GB
  PE miễn phí / Kích thước 131 / 524,00 MB
  VG UUID qSGaG1-SQYO-D2bm-ohDf-d4eG-oGCY-4jOegU

Câu trả lời:


30

Bạn không muốn xem phần chụp nhanh của LVM-HOWTO ?

Ảnh chụp nhanh LVM là giải pháp chụp nhanh "sao chép ghi" cơ bản của bạn. Ảnh chụp nhanh thực sự không có gì khác hơn là yêu cầu LVM cung cấp cho bạn "con trỏ" về trạng thái hiện tại của hệ thống tệp và ghi các thay đổi được thực hiện sau ảnh chụp nhanh vào một khu vực được chỉ định.

Ảnh chụp nhanh LVM "trực tiếp" bên trong nhóm âm lượng lưu trữ chủ đề âm lượng cho ảnh chụp nhanh-- không phải là âm lượng khác. Câu nói của bạn "... rất nhiều và rất nhiều sự tự do chưa được phân bổ không phải là phân vùng" làm cho nó giống như suy nghĩ của bạn là các ảnh chụp nhanh "sống" bên ngoài nhóm âm lượng có thể chụp nhanh, và điều đó không chính xác. Nhóm âm lượng của bạn nằm trong một phân vùng đĩa cứng và âm lượng phải chịu ảnh chụp nhanh và bất kỳ hình ảnh nào bạn đã chụp trực tiếp trong nhóm âm lượng đó.

Cách thông thường mà ảnh chụp nhanh LVM được sử dụng không phải là lưu trữ lâu dài, mà là để có được một "bức tranh" nhất quán về hệ thống tập tin sao cho có thể thực hiện sao lưu. Sau khi sao lưu xong, ảnh chụp nhanh sẽ bị loại bỏ.

Khi bạn tạo ảnh chụp nhanh LVM, bạn chỉ định một khoảng trống để giữ bất kỳ thay đổi nào được thực hiện trong khi ảnh chụp nhanh đang hoạt động. Nếu nhiều thay đổi được thực hiện hơn không gian được chỉ định của bạn cho ảnh chụp nhanh sẽ không thể sử dụng được và phải được loại bỏ. Bạn không muốn để lại các ảnh chụp nhanh xung quanh vì (a) chúng sẽ lấp đầy và trở nên không sử dụng được và (b) hiệu suất của hệ thống bị ảnh hưởng trong khi ảnh chụp nhanh đang hoạt động-- mọi thứ trở nên chậm hơn.

Chỉnh sửa:

Những gì Microsoft Volume Shadow Copy Services và LVM snapshot không quá khác biệt. Giải pháp của Microsoft toàn diện hơn một chút (thường là trường hợp của Microsoft-- tốt hơn hoặc tệ hơn là các công cụ và sản phẩm của họ thường tìm cách giải quyết các vấn đề khá lớn so với việc tập trung vào một thứ).

VSS là một giải pháp toàn diện hơn, thống nhất hỗ trợ cho các thiết bị phần cứng hỗ trợ ảnh chụp nhanh và ảnh chụp nhanh dựa trên phần mềm vào một API. Hơn nữa, VSS có các API để cho phép các ứng dụng được kiểm tra thông qua các API chụp nhanh, trong khi các ảnh chụp nhanh LVM chỉ liên quan đến ảnh chụp nhanh-- mọi ứng dụng không hoạt động là vấn đề của bạn (đưa cơ sở dữ liệu vào trạng thái "sao lưu", v.v.).


1
Vì vậy, nó không thực sự được mô hình hóa sau Volume Shadow Copy (VSS), vì đó không phải là cách VSS hoạt động?
Malfist

Điều này làm cho nhiều ý nghĩa hơn.
Malfist

1
Tôi nghĩ rằng bạn đang hiểu nhầm ảnh chụp nhanh LVM phần nào. Ảnh chụp nhanh LVM tạo ra các thiết bị "ảo" được gắn kết như khối lượng độc lập, nhưng chúng không thực sự là "phân vùng". Ảnh chụp nhanh LVM "trực tiếp" âm lượng có thể được chụp nhanh, giống như ảnh chụp nhanh VSS.
Evan Anderson

1
Bạn có thể vui lòng làm rõ dữ liệu cập nhật đi đâu khi ảnh chụp nhanh được kích hoạt không? đến LV chính và ảnh chụp nhanh lưu một bản sao của khối cũ? hoặc với ảnh chụp nhanh LV trong khi LV chính vẫn chưa được xử lý?
Benoît

1
@benoit liên kết trong dòng đầu tiên của câu trả lời bao gồm điều này. Đọc ghi chú ở đó về hành vi chụp nhanh chỉ đọc LVM1 và tôi nghĩ bạn sẽ có câu trả lời của mình. (Đó là cách tiếp cận đầu tiên bạn mô tả, không phải là cách tiếp cận thứ hai.)
Peter Hansen

28

Ảnh chụp nhanh LVM là một ví dụ về giải pháp chụp nhanh sao chép khi ghi, như Evan nói. Cách thức hoạt động của nó hơi khác so với Evan ngụ ý, nhưng không phải là rất nhiều.

Khi bạn có âm lượng LVM không có ảnh chụp nhanh, hãy ghi vào âm lượng xảy ra như bạn mong đợi. Một khối được thay đổi, và đó là nó.

Ngay khi bạn tạo ảnh chụp nhanh, LVM sẽ tạo một khối các khối. Nhóm này cũng chứa một bản sao đầy đủ của siêu dữ liệu LVM của ổ đĩa. Khi ghi xảy ra vào ổ đĩa chính như cập nhật một nút, khối bị ghi đè được sao chép vào nhóm mới này và khối mới được ghi vào ổ đĩa chính. Đây là 'bản sao khi viết'. Do đó, càng có nhiều dữ liệu được thay đổi giữa khi chụp ảnh nhanh và trạng thái hiện tại của âm lượng chính, thì càng có nhiều không gian sẽ được sử dụng bởi nhóm ảnh chụp nhanh đó.

Khi bạn gắn ảnh chụp nhanh, dữ liệu meta được ghi khi chụp ảnh nhanh cho phép ánh xạ các khối nhóm ảnh chụp nhanh qua các khối đã thay đổi trong âm lượng (hoặc ảnh chụp nhanh ở cấp độ cao hơn). Theo cách này khi truy cập đến một khối cụ thể, LVM sẽ biết truy cập khối nào. Theo như hệ thống tập tin trên khối lượng đó có liên quan, không có ảnh chụp nhanh.

James đã chỉ ra một trong những lỗi của hệ thống này. Khi bạn có nhiều ảnh chụp nhanh của cùng một âm lượng, mỗi lần bạn ghi vào một khối trong âm lượng chính, bạn có khả năng kích hoạt ghi trong mỗi ảnh chụp nhanh. Điều này là do mỗi ảnh chụp duy trì nhóm khối thay đổi của riêng nó. Ngoài ra, đối với các cây chụp nhanh, việc truy cập một ảnh chụp nhanh có thể gây ra khá nhiều tính toán trên máy chủ để tìm ra khối chính xác nào cần được phục vụ cho truy cập.

Khi bạn loại bỏ ảnh chụp nhanh, LVM chỉ cần bỏ nhóm ảnh chụp nhanh và cập nhật cây chụp nhanh khi cần. Nếu ảnh chụp nhanh bị rơi là một phần của cây ảnh chụp nhanh, một số khối sẽ được sao chép sang ảnh chụp nhanh ở cấp độ thấp hơn. Nếu đó là ảnh chụp nhanh nhất (hoặc duy nhất), hồ bơi sẽ bị hủy và thao tác rất nhanh.


Một số hệ thống tệp cung cấp ảnh chụp nhanh trong hệ thống tệp, ZFS và BTRFS là hai trong số các hệ thống được biết đến nhiều hơn. Chúng hoạt động tương tự nhau, mặc dù chính hệ thống tập tin quản lý ánh xạ thay đổi / không thay đổi. Đây được cho là một cách tốt hơn để làm điều đó vì bạn có thể fsck toàn bộ một gia đình chụp nhanh để thống nhất, đó là điều bạn không thể làm với LVM ngay thẳng.


Cảm ơn vì lời giải thích chi tiết này. Xin lỗi vì tôi nhầm lẫn về "Liên quan đến hệ thống tập tin trên ổ đĩa đó, không có ảnh chụp nhanh." Bạn có thể giải thích thêm về điều đó có nghĩa là gì? Rất đánh giá cao cho bất kỳ phản hồi nào ~
Carr

2
@Carr Điều đó có nghĩa là ảnh chụp nhanh được xử lý bên ngoài hệ thống tập tin hoàn toàn. Các hệ thống tệp khác có khả năng chụp nhanh được tích hợp, như BTRFS và XFS, có khái niệm về ảnh chụp nhanh và bạn không nên sử dụng ảnh chụp nhanh LVM với các hệ thống đó.
sysadmin1138

@ sysadmin1138 Tôi tò mò về các ảnh chụp nhanh dựng sẵn với XFS mà bạn đã đề cập, với mục đích kiểm tra tính nhất quán / sửa chữa của FS. Tôi có một XFS FS đa TB bị hỏng theo cách bẩn thỉu và tôi muốn kiểm tra / sửa chữa nó, mà không đặt ngoại tuyến (hàng trăm người dùng, không thể ngoại tuyến trong nhiều giờ). Tôi đang nghĩ tạo một ảnh chụp nhanh XFS và sau đó chạy fsck trên đó để tìm / sửa lỗi trong khi hệ thống tệp trực tiếp được giữ trực tuyến, và sau đó nếu sửa được thực hiện, hãy trao đổi với hệ thống tệp trực tiếp. Ảnh chụp nhanh XFS sẽ tốt hơn cho mục đích này so với ảnh chụp nhanh LVM?
Ján Lalinský

2

Bạn không chỉ định liệu bạn đang sử dụng Linux hay HP-UX. Trong HP-UX, bạn tạo một âm lượng hợp lý và gắn kết nó dưới dạng ảnh chụp nhanh của một ổ đĩa logic khác. Trong Linux, bạn tạo một khối hợp lý dưới dạng một khối ảnh chụp nhanh.

Xóa một ảnh chụp nhanh trong HP-UX được thực hiện bằng cách bỏ qua âm lượng; trong Linux, nó được thực hiện bằng cách sử dụng lvremove để loại bỏ âm lượng hợp lý.

Trong mọi trường hợp, những thay đổi là điều duy nhất được lưu trữ trên ảnh chụp nhanh của bạn. Ảnh chụp nhanh càng có sẵn, càng nhiều thay đổi dự trữ - và có khả năng nó có thể lấp đầy nếu không được kích thước hoặc phát hành đúng.

Tốc độ truy cập đĩa trên ổ đĩa chụp nhanh chậm hơn so với ổ đĩa bình thường; bạn phải tính đến điều đó


1

Ảnh chụp nhanh LVM không hiệu quả, càng nhiều ảnh chụp nhanh thì hệ thống sẽ càng chậm.

Tôi chỉ hỗ trợ xfs vì những gì chúng tôi sử dụng và xfs_freeze có thể được sử dụng để tạm dừng quyền truy cập mới vào hệ thống tệp và tạo hình ảnh ổn định trên đĩa.

Sao chép trên Write được sử dụng để không gian đĩa được sử dụng hiệu quả.

Bạn đã tạo một hệ thống tập tin trong một khối hợp lý có không gian trống trong đó để chụp nhanh.

Đây là một ví dụ từ FAQ

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.