DefiMagi¶
Greetings, reader! Welcome to the DefiMagi project. This cosmic corner of the web is designed to grow the decentralization ecosystem by providing guidance on how to reliably provision and operate blockchain node infrastructure. The project is a documented learning journey that aims to be consciously mindful of the reader.
Audience¶
Primarily, this guide is intended for operators with networking, sysadmin, and cloud infrastructure skillsets who understand modern operational models. Although this documentation assumes some pre-existing knowledge of the reader, it's written in a way that allows almost anyone with the desire to learn and tinker to embark on the journey to host reliable node infrastructure. In fact, one of the key tenets of the project is to encourage beginners and novices to contribute to the decentralization of the internet.
Perspective¶
There is already plenty of fantastic blockchain/crypto content out there, but I desire to provide a slightly different perspective for the reader, focusing on the underlying infrastructure that makes up our core blockchain networks. Most of my career has been in the sysadmin and cloud infrastructure space, where I was exposed to a variety of environments, from scrappy startups to sprawling enterprises. I have built, operated, maintained, and improved platforms, which exposed me to different technologies and a multitude of methodologies on how to approach their design and implementation.
Running nodes is what makes the blockchain a usable entity (platform) in the world, but what it takes to provision and operate these networks is often overlooked when it comes to choosing which networks to leverage and support. Home and commercial node operators are the backbone of these global platform services, and their ability to provision and maintain the nodes that certify transactions, run on-chain code, and determine the health and decentralization of the networks is essential. As we embark on the operator journey, we need to start asking questions about our blockchains:
- What is the quality of the projects (Bitcoin, Ethereum, etc.) documentation?
- What is the architecture/approach toward network decentralization?
- How many different node types are there?
- What types of nodes need to be operational for the network to function?
- What are the requirements to host a node (compute, storage, network)?
- What is the level of effort to stand up a node (partial, full, etc.)?
- How easy is it to keep up with and make updates based on official docs and processes?
- How active is the operator community?
This represents some of the considerations we must take into account when examining Layer 1. As we progress towards more advanced abstractions, such as Layer 2 technologies like the Lightning Network, and enhancing chain-specific security via staking mechanisms like Rocketpool, we will inevitably encounter additional questions and layers of complexity. However, we'll reserve that exploration for another day.
Key Tenants¶
- Leverage free and open-source tooling
- Efficient allocation of available compute resources
- Immutable infrastructure captured as code
- Full-stack observability and monitoring
- Reliability and failover capability
- Documented and repeatable process
- Continuous iteration/improvement towards simplicity and elegance/beauty
- Encouragement of beginners and novices to contribute to decentralized networks
Goals¶
- Learn and educate on the journey
- Contribute to decentralization
- Break even or profit from operational acitivties
Primary Workloads¶
Initially, the focus will be on the following technologies. I believe these are the foundational pillars of the decentralized ecosystem upon which the rest of the space will be built.