Züs
Search
K

Deploy Blobber on Own Server

This page provides instructions on how to deploy blobber via Chimney on your own server.

Server Configuration

It is recommended to use a minimum of 6 cores CPU and 500GB of storage with SSD so that performance of read write could be high thereby providing better rank for your blobber. If the rank of the blobber is high, there is a better chance of the blobber getting added to an allocation.

Instructions

  1. 1.
    Head to chimney website and click on Host a Server.
  1. 2.
    Click on Create Account.
  1. 3.
    Provide your username ,phone number and click on Create Account .
Note: A wallet mnemonic phrase will be provided after creating account. Save this at some place safe as this is required later verify or recover your account.
  1. 4.
    Backup you wallet phrase and Continue.
  1. 5.
    Verify your Mnemonic phrase and Click on Confirm your Selection.
  1. 6.
    Wallet will be successfully created after mnemonic phrase verification click on Proceed to continue.
  1. 7.
    Two ways to setup a blobber : Either Rent a server for blobber or deploy blobber and validator on your server. In this case we will be deploying blobber on your server so click on Step 2: Deploy.
  1. 8.
    Provide your server specifications :How much space you want to rent ,read price, write price,provider name and password, staking settings and click on Deploy your blobber.
Here is a description of blobber specification terms : Storage Capacity: The amount of storage capacity that you like to offered
WritePrice: The write that you would like to charge
ReadPrice: The read Price that you would like to charge
Self Stake: This is the ZCN you plan to stake on your own server, the more the better! We recommended at least 20% of your total stake to be self stake.,
Min Stake per Delegate: This is the minimum stake you allow from any delegate staking on your server.
Max Stake Per delegate: This is the maximum stake you allow from any delegate staking on your server.
Service Charge: is the % commission you ask from delegates that stake on your server
  1. 9.
    Now you will be prompted to provide the IP address or domain of the server on which you want to deploy blobber via chimney script. To request a script click on Request Deployment Script.
Under the Domain section you could either enter the domain that you already have or you could just provide the public IP of the server and will add a DNS entry for your IP address. In case, you would like to use our own domain, make sure that DNS entry is pointed to the IP address or your VM. This domain will be used to generate TLS so that communications with the blobber are secured using TLS certificates.
  1. 9.
    When you do so you will be provided with a script which looks something like this:
curl -fSsL https://raw.githubusercontent.com/0chain/blobber/setup-new-blobber/docker.local/quick_blobbers.sh | sed 's/0chainreadPrice/0.7/; \
s/0chainwritePrice/1.4/; \
s/0chainminStake/500/; \
s/0chainmaxStake/2000/; \
s/0chainserviceCharge/1/; \
s/0chainclientId/ff341191908b0c0703a7be47fc1533af6e8b2617c1356fcca3eb2d3d0852b1d0/;
s/0chaingfadminuser/manohar/; s/0chaingfadminpassword/reddy/;
s/0chainblockworker/https:\/\/demo.zus.network\/dns\//;
s/0chainblobberhost/chimneyvz3de.devnet-0chain.net/;'
The script itself is public here and everybody can view the script. We pass all aforementioned details like read_price, write_price, delegate wallet ID as parameters to the script. Notice that a domain has also been provisioned.
Note 1: Your walletID will be used as a delegate wallet ID to receive rewards.
Note 2 : You could always later update your read_price and write_price and other configuration that you provide. But be careful that changing the read_price and write_price could affect your blobber’s ranking.

Disabling root access:

To disable ssh from root access add this line to the ~/.ssh/authorized_keys file.
no-port-forwarding,no-agent-forwarding,no-X11-forwarding,command="echo 'Please login as the user \"ubuntu\" rather than the user \"root\".';echo;sleep 10;exit 142"

Disabling IPMI access:

IPMI provides a powerful out-of-band management interface that can be used to remotely manage and monitor the server hardware. However, as with any powerful management interface, there is a risk that it could be abused or exploited by attackers to gain unauthorised access to the server or its data.
Disabling IPMI may reduce this risk by limiting the attack surface of the server. Without IPMI enabled, attackers would need to rely on other attack vectors, such as exploiting vulnerabilities in the operating system or application software, in order to gain access to the server.
To disable IPMI access on a rented server, ipmitool can be used. You can use the following command:
ipmitool lan set 1 ipsrc dhcp
This command sets the IP address source for the IPMI LAN interface to DHCP, effectively disabling the IPMI interface. Note that this command assumes that the IPMI LAN interface is on channel 1. If your IPMI interface is on a different channel, you will need to adjust the command accordingly.

Updates to the Blobber Image version:

To manage updates to the containers an open source agent called watchtower is installed as a part of blobber deployment. This agent automatically pulls the latest version of blobber as and when they are released.