Układ subwolum BTRFS dla maszyn wirtualnych i baz danych

Układ subwolum BTRFS dla maszyn wirtualnych i baz danych
„BTRFS doskonale nadaje się do migawek i wycofywania danych. Planując układ subvolume, możesz dostroić migawkę, chronić maszyny wirtualne i bazy danych przed wycofaniem systemu. Subwoluma to świetny sposób na zarządzanie ważnymi danymi."

Płaski układ

Podczas wykonywania standardowej instalacji Ubuntu za pomocą BTRFS na jednej partycji instalator tworzy i zamontuje dwa podwolu: @ (zlokalizowany w /) i @dom (położony w /dom). Są one zamontowane przy rozruchu przez /etc /fstab. Nazywa się to płaskim układem i sprawia, że ​​migawki są łatwe do zarządzania.

Migawki i wycofania

Zakładając konfigurację Ubuntu Standard BTRFS, zamontuj partycję systemową na /MNT:

$ sudo Mount /dev /sdx /mnt.

Zobaczysz tam dwa podwolu:

Cały system plików root jest zawarty w środku @. Zrobić migawkę @ zwany @.migawka, my robimy:

Do wycofanie Podwórz, po prostu przesuń/zmień nazwę starego podwolu, a następnie przesuń/zmień nazwę migawki, którą chcesz użyć na lokalizację starego podwolu:

$ sudo mv /mnt /@ /mnt /@.złamany
$ sudo mv /mnt /@.migawka /mnt /@

Po ponownym uruchomieniu będziesz używać migawki, którą wziąłeś.

Uwaga przed ponownym uruchomieniem: /etc/fstab ma wpisy dla @ I @dom jak więc:

"
Uuid = xxxxx / btrfs mount_options, subvol =@ 0 0
Uuid = xxxxx /home btrfs mount_options, subvol =@home 0 0
"

Jeśli Twoje wpisy /etc /fstAB mają subvolid w takich opcjach montażu, tę opcję należy usunąć.

"
Uuid = xxxxx / btrfs mount_options, subvol =@, subvolid = xxxx 0 0
"

Identyfikator podwolu to unikalny identyfikator podwodności. Po wymianie podwolu, podwolu wymienione w tym punkcie montażu może mieć to samo nazwa, ale będzie miał inny identyfikator. Jeśli identyfikator różni się od jednego w /etc /fstab, nie zamontuje. Bezpieczne jest użycie tylko nazw przy montażu podwolumów w /etc /fstab, o ile twoje podwolume są jednoznacznie nazwane.

Mariadb

Podczas korzystania z MariaDB pliki bazy danych będą żyć w „/var/lib/mariaDB.”Dzięki tworzeniu nowego podwolu dla tych danych chronisz swoją bazę danych przed dotknięciem w wycofaniu systemu podczas powracania @ do poprzedniego stanu.

Najpierw zamontuj BTRFS na najwyższym poziomie:

$ sudo Mount /dev /sdx /mnt

Utwórz nowy podvolume:

$ sudo btrfs subvolume create /mnt /@mariadb

Następnie zamontuj:

$ sudo Mount -o subvol =@mariadb/dev/sdx/var/lib/mariadb

Dodaj ten wpis do swojego FSTAB i zainstaluj bazę danych:

$ sudo vim /etc /fstab
"
Uuid = xxxxx/var/lib/mariadb btrfs mount_options, subvol =@mariadb 0 0
"
$ sudo apt instint mariadb-server

Kvm

Podobnie izoluj wszystkie maszyny KVM w jedną podwpcję w „/var/lib/libvirt/maszynach:”

$ sudo btrfs subvolume create /mnt /@kvm
$ sudo Mount -o subvol =@kvm/dev/sdx/var/lib/libvirt/maszyny
$ sudo vim /etc /fstab
"
Uuid = xxxx/var/lib/libvirt/maszyny btrfs mount_options, subvol =@kvm 0 0
"

Jeśli masz już dane w maszynie wirtualnej i katalogach baz danych, możesz je zapasować, zastąp oryginalny katalog na podwórze, którą wykonałeś, a następnie przywrócić dane z kopii zapasowej. Nie zapomnij naprawić uprawnień w razie potrzeby, ponieważ wszystkie nowo utworzone subwoluma są własnością root:

$ sudo chown -r mysql: mysql/var/lib/mariadb

Wniosek

Teraz, kiedy musisz się wycofać @ Do poprzedniego stanu Twoja baza danych i maszyny wirtualne zostaną zachowane w osobnych podwolumach. Możliwości układów podwole są nieograniczone, a to, co pokazałem, to tylko jeden ze sposobów wykorzystania BTRFS w celu ochrony i zachowania danych. Niezależnie od przypadku użycia, elastyczność subwolum BTRFS może zwiększyć funkcje twojego serwera lub stacji roboczej.