Open Source scale model of Data Centers using commodity compute like Raspberry Pis.
Racklet is a fully-integrated, miniature server rack. Racklet aims to inspire users to explore how modern, advanced server architectures work in practice, in a tangible and educational way. With the new-found knowledge and inspiration, the user may apply their modernization skills on traditional server infrastructure, which improves the status quo and pushes the industry forward.
Racklet was admitted to the CNCF Mentorship programme during the summer of 2021, and is to the greatest extent somewhat of a research project for cloud native infrastructure. We’re all learning while putting cutting-edge technologies maybe not yet ready for mainstream adoption into use, integrating various projects with each other in novel combinations, and simplifying and formalizing existing proven technologies to make it accessible to a larger audience.
Racklet, as envisioned in the RFC-0001 document, may or may not become “ready” as is. Instead, the goal is to, along the way towards the RFC-0001-described “end state” capture innovations, bug fixes, enhancements and formalizations to the upstream projects used.
The following are the core values of the project:
We aspire to improve the status quo of “secure-by-default” solutions and concepts available by using e.g. Rust, LinuxBoot and TUF. We challenge some security norms in the industry and move past e.g. insecure protocols like TFTP. The design methodologies “Defense in Depth” and “Least Privilege” will be applied.
Declarative management using e.g. YAML and Git is prominent in the cloud native space, but not equally in the embedded and firmware space. We believe declarative APIs are very useful and powerful, as they allow for observe-diff-act reconciliation loops. Consistent Kubernetes-style APIs will be used across the stack.
Racklet is 100% open source software and hardware. Anyone can contribute, improve, fork and access the project. We want to bring innovation forward e.g. by publishing and using open (source) APIs, sharing code freely, and collaborating with fellow community members.
Only use commonly available components that can be aquired in most parts of the world in a frictionless manner. For non-off-the-shelf casing and PCBs we provide 3D-printable designs and easily reproducible schematics respectively.
The modularity of the system should allow that individual pieces of the system (e.g. compute, storage, network switches, power supplies) should be upgradable without having to disrupt the rest of the rack or disregarding existing, functioning parts. This will minimize E-waste produced over time.
The hardware, software, and APIs all strive to be as modular and extensible as possible. We want to follow the Unix philosophy to allow for portability between e.g. different hardware modules implementing the same interfaces, or extensibility where the user demands customized features.
The Racklet project aspires to engage a diverse set of people in the open source world to work towards a common goal of making data center software and hardware more accessible and secure.
We’d love to see you collaborate with us on this project! No contribution is too small, we value all input and perspectives.
Join the conversation on GitHub.
In order to stay up to date with how to use the latest source code available, check out the official documentation.