Jaka jest najlepsza praktyka dodawania dysków w LVM

Odpowiedzi:

19

RHEL6 LVM Przewodnik administratora

Zgodnie z Podręcznikiem administrowania woluminem logicznym RHEL 6 zaleca się, aby cały dysk był używany jako wolumin fizyczny w grupie woluminów LVM, aby nadal go partycjonować:

fragment przewodnika „Administracja woluminu logicznego RHEL6 Przewodnik administratora LVM”

2.1.2 Wiele partycji na dysku

LVM pozwala tworzyć woluminy fizyczne z partycji dyskowych. Zasadniczo zaleca się utworzenie jednej partycji obejmującej cały dysk w celu oznaczenia go jako wolumin fizyczny LVM z następujących powodów:

Wygoda administracyjna

Łatwiej jest śledzić sprzęt w systemie, jeśli każdy prawdziwy dysk pojawia się tylko raz. Staje się to szczególnie prawdziwe w przypadku awarii dysku. Ponadto wiele woluminów fizycznych na jednym dysku może powodować ostrzeżenie jądra o nieznanych typach partycji podczas uruchamiania.

LVM Howto

Sekcja 11.1. Inicjowanie dysków lub partycji dysku LVM Howto stwierdza, co następuje:

fragment LVM Howto

Dla całych dysków:

Uruchom pvcreate na dysku:

# pvcreate /dev/hdb

Spowoduje to utworzenie deskryptora grupy woluminów na początku dysku.

Niepolecane

Używanie całego dysku jako PV (w przeciwieństwie do partycji obejmującej cały dysk) nie jest zalecane ze względu na problemy z zarządzaniem, które może stworzyć. Każdy inny system operacyjny, który patrzy na dysk, nie rozpozna metadanych LVM i wyświetli dysk jako wolny, więc prawdopodobnie zostanie zastąpiony. Sam LVM będzie działał dobrze z PV całego dysku.

Jeśli pojawi się błąd, że LVM nie może zainicjować dysku z tabelą partycji, najpierw upewnij się, że dysk, na którym pracujesz, jest prawidłowy. Jeśli jesteś tego pewien, uruchom następujące polecenie:

NIEBEZPIECZNY

Następujące polecenia zniszczą tablicę partycji na operowanym dysku. Upewnij się, że jest to właściwy dysk.

# dd if=/dev/zero of=/dev/diskname bs=1k count=1
# blockdev --rereadpt /dev/diskname

Wnioski

Są to podstawowe źródła, którym ufam przy ustalaniu, czy należy sformatować pojedynczą partycję na dysku twardym przed dodaniem jej jako woluminu fizycznego, czy nie. Jak wskazały inne odpowiedzi (i komentarze), nie pomylisz się, dodając cały dysk bez partycji.

Dla mnie porównuję to do jazdy samochodem z pasem bezpieczeństwa. Jeśli nigdy nie zdarzy ci się wypadek, to pas nie spełnił swojego zadania, ale jeśli kiedykolwiek zdarzy mi się wypadek, jestem pewien, że go miałem.

Kontynuacja # 1 (do komentarzy @ Joela)

Myślałem, że powyższe 2 przewodniki były 2 całkiem dobrym powodem. Obaj są oficjalnymi przewodnikami, jeden z RH, a drugi to Howto opracowane przez zespół LVM.

Oto kolejny powód. Nie dzieląc HDD na partycje, ID nie jest jawnie ustawiane na HDD, aby jasno określić, w jaki sposób jest używany.

 fdisk -l
 ...
/dev/sda6       318253056   956291071   319019008   8e  Linux LVM

Jako administrator systemów, dla mnie i innych jest o wiele bardziej oczywiste zamiar używania tego konkretnego napędu w porównaniu z bez 8e.

Doceniam to, co mówisz @Joel, ja również pracowałem w firmie o fortune 500, w której mieliśmy setki wdrożeń Linuksa zarówno we wdrożeniach fizycznych / wirtualnych na komputerach stacjonarnych / serwerach, jak i w dużych magazynach, więc rozumiem powiedzenie.

slm
źródło
Tylko dlatego, że Red Hat mówi, że to nie prawda. Jeszcze nie słyszałem prawdziwego powodu, dla którego chcesz podzielić dysk na partycje i mogę tylko wymyślić powody, aby tego nie robić. Również „Łatwiej jest śledzić sprzęt w systemie, jeśli każdy prawdziwy dysk pojawia się tylko raz”. Czy to naprawdę problem? Pojawi się fdisk -lraz, /sys/blockraz, a twój bios raz. Gdzie to ma być powielone? (kont.)
Bratchley
Mówię z własnego doświadczenia, po prostu musieliśmy dodać miejsce do wielu tomów. Zostały podzielone na partycje, więc napotkaliśmy na różnego rodzaju problemy, w których jądro nie zwalniało tabeli partycji. Musieliśmy więc dokonać ponownej partycji, a następnie zrestartować komputer, powodując awarię usługi bez uzasadnionego powodu. jak w przypadku „Każdy inny system operacyjny, który patrzy na dysk, nie rozpozna metadanych LVM i wyświetli dysk jako wolny, więc prawdopodobnie zostanie zastąpiony”, co po prostu nie jest prawdą. W systemie Windows po prostu pojawi się jako nieużywany dysk (ale administrator wie lepiej), o jakim systemie operacyjnym mówią?
Bratchley
Jak dotąd nikt, kto twierdzi, że partycjonowanie dysku jest preferowane, tak naprawdę nie podaje uzasadnionych powodów i tak naprawdę zachęca ludzi do zrobienia czegoś, co z pewnością ugryzie ich w keisterze ostatecznie w sytuacji korporacyjnej (w końcu będziesz potrzebować więcej miejsca) . Dostajemy jedynie niejasne, ręczne odpowiedzi na temat tego, jak pokaże się nieprzydzielone w innych systemach operacyjnych (tak jakby to był jakiś problem, Windows nie rozpozna twojego ext3 na partycji) lub bezpodstawne stwierdzenia o tym, że pojawiają się więcej niż jeden raz lub w jakiś sposób ułatwiając śledzenie pamięci.
Bratchley,
Dzięki chłopaki :) Ta dyskusja była dla mnie bardzo pomocna.
MacGyver
2
@Joel - Tak jak ja. Doceniam dyskusję. Dobrze, że wszyscy możemy wnieść nasze różne praktyczne doświadczenia i starać się zapewnić lepsze wskazówki na ten konkretny temat niż obecnie dostępne w sieci. Przynajmniej ściągamy wiele pofragmentowanej dokumentacji w jedno miejsce. 8-).
slm
10

Preferowane jest posiadanie niektórych powszechnie rozpoznawanych deskryptorów (metadanych), a MBR jest raczej takim deskryptorem. Nawet GPT używa starej tabeli partycji opartej na MBR, aby wskazać jej obecność.

Rzeczywiście tracisz trochę miejsca na dysku, ale jest to raczej znikoma korzyść ze zrozumienia, co jest na dysku (i gdzie), jest oczywiste.

poige
źródło
1
Nie możesz nawet stracić miejsca na dysku. Sprawdź pvdisplay, (ROZMIAR PV: nie nadaje się X MiB), jeśli X jest większy niż 1 Mb, możesz równie dobrze podzielić partycję bez utraty.
frostschutz
1
@frostschutz Dobrze uważny, ale bawiący się w dupę: Przestrzeń „dostępna do zmarnowania” to nie „rozmiar dev modulo rozmiar PE”, ale „(dev rozmiar minus przestrzeń metadanych (384 K)) modulo rozmiar PE”. Oczywiście, czy to spowoduje mniej więcej, czy więcej.
Hauke ​​Laging
Również LVM ma deskryptor. Po co najpierw tworzyć tabelę FAT, a następnie deskryptor LVM. LVM przechowuje metadane w drugim sektorze. Jedną rzeczą, o której mogę pomyśleć, aby najpierw stworzyć tłuszcz, jest odzyskiwanie po awarii lub niektórzy początkujący administratorzy Linuxa (administracja dyskami).
MacGyver
HP-UX również używa LVM .. na tej platformie powszechną praktyką jest dodawanie dysków surowych i pozwalanie LVM robić swoje na dyskach. LVM2.x
MacGyver
1
@ user39597, psujesz rzeczy. FAT to skrót od File Allocation Table, czyli MS-DOS. Tabela partycji MBR jest de facto standardem, wiele różnych narzędzi nie jest świadomych, że LVM wiedziałby, że dysk jest podzielony na partycje i zajęty - to środek ostrożności.
poige
4

Tworzenie woluminów fizycznych na partycjach zajmujących 100% dysku prawie nigdy nie jest właściwym rozwiązaniem. Mówię „prawie” tylko dlatego, że mam takie podejście, że tylko dlatego, że nie mogę wymyślić żadnego powodu, aby coś zrobić, to nie znaczy, że nie ma powodu, aby to robić. To powiedziawszy, nie mogę wymyślić żadnego powodu, aby umieścić partycje na dysku w 100% miejsca, jeśli będzie to LVM.

Nie dostaniesz żadnej zauważalnej korzyści w zamian za odzyskanie pewnej sztywności partycjonowania. Jeśli są to woluminy fizyczne wspierane przez SAN, a robisz to, istnieją tylko dwa sposoby na zwiększenie przestrzeni dyskowej w grupie woluminów:

  1. Zaprezentuj nową, większą jednostkę LUN, dodaj ją do grupy woluminów, usuń z niej jednostkę LUN, którą w niewytłumaczalny sposób podzieliłeś na partycje, usuń ją z grupy woluminów i powiedz ludziom SAN, aby ją nie prezentowali. Które mogą działać i można to zrobić online (z poprawą wydajności i przy założeniu, że mają wystarczającą ilość miejsca SAN w puli pamięci po stronie SAN, aby pomieścić te dwie jednostki LUN jednocześnie), ale jest to wykonalne.
  2. Jedynym innym sposobem jest powrót do radzenia sobie z partycjami, co jest jednym z powodów, dla których ludzie lubią dobrze zaprojektowane schematy zarządzania woluminami (takie jak btrfs, lvm, zfs itp.). Możesz edytować tabelę partycji woluminu fizycznego i mam nadzieję partprobe, że przeczytasz nowe rozmiary, ale działa to tylko około 1 raz na 2 z mojego osobistego doświadczenia i wymaga odmontowania systemu plików (tj. Zmusza cię do przejścia w tryb offline z innego powodu, dla którego ludzie jak menedżerowie woluminów).

Jeśli zrobisz cały dysk, administrator SAN może dla ciebie rozszerzyć jednostkę LUN, ponownie przeskanujesz magistralę SCSI, wybierze ona nowy rozmiar jednostki LUN, a następnie zrobisz to, pvresizeaby rozszerzyć wolumin fizyczny. Wszystko to bez przełączania żadnego systemu plików w tryb offline.

Po wyjściu z bitu MBR zwykle nie bierze się PV z jednego systemu i nie przedstawia się innym w środowisku korporacyjnym. Nawet jeśli to zrobiłeś, jeśli jest to LVM, będziesz chciał, aby system operacyjny, dla którego będziesz prezentować LUN, obsługiwał LVM. W przeciwnym razie po co im to przedstawiać? Jeśli tak, zobaczysz wszystkie informacje o woluminie fizycznym, informacje o grupie woluminów i woluminy logiczne (zakładając, że jest to jedyne PV w grupie woluminów). Tak samo dokumentuje się w ten sposób.

Zasadniczo: partycjonowanie całego dysku na 100% jest jak wymaganie, aby kelner, który przyniósł ci szarlotkę, również przyniósł ci nóż. Kiedy to zrobi, rzucisz nożem w bok i po prostu zakopiesz twarz w cieście. Czyli: nie ma sensu nalegać na narzędzie do dzielenia czegoś na mniejsze części, jeśli i tak zamierzasz użyć tego wszystkiego za jednym razem.

Bratchley
źródło
2
Teoretycznie się nie mylisz, w praktyce widzisz codzienne problemy, takie jak system operacyjny i instalatory (nawet Linux) oferujące sformatowanie tego rzekomo wolnego dysku - ponieważ nie rozpoznali LVM. Jednocześnie korzystanie z partycji nie ma negatywnego (pod względem wydajności) działania. Dlatego w środowisku domowym, stacjonarnym i wielozakresowym bezpieczniej jest trzymać się partycji.
frostschutz
Sam nie widziałem problemów z instalatorami. Jądro powinno działać tak samo jak pvscanpodczas rozruchu, więc jądro na dysku instalacyjnym powinno przeskanować wszystkie urządzenia blokowe szukające głowic LVM. Prawdopodobnie zgłosiłbym błąd komukolwiek, kto wyjaśnia, że ​​jego instalator jest fubar. W przypadku instalacji domowych problem jest taki sam, nawet jeśli główny system plików obejmuje dwa dyski, na którym dysk podstawowy zostanie podzielony na partycje / boot, a po załadowaniu jądra wykona skanowanie woluminu. W ten sposób możesz nawet uruchomić LVM.
Bratchley
ale z drugiej strony nie ma korzyści z partycji poza BIOSem i obsługą GRUB-a (stąd / boot). Nawet dla użytkowników domowych. Korzyści są bardzo małe (Twój dysk twardy nie będzie się powiększać), po prostu dobry nawyk wchodzenia.
Bratchley
Dzięki chłopaki :) Ta dyskusja była dla mnie bardzo pomocna.
MacGyver
0

Z mojego doświadczenia wynika, że ​​używanie partycji będzie dobre, jeśli testujesz lub małe środowisko, w którym dysk / pamięć nie jest dostępny. Jest dobry do szkoły lub do pracy w garażu. W prawdziwym świecie, z wirtualnym serwerem, na którym można rozszerzyć dysk na żądanie, lepiej jest pozwolić LVM zarządzać surowym / całym dyskiem zamiast partycjonowania. Zarządzanie nim będzie łatwe i elastyczne bez konieczności ponownego uruchamiania serwera. Czy wiesz ile czasu to oszczędza? Pomnóż dla wszystkich serwerów, które mogą być potrzebne do zarządzania! Wiele razy mam wyzwania, które ze względu na partycję / plasterki musisz zrestartować serwer, ponieważ jądro może nie rozpoznać nowej tabeli. Podczas dodawania surowego dysku / wirtualnego dysku do LVM i konieczności rozszerzenia systemu plików LVM z surowym dyskiem jest świetny. Uruchamiając proste polecenie, takie jak „echo 1> / sys / block / XXX / device / rescan ”gdzie XXX to twój dysk (sdb, sdc, sdd itp.) ponownie przeskanuje dysk w celu uzyskania dodatkowej przestrzeni bez ponownego uruchamiania i boom! będziesz mógł rozszerzyć swój system plików w locie. Przedłużenie dysku bez ponownego uruchamiania serwera Linux zajmie Ci 5 minut. W przypadku dysku podzielonego na partycje proces ten jest skomplikowany

użytkownik348093
źródło
1
Twoja odpowiedź wydaje się bardziej koncentrować na zaletach korzystania z maszyn wirtualnych niż na pełnych przydziałach dysków dla LVM.
roaima
1
@roaima: OK, moje oczy zawodzą. Gdzie ta odpowiedź mówi coś o maszynach wirtualnych?
G-Man mówi „Reinstate Monica”
1
@ G-Man cała sprawa polega na dodaniu pamięci do maszyny wirtualnej, a następnie na możliwości podzielenia nowo przydzielonego dysku za pomocą LVM na samej maszynie wirtualnej bez konieczności ponownego uruchamiania.
roaima