Moje spostrzeżenia z zabawy VPS'em

Na rynku istnieje bardzo dużo firm hostingowych świadczących szeroki wachlarz usług. Zarówno jeśli chodzi o hosting stron WWW po serwery wirtualne czy dedykowane. Wybór platformy czasami nie jest takim prostym zadaniem na jakie wygląda, a znalezienie dobrego, taniego i stabilnego hostingu nie jest sprawą łatwą... Od czego powinniśmy zacząć? Na co powinniśmy zwrócić uwagę? Kwestia hostingu lub VPS'a jest decyzją indywidualną a wybór powinien być podyktowany naszymi wymaganiami i oczekiwaniami wobec usługodawcy.

Nie wiem jak często uda mi się kupić VPS'a do testów, aby podzielić się z Wami spostrzeżeniami, ale mam obecnie okazję przenosić kilka usług na serwer wirtualny znajdujący się w 2host.com i między innymi przy tej okazji powstaje ten wpis.

Zaznaczam, że nie jest to, żaden artykuł sponsorowany, a żadne informacje/dane nie są naciągane ;-) wszystko poniżej jest rzeczywistą próbą pokazania z czym mamy do czynienia.

1. Szukam VPS'a

Dlaczego VPS? Ponieważ taka forma jest w zupełności mi wystarczająca. VPS będzie służył jako serwer WWW, serwer SOCKS, czasami chciałbym udostępnić znajomym jakieś pliki... Czyli klasyczny serwerek do zabawy. Dlaczego nie dedykowany? Serwisy generują mały ruch, a ja nie potrzebuję pełnych zasobów serwera tylko dla siebie, nie zależy mi na tym czy strona załaduje się w 2 sekundy czy 1 sekundę, jestem w stanie z tym się pogodzić. Usługi dedykowane są znacznie droższe, a tak jak wspominałem jest to serwer do zabawy. Dlaczego nie hosting? ponieważ lubię wiedzieć co się dzieje aktualnie na serwerze, czasami chcę uruchomić jakiś skrypt, przetestować aplikację, a nie chcę być ograniczany przez usługodawcę. W moim przypadku VPS w pełni spełnia moje oczekiwania. Gdzie szukam? Szukam w miarę małej maszynki, nic wielkiego, tak więc w pierwszej kolejności www.lowendbox.com a następnie www.webhostingtalk.com. Te dwie strony to setki ofert, porównań, komentarzy użytkowników... udostępniają nieograniczoną liczbę informacji do przeanalizowania. ;-)

2. Co zadecydowało o wyborze?

W moim przypadku, była to duża ilość pamięci RAM oraz wysoki limit transferu w stosunku do ceny, kosztem lokalizacji (USA), co wiąże się z lagami rzędu ~140ms, ale tak jak pisałem, nie zależy mi na bardzo szybkim dostępie do usług, po prostu chce by strony działały, nie muszą się błyskawicznie ładować. Z drugiej strony lokalizacja USA pozwala mi na użycie tego serwera do oglądania filmów na platformie VOD Hulu ;-) Hulu sprawdza do jakiego kraju należy adres IP i na tej podstawie albo blokuje dostęp, albo wpuszcza.

3. Parametry serwera

  • Pamięć RAM - 512MB
  • Pamięć SWAP - 1024MB
  • Dysk twardy - 14GB
  • Miesięczny limit transferu - 10TB
  • Procesor - 4x Intel Xeon E5520 @ 2.27GHz
  • Ilość IP - 1x (USA)
  • Szeroki wybór systemów operacyjnych: (Fedora, Centos, Gentoo, Slackware, Debian, Ubuntu)

Jeśli chodzi o pamięć RAM, to w zupełności mi wystarcza, po uruchomieniu usług (Apache2 + MySQL), gidentd, sesja screen, cron, postfix serwer wykorzystuje około ~250MB. Zajętość dysku 1.7GB wraz z kontentem stron, sam system operacyjny zajmuje < 1GB na dysku. Procesory nudzą się vmstat pokazuje idle na poziomie 100%... Podczas ściągania plików udało mi się uzyskać transfer ~5MB/s. Transfer 10TB miesięcznie to bardzo dużo, zaokrąglając daje nam to mniej więcej 2200 pobrań filmu na płycie DVD.

4. Problemy

Instalacja Apache i PHP przebiegła bez większych problemów, szybko i sprawnie, całość z paczek. Z MySQL'em pojawił się drobny problem... nie mogłem poprawnie ustawić hasła, co się okazało, nie instalował się całkowicie poprawnie, dokładnie proces postinstalacji nie odbywał się tak jak należy...

100427 13:34:45 [Warning] The syntax '--log' is deprecated and will be removed in MySQL 7.0. Please use '--general_log'/'--general_log_file' instead.
/usr/sbin/mysqld: Can't create/write to file '/tmp/ibB6hkkO' (Errcode: 13)
100427 13:34:45  InnoDB: Error: unable to create temporary file; errno: 13

100427 13:34:45 [ERROR] Plugin 'InnoDB' init function returned error.
100427 13:34:45 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
100427 13:34:45 [Warning] Forcing shutdown of 1 plugins
* Starting MySQL database server mysqld                                                                                                             [ OK ]
* Checking for corrupt, not cleanly closed and upgrade needing tables.
root@yoursite:~# ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (111)

przyczyną był katalog /tmp

drwxr-xr-x  4 root root  4096 2010-04-27 13:37 tmp

Brakowało uprawnień do katalogu oraz sticky bit'a (+t), który pozwala wszystkim tworzyć pliki, natomiast usuwać je może jedynie właściciel. Ale chmod +t /tmp/ rozwiązał problem. Prawdopodobnie w template maszyny wirtualnej jest błąd ;-)

Kolejna rzecz z jaką się zmierzymy to strefa czasowa ;-) jest to serwer wirtualny, tak więc zegar działa w dom0, czyli maszynie głównej. Jeśli chcemy samodzielnie konfigurować swój czas musimy ustawić parametr w systctl'u:

echo "xen.independent_wallclock = 1" >> /etc/sysctl.conf

i po tym możemy już wykonać sysctl -p /etc/sysctl.conf. Od tej pory, mamy własny zegar ;-)

Nie udało mi się również zainstalować nowszego Ubuntu niż 9.04, podczas startu maszyna zgłaszała problemy z zamontowaniem partycji.

5. Support

Z supportem miałem do czynienia, gdy chciałem skonfigurować revDNS'a, pomimo takiej opcji w menu, okazuje się, że niezbędne jest ręczne wysłanie ticketa, tak więc napisałem krótkiego maila, podałem IP oraz domenę i zaznaczyłem stopień problemu jako niski. Po 4-ech godzinach otrzymałem informację, że ticket został zrealizowany i wpis powinien działać - działał.

6. Zarządzanie

Zarządzanie maszyną wirtualną odbywa się poprzez WWW (SolusVM), który jest dostępny bez dodatkowych opłat. Z panelu możemy m.in.:

  • przeinstalować system,
  • dostać się do konsoli lokalnie,
  • sprawdzić zużycie transferu, pamięci, zajętość dysku
  • zmienić hasło na usera root
  • wykonać backup (opcja dodatkowa)

Wszystko odbywa się sprawnie i w łatwy intuicyjny sposób.

7. Podsumowanie

Przez tydzień używania serwera, nie spotkałem się z innymi problemami o których chciałbym napisać, serwer działa stabilnie, strony ładują się w sensownym czasie, nie zauważyłem też by maszyna czekała na zasoby. Tak więc do zastosowań "domowych", czy małego hostingu nadaje się świetnie. Jakość usługi w stosunku do ceny ~20PLN jest całkowicie zadowalająca, gdyby jeszcze tylko znajdował się w Europie... ;-)

A Wy gdzie preferujecie hosting? serwery VPS/dedykowane?