Czy Arch Linux jest odpowiedni dla środowiska serwerowego?

30

Czy uważasz, że Arch Linux nadaje się do środowiska serwerowego? Wydaje się, że jego model i prostota wersji kroczącej jest dobrą rzeczą, ponieważ po zainstalowaniu nie trzeba go instalować ponownie, jak w przypadku wersji dystrybucyjnej z innych dystrybucji.

Ale to ciągłe uaktualnianie nie powoduje problemów ze stabilnością? Mimo że jest to najnowocześniejsza wersja, Arch Linux używa najnowszej STABILNEJ wersji oprogramowania.

FooBar
źródło
Pomocna dyskusja i komentarze zamieszczone ostatnio w Arch jako wątek serwera WWW na ogólnej liście mailingowej.
mloskot

Odpowiedzi:

33

Prawdopodobnie największy problem z Arch jako systemem operacyjnym serwera polega na tym, że nie jest jasne, gdzie i kiedy aplikacje mogą ulec awarii po aktualizacji. Częściej niż nie, musisz nadążyć za tym, co dzieje się na wiki i na forach, zanim wykonasz jakąkolwiek aktualizację; z Debianem i CentOS możesz być pewny, że wszelkie aktualizacje nie spowodują uszkodzenia żadnych aplikacji, ponieważ najczęściej aktualizacje dokonywane w gałęzi STABLE będą poprawkami bezpieczeństwa / błędów.

Christian Paredes
źródło
27
Czy nie powinieneś jednak testować swoich aktualizacji przed ich wdrożeniem? W produkcji produkujemy kilka Archów i co tydzień testujemy aktualizacje na niektórych komputerach wewnętrznych. Gdy wszystko będzie działać poprawnie, wdrażam aktualizacje.
Eric Coleman,
13

Chociaż uwielbiam arch, nie używałbym go w środowisku produkcyjnym. Przede wszystkim w środowisku produkcyjnym potrzebujesz czegoś stabilnego i dobrze przetestowanego. Ponadto, ponieważ jest dość rozebrany, musisz tworzyć niestandardowe skrypty lub konfigurować rzeczy ręcznie (czasami jest to dobre, ponieważ dokładnie wiesz, co działa w twoim systemie, ale bardzo źle, ponieważ jego konfiguracja zajmuje zbyt dużo czasu). Poza tym, ponieważ nie jest powszechnie stosowany w środowiskach produkcyjnych, w przypadku problemu nie znajdziesz wsparcia, które można znaleźć, jeśli korzystasz z Debiana lub Fedory (społeczność Arch jest świetna, ale szczerze mówiąc, nie jest tak duża jako Debian lub Fedora)

Podsumowując, myślę, że jest świetny do użytku na komputerze, ale nie do środowisk produkcyjnych

Nikolaidis Fotis
źródło
6

Tak.

Plusy:

  • naprawdę minimalny system od razu po wyjęciu z pudełka, świetny pod względem wydajności, szczególnie na komputerach klasy niskiej / VPS Żadnych niepotrzebnych usług - w porównaniu do CentOS 7, który uruchomił kilka usług związanych z maszynami wirtualnymi, które nawet mnie nie dotyczyły, ponieważ korzystałem z systemu bez systemu operacyjnego.

  • aktualne oprogramowanie i duże repozytoria; Straciłem sporo czasu z CentOS, gdy czegoś nie było w repozytoriach i byłem zmuszony albo skompilować to ze źródła, albo zainstalować RPM / repozytorium innych firm, a potem skończyć w piekle zależności, ponieważ te RPMy innych firm były sprzeczne z aktualizacjami z oficjalnych repozytoriów.

  • systemd, chociaż inne dystrybucje (nawet Ubuntu) przechodzą na to, więc jest to mniej pro, ale coś, czego można oczekiwać od każdej porządnej dystrybucji.

  • sensowne narzędzia do konfiguracji sieci. Brak menedżera sieci na poziomie komputera stacjonarnego lub zapory ogniowej (patrząc na CentOS / RHEL).

  • menedżer pakietów, który robi dokładnie to, co jest napisane na puszce. Menedżer pakietów nie będzie próbował ci pomóc, automatycznie konfigurując lub uruchamiając właśnie zainstalowaną usługę (patrząc na Ubuntu / Debian). Jest także szybki, lepszy niż yum, a może trochę szybszy niż apt-get.

  • proces instalacji, który nie zmusza Cię do użycia żadnych ustawień domyślnych i oferuje dużo miejsca na dostosowanie - porównaj to do CentOS / RHEL, który zmusza Cię do korzystania z LVM i zamiany, czegoś nie zawsze potrzebnego (właściwie nigdy w moim przypadku)

  • /usr/bin/pythonjest w rzeczywistości najnowszym Pythonem 3, a nie prehistorycznym Pythonem 2.7. Jest to dla mnie zawsze problem w przypadku większości innych dystrybucji i nie można łatwo tego zmienić (przynajmniej nie w całym systemie), ponieważ spowoduje to uszkodzenie wielu aplikacji, które na nim polegają.

Cons:

  • niektóre aktualizacje wymagają ręcznej interwencji i mogą ulec uszkodzeniu. Zalecam posiadanie repliki środowiska produkcyjnego na maszynach wirtualnych i przetestowanie tam aktualizacji przed wdrożeniem ich na prawdziwych serwerach.

  • brak domyślnych konfiguracji roboczych. Zły dla ludzi, którzy chcą po prostu uruchomić apt-get i zainstalować domyślny niepewny stos LAMP, aby wdrożyć swoją kiepską, podatną na ataki aplikację PHP i zanieczyścić Internet. Oczywiście jest to w rzeczywistości zaleta dla poważnych osób, ponieważ zmusza do przejrzenia plików konfiguracyjnych przed uruchomieniem usługi.

  • brak wsparcia dla SELinux. Istnieje GRSecurity i jego RBAC, ale będziesz potrzebować trochę czasu, aby przyzwyczaić się i dostroić.

Nie zgodziłbym się z tym, że otrzymujesz mniej wsparcia. Jasne, to prawda. Czy to wada? Moim zdaniem nie. W Arch jest bardzo niewiele, co mogłoby się zepsuć i wymagać będzie wsparcia od kogoś, kto zna Arch. Zwykle, jeśli potrzebujesz wsparcia, potrzebujesz go do konkretnego oprogramowania, w takim przypadku poprosisz jego programistów, a fakt, że korzystasz z Arch, nie ma znaczenia.

Dla mnie korzystanie z Arch jest o wiele łatwiejsze i mniej czasochłonne niż korzystanie z CentOS i jego Networkmanagera, firewalla i innych niepotrzebnych usług (można je wyłączyć, ale to już zmarnowany czas). Ponadto znam każdą usługę, która działa w systemie, ponieważ bym ją zainstalował, nie ma podstępnego oprogramowania, które wkurzy mnie na temat błędu i chce zadzwonić do domu, mimo że właśnie zainstalowałem system.


źródło
5

Zawsze sugerowałbym jedno z:

  • CentOS. Jest to darmowy klon RHEL, co oznacza, że ​​otrzymujesz bardzo długi cykl wsparcia (7 lat), podczas którego możesz uzyskać tylko poprawki bezpieczeństwa i drobne ulepszenia, więc utrzymanie łatanego systemu jest bardzo, bardzo łatwe. Ponadto wiele „komercyjnych” programów jest ukierunkowanych na RHEL, więc łatwiej je zainstalować na CentOS. Wady: Wolę apt / dpkg niż yum / rpm, niełatwo jest uruchomić na nim najnowocześniejsze oprogramowanie, nieco spartański wybór oprogramowania

  • Ubuntu LTS. Właściwie wciąż go nie używałem, ale ma także długi cykl wsparcia i jest to Debianish

  • Testowanie Debiana. Debian to moja ulubiona dystrybucja, działa naprawdę dobrze i ma głupio ogromny wybór pakietów, który jest bardzo dobrze złożony. Poprawki wymagają nieco więcej czasu, ale łatwiej jest zainstalować oprogramowanie (tzn. Łatwiej jest spakować więcej rzeczy).

Sugerowałbym rozważenie zalet skorzystania z Arch Linuxa na jednym z tych trzech i zobaczenie, czy warto.

alex
źródło
2
Używałbyś testów Debiana na serwerze produkcyjnym? To nie ma dla mnie sensu. Jak często naprawiasz rzeczy, które psują się podczas aktualizacji?
Jason Berg
1
@Jason: Co bardziej niepokojące, chociaż Debian ma teraz oficjalne wsparcie bezpieczeństwa w zakresie testowania, nie jest tak dobre, jak w przypadku stabilnego lub niestabilnego, ponieważ aktualizacja zabezpieczeń do testowania ma skrócony, ale niezerowy czas kwarantanny i może być opóźniony z powodu niezaspokojonych zależności.
Gilles „SO- przestań być zły”
Przechodzę do testowania, kiedy chcę uruchomić nieco najnowsze oprogramowanie (tj. Uruchamianie aplikacji Railsowych na CentOSie jest trochę irytujące - ale dość łatwe w testowaniu Debiana ...). Używam debsecan do pobierania tylko aktualizacji bezpieczeństwa i zwykle jest dość stabilny. Gdybym go używał do hardcorowej produkcji, chciałbym przeprowadzić szeroko zakrojone testy przed wprowadzeniem aktualizacji na polach testowych. Oczywiście powinienem to zrobić również w pudełkach CentOS :-p
alex
1
„[Debian] zajmuje trochę więcej czasu na łatanie” - Dlaczego trudniej jest być na bieżąco i na bieżąco? Podobnie jak aktualizacje CentOS, jest to po prostu apt-get upgrade. Może czegoś mi brakuje…
Léo Lam
2
Naprawdę nie rozumiem, w jaki sposób ta odpowiedź odpowiada na pytanie, które brzmi „czy Arch Linux nadaje się do środowiska serwerowego?”. Sugerowanie trzech innych dystrybucji, a następnie sugerowanie czytelnikowi wykonania własnego porównania z Arch Linux, nie stanowi odpowiedzi.
Jon Bentley,
1

Korzystam z kilku serwerów Archlinux od 2013 roku w środowisku produkcyjnym i działa jak urok.

Upewnij się, że aktualizacje przebiegają dobrze, często je uruchamiając i zawsze sprawdzaj stronę archlinux przed aktualizacją.

Ale to wszystko, w końcu będziesz miał znacznie więcej problemów z aktualizacją RedHat / CentOS z 6 do 7 (prawie niemożliwe) lub SLES / SLED z 11 do 12 i tak dalej.

Masz ciągle małe aktualizacje, które od czasu do czasu powodują pewne działania, ale nigdy nie miałem czegoś dużego w ciągu ostatnich 5 lat.

Poza tym zawsze jesteś na bieżąco, jeśli w jądrze, w openssl, bashu itp. Występuje przeciek bezpieczeństwa, to masz aktualizacje w ciągu kilku godzin, a nie dni lub miesięcy.

Mój serwer, na przykład, jest w pełni zaktualizowany i chroniony przed Spectre v1, Spectre v2 i załamaniem, jestem całkiem pewien, że tylko 1% osób publikujących tutaj ma serwery chronione przed wszystkimi trzema.

Jest szybki, bezpieczny, stabilny (!) I masz aktualne oprogramowanie, które uwalnia cię od wielu problemów.

Mogę gorąco polecić używanie Archlinux na serwerze, jedynym minusem jest to, że musisz wiedzieć, co robisz. Powinieneś zainstalować system LFS przynajmniej raz, aby zrozumieć podstawowe zasady budowy i działania dystrybucji Linux.

Jedynym systemem serwerowym, który uważałem za bardziej solidny niż Archlinux w środowisku serwerowym, był Gentoo. Był jeden system Gentoo bez aktualizacji przez 700 dni, a 1 godzina później ten system był aktualny i działał, a jedynym przestojem był pojedynczy restart.

Ale inne systemy, takie jak Debian / Ubuntu, RedHat, SUSE po prostu spieprzą cię całkowicie, gdy pojawi się aktualizacja dystrybucji. RedHat nawet aktywnie zniechęca do uaktualnienia dystrybucji i zaleca ponowną instalację (zgodnie z oficjalną dokumentacją).

Więc tak, RedHat jest bardziej stabilny niż Archlinux, ale tylko dlatego, że nie dostajesz dużych aktualizacji. A kiedy je dostaniesz, jesteś pieprzony.

白 川 マ セ ル
źródło
0

Powiedziałbym, że tak, z zastrzeżeniem, że nigdy nie powinieneś po prostu uruchamiać pacman -Suu na serwerze produkcyjnym i przechowywać kopie zapasowe obrazu dysku twardego systemu, które mogą zostać przerzucone przez system plików w przypadku uszkodzenia.

DUŻO bardziej użyteczny (znacznie mniej zrywających stron) niż testowanie / sid Debiana. Jeśli chcesz mieć najnowocześniejsze pakiety i minimalną instalację, Arch jest najlepszym rozwiązaniem, ale wymaga dużego komfortu przy ręcznym zarządzaniu.

Arthur Kay
źródło
0

Główną różnicą w dystrybucji serwerów jest to, że otrzymujesz tylko aktualizacje bezpieczeństwa, podczas gdy w łuku otrzymujesz również poważne poprawki pakietów, co może popsuć pewne rzeczy.

Jeśli chcesz, aby arch był odpowiedni dla serwerów, wszystko, co musisz zrobić, to zmienić swoje serwery lustrzane (miejsce, z którego otrzymujesz pakiety). Na przykład:

  • arch mirrors: Otrzymujesz drobne / większe aktualizacje pakietów w pierwszym tygodniu po ich wydaniu przez ich właścicieli.
  • manjaro-unstable: Taki sam jak arch mirrors, ale niektóre pakiety są dwukrotnie sprawdzane. Niektóre poważne błędy nie wejdą do produkcji.
  • manjaro-beta: To samo co arch mirrors, ale wszystkie pakiety są trzykrotnie sprawdzane. Większość poważnych błędów nie wejdzie do produkcji.
  • manjaro-stable: Taki sam jak arch mirrors, ale pakiety są sprawdzane kilka razy w ciągu miesięcy. Bardzo mało drobnych błędów trafia do produkcji.

W ten sam sposób, jeśli używasz serwerów lustrzanych zaprojektowanych specjalnie dla serwerów, na których otrzymujesz tylko drobne poprawki, bezpiecznym byłoby używanie archa na serwerach.

Adrian Lopez
źródło