Již delší dobu uvažuji o zprovoznění vlastního serveru pro menší a nenáročné webové aplikace, jako je například tento web. Až dosud mne odrazovala především vysoká energetická náročnost serveru, a také jeho samotná pořizovací cena. Nedávno jsem ale narazil na projekt britské nadace The Raspberry Pi Foundation, malý počítač s názvem Raspberry Pi, který mne při bližším prozkoumání jeho parametrů zaujal. Rozhodl jsem se tento počítač velikosti kreditní karty přetvořit na webový server.
Cílem tohoto snažení je tedy postavit na počítači Raspberry Pi webový server postačující pro běh redakčního systému Drupal 7.
Hardwarové prostředky
V dokumentaci Raspberry Pi (konkrétně model B) se dočteme následující údaje:
- SoC Broadcom BCM2835 (CPU, GPU, DSP, and SDRAM)
- CPU: 700 MHz ARM1176JZF-S core (ARM11 family)
- GPU: Broadcom VideoCore IV, OpenGL ES 2.0, 1080p30 h.264/MPEG-4 AVC high-profile decoder
- Memory (SDRAM): 256 Megabytes (MiB)
- Video outputs: Composite RCA, HDMI
- Audio outputs: 3.5 mm jack, HDMI
- Onboard storage: SD, MMC, SDIO card slot
- 10/100 Ethernet RJ45 onboard network
- Storage via SD/ MMC/ SDIO card slot
- MicroUSB power connector (5V, 700 mA)
Z nich nás ale zajímají pouze některé. Pro naši aplikaci nás samozřejmě zajímají parametry procesoru a dostupná pracovní paměť. Méně už nás zajímá grafický výkon, protože veškerá komunikace a nastavení serveru bude probíhat formou příkazové řádky. Z možností konektivity využijeme pouze mikro USB konektor pro připojení napájení a ethernetovou přípojku pro připojení síťového kabelu (možnou alternativou je samozřejmě připojení k síti pomocí nějakého usb wifi modulu). Pro počáteční nastavení využijeme jeden USB konektor pro připojení klávesnice a HDMI konektor pro připojení LCD, oboje poté již nebudeme využívat, pouze v případě poruchy vzdáleného přístupu (v dalším článku), takže se vyplatí mít obě tyto periferie po ruce. Vůbec nevyužijeme audio a video výstupy.
Jak získat Raspberry Pi
Vzhledem k tomu, že organizace nabízející tento minipočítač je britská a tudíž v českých obchodech Raspberry neseženete, dovolím si několik poznámek k samotnému nákupu. V současné době (srpen 2012) nabízejí Raspberry Pi pouze dva internetové obchody a zájem je tak velký, že se tvoří několikaměsícové pořadníky. Již zmíněné obchody jsou Premier Farnell/Element 14 a RS Components.
Osobně doporučuji ten první. V pořadníku jsem byl dva měsíce. Komunikace je rychlá a bezproblémová a jednání se zákazníkem v porovnání s většinou českých firem na o poznání vyšší úrovni. Se vším všudy, tedy i s poštovným (clo se v rámci EU neplatí) mne vyšlo na zhruba 1000 Kč, platil jsem online kreditní kartou. Před nákupem doporučuji zjistit si, kolik si strhne banka za převod z CZK do EUR, v mém případě to bylo zhruba 200 Kč (ČSOB).
zásilka z Premier Farnell |
zařízení, které dorazilo |
Umístění serveru
Vzhledem k tomu, že celé Raspberry Pi je jediná jakási "základní deska", je potřeba jej umístit do nějaké case. Lze ho buď koupit nebo, což je moje řešení, s trochou manuální zručnosti vyrobit. Respektive modifikovat například elektroinstalační krabici na jističe (pořizovací cena cca 150 Kč), jak je vidět na následujících fotografiích. Výsledné řešení vypadá téměř profesionálně.
samotná krabice s lištou a držáky |
deska umístěná v držácích |
Samotná deska je umístěna ve dvou držáků popisek, které se dají zakoupit spolu s krabicí a do kterých je pilkou vyříznuta drážka, do které je zasazena deska. Jak je vidět na obrázku, moje řešení počítá s umístěním stejné desky do krabice dvakrát. Krabice se dá buď pověsit na zeď, nebo jen tak položit na vhodné místo.
Shrnutí
Tímto tedy máme budoucí server fyzicky připravený. V dalším díle se budu zabývat konfigurací a využitím vzdáleného přístupu a základnímu nastavení serveru.
hotová sestava
5 Comments
Moc díky za hezky vytvořený článek. Mám jen jeden dotaz. Rozchodil jsem RS na systému Debian, který je v základní nabídce a optimalizovaný pro arm. Používám ho dejme tomu jako převaděč, resp N port kde přímo vyžaduji jeho bezporuchovou činnost 24 hodin denně. Dochází však náhodně k zamrznutí RS cca po 36 hodinách, ačkoli je tam i k eliminaci chyby nastaven schut down každých 24 hod. Zajímalo by mě, jak lze tedy toto zařízení provozovat jako server, když prostě náhodně zamrzá a nedá ani šanci opravy přes ssh? Zkoušel jsem celkem dvě fungl nové RS a obě dvě to dělají.
Mě nezamrzá ani po několika dnech provozu. Používám starší Raspbian verzi 2012-08-07. Zkusil bych se podívat do logů (/var/log/debug, /var/log/kern.log, nebo tak něco), kvůli čemu systém zamrzá ...
Ahoj, chyba byla ve zdroji. RS byl napájen z USB počítače, kvůli zálohování napajení ze silného USB 3 rozbočovače, přičemž zřejmě občas došlo k podpětí a RS spadlo. Po přepojení napájení na jejich trafo je to zdá se OK, ale nebude zálohován. Takže moc díky a z mašiny to opravdu dlouhodobě napájet nelze:-(
Ahoj, nevíte kde koupit nějaký levný case na raspberry? Díky.
Nedávno jsem objednával z Hong Kongu kryt, který se dá na ebay.com najít pod názvem Clear Acrylic Case for Raspberry Pi, v přepočtu vyšel asi na 80 Kč i s poštovným, takto levné zásilky nepodléhají clu. Zásilka dorazila během 3 týdnů, což není špatný výsledek.
Je to jednoduchý kryt z průhledného akrylátu, měl jsem strach, že nebudou sedět otvory vzhledem k ceně, ale všechno sedí jak má, case je perfektně funkční :-).