Firedancer is early stage software and should only be deployed on testnet / devnet now. Please do not deploy on mainnet yet.
This guide provides instructions for deploying Firedancer nodes using Ansible. Ansible is an open-source automation tool that can be used for configuration management and application deployment.
Before running the playbook, ensure you have the following:
- Ansible installed on your system.
- A static public IP address.
- Ports 8000 to 8020 available and open for communication on your network firewall and router.
To deploy the Firedancer node on a remote host, use the following command, replacing <ip-address>
with the IP address of your target machine:
ansible-playbook master.yml -i '<ip-address>,' -u ubuntu -K
If you're deploying on the same machine where Ansible is installed, use localhost
:
ansible-playbook master.yml -i 'localhost,' -u ubuntu -K
The master.yml
playbook includes several tasks that can be enabled or disabled according to your needs. By default, some of these tasks are commented out to prevent execution. You can uncomment any task to enable it or comment it out to skip it during the run.
Here is a brief overview of the tasks within master-playbook.yml
:
- System Update and Upgrade: (Commented out by default) Ensures your system is up to date.
- Disk Setup: (Commented out by default) Configures disk partitioning.
- Deploy Firedancer: Deploys the Firedancer application.
- Install Solana CLI: Installs the Solana Command Line Interface tools.
- Keys and Airdrop: (Commented out by default) Manages Solana keys and performs an airdrop.
To enable or disable a task, simply comment or uncomment the relevant lines in the master.yml
file.
For instance, to disable the Disk Setup task, ensure it is commented out as follows:
#- name: Set up Disks
# import_playbook: ./playbooks/disk-setup.yml
To enable it, remove the #
:
- name: Set up Disks
import_playbook: ./playbooks/disk-setup.yml
Repeat this process for any other tasks you wish to customize. Please note that disk partitioning is specific to our hardware configuration; review and edit as necessary to suit your environment.
For assistance or to report issues with the playbook, please reach out to the support team or open an issue.