Raspberry Pi
Upcoming SlideShare
Loading in...5
×
 

Raspberry Pi

on

  • 202 views

 

Statistics

Views

Total Views
202
Views on SlideShare
184
Embed Views
18

Actions

Likes
0
Downloads
1
Comments
0

1 Embed 18

http://de.droidcon.com 18

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Raspberry Pi Raspberry Pi Presentation Transcript

  • Der Inhalt ● Was ist ein RaspBerry Pi ● Wieso RPIs im Cluster ● Lastverteilung, Marke Eigenbau ● Praktische Erfahrungen ● Ausblick ● Qt am RaspBerry Pi
  • /me.info(); ● Tam HANNA – Director, Tamoggemon Holding k.s.
  • About /girly ● Annette BOSBACH – Mitarbeiterin der Leitstelle, Tamoggemon Holding k.s. Krank...Krank...
  • About /girly ● Annette BOSBACH – Mitarbeiterin der Leitstelle, Tamoggemon Holding k.s. Krank...Krank... wieder einmal ;)wieder einmal ;)
  • Wieso
  • TouchCalc ● Eine Engine fiel vom Himmel ;) ;) – Notdürftig auf C++ portiert ● Einsatz unter Windows Phone und Firefox OS – Wenig Konkurrenz – C++ ungeeignet
  • TouchCalc - II ● Aufbau als Client-Server-App ● Server rechnet, Client zeigt an – Bessere Kontrolle über Nutzerverhalten – Einfachere Portierung ● Nutzerakzeptanz gegeben (!!!)
  • Himbeere
  • Drei Varianten ● Modell A – Kein LAN – 256MB RAM – Weniger Stromverbrauch (500 statt 700mA) ● Modell B – LAN – 512MB RAM
  • Möglichkeit der Kaskadierung ● Ein RaspBerry Pi B routet mehrere As – Einsparung im Bereich Energieverbrauch ● Nur manchmal sinnvoll: – Viel Rechenleistungsbedarf – Kommt mit 256MB RAM aus – Wenig Bandbreite
  • Flaschenhals USB ● SOC ist für Handys vorgesehen – Vergleichsweise wenig BUSse, etc ● Alles hängt am USB
  • Flaschenhals USB - II ● Geschwindigkeit per USB – rund 30MB root@raspberrypi:~# dd if=/dev/sda of=/dev/null bs=32M count=10 iflag=direct 10+0 records in 10+0 records out 335544320 bytes (336 MB) copied, 10.6428 s, 31.5 MB/s
  • Flaschenhals USB - III ● Bandbreite über LAN – Rund 50-60MBit ● Achtung: Kollision zwischen USB und LAN – Für E/A-lastige Systeme ungeeignet
  • Betriebssystem herbei ● RPI hat KEINEN Bootloader, etc ● Start NUR über SD-Karte möglich ● Externer Massenspeicher – SD – USB (Stromverbrauch!)
  • Betriebssystem herbei - II ● Standardsystem: RaspBIAN ● Abgespecktes Debian ● An ARM-Prozessor angepasst ● Ubuntu funktioniert NICHT
  • Zustandlosigkeit Ein Protokoll, das zwischen den einzelnen Aufrufen keinen Zustand hält. Mehrere Anfragen desselben Klienten werden vom selben Host als unabhängig betrachtet...
  • Zustandslosigkeit - II ● Zustandslose Protokolle sind gut – Skalieren sehr gut – Verursachen keine Internodal-Kommunikation ● „Babycluster“ haben wenig Internodalbandbreite
  • Das Floriani-Prinzip Heiliger Sankt Florian / Verschon' mein Haus / Zünd' and're an!
  • Idee ● Lastverteilung am Server erzeugt Last ● System ist „für Angreifer unattraktiv“ ● Ab zum Client!
  • Der „Lastraum“ ● Object 0: ● ● .ip : 89.173.25.32 ● .port : 2345 ● .minResponsibilityRange : 0 ● .maxResponsibilityRange : 10 ● .uid : BA_PI_1 ● .setOffline : ● Check server BA_PI_1... ● Server seems to work. ● ● Object 1: ● ● .ip : 212.186.120.179 ● .port : 2345 ● .minResponsibilityRange : 10 ● .maxResponsibilityRange : 20 ● .uid : VIE_PI_1 ● .setOffline : ● Check server VIE_PI_1... ● SERVER DOES NOT WORK!
  • 0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1 0 10 20 30 40 50 60 70 80 90 100
  • Ein kleines Beispiel ● Zwei Rpis – 1 Leistungseinheit ● Ein BeagleBone – 2 Leistungseinheiten ● RPI A – 0.00-0.25 ● RPI B – 0.25-0.5 ● BB A – 0.5-1
  • Verschiedene Anfragen? ● Was ist, wenn die Anfragen verschieden sind ● Verteilung bleibt trotzdem fair – Alle Aufgaben werden gleich verteilt – Jeder Server bekommt gleichen Anteil an Clients
  • Problem: Single Point of Failure ● Ausfall des ServerServers – Keine Berechnungen möglich ● Problemlösung – Client cached Liste lokal – Auslieferung erfolgt mit Liste „stabiler“ Server
  • Funktioniert gut ● Computersimulation mit Qt – Von der Qualität des RNG abhängig ● Praxistext: seit 6 Monaten keine Imbalancen – Firefox OS – Windows Phone
  • Praktische Erfahrungen
  • Übertaktung, ja bitte
  • Praktische Erfahrungen ● „MODEST“ wird im gesamten Cluster genutzt ● Andere Betreiber nutzen höhere Einstellungen – Keine Probleme bekannt ● Nutzung gerechtfertigt: – Minimal höherer Stromverbrauch – Wesentlich bessere Hardware-Ausnutzung
  • Provider wehren sich ● Zehn Jahre lang – Selbe IP ● Eines Tages – Neue Adresse
  • Router sind anfällig ● 5 Router, eine grantige Assistentin – Diverse seltsame Abstürze ● Home-Router sind unzuverlässig – War nicht immer so (!!!)
  • MicroUSB-Lader sind teuer ● Rund 5V / 700mA per Planare ● Energieversorgung via MicroUSB ist „teuer“ ● Besser: Netzteil an GPIO-PIN – Effizienter – Risiko von Hardwareschaden – Sicherung „umgangen“
  • Vermeide externe Peripherie ● RPI mit SD-Karte → Angenehm kompakt ● USB-Geräte sind ungünstig – Strombedarf (Hub nötig) – Platzbedarf
  • Ausblick
  • Ideales Lehrwerkzeug ● RaspBerry Pis sind preiswert ● RaspBerry Pis sind cool – „Out-Sell Arduino on a 100 to 1 basis“ ● RaspBerry Pis schränken ein – Grenzerfahrung wg wenigen Ressourcen – Nutzer lernen Umgang mit SSH (!)
  • Ideales Lehrwerkzeug - II ● Nahe an echtem Server ● Software lässt sich weiterverwenden – Linux ist – meist - Linux ● Reale Server leicht einpflegbar – ServerServer anpassen
  • „Bessere“ Konkurrenten ● BeagleBone Black – Schneller – Keine GPU ● Diverse Evaluationsboards – Wesentlich schneller – Wenig Community
  • Es geht! Wirklich! ● Clusterbetrieb – Seit 6 Monaten – Kunden Happy – Kosten gering
  • BONUS: Qt am RaspBerry Pi
  • Hinweis, der Form halber ● Im Saal „Grün“ findet eine QA-Session statt ● Diese ist hochkarätig besetzt ● Öffentliche Diskussion ist dort möglich
  • Native Nutzung ● Qt 4 lässt sich per apt-get installieren ● Qt Creator und Co rennen am Rpi ● Kompilation großer Programme: aua
  • Bessere Idee ● RaspBerry Pi per Cross-Compiler ansprechen ● Erstellung von Qt 5 erfolgt am Desktop ● Wird danach in SD-Kartenimage geschrieben
  • BakeQtPi amhan@ubuntu:~/Downloads$ sudo ./bakeqtpi.bash -help [sudo] password for tamhan: Using 4 threads for compilation Usage: ./bakeqtpi.bash [options] options: --package Downloads and builds the official QT5 Package from qt-project.org --webkit Builds Webkit --http Tells git and init-repository to use http(s) --httppi Tells the script to download the Raspbian image using http/wget --torrentpi Tells the script to download the Raspbian image using torrent/ctorrent --raspbian <path> Use custom raspbian. Note, you can point this to your SD card, assuming it's a standard raspbian sd card using --raspbian /dev/sdX (Don't put the partition number in) --confclean Runs 'make confclean' before running ./configure -v, --version Version Info -h, --help Help and usage info
  • Aber Achtung! Donwloading QT5 Package --2013-09-24 21:25:02-- http://releases.qt-project.org/qt5/5.0.0/single/qt-everywhere-opensource-src-5.0. 0.tar.gz Auflösen des Hostnamen »releases.qt-project.org (releases.qt-project.org)«... 77.86.229.90 Verbindungsaufbau zu releases.qt-project.org (releases.qt-project.org)|77.86.229.90|:80... verbunden. HTTP-Anforderung gesendet, warte auf Antwort... 301 Moved Permanently Platz: http://download.qt-project.org/ [folge] --2013-09-24 21:25:03-- http://download.qt-project.org/ Auflösen des Hostnamen »download.qt-project.org (download.qt-project.org)«... 77.86.229.90 Verbindungsaufbau zu download.qt-project.org (download.qt-project.org)|77.86.229.90|:80... verbunden.
  • Achtung, Ubuntu! ● Wird mit veraltetem Qt Creator ausgeliefert ● Installation neuer Version ersetzt diese nicht ● qtcreator startet alte Version – Erkennt Cross-Compiler nicht!
  • Praktisches Entwickeln ● SD-Kartenimage ist erforderlich tamhan@ubuntu:~/opt$ sudo mount -o loop,offset=62914560 2013-02-09-wheezy-raspbian.img /home/tamhan/opt/rasp-pi-rootfs/
  • Deployment
  • ?!? tamhan@tamoggemon.com @tamhanna Pics: Fir0002/Flagstaffotos, Manuel F. Guerrero, U.S. Marine Corps