Taking my Raspberry Pi Supercomputer off-grid
Вставка
- Опубліковано 1 тра 2024
- Thanks to EcoFlow for their support! Check out their portable battery generators: ecoflow.com/collections/delta...
Hosting my website on a cluster of Raspberry Pis completely disconnected from the power grid and wired Internet turned out to be a daunting task. But I got it working! This video explains how.
#RaspberryPi #TuringPi2 #Sponsored
Support me on Patreon: / geerlingguy
Sponsor me on GitHub: github.com/sponsors/geerlingguy
Merch: redshirtjeff.com
Guides mentioned in the video:
- ZFS RAIDZ1 on a Raspberry Pi: www.jeffgeerling.com/blog/202...
- 4G LTE Wireless on a Raspberry Pi: www.jeffgeerling.com/blog/202...
- SSH and HTTP to a Raspberry Pi behind CG-NAT (SSH Tunnel): www.jeffgeerling.com/blog/202...
- Network interface routing priority on a Rasbperry Pi: www.jeffgeerling.com/blog/202...
- Using Ansible with an SSH bastion / jump host: www.jeffgeerling.com/blog/202...
And the entire project's automation and documentation is located here:
github.com/geerlingguy/turing...
Products mentioned in the video (some links are affiliate links):
- Turing Pi 2 mini ITX cluster board: turingpi.com
- MyElectronics.nl mini ITX rackmount case: www.myelectronics.nl/us/ (not listed on site)
- EcoFlow
- SKB 2U Soft Rack Case: amzn.to/3oAGQTr
- Crucial MX500 2TB SSD: amzn.to/3sJSZXJ
- Noctua NF-A6 PWM 60mm fan: amzn.to/3BbbnMW
- Quectel EC25-A Mini PCIe 4G LTE modem: amzn.to/3HGkasw
- Bingfu 4G LTE Magnetic antenna: amzn.to/3GAVUXv
Finally, here are a few videos related to this video:
- Kubernetes 101: • Kubernetes 101
- Racking up the Turing Pi 2 cluster: • Racking up a Raspberry...
- Turing Pi 2 review: • 4 Pis on a mini ITX bo...
Contents:
00:00 - Server on a farm!
01:25 - Off-grid power
02:48 - Internet access
04:51 - Networking issues
07:33 - Kubernetes (K3s) and ZFS
09:35 - Physical protection
10:13 - Overcoming CG-NAT
13:35 - It works, but who cares?
15:36 - I learned a lot, but not farming - Наука та технологія
All good things must come to an end-the site was handling a spike in traffic from HN quite well, but then someone pointed a DDoS cannon at it, and it's been blasted by over 40 Mbps of continuous traffic (all POST requests so it bypasses cache) for over an hour now.
Now that I put Cloudflare in front, I am seeing over 6 million botnet POST requests per hour (in addition to some other traffic I haven't quite filtered). Ah well. At least it's back up and running!
Thanks again to Ecoflow and Haarmann Farms!
not so nice👍
As stated below, ERR_TOO_MANY_REDIRECTS :'(
Sorry, but what did you expect after telling everyone your bandwidth and the comment trick! :)
@@AnkitRajpoot I mean... Yes, but people are dicks sometimes :/
That's why you can't have nice things :(
I’m really disappointed that the cluster wasn’t powered by methane sourced from the cows
Now *that* would be some 4D thinking.
😂 🐄💨🔋👍🏼😎
I salute your bravery. Someone has to ask "Why not?" and now we are all smarter as a result; thank you.
Good morning! The cluster is running *right now*, and if you read this blog post about it, you'll be reading it off the cluster running in my basement: www.jeffgeerling.com/blog/2022/hosting-website-on-farm-or-anywhere
Thanks again to EcoFlow for sponsoring the video, and to Haarmann Farms for having me out there. Which cow's your favorite?
You forgot to pin this comment?
Tried to comment on the blog post but it "seems to be spam" per the site. :)
@@rullywow3834 Sorry my site is being so rude! Another comment went through, so I'm guessing for some reason my site's antispam software was personally offended. And again, I apologize for that. The site is easily offended, and probably a little scared since it's being hosted in a new place today :D
@@itsaboutdriveitsaboutpowerwest Fixed! Apparently it un-pins when you edit it.
$ cowsay "Daisy is the favourite."
I had to do something similar with my pi cluster!
I'm behind a carrier grade NAT, and my entire apartment building shares one public IP. I used a reverse SSH tunnel from a GCP instance with a public IP :)
I remember a few years ago, I was visiting Vodafone HQ and saw a bunch of big metallic suitcases, I was told these were portable base stations on standby, ready to be deployed anywhere in the world where there would be a disaster.
Designed to act as relay cellular base station to provide emergency communication, beamed from satellites in orbit acting as the backend infrastructure. I thought that was pretty cool.
My friend's dad works at vodafone
Somebody told me that Cisco have huge trucks for this purpose equipped with every kind of wireless technology you can think of. One thing that was mentioned is enabling global telephone communication that's routed separately from the usual commercial satphone stuff.
I've often schemed how I would do this very thing. CGNAT was always the hurdle to overcome so I'm pleased that you also came to the conclusion of ssh port binding.
But on the same time, there's no way to prevent what he called a SPoF. In this case, it would be the DO server...
Ig tunneling is really the only option when behind a CGNAT eh
You already have a farm in your house! A Raspberry Pi server farm!
Jokes.
I think it's my favourite video ever posted in your channel.
It gathers all the stuff you are doing (and that I like to see) hardware, kubernetes (k3s), ansible, zfs, network, explore aaaaaaaallll the things ! :D
Thank you very much for sharing your content with so much passion and details.
Your dedication to open source everything and to allow future coders to come in and see how you did things is beyond exemplary
The farm ending part was pretty wholesome.
🐮
It's about time that Green Shirt Jeff made an appearance! Looking forward for the next project, a Pi based cow position system with LoRa comms so the farmer always knows where the cows are and how much exercise they had :-)
That would be insanely useful for farmers trying to mob graze
If someone hasn't implemented this please do so
Mob grazing is one of the most powerful ways to reverse climate change #Savory
track methane output of each individual cow by LoRa
@Jim McIntosh you surely need sth battery powered, but PiZero is overkill, some small microcontroller (Arduino, ATTiny, ESP) would be enough and probably more energy efficient. One could also think about passive radio locators, where the active part is in the base station.
I haven't done tracking of individual cows, but I did build a system for monitoring a pressure pump, controlling an electric fence on a farm and detecting water during irrigating (with room for expansion) and it has definitely been useful, picking water leaks within a few hours rather than several days of wondering if the pump sounds like it is running more than usual :). In this case, it uses a raspberry pi for the base station running thingsboard, some old picaxe microcontrollers for each device (attiny or atmega would be just as good, if not better) and lora radios to link them. GPS tracking would probably be pretty similar in infrastructure I would think.
@@cesarposadasatamusic why would you need to? The only context where cattle produce large amounts of methane is if they are eating a bad diet of the unusable by humans vegetable waste left from Arable food production combined with limited movement.
If cows eat grass they produce relatively little methane also if the grass is long, which it is what you aim for on rotational mob grazing it is also wet which absorbs any methane production.
Which is the context where tracking & making sure cows are in all together in a large mob or herd, not spread apart where they can under/over graze the land
Also when water usage is compared between arable production & ruminant production the water usage is not comparable. As rain is not counted in arable production but it is counted in ruminant production.
I would like to see more of these with dramatic disaster preparedness / harsh weather theme. And the sponsor Ecoflow is very apropos.
Production quality is going up, great video mate. Entertaining, well cut, all the good things!
This is something I am planning to build, so thank you for figuring out all the problems!
I have to admit that was pretty exciting, great video can see a lot of applications for this type of setup keep up the good work.
this was sooooo much work, really appreciate all the posts showing how you did everything. Keep up the great work.
This is by far one of your best videos. Thanks for doing this and creating inspiration to other like minded folks.
This is the stuff I love to see.
Crazy experiments and scenarios I would have never think off.
You're a great engineer and always inspiring. Thanks for helping the tech community!
Thank you Jeff for the video. I normally use my Delta Max as a backup UPS for my setup and after watching this you gave me another idea.
This is absolutely insane. So impressed
All I can say is wow!
Love your work.
Jeff you have inspired me so much! You rock! Thank you so much man! I seriously would have never tried getting back into tech without you! Wish me luck!
I love it Jeff. Sounds like an awesome learning experience and I have to give it a go!
Love how you're getting sponsored and stuff. Thanks for the great videos!
Your comments at the end of the video about communications resilience is exactly the sort of thing my startup is trying to tackle using IoT devices. I think it's awesome that folks are thinking about that and coming up with neat solutions!
"If this sounds a little complicated..."
You stopped right before the good parts! Lol. But then you said "it was a fun learning experience". I bet it was. Sounds like it was a good time.
Heh... it's always a balancing act with these videos-I try to make it approachable for beginners while not losing them too quickly.
But rest assured that the issues and code/docs in the GitHub project contain *everything* (all my thoughts, my learning process, my mistakes): github.com/geerlingguy/turing-pi-2-cluster/issues?q=is%3Aissue+is%3Aclosed
@@JeffGeerling I understand. I particularly like the more geeky side, but yes, it depends on your target audience. I do enjoy your vids, don't get me wrong! I am not the greatest at this stuff, but i am stumbling through my own journey as well 😆 it's the best way to learn, I think. Taking the subject material and messing around with it yourself. First learning variables, and strings... comparison operands. For loops... and theres plenty more...but, I just love all of it! I! What happens if I put a quotation mark HERE, instead of over THERE? Those types of things... It builds you own unique way of memorizing syntax and how things are arranged, when tinkering by yourself or even with a friend.
Jeff you are awesome! 😁 love your stuff. Keep it up!
Also, it took you 2mo. to make that video? Wow. Can tell you have a strong passion for this stuff and are committed to this craft-ing of RPi's. As far as redShirtJeff goes, well... he definitely has passion for SoMeThiNG 😄
Sir this is the best video you have ever made. Amazing, informative and extremely interesting. Maybe you have no future as a farmer but as IT professional and geek your present is excellent and your future is bright! Keep it up Jeff!
Thanks Jeff. We can always count on you to come up with some great ideas. This idea can cover some digital emergency problems. I hope you also know about what Amateur Radio is doing in the emergency back up system too. They do cover power out communications and some digital com. for those who need it with their ARES and MARS programs.
This video is gold, thanks for the guides!
I really liked the outdoor shots of you just talking about your setup. Do more of those! You explain things so cleanly. Edit: man I would love to see your take on disaster communications using LoRa and non line-of-sight communications.
Try doing all of this in the mountains and almost all of the regular methods break down. No cell service, no towers, no power.
Excellent, thank you, always a pleasure.
Read your great post about the DDoS and Hacker News drama this morning. That must've really sucked! But great "opportunity" I guess to learn a ton!
Love and appreciate your content!
Waw, this is an amazing video ! Great work !
so much info packed in this video
Just wanted to offer a quick atta-boy, Jeff. Your presentation is excellent, and your projects are both interesting and valuable for real world applications.
Thanks, especially overcoming CG-NAT is something I was interested in, will check out your blog.
I never would’ve thought I would ever be watching a video with this title 😊 Good stuff, Jeff!
Thats really a very good and deep interresting learning keep up
Thanks
Well done, absolutely amazing
That was an amazingly interesting video, even though most of it was totally over my head. Your presentation was excellent and made for a very enjoyable video.
What an amazing project! Well done! Greetings from the Netherlands
I was thinking this would be useful for initial build out of May Contain Hackers in August
thx so much for doing this very inspiring!
Many thanks for all the work
Kudos Jeff for a very interesting and educational video.
@jeff you might consider using stunnel to do point-to-point TCP tunneling. SSH can be a bit finicky for long-running tunnels. I know that's why you're using autossh, but you might get a better experience using a purpose-built solution rather than a "band-aid" one. Another good option is an overlay network like ZeroTier, which can be configured for L2 bridging or L3 routing configurations :)
WireGuard fan boy here, had great success with it.
wireguard is freckin' awesome, except when it doesnt work because you did something wrong:D
Cloudflare tunnel is the best!
Many thanks. Awesome solution. Enjoy your day!
3:28 “what if I want to host a site in my car while I’m driving?” LMFAO this is totally possible, and I’m serious 😂😂😂😂😂😂😂😂
Every project you do is so impressive :O
Practical for day-to-day stuff? Not with the cost of 4G LTE data.
But that is really slick how it all worked.
When you posted the picture last night, I thought, "Turing Pi cluster in a pizza hot bag. This is going to be interesting." and it was.
This is actually the first time I have ever seen a Delta Max power a server. Enjoyed the video.
Wow... This video is amazing. Increíble. Thank you for sharing all this
Great stuff, Jeff! You do these things so that we don’t have to 😀. But it’s a lot of fun watching and learning a bit.
Thanks for sharing Jeff. I never thought of powering a Kubernetes cluster with my Delta Max.
Awesome video Jeff!
You can also bond multiple wireless connections with LACP to create additional throughput.
It doesn’t just double your speed, but it does provide more consistent connection and more bandwidth which “can” result in faster download or upload speeds.
Yet another great video Jeff.
Jeff, Thank you for making such great educational content. I am running a NAS using Open Media Vault and was planning to attach to a UPS in case of a power outage. A sun powered NAS is a great idea. And here in northern India we receive a lot of sunlight. Will implement your idea to my NAS. On a side note, apologies, but your website is not accessible as I was watching this video.
You are absolutely right, it’s all about how you configure the computer. I have pis running things like asterisk server and it runs rock solid stable. Just like my x86 and x64 that proceeded it.
What an informative and entertaining video! Nice one!
That is engineering ! intersting and well done !
This is great, so much great stuff to dig into and learn about. Makes me a little self conscious about my newly upgraded home server environment (upgraded from a single rpi3 to an x64 quad core "thin client", with most services now migrated to docker compose) for still being mostly just a single computer... But hey, you got me using Ansible, so it's at least a really quickly replaceable computer!
Very interesting, thanks. It's cool to see someone tackle a non cookie-cutter project such as this
Great video!!!
The end with the cows was hilarious.
As a comp tia A+ student taking a break from working on memorizing miscellaneous simple things in comparison to this, I'm afraid and excited at the same time while watching this video. Thankfully more excited. How am I supposed to continue studying instead of looking at all these products or reading your blogs?! Your technique of mixing product ad drops, tech, and blogs is work of wonder. Good stuff!
Brilliant video, thank you matey!
I learned a lot from you sir🔥
Another gem of a video from Jeff. I'll be using the nginx with kubernetes for my project
Loved the content, thanks.
"My website uses 2-3 Mbit/s on a normal day."
And then when you publish this video...
Hey Jeff, awesome video! I'd love to see a version 2.0 with ha storage like Gluster, redundant internet with mptcp to route all the traffic over the two Interfaces with WireGuard or such, the VM in the cloud be a remote worker and be flagged with a router role so that nginx only runs on there. That would be amazing!
Another great video. Keep up the great job Jeff. Also please give red shirt Jeff a cookie for all the hard work he dose 👍
Especially for the 📞 modeling today :)
@@JeffGeerling right? You're a good man for keeping that lovable maniac around 😁
Great video production value, plenty of location shooting!
Location shooting is no joke... especially on such a cold and windy day! Luckily all's well that ends well-I didn't get frostbite, nor did my camera helper :)
The cows just sat and laughed at us, I think.
That's some great LMG level sponsor segues! Props++;
You are amazing. Very good work!
Gotta say, I like your segues, they aren't annoying like many other channels.
In 50 years we will look back at Jeff's tutorials and projects and realize how important people such as himself are to all of us. Bravo Jeff, godspeed my brother!
nice video
i have manage to run my raspberry home server for about year without a single failure
Here in Australia you can request a static IPv4 public address on the Optus mobile network if you register with them as a business. You may find this to also be the case if you contact your carrier and ask the right questions.
a really good reason to use the pi instead of a old laptop is the gpio. you could have useful sensors and maybe a LoRaWAN and other radio services.
True, true.
You can get GPIO through USB adapters.
You could also use the old laptop's parallel port as GPIO ;)
Thank you so much for this video, I live in Puerto Rico and there was no way for me to port foward since my ISP dosent let me, this info will help me in knowing what the terms are called and help my 2 rpi and 1 jetson nano be accessed from anywhere.
Omg this is perfect!!!! I've been trying to set up remote management though 4g for past two weeks. I figured out the reverse proxy thing but couldent figure out how to punch though back to my server. Now I have something to research, reverse ssh
Jeef has improved so much, there aren't even enough outtakes to put at the end of the video now :DD
After a flood in 2013 at our premises where we were doing a small amount of hosting (we survived it but only just and only because the server room was one floor above ground level). We wouldn't have lost data but we would have been down for quite a while! I looked around for a cheap solution. I looked at Pi and other emerging SBCs. So I came up with SRIF - "Server Room in a Flightcase or maybe even a suitcase... I've just seen you do it for real :) I didn't complete the project then because I couldn't pack enough power (speed) into that space but now we can!
I like the reverse ssh bit. very clever to gain virtually public ip
Took some inspiration from LTT with your sponsor segue there - I like it xD
JEFF GOT SPONSORED!!!
Not sure if I forgot all previous ones but I'm not counting the 'we sent you free stuff' ones like Seagate.
Congrats Jeff!
That was a good video. Thanks!
Always knew that IT ist damn cool, but this....This is just WOW!
Great video Jeff. Keep on with that cool stuff. Hopefully in a warmer environment next time :^)
This is such a neat project! You're basically exploring edge computing. It's like Chick-fil-A's use of NUCs and k8s in each of their stores. Very cool!
I love the disaster support case as well.
That Chick-Fil-A article about their in-store clusters partially inspired this project!
@@JeffGeerling I'm sure you've seen their presentation, too, but in case anyone hasn't, I thought it was a great watch.
ua-cam.com/video/8edDcy3oeUo/v-deo.html
Awesome video! thanks for sharing from start to finish and your thought process throughout. One thing I notices is your hosting on an unmaintained PHP version (7.3) if you're pushing the X-Powered-By header correctly.
Heh, it's still supported for security updates on the distribution I'm running, but you're right, I should probably update to 8.1 soon-the problem is some dependencies of my site had bugs with PHP 8 support until recently.
This is so cool. Just so cool. Reverse proxy is so cool
Really cool, thank you for putting all of this together and sharing your findings. What I would really like to see is a tiny version of an off-grid system. I am trying to set up an off-grid timelapse camera based on a Raspberry Pi Zero 2 W, a Waveshare 4G hat and a small MPTT solar power manager and to my surprise I found very little information on such systems. This setup would also be great for all kinds of sensors far out like wildlife cameras, weather stations, traffic metering. If there is only few data to send back you could also use LORA instead of 4G.
I just set up a Cloudflare tunnel for my Starlink system yesterday. Works great through Nginx Proxy Manager and all my web services are working perfectly. I am running mine on one of my UnRaid servers. I have wanted to set up a tunnel from my own server though
great video!!! really good stuff!!!!
Now this is a fun project. Sorry to hear that it did not go according to plan but pushing boundaries like this is where you really expand your knowledge.
As a network engineer I will give one thought. SSH tunnels are a simple solution but you will have inconsistent performance due to something called the TCP meltdown problem. Both SSH and HTTP run on TCP and when you stack TCP on itself the congestion control mechanisms of each stream fight the other one. Using a UDP based encrypted connection for the backhaul like wireguard would provide a smother connection and increase throughput.
Keep up the great work!
Dude, you're amazing.
Woohoo! A Jeff Drop to start my day
That's really cool project. Nice work! I think SSH port forward is a little bit slow for web proxy in my experience. And all the web traffic still need to go through your VPS server. IPFS might be a good solution. But that is a different technology.