Raspberry Pi – malá krabička jako webový server

Asi před dvěma týdny jsem se odhodlal koupit dlouho okukovanou hračku v podobě malého počítače Raspberry Pi Model B+. Jistě vám tento malý počítač není neznámý. Jeho využití se meze nekladou, já jej po krátkém seznámení s grafickým prostředím přetvořil na webový server pro malé weby.

Reklama

Raspberry Pi se prezentuje jako nejmenší počítač na světě. Nejsem si jist, zda je opravdu nejmenší, je bezesporu nejznámější, přestože jsou tu i výkonnější alternativy. Model Raspberry Pi B+ je vybaven 512 MB operační paměti a 700MHz procesorem ARM.

Kupodivu má však grafickou kartu schopnou přehrávat HD video, nabízí HDMI výstup, připojení do sítě přes RJ45 a čtveřici USB 2.0. Napájen je přes USB, jako úložiště slouží MicroSD karta a na desce najdete speciální port pro připojení dalších zařízení. Speciální porty jsou určeny i pro připojení webové kamery. Celé je to pasivně chlazeno, respektive žádný chladič tu nenajdete. Můžete si dokoupit doplňkový, využít speciální hliníkové pouzdro nebo se na to vybodnout, jako já.

Jelikož je vzhledem ke svému výkonu Raspberry Pi spíše taková hračka, je okolo ní spousta nadšenců, kteří tento počítač používají k řízení různých zařízení, do robotů a podobně. Existuje také celá řada periferií, například i Wi-Fi dongle, což se hodí, když Raspberry Pi spojíte s webovou kamerou.

Model B+ je nejnovější variantou tohoto počítače, od předchozích se liší uspořádáním konektorů a slotem pro paměťovou kartu (MicroSD vs. SD) a po pravdě řečeno, přijde mi takový nejvíce kompaktní. V rpishop.cz, kde jsem jej zakoupil, bylo pro tuto variantu k dispozici jen černé plastové pouzdro, takže jsem se bál, co bude počítač dělat s teplem. Je ale pravdou, že se nijak extrémně nezahřívá, respektive oproti Wi-Fi modemu Wi-Fi routeru nebo ADSL modemu je studený.

Raspberry Pi Model B+

Instalace a zprovoznění Raspberry Pi B+

Jakkoli jsem to kdysi dělal rád, tak se mi dnes představa, že montuji základní desku do plechové krabice, zápasím s uchycením chladiče procesoru, rvu paměťové moduly do slotu v desce a následně otírám krev z rukou a počítačové skříně, pranic nelíbí. Dávám raději přednost notebookům a pokud si budu kupovat klasický počítač, pak už složený.

Na druhou stranu, když jsem otevřel krabičku s Raspberry Pi, měl jsem z toho radost, jako malé děcko. Počítač totiž dostanete jen jako desku bez obalu, musíte si to smontovat, osadit paměťovou kartou, připojit k k monitoru a zprovoznit zde nějaký operační systém. Vzdáleně mi to připomnělo dobu strávenou u Atari 800 XE a šílené jednojehličkové tiskárny BT-100 vyráběné stylem „urob si sám“ (pamatuje si to tu někdo?).

Takže po sestavení jsem k malinovému počítači připojil bezdrátový set klávesnice a myši od Microsoftu komunikující s vysílačem v USB portu. Přes HDMI kabel jsem připojil Full HD monitor, dále síť s internetem a jako napájení jsem vzal samostatný adaptér s USB koncem (asi by to jelo i přes USB kabel z počítače, ale nechtělo se mi zkoumat dostatečnost napájení, navíc chci, aby RPI běželo samostatně).

Jako úložiště jsem zvolil 64GB MicroSD kartu od Kingstonu Class 10. Tohle má jednu potíž. Windows i OS X mi ji naformátovaly jako exFAT, což má ovšem za následek, že Raspberry Pi s tím nenabootuje. Dohledat příčinu problému mi na oficiálních stránkách vzalo docela dost času, je to zmíněno jen v nějakém fóru. Raspberry Pi umí jen klasický FAT32, takže jsem ve Windows 8 musel použít nějaký freewarový formátovač. Možná by to vyřešil příkazový řádek, nevím.

Po překonání prvotních problémů už šlo vše snadno. Na kartu jsem v počítači překopíroval software NOOBS a vložil ji do „maliny“. Líbí se mi, že není nutné vytvářet nějaké bootovací záznamy, prostě jen nakopírujete jako běžné soubory. Po spuštění pak Raspberry Pi nabídlo výběr operačního systému, který si do něj mohu nainstalovat. Zvolil jsem Raspbian, což je linuxová distribuce odvozená od sedmičkového Debianu Wheezy.

NOOBS

Kromě Raspbianu máte na výběr i odvozeninu od Fedory, Arch Linux, dvojici mediálních center a také Risc OS. Já si zvolil Raspbian v předtuše, že stroj budu využívat na hostování jednoduchých webových stránek a protože tak nějak znám Debian.

NOOBS

Grafické prostředí distribuce Raspbian

Online instalace Raspbianu nebyla kdoví jak rychlá, takže máte-li dostatečně velkou paměťovou kartu, doporučuji využít offline instalátor NOOBS, který již obsahuje všechny dostupné systémy v sobě. Raspbian jsem nainstaloval tak, že se grafické prostředí spouští na vyžádání klasickým příkazem startx.

Nejsem příliš velkým fandou grafických prostředí v Linuxu, možná tak ještě zkousnu Ubuntu. Raspbian je samozřejmě pro seriózní práci coby desktop nepoužitelný, je to v podstatě plocha odpovídající svým designem dob před více jak 15 lety. Ale najdete tu webový prohlížeč, přehrávač a nějaké vývojové nástroje pro Python.

Rychlost a odezva není valná, ale to od tohoto počítače asi nikdo nečeká. Raspberry Pi ani nemá snahu konkurovat současným strojům na bázi x86.

Raspberry Pi jako webový server

Byť tedy Raspberry Pi poslouží spíše jako nouzový počítač s grafickým prostředím, může docela dobře fungovat jako webový server. V textovém režimu můžete překonfigurovat nastavení počítače tak, aby pro grafickou kartu využíval jen minimální paměť, čímž se přiblížíte maximálnímu využití 512 MB RAM. Pokud budete Raspberry Pi používat jako webový server, stejně s ním budete komunikovat hlavně přes SSH.

Grafické prostředí lze samozřejmě přes příkazový řádek úplně odinstalovat. Já to zatím neudělal. Občas někomu ukazuji, cože to ta krabička vlastně umí. Předváděčka s připojením klávesnice a myši do jakési malé černé krabičky je docela efektní.

Na takto (málo) výkonném stroji by asi bylo lepší zkonfigurovat nginx, ale protože s to s ním neumím, zůstal jsem u Apache. Samozřejmě ve spojení s PHP a MySQL. Vše lze normálně instalovat přes apt-get, nechybí různé bezpečnostní nástroje nebo třeba Midnight Commander.

Ne všechno však na Raspbianu rozběháte, a to kvůli použité architektuře procesoru. Místo Perconna serveru jsem tedy musel využít klasické MySQL. Nepodařilo se mi rozběhat Google PageSpeed, ale možná je to dobře, je to poněkud výkonově náročnější věc. Momentálně řeším ještě nějaké drobnosti kvůli nedotaženým závislostem u některých dalších balíčků.

A jak běhají weby na Raspberry Pi? Není to vůbec špatné. Co se týče stránek postavených na systému GetSimple, který místo databáze využívá jenom XML, tak tu z pohledu rychlosti prakticky nevidím rozdíl mezi tím, když byly na běžném hostingu u Wedosu a nyní na Raspberry Pi. Dále zde mám rozběhaný PHP Server Monitor pro sledování stavu jiných serverů a hostingů.

Asi vás bude zajímat, co Raspberry Pi a Drupal. Zatím tu mám jenom jeden starší web na Drupalu 6. To už v porovnání s GetSimple není žádný zázrak, na druhou stranu když byl tentýž web třeba na nějakém levnějším hostingu v zahraničí, načítal se stejně dlouhou dobu. Navíc je tu určitě prostor pro optimalizaci – minimálně přehodit cacheování do souboru, MySQL prostě Raspberry Pi moc nedává.

Další zajímavá využití Raspberry Pi

Ve výsledku jsem s Raspberry Pi Model B+ jako jednoduchým malým webovým serverem více než spokojen. V podstatě mám další místo, kam mohu dávat jednoduché weby, které potřebuji mít na jiné IP adrese. Pro nějaké prezentace a jednoduché weby na GetSimple bohatě stačí.

Nevýhoda je samozřejmě ta, že pokud dojde k výpadku u poskytovatele internetu, budou weby nedostupné. Abych pravdu řekl, vzpomínám si více na výpadky hostingů, které jsem v minulosti využíval, než na nějaký výpadek providera z poslední doby. A vysoce důležité weby na Raspberry Pi stejně nemám.

Na internetu najdete celou řadu dalších zajímavých návodů, co se s Raspberry Pi dá dělat. Velkou výhodou je minimální spotřeba a žádný vydávaný zvuk. Mě zaujal například návod, jak z něj udělat zálohovací server fungující pro Apple jako Time Capsule.

Jsou tu samozřejmě i poněkud méně v praxi využitelné návody jako telefon s Raspberry Pi s dotykovým displejem, herní ovladač, nebo superpočítač složený z řady Raspberry Pi. Existuje také firma nabízející housingové služby pro váš server s Raspberry Pi.

Volná místa v IT

Další pracovní místa najdete na stránce Volná pracovní místa v IT.

Reklama

Komentáře

Co je "Wi-Fi modem"? :-D

Wi-Fi router… :-)

Majitel Maxiorla. Nabízím mimo jiné placené poradenství pro Drupal. Jsem i na Twitteru.

Dobrý deň p. Polzer,
ďakujem za zaujímavú recenziu, máte skúsenosti aj s Apache Tomcat na tomto zariadení?

Já si bohužel s Javou moc nerozumím, takže s Tomcatem nemám zkušenosti ani na Raspberry Pi ani jinde.

Majitel Maxiorla. Nabízím mimo jiné placené poradenství pro Drupal. Jsem i na Twitteru.

Zaujimavy pocitac a samozrejme zaujimava myslienka weboveho servru. Tak ako sa RaspberryPi da pouzit na rozne veci, da sa tak pouzit aj mobil s Androidom? Vyhodo by bol displej a nevyhodou zrejme slabsie vstupno/vystupne rozhranie.
V kazdom pripade ak nieco take objavite na internete, rad si u vas o tom precitam clanok :-)

Zdravím, nemyslím si, že provozovat webserver na zařízení s Androidem je ten nejlepší nápad, ale jít by to mělo. Viz tyto projekty:

Majitel Maxiorla. Nabízím mimo jiné placené poradenství pro Drupal. Jsem i na Twitteru.

Ahoj, mám na tebe malou prosbu. Zakoupil jsem stejný raspberry pi B+ a plánoval jsem jej využít jako XBMC multimediální centrum k LCD TV. Používám externí reproduktory a proto mne zajímá analogový AV výstup. V tomhle ohledu můj Raspík zlobí. Po načtení XBMC centra je ticho, audio výstup je nastaven na HDMI a zvuk přes HDMI je v TV naprosto čistý, avšak při přepnutí zvukového výstupu na analogový se z reproduktorů ozývá hlasitý nepříjemný šum. Hlasitost výstpu je defaultně nastavena na maximu, ale ani při ztlumení hlasitosti na 0 tento šum nezmizí,naopak je šum ještě více hlsitější než normálně. Takže je analogový AV výstup něčím silně rušen, nebo mám vadný audiochip. Dle rad na webu jsem vyzkoušel odpojit ostatní zařízení, vyměnil jsem i zdroj, zkusil jsem i napájení z akumulátoru, přetaktovat i bez taktování, ale nic z toho nepomohlo. A je jedno, jestli XBMC jede před Openelec, nebo RaspBMC. Mohl by jsi prosím vyzkoušet svůj Raspík a napsat, zda máš podobnou závadu, nebo je chyba jen na mém stroji? Předem děkuji za odpověď.

Ahoj, to bohužel netuším. Já to mám teď rozběhané jenom jako server s příkazovým řádkem, bez multimediálních aplikací nebo ovladačů.

Majitel Maxiorla. Nabízím mimo jiné placené poradenství pro Drupal. Jsem i na Twitteru.

...někdo další s podobnou zkušeností?

Já mám podobný problém analogový audio výstup mi funguje, ale analogový video výstup mi nejde. Poradí mi nékdo co s tím? Děkuji Honza

taky jsem měl problém s av video výstupem, mám kabel koupený na rpi shopu a video výstup mi funguje na červeném konektoru, ne na žlutém : -) (u starší verze b je možné při bootování určit video výstup podržením klávesy 3 PAL nebo 4 NTSC)

Mají to napsáno přímo v návodu, že video výstup není na žlutém CINCH výstupu, ale na jiném. To problém ale celkově není. U mě ten hlasitý šum analogového audio výstupu nepřestal, vyřešil jsem to HDMI audio extraktorem (= bohužel další investice 1000Kč). Teď mě tak napadlo, jestli ta záměna žlutého a červeného A-V cinche od výroby nezpůsobuje i zmíněný šum při použití klasického jacka 3,5. Můžete někdo vyzkoušet čistotu zvuku přes klasický jack a porovnat to s výstupem zvuku přes ten speciální 3-pin jack s AV (3x CINCH) vystupem? Nemám ho teď bohužel k dispozici. Předem díky za odpověď.

Mám RPi B+ i A+ a o tom kabelu vím a stejnak mi to nejde ani na jednom. Chtěl bych si koupit display, který má CINCH ale nekoupím ho do té doby než mi to půjde. Opravdu neví někdo co s tím?

na rpi b+ jsem ted potřeboval naistalovat novou sd, měl jsem po ruce verzi instalátoru noob v1_3_7, naistaloval jsem to přes hdmi v pohodě, ale po připojení AV se mi to nepodařilo rozběhnout. Tak jsem nainstaloval stažený obraz raspbian 2014-09-09 a na starý tv to naskočilo ihned, takže to příp. můžeš vyzkoušet takhle. m.

manuál jsem nečetl, škoda, mohlo mi to ušetřit trochu času, jinak s audio výstupem přes stereo jack problém nemám,hraje čistě, ale zkoušel jsem to bez připojeného hdmi (nemůžu ted dětem vypnout telku ) m.

Přidat komentář