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?