The Chamber 🏰 of Tech Secrets is open.
So much is going on in the tech world right now. DeepSeek R1 launched and destroyed public markets about two weeks ago. Markets bounce right back as it looks like DeepSeek was innovative, but still expensive ($1b estimated TCO). Google’s earnings report disappoints investors, but they continue forward with a plan to invest $75 billion in AI and Cloud infrastructure. Wow. Gemini 2.0 launches as well and I am interested to get my hands on Deep Research. OpenAI released OpenAI Deep Research, their reasoning model. Palantir (PLTR) rides the AI wave with continued earnings smashes and rockets 🚀 to all time highs. Lots of AI everywhere!
At the same time, the blocking and tackling of IT remains critical to business success and transformation. And, as I have always thought, many of the critical and data-intensive apps are going to continue their move towards the edge. And that will be our topic today.
Edge Computing
In 2018, I was deep in the weeds of our first iteration of Edge Computing in my architecture role at Chick-fil-A. I stumbled into a new frontier, applying lots of new approaches to solving edge problems (like GitOps) while taking inspiration from the past (like using commodity hardware from Google’s early days). Over the past 7 years, I have shared a lot about the approaches we took to build out a large-scale edge deployment and what I learned from the experience (K3s clusters, zero-touch provisioning, GitOps, importance of automation, support models, telemetry management, edge ingress, and more). You can find all of those on the wonderful Chick-fil-A Tech Blog.
However, the time has come to drop the assumptions of the past and build a new Edge environment using the best from my lessons learned and by leveraging the many architecture patterns and open source projects that have developed since, including some great thinking from my friends at Edge Monsters.
In this series, I’ll be going from zero to “production” with a new edge lab environment in my home. Expect posts on this topic to be scattered across the year as I build the core and then add other capabilities to my environment to mimic real world use cases that I find interesting.
I’d love for you to follow along if you are interested and work through the process with me — it will be a great learning experience for all of us. For those that want to follow along, I may create some sort of collaboration forum to share progress (likely a free slack team).
Gear List
The gear list is likely to evolve over time as the lab builds out to include more components… or I find that something in the list was a mistake, but to start we’ll need the following…
Raspberry Pi 0 ($39.98) — this will serve as a sidecar to our environment and provide cluster provisioning services, help establish root of trust, perform cluster management, possibly PXE boot nodes, hold a docker image repository, and do other things that serve the edge environment standup and management processes. I haven’t tried any of this, so some parts may not work or require additional components. All part of the fun!
Intel NUC— of course I’ll be using an Intel NUC from my friends at SimplyNUC. Why would I use anything else? I’ll start with a single node to keep things simple, but am likely to add more nodes in the future.
Ubiquiti EdgeRouter X ($134.99) — we need a separate LAN for our lab environment, and I wanted some programability and automation capabilities via CLI or REST API. This router comes highly recommended from an Edge Monster amigo.
Bonus Item / Substitutions:
Raspberry Pi 5 Starter Kit Pro ($159.99)— I have one of these to play with a heterogeneous cluster, introduce an ARM chip into a clustered architecture, or to replace my Pi 0 if i find that I need more resources (hopefully not). This is also another option if the NUC is too expensive for your lab environment, but there will be some differences as we progress as my primary computing device will be using an Intel i7 x86 processor, and the Raspberry uses ARM.
Development Environment
I’ll be using the following to build out my components. If you aren’t a developer and want to follow along, I’ll probably make my code available on GitHub with instructions on how to run it (maybe a little delayed from the blog posts but will do my best). Here’s what I’ll be working on…
Macbook Pro 2021 version—not a requirement but just lets you know what I’m using.
An AWS Account—I will be sending data from my edge environment to the cloud, and using the cloud to aid (minimally) in the cluster registration process. It will be important to see the status and health of our cluster over time. We probably won’t exceed the free tier but just be aware that we might over time (or if you want to extend and run something bigger).
Golang environment—on your laptop, a VM, or whatever else you prefer. Golang will be the language of choice for this project.
Ansible — I’m thinking about using ansible to manage all of the edge configuration
Other stuff — lots more things will be necessary. Ethernet cables for connecting to our network. Monitor and keyboard for initial pi config / testing. We’ll likely play with different approaches to managing and deploying apps (K3s, nomad, etc.). I haven’t thought this all out yet, so we’ll add dependencies as we go while keeping them minimal.
The Application(s)
What sorts of applications will make sense to run in my house? I don’t know yet, but here are a few thoughts…
IOT — I am thinking I’ll get some sort of IOT sensors as part of the solution and run some sort of framework at the edge. This probably means we’ll need a gateway device eventually that can talk protocols other than wifi, but that will come later. We have a lot of work to do before that.
AI — At some point, I’ll likely do something with cameras (another component to get unless Blink has an API I can use.. prob not?) and something with an LLM just for fun.
Controlling APIs — I’ll probably come up with some edge-deployed APIs that can control things in my home… maybe the pool management? Will have to see what sorts of programability exist and what is most interesting.
Inventory App — while it doesn’t need edge, maybe an inventory app that lets me increment and decrement certain supplies so I always know what I have? This could be useful in a lot of places around the house.
What application would you like to build? I am open to ideas, so respond in the comments or reply to this email (if you’re reading via an email client).
Many of the things I am thinking could be achieved direct-to-cloud, but the point here is to exercise the edge development muscle, and to do that and learn from it, we’ll want some apps. So share your ideas.
I’ll be using Google Gemini 2.0 services as a friendly assistant to help me work through unexpected challenges and will share how that goes as well.
So that’s it! We’ll get started in the next few weeks when all of the hardware arrives and once I work through some initial challenges, so stay tuned for the next post in the Chamber 🏰 of Tech Secrets Edge Build Series.
To get 30-40 Tokens per Second SLM outputs. GPU with TensorCores helps a lot.
Consider Orix NX 16GB : 100Tops as starting point : 899$
https://www.seeedstudio.com/reComputer-J4012-p-5586.html
Jetson Orin Nano Developer Kit 8GB with 70TOPS for $299 is alternative if you could get one. (newly released and in high demand)
#EdgeFirst #UnovieAI
GPU in a NUC! See what kind of power those little devices can pump out from a localized GPU standpoint. (i.e., Surveillance AI) etc.
Looking forward to seeing how Brian's Edge 2.0 goes!!