Indholdsfortegnelse:
- Trin 1: Kom godt i gang
- Trin 2: Opsætning af din hardware
- Trin 3: Konfigurer dine Pi'er
- Trin 4: Installer Ansible
- Trin 5: Tillykke
Video: Raspberry Pi 3 "Bramble": 5 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:29
Implementering af en Apache2 webserver på tværs af en skalerbar Raspberry Pi3 Model B "bramble" via en HAProxy load balancer!
Jeg laver meget webudvikling og har læst meget om opsætning af geo-redundans og load balancers, så jeg regnede med, at det var på tide, at jeg selv forsøgte at sætte det hele op. Jeg har haft utilfredshed med at få en server til at gå ned og ville forhindre, at det skulle ske igen i fremtiden!
Plus, det ser bare fedt ud.
Trin 1: Kom godt i gang
** OPDATER **
**************************************************************************************************************************
Jeg har faktisk gjort denne Instructable lidt lettere. Jeg refaktorerede repoen på Github for automatisk at installere, konfigurere og implementere HAProxy loadbalancer på din valgte Pi! Mindre kode, mindre redigering, færre chancer for fejl og flere chancer for sjov!
**************************************************************************************************************************
Gå videre til https://www.raspberrypi.org/downloads/raspbian/ og download en ny kopi af Raspbian Stretch Lite.
Udpak. ZIP -filen, og skriv.img til hvert MicroSD -kort for hver Pi i din klynge. OSX -brugere, et godt værktøj til dette er
Når du har ætset.img til MicroSD -kortet, skal du navigere til kortet i et nyt Finder- eller File Explorer -vindue - dette skal som standard hedde boot. Opret derefter en ny arkiv med navnet SSH. Sørg for, at du ikke lægger noget til en filtypenavn. Dette aktiverer SSH på din Rpi3. Skub kortet ud og placer det i din Pi. Gentag dette trin for de resterende 2 Pi'er (eller uanset hvor mange du ender med at bruge).
Trin 2: Opsætning af din hardware
Dette eksempel antager en 3 -node Rpi -klynge, og listen over udstyr er nedenfor:
-
5 -port Ethernet -switch x 1
https://www.amazon.ca/gp/product/B00QR6XFHQ/ref=oh…
-
5 -port USB -strømadapter x 1 **
https://www.amazon.ca/gp/product/B017R9IJTU/ref=oh…
-
Ethernet -kabler x 4
https://www.amazon.ca/gp/product/B01J8KFTB2/ref=oh…
-
USB 2. til Micro USB B strømkabler x 3
https://www.amazon.ca/gp/product/B019U0V75W/ref=oh…
-
Hindbær Pi3 Model B x 3
https://www.amazon.ca/gp/product/B01CD5VC92/ref=od…
-
Kølelegemer x 6
https://www.amazon.ca/gp/product/B010ER7UN8/ref=od_aui_detailpages00?ie=UTF8&psc=1
* Det er vigtigt, at du bruger en USB -strømadapter, der er i stand til at forsyne Raspberry Pi'erne med deres minimum nødvendige driftsspænding
- Tilslut x1 Ethernet -kabel fra din router til Ethernet -switch.
- Tilslut x1 Ethernet -kabel fra din Ethernet -switch til hver af dine Pi'er
- Tilslut x1 USB-til-MicroUSB fra hver af dine Pi'er til USB-strømadapteren.
- Tilslut det hele og se på de blinkende lys
Selvom det ikke var nødvendigt, men jeg ønskede at bramble for at se så cool ud som muligt og holde alt lidt pænere. Jeg besluttede at afhente 3 af disse stabelbare sager fra Amazon. Jeg inkluderede det ikke i denne instruerbare, da det _teknisk_ ikke er påkrævet, men for æstetiske punkter vil jeg anbefale at hente nogle.
www.amazon.ca/gp/product/B07BNDFXN9/ref=oh…
** Bonuspoint **
Jeg valgte at gå efter ekstra nørdspunkter og ville have en bedre visuel indikation af, hvilken server jeg interagerede med. Jeg havde noget ekstra protoboard liggende og en flok LED'er og modstande, så jeg hackede hurtigt nogle brædder sammen for at lægge over pi's GPIO -ben. Ideelt set ville jeg have brugt nogle kvindelige overskrifter, men jeg havde kun han, så jeg havde brug for at trimme nogle jumperwires op.
Hvis du også vil gå den vej (fordi lysdioder er fantastiske), vil du følge denne vejledning på:
thepihut.com/blogs/raspberry-pi-tutorials/…
Trin 3: Konfigurer dine Pi'er
Du skal kende IP -adresserne for hver af Pi'erne på dit lokale netværk. Hvis du er en CLI-ninja, bør dette være let-peasy. For alle andre kan du bruge en gratis IP -scanner, f.eks. SuperScan (OSX). Skriv IP -adresserne ned.
Kopier derefter din SSH offentlige nøgle til hver af dine Pi'er ved hjælp af følgende kommando fra din terminal:
ssh-copy-id
Eksempel::
ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
Har du ikke en SSH -nøgle? Intet problem! Bare kør:
ssh-keygen
i din terminal, og følg vejledningen. Vi er næsten der!
Trin 4: Installer Ansible
Hvis du er nået så langt, tillykke! Du er kun få minutter væk fra at køre dit helt eget distribuerede computernetværk.
På din lokale computer / bærbare computer vil du gerne installere Ansible fra kommandolinjen. For Mac -brugere er det:
sudo pip installer ansible
For alle andre henvises til https://docs.ansible.com/ansible/latest/installat… til dit operativsystem.
Nu vil du klone denne repo til en mappe ELLER downloade. ZIP og pakke den ud i en mappe på din lokale maskine.
github.com/Jtilley84/ansible-apache2-webse…
I den repo ser du en hosts.ini -fil. Åbn den i din foretrukne teksteditor (eller nano eller vim):
[loadbalancer]
pi-headnode ansible_host = 192.168.0.228 # <--- Skift dette til ip-adressen på den Pi, du vil HAProxy på.
[noder]
node2 ansible_host = 192.168.0.16 # <--- Skift dette til ip-adressen på din anden Pi
node3 ansible_host = 192.168.0.58 # <--- Skift dette til ip-adressen på din tredje Pi
Det er det! For at køre afspilningsbogen skal du navigere til basismappen repo og skrive følgende i din terminal:
ansible-playbook playbook.yml
Trin 5: Tillykke
Du har lige fået computermagi til at ske. Tillykke!
Dette er bare et bevis på konceptet. I denne repo skubber playbogen en unik index.html -fil til hver af noderne, så du visuelt kan fejlsøge, om den fungerer eller ej. For en produktionsserver vil du naturligvis redigere playbogen for at implementere dit websted.
Hvis du har spørgsmål eller kommentarer, hører jeg dem gerne! Betal venligst Github -repoen og gaffel væk! Jeg ville elske at se, hvad du finder på.
Anbefalede:
Byg din egen "" Banksys selvdestruerende kunstramme ": 4 trin
Byg din egen "" Banksys selvdestruerende kunstramme ": Da Ballonpigen selvstrimlede sig selv efter at have ramt 1,4 millioner dollars, begyndte vores indre beslutningstagere at analysere, hvordan det er gjort. Der var 2 indledende ideer i vores sind: Den første var, at knive blev fastgjort på bunden af rammen og to hjul
"Ready Maker" - kontrol over "Lego Power Functions" -projekt: 9 trin
"Ready Maker" - Kontrol over "Lego Power Functions" -projekt: Lær, hvordan du styrer Lego " Power -funktioner " komponenter med Arduino board og opbyg dit projekt i " Ready Maker " editor (ingen kode påkrævet) til fjernbetjening af din model
HC - 06 (Slave Module) Ændring af "NAME" uden brug "Monitor Serial Arduino" der "Let fungerer": Fejlfri måde!: 3 trin
HC - 06 (slave -modul) Ændring af "NAME" uden brug "Monitor Serial Arduino" … der "Let fungerer": Fejlfri måde!: Efter " Lang tid " forsøger at ændre navn på HC - 06 (slave -modul) ved hjælp af " seriel monitor af Arduino, uden " Succes ", jeg fandt en anden nem måde og jeg deler nu! Hav det sjovt venner
3 -akset CNC -router - 60 "x60" x5 " - JunkBot: 5 trin (med billeder)
3 Axis CNC Router - 60 "x60" x5 " - JunkBot: This Instructable er den første i en serie, der dokumenterer konstruktionen af en DIY 3 -akset CNC -router. Dette er også mit bidrag til Universal Laser Cutter Contest. Målet med denne Instructable er ikke at vise en fuldstændig trinvis fremgang, men derimod
Gør dit kamera til "militær Nightvision", tilføjer Nightvision -effekt eller opretter NightVision "Mode på ethvert kamera !!!: 3 trin
Gør dit kamera til "militært Nightvision", tilføjer Nightvision -effekt eller opretter NightVision "Mode på ethvert kamera !!! *Hvis du har brug for hjælp, bedes du sende en e -mail til: [email protected] Jeg taler engelsk, fransk, japansk, spansk og jeg kender andre sprog, hvis du