Setting up, running, maintaining, and updating Cardano Nodes is complicated. SPOs would benefit from tools that simplify the running of nodes in a reliable & repeatable manner.
We will Open Source a tool that allows SPOs to define their network & VMs which this tool will then use to build, deploy, configure, & run Cardano Node software in a safe and reliable manner.
This is the total amount allocated to Cardano Node Management Tool.
Nori Nishigaya
Bryan Lesiuk
No dependencies.
Project will be fully Open Source.
SANADA currently runs SAMON Pool with a tool we call “cardmin”. Our proposal is to fully Open Source this tool and make it usable by other SPOs. This work will involve a certain level of refactoring and updates to support a more generic set of configurations and settings to make this tool flexible enough to be useful across a wide range of SPOs. We will also do a fair amount of code cleanup and comments to make it easier to understand.
We will create documentation on how to install, use, and maintain the software.
Our tool uses Terraform by HashiCorp which is an Open Source tool (https://www.terraform.io/) to provision instances, whether locally hosted or using cloud providers (https://registry.terraform.io/browse/providers).
This proposal addresses the challenge by open-sourcing a tool to help SPOs better and more safely manage their network and Cardano Nodes. It will bring greater stability to our decentralized network, enhance the quality of life for SPOs by automating many tedious tasks, and make it much safer and more reliable to maintain and update the Cardano Nodes and networks.
The primary goal of this proposal is to Open Source an existing internal tool so that it can be beneficially used by other SPOs. The outputs of this project will be the source code and documentation for using this tool. We will share this via an open GitHub repository. We will also produce a close-out document and video describing our proposal goals and achievements.
If there is enough demand for further development of cm-tool, future enhancements may expand its capabilities to support multiple cloud services, a wider range of self-hosted virtualization platforms as well as ideas submitted by the SPO community.
Our team has a proven capability to deliver projects with high levels of trust and accountability. With over 75 years of collective experience in programming and system administration, our developers have a strong track record of successfully creating similar tools for other businesses in the past. We have already developed a functioning tool that has been actively used internally since September 2021, demonstrating our commitment to creating reliable and effective solutions.
By open-sourcing this tool, we aim to enhance its accessibility and usability for new users. To ensure trust and accountability, we will clean up, refactor, and document the code so it is better suited to public use and consumption. We will actively engage with the open-source SPO community, providing clear documentation, issue tracking, and contribution guidelines to foster transparency and collaboration. With our expertise, dedication, and proactive approach to maintaining the project, we are confident in our capability to deliver a high-quality open-source solution with utmost trust and accountability.
The main goal of this project is to Open Source a tool that we have developed in-house and used successfully for the past 2 years to help us manage our Cardano Node instances and network. In order to Open Source in a manner that is most useful to the community, we will engage in the following steps:
By conducting a thorough evaluation of the existing tool, implementing code improvements, enhancing documentation, and incorporating user feedback, we will be able to validate the feasibility of our approach. These steps will ensure that our goals of open-sourcing the project and making it more accessible to new users are achievable.
1 Project Plan – this is what you are reading right now
2 Basic Project Structure – a python script that is the foundation for the tool
3 Network Model + Terraform – ability to create and destroy nodes
4 Remote code execution and basic node configuration – deploy config to nodes, create & manage user accounts, credentials distribution
5 VPN – increase communication of all nodes by having network traffic use a VPN tunnel between each of the nodes
6 Node Type: Admin – ability to create, configure and manage an admin node
7 Node Type: Relay – ability to create, configure and manage a relay node
8 Node Type: Producer – ability to create, configure and manage a producer node
9 Documentation – detailed documentation for milestones 2-8
10 Close-out Report
1 Project Plan – this is what you are reading right now
2 Basic Project Structure – a python script that is the foundation for the tool
3 Network Model + Terraform – ability to create and destroy nodes
4 Remote code execution and basic node configuration – deploy config to nodes, create & manage user accounts, credentials distribution
5 VPN – increase communication of all nodes by having network traffic use a VPN tunnel between each of the nodes
6 Node Type: Admin – ability to create, configure and manage an admin node
7 Node Type: Relay – ability to create, configure and manage a relay node
8 Node Type: Producer – ability to create, configure and manage a producer node
9 Documentation – detailed documentation for milestones 2-8
10 Close-out Report
1 Project Plan 8800 ADA
2 Basic Project Structure 8000 ADA
3 Network Model + Terraform 16000 ADA
4 Remote code execution and basic node configuration 24000
5 VPN 24000 ADA
6 Node Type: Admin 16000 ADA
7 Node Type: Relay 16000 ADA
8 Node Type: Producer 8000 ADA
9 Documentation 20000 ADA
10 Close-out Report 8800 ADA
TOTAL = 149600 ADA
We are donating the Cardano Node Management Tool code by Open Sourcing it. This represents more than 1000 man-hours of programming, troubleshooting and bug fixing time.
Lowers the technical expertise required to run and operate a secure and robust stake pool
Supports both local bare metal and cloud based instances (currently only on AWS but able to extend the capability relatively easily)
Jeremy Kiffiak, Bryan Lesiuk, Nori Nishigaya - proposal planning, project documentation, system administration, programming, architecture design, troubleshooting, bug squashing
Some of our past funded projects
========================