Serwery dedykowane – co dla kogo?

Przeglądając oferty serwerów dedykowanych różnych firm hostingowych trudno oprzeć się wrażeniu, że wybór takiego serwera to bardzo skomplikowana sprawa. Oferowanych konfiguracji są setki, czasami różnice pomiędzy nimi są minimalne.

Do tego w opisie konfiguracji pojawiają się dziwne skróty jak RAID, wyrażenia takie jak wątki i rdzenie. Czym różni się RAID1 od RAID10? Jakie są zalety dysków SAS? Czy lepiej wybrać procesor z większą ilością rdzeni, czy też może zainwestować w szybsze dyski twarde?

Pytań stojących przed osobą wybierającą serwer fizyczny jest dużo i wymagają one dokładnego przemyślenia odpowiedzi. Od tego, jak dobrze wybierzemy serwer, zależy szybkość i stabilność działania usług, które będą na nim uruchomione. Poniższy artykuł ma na celu odpowiedzieć przynajmniej na część z tych pytań. Ze względu na różnorodność ofert, nie ma możliwości aby opisać każdą możliwą konfigurację. Dlatego też skoncentrujemy się na omówieniu trzech, dosyć typowych i stosunkowo często stosowanych zestawów – serwer fizyczny to po prostu zestaw różnorakich podzespołów. Postaramy się także, przynajmniej pokrótce, opisać najbardziej istotne elementy takiego zestawu. Są to konkretnie procesor, pamięć i dyski twarde.

Procesor – to moc obliczeniowa. Im więcej rdzeni procesor posiada, tym więcej jednoczesnych procesów (lub wątków) może obsłużyć w danej jednostce czasu. Proces to np. jeden gość na stronie internetowej czy też jedno zapytanie do bazy danych. W nowoczesnych procesorach firmy Intel stosowana jest technologia Hyper-Threading, która pozwala na to, aby jeden fizyczny rdzeń, czyli jeden kawałek krzemu, mógł obsługiwać jednocześnie dwa wątki (lub procesy). W praktyce wzrost wydajności jest wyraźnie zauważalny, kilknaście procent, czasami więcej – zależy od rodzaju obciążenia. Druga cecha charakterystyczna dla procesora to taktowanie – im wyższe, tym więcej operacji procesor może wykonać w jednostce czasu, a dzięki temu szybciej zakończyć pracę nad obsługą danego wywołania strony i przejść do obsługi kolejnego klienta.

Pamięć – im więcej, tym lepiej. Wykorzystywana jest przez aplikacje działające na serwerze, przez skrypty uruchamiane na serwerze (np. przez skrypty php) a to, co pozostało jeszcze wolne, wykorzystywane jest jako cache dyskowy – przechowywane są tam najczęściej pobierane z dysku dane.

Dyski twarde – dane klientów muszą być gdzieś przechowywane, dlatego istotne jest to, aby serwer fizyczny miał odpowiednio duże dyski. Dyski są podpięte do kontrolera i utworzona jest z nich macierz – RAID. Poziom RAID oznacza jaką wydajność i jakie cechy macierz posiada. RAID1 oznacza że mamy dwa dyski, jeden jest kopią drugiego. W efekcie wydajność zapisów nie wzrasta (bo zapisujemy na oba to samo – robimy kopię), wydajność odczytów wzrasta ok. dwukrotnie. Dostępnego miejsca jest tyle, co na jednym dysku twardym. Jeśli zepsuje się jeden z dysków, serwer nadal będzie działał poprawnie.

RAID10 to z kolei przynajmniej cztery dyski, zawsze parzysta ilość. W przypadku czterech dysków wydajność w porównaniu do RAID1 wzrasta dwukrotnie – odczyty to cztery razy tyle co pojedynczy dysk, zapisów może obsłużyć dwa razy tyle co pojedynczy dysk. Ilość dostępnego miejsca także wzrasta dwukrotnie, jest go tyle, co dwukrotna powierzchnia pojedynczego dysku wchodzącego w skład macierzy. Jeśli chodzi o bezpieczeństwo danych, RAID10 zabezpiecza na 100% przed awarią jednego dysku twardego. Jeśli jeden dysk nie działa, to mimo tego są pewne szanse że macierz przetrwa także kolejną awarię – zależy który dysk twardy przestanie działać jako drugi.

Kolejną kwestią w przypadku dysków twardych jest to, jaki rodzaj dysków stosujemy. Na ten moment najczęściej stosowane są dyski SATA, wolniejsze, i dyski SAS – szybsze. Pojawiają się już też dyski SSD, ale ich cena jeszcze przeszkadza w powszechnym przyjęciu się na rynku usług hostingowych. Na razie stosowane są do serwerów przeznaczonych do usług, które skorzystają z wydajności dysków SSD (np. bazy danych).

Wiemy już jakie są najistotniejsze elementy w serwerze dedykowanym. Jak mogą wyglądać przykładowe konfiguracje i ich zastosowanie?

Procesor 2 – 4 rdzenie, 2 – 4 GB RAM, dwa dyski SATA w RAID

Tego typu serwer fizyczny to zazwyczaj podstawowa oferta firm hostingowych. Jego podstawową zaletą w porównaniu z platformą e-Biznes jest to, że jest to własny serwer fizyczny. serwer wirtualny co prawda oferuje pewien poziom separacji zasobów, to jednak zawsze znajduje się na serwerze współdzielonym z innymi VPS’ami. To może mieć wpływ na stabilność działania usługi. Drugą zaletą może być to, że serwer dedykowany zazwyczaj ma udostępnioną większą ilość adresów IP w porównaniu do VPS. To przekłada się konkretnie na większą ilość certyfikatów SSL, które można zainstalować – po prostu, mając więcej adresów IP można uruchomić np. większą ilość sklepów internetowych, które potrzebują certyfikatu SSL do szyfrowania połączenia i transakcji. Tego typu serwer nadaje się dobrze do stron z małym do średniego ruchem. Głównym jego minusem będzie wydajność dysków twardych i ilość pamięci, która może okazać się nie wystarczająca do obsługi dużej jednoczesnej ilości wywołań ciężkich, potrzebujących dużej ilości pamięci, skryptów PHP. Taki serwer fizyczny znakomicie będzie się nadawał do obsługi serwisów typu e-commerce. Jest też dobrym wyborem dla firm zajmujących się tworzeniem i sprzedawaniem aplikacji internetowych – często oferują one swoim klientom hosting. Mając kontrolę nad oprogramowaniem (np. optymalizacja wydajności) można doskonale wykorzystać mocne strony takiej maszyny, nie dopuszczając aby ujawniły się te słabsze.

Procesor 4 – 6 rdzenie, 4 – 8GB RAM, cztery dyski SATA w RAID10

W przypadku takiej konfiguracji mamy do czynienia z dobrze wyważonym serwerem, który potrafi sobie poradzić z większością zadań, jakie jest w stanie wymyślić jego właściciel. Jest w stanie obsłużyć średni do dużego ruch na stronach, cztery dyski twarde zapewniają dwukrotnie większą wydajność w porównaniu do poprzednio opisywanej konfiguracji. Dodatkowo, nawet przy wykorzystaniu stosunkowo niewielkich dysków (320GB, 500GB) do wykorzystania jest spora powierzchnia (640GB, 1TB). Taki serwer poradzi sobie z obsługą sporej ilości kont pocztowych, nada się też znakomicie dla resellerów do prowadzenia hostingu współdzielonego. Główną jego zaletą jest właśnie znakomity kompromis pomiędzy wielkością dostępnego miejsca a wydajnością dysków twardych. W przypadku hostingu współdzielonego czasami trudno przewidzieć jak będą się zachowywać klienci. Jeśli samodzielnie tworzymy oprogramowanie, znamy jego mocne i słabe strony. Możemy je kontrolować. W przypadku hostingu współdzielonego nie ma tak dużych możliwości ingerowania w to, co klient zainstalował na serwerze. Z tego też powodu serwer pod hosting współdzielony musi być w stanie obsłużyć chwilowy skok obciążenia. Dodatkowe dyski i pamięć mogą stanowić o tym, że serwer fizyczny takie chwilowe przeciążenie będzie w stanie przetrwać i nie dojdzie do awarii, na której ucierpią wszyscy użytkownicy..

Procesor 8 – 12 rdzeni, 8 – 16GB RAM, cztery dyski SAS w RAID10

Ta konfiguracja to już konfiguracja dosyć wyspecjalizowana. Główną przyczyną jest to, że dyski SAS zazwyczaj są mniejsze niż dyski SATA. Obecnie stosowane są zazwyczaj dyski SAS 146GB, czasami jest to już jednak 300GB. Cztery dyski 146GB w RAID10 to niecałe 300GB miejsca, a w przypadku 4 dysków 300GB w RAID10 to 600B. Nie jest to może za dużo, jest to więc pewne ograniczenie. Ograniczenie to jednak niknie w porównaniu z główną zaletą dysków SAS jaką jest ich wydajność. Dyski SAS kręcą się z częstotliwością 15 tysięcy obrotów na minutę. Jest to ponad dwa razy więcej niż dyski SATA (7200 obrotów na minutę). Dzięki temu dyski SAS są znacznie szybsze jeśli chodzi o czas dostępu do danych, potrafią też wykonać znacznie większą ilość operacji odczytu i zapisu w jednostce czasu. Z tego względu serwer o takiej konfiguracji zazwyczaj przeznaczany jest do zadań, w których występuje duży ruch na dysku. Przykładowo może to być serwer baz danych – bazy lubią pamięć i szybkie dyski. 8GB to wbrew pozorom nie tak dużo gdy mówimy o serwerze bazodanowym, dyski SAS też czasami nie wystarczają. W większości jednak wypadków, czy to będzie baza jakiegoś często odwiedzanego serwisu, czy też np. baza hostingu współdzielonego, taka konfiguracja serwera będzie odpowiednia. Tego typu serwer można też przeznaczyć dla aplikacji, w której szybkość działania jest kluczowa, bądź też ten serwis ma dużą ilość odwiedzin. W takim przypadku przydaje się pamięć, która w niższych konfiguracjach może po prostu limitować ilość jednocześnie działających procesów PHP, czyli np. użytkowników na stronie. Wbrew pozorom, serwer taki może też służyć do obsługi poczty. Szczególnie jeśli danych nie ma dużo, ale za to maile są często przeglądane (np. przez protokół IMAP, który umożliwia przeszukiwanie treści maili – to może generować ogromny ruch na dysku).

Oczywiście, powyższe to tylko przykłady. Większość firm hostingowych, w tym Kei.pl, udostępnia możliwość wyboru własnej konfiguracji. Większość firm hostingowych, w tym Kei.pl, udziela także wsparcia w kwestii doboru odpowiedniej konfiguracji serwera do potrzeb. Dobrze jest z tego typu konsultacji skorzystać. W praktyce bywa, że najlepszym rozwiązaniem dla danego typu usług jest połączenie dwóch różnych konfiguracji (na przykład cztery dyski SATA w RAID10 i dwa dyski SAS w RAID1). W niektórych przypadkach istotna jest moc procesora i trzeba wybrać jak najszybszy model, w innych znowu potrzebna jest duża (np. kilka terabajtów) powierzchnia dysków. Wszystko zależy od tego, do czego dany serwer będzie w praktyce służył. Administratorzy Kei.pl mają wieloletnie doświadczenie w doborze sprzętu do potrzeb Klienta – wykorzystanie ich pomocy pozwala dokonać optymalnego wyboru.

Autor: Krzysztof Książek, Administrator Sieci w Kei.pl

PRportal.pl – informacje prasowe dla biznesu