Uploaded on

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
189
On Slideshare
0
From Embeds
0
Number of Embeds
2

Actions

Shares
Downloads
1
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Der Inhalt ● Was ist ein RaspBerry Pi ● Wieso RPIs im Cluster ● Lastverteilung, Marke Eigenbau ● Praktische Erfahrungen ● Ausblick ● Qt am RaspBerry Pi
  • 2. /me.info(); ● Tam HANNA – Director, Tamoggemon Holding k.s.
  • 3. About /girly ● Annette BOSBACH – Mitarbeiterin der Leitstelle, Tamoggemon Holding k.s. Krank...Krank...
  • 4. About /girly ● Annette BOSBACH – Mitarbeiterin der Leitstelle, Tamoggemon Holding k.s. Krank...Krank... wieder einmal ;)wieder einmal ;)
  • 5. Wieso
  • 6. TouchCalc ● Eine Engine fiel vom Himmel ;) ;) – Notdürftig auf C++ portiert ● Einsatz unter Windows Phone und Firefox OS – Wenig Konkurrenz – C++ ungeeignet
  • 7. TouchCalc - II ● Aufbau als Client-Server-App ● Server rechnet, Client zeigt an – Bessere Kontrolle über Nutzerverhalten – Einfachere Portierung ● Nutzerakzeptanz gegeben (!!!)
  • 8. Himbeere
  • 9. Drei Varianten ● Modell A – Kein LAN – 256MB RAM – Weniger Stromverbrauch (500 statt 700mA) ● Modell B – LAN – 512MB RAM
  • 10. 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
  • 11. Flaschenhals USB ● SOC ist für Handys vorgesehen – Vergleichsweise wenig BUSse, etc ● Alles hängt am USB
  • 12. 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
  • 13. Flaschenhals USB - III ● Bandbreite über LAN – Rund 50-60MBit ● Achtung: Kollision zwischen USB und LAN – Für E/A-lastige Systeme ungeeignet
  • 14. Betriebssystem herbei ● RPI hat KEINEN Bootloader, etc ● Start NUR über SD-Karte möglich ● Externer Massenspeicher – SD – USB (Stromverbrauch!)
  • 15. Betriebssystem herbei - II ● Standardsystem: RaspBIAN ● Abgespecktes Debian ● An ARM-Prozessor angepasst ● Ubuntu funktioniert NICHT
  • 16. Zustandlosigkeit Ein Protokoll, das zwischen den einzelnen Aufrufen keinen Zustand hält. Mehrere Anfragen desselben Klienten werden vom selben Host als unabhängig betrachtet...
  • 17. Zustandslosigkeit - II ● Zustandslose Protokolle sind gut – Skalieren sehr gut – Verursachen keine Internodal-Kommunikation ● „Babycluster“ haben wenig Internodalbandbreite
  • 18. Das Floriani-Prinzip Heiliger Sankt Florian / Verschon' mein Haus / Zünd' and're an!
  • 19. Idee ● Lastverteilung am Server erzeugt Last ● System ist „für Angreifer unattraktiv“ ● Ab zum Client!
  • 20. 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!
  • 21. 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
  • 22. 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
  • 23. 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
  • 24. Problem: Single Point of Failure ● Ausfall des ServerServers – Keine Berechnungen möglich ● Problemlösung – Client cached Liste lokal – Auslieferung erfolgt mit Liste „stabiler“ Server
  • 25. Funktioniert gut ● Computersimulation mit Qt – Von der Qualität des RNG abhängig ● Praxistext: seit 6 Monaten keine Imbalancen – Firefox OS – Windows Phone
  • 26. Praktische Erfahrungen
  • 27. Übertaktung, ja bitte
  • 28. 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
  • 29. Provider wehren sich ● Zehn Jahre lang – Selbe IP ● Eines Tages – Neue Adresse
  • 30. Router sind anfällig ● 5 Router, eine grantige Assistentin – Diverse seltsame Abstürze ● Home-Router sind unzuverlässig – War nicht immer so (!!!)
  • 31. 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“
  • 32. Vermeide externe Peripherie ● RPI mit SD-Karte → Angenehm kompakt ● USB-Geräte sind ungünstig – Strombedarf (Hub nötig) – Platzbedarf
  • 33. Ausblick
  • 34. 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 (!)
  • 35. Ideales Lehrwerkzeug - II ● Nahe an echtem Server ● Software lässt sich weiterverwenden – Linux ist – meist - Linux ● Reale Server leicht einpflegbar – ServerServer anpassen
  • 36. „Bessere“ Konkurrenten ● BeagleBone Black – Schneller – Keine GPU ● Diverse Evaluationsboards – Wesentlich schneller – Wenig Community
  • 37. Es geht! Wirklich! ● Clusterbetrieb – Seit 6 Monaten – Kunden Happy – Kosten gering
  • 38. BONUS: Qt am RaspBerry Pi
  • 39. Hinweis, der Form halber ● Im Saal „Grün“ findet eine QA-Session statt ● Diese ist hochkarätig besetzt ● Öffentliche Diskussion ist dort möglich
  • 40. Native Nutzung ● Qt 4 lässt sich per apt-get installieren ● Qt Creator und Co rennen am Rpi ● Kompilation großer Programme: aua
  • 41. Bessere Idee ● RaspBerry Pi per Cross-Compiler ansprechen ● Erstellung von Qt 5 erfolgt am Desktop ● Wird danach in SD-Kartenimage geschrieben
  • 42. 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
  • 43. 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.
  • 44. Achtung, Ubuntu! ● Wird mit veraltetem Qt Creator ausgeliefert ● Installation neuer Version ersetzt diese nicht ● qtcreator startet alte Version – Erkennt Cross-Compiler nicht!
  • 45. 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/
  • 46. Deployment
  • 47. ?!? tamhan@tamoggemon.com @tamhanna Pics: Fir0002/Flagstaffotos, Manuel F. Guerrero, U.S. Marine Corps