Guide: Storage Provider Common Practices

We have begun moving our guides to the ScPrime domain at The documents on Medium will stay up but will no longer be updated.

This guide will be an evolving document that will help ScPrime Storage Providers maximize their provider instances as well as deal with any issues that arise as the network comes to scale.

Current Recommended Storage Provider Settings

In order for a Storage Provider to qualify for incentives on the ScPrime network, they must follow the recommended settings put forth by project. Below is the current recommended settings as well as the CLI commands to set them up.

Current Recommended Settings

To qualify for incentives, the current recommended provider settings are;

  • Minimum storage offered — 999GB
  • Minimum storage pricing — between 10SCP/TB and 20SCP/TB
  • Collateral range — 1x to 1.25x

CLI Commands

  • spc host config maxcollateral 50SCP
  • spc host config collateralbudget 2KS
  • spc host config minstorageprice 10SCP
  • spc host config collateral 12.5SCP

Drive Compression (Windows based providers)

Over the course of building out the ScPrime network, the tech support team has noticed that Storage Providers running on Windows can see extremely long waits while their storage folders are initialized. One possible work around is to compress the folders where you are storing your ScPrime data. This can reduce the wait time dramatically. It should also be noted this is just a work around and not a permanent solution.

Firstly, you have to ensure the drive where you are keeping your ScPrime folders has the proper file system. It will most likely either be NTFS or exFat. It’s very common for external drives to be exFAT. In order to be able to compress a folder, the hard drive must be NTFS. If the drive is not NTFS, you will have to format it.

To format a drive, you will want to find it in Windows Explorer and right click on it. Select ‘Format’ from the drop down menu. You will want to set the File system to NFTS and be sure to set the Allocation unit size to a number less then 8192, or compression won’t be available.

Once the formatting is complete, you will want to create your storage folder (as described in the Storage Provider guide). You will then right click on the the folder and click ‘Properties’ from the drop down menu. In the Properties menu you will then want to click on ‘Advanced’.

In the Advanced menu, you will want to tick ‘Compress contents to save disk space’ and the click ok. Once the folder is compressed you will continue to add folders to your instance as described in the main Storage Provider guide. What could normally take hours or days, should be a lot quicker now.

AutoStart Daemon on Reboot

Windows based Storage Providers can find their PC’s rebooting for a number of reasons. If a reboot happens when you’re away from the PC your provider instance is running on, you may find your uptime suffering until you can restart the SPD. Using Windows Task Scheduler, you can create a task where the daemon will restart upon reboot.

Open up Task Scheduler and click on ‘Create Task’.

Name the task something related to SPD and select ‘Run whether user is logged on or not’ and also tick the box next to ‘Run with highest privileges’. Then click on the ‘Triggers’ tab.

In the Triggers tab, click on ‘New’ and then select ‘At startup’ from the drop down menu. Also be sure to have the box next to ‘Enable’ checked and then click OK.

Now click on the ‘Actions’ tab and the click on ‘New’.

Select ‘Start a program’ as an action and then create a path to your (future) batch file. Usually it’s C:\users\username\scprime\start.bat. It’s best to set it to the folder that has spd.exe in it. Click OK and then OK again. Your task is created.

It’s also a good idea to check the task’s ‘Settings’ menu to ensure the ‘Stop the task if it runs longer than:’ setting is unchecked. Windows may default to this being checked, which will kill the spd daemon after it reaches the time specified.

Now it’s time to create the batch file.

Using Notepad or something similar, create a batch file as shown above. The paths may vary. You need to know on your PC where your spd.exe file is kept, as well as the various ScPrime folders like consensus, host, transactionpool, etc. When done, save it as ‘start.bat’ in the folder you chose in the Actions tab. You are all set up. If you have any questions, please visit the #network channel on the ScPrime Discord.

Setting up a Dynamic DNS address

If a Storage Provider has an external IP address that may change, it’s a good idea to setup a dynamic DNS address. In short it will give you a permanent address for your provider instance, even if the actual external IP address your ISP gives you changes.

Duck DNS

There are a few different services you can use. In this guide, we will use Duck DNS. Start by heading over to their website.

Once there, you will want to sign in with your Twitter, Github, reddit or Google account. You have to sign in to use Duck DNS.

Next you will need to download the software. Since these guides mainly focus on Windows users, we will click on ‘windows-gui’. Install the software. Please note that you will need Java to use Duck DNS.

Once installed and Duck DNS is running, you can access your settings by finding it the tray. Right click on the icon and then on ‘DuckDNS Settings’.

To find your settings, click on the link in the setting’s window.

If you’re still singed in, it will take you to the info page above. Give your DDNS a name and then click on ‘add domain’.

Now you want to grab your domain and token enter them into DuckDNS Settings. Once done, click OK. You should be all set.

You should check to ensure your provider instance is reachable. Use a port checker like IPFingerPrints to scan your new Duck DNS address for ports 4282 and 4283. If they come back open, all is well. If they are closed, make sure your ports are opened on your router.

Please note that when you announce your provider with a DNS, you need to use spc host announce [dns address]:4282. So for the example above, I would use spc host announce scprimeguides.

If you have issues, please visit the #network channel on the ScPrime Discord.

Guides, technical articles and news about ScPrime. ScPrime is a distributed cloud storage project.