There are three options to proceed with upgrading Evonode. Please choose one which is suitable for you:
	
	
	
		
	
	
	
		
Stop existing 
Cleanup old 
Now you can remove old 
				
			- Upgrade existing Dashmate node. If you already have Evomasternode with Dashmate that meets minimum requirements then you just need to update Dashmate and obtain SSL certificates.
 - Set up a dashmate node on a new host. If you are running an Evomasternode with dashd on a host that doesn’t match minimal system requirements we recommend setting up a new server and migrating your Evomasternod. Additional considerations:
- You need to set up a new server and keep existing and new running while the new Core node is syncing.
 - You should be able to move your current public IP to the new server. Another option is to update the IP address with ProUpServTx.
 - Your existing node will continue to serve while you do setup so any problems with the new node won’t affect the existing one.
 - You have a good opportunity to upgrade the OS and software.
 
 - Set up a dashmate node on the existing host. If you prefer to install Dashmate on the same node, then you should have enough disk space to store 2 core blockchains at the same time during the migration (for about 10 mins).
 
Prerequisites
- X86-64 or ARM64 Linux host (Ubuntu is recommended) that meets minimum requirements
 - Public IPv4 address
 - Network configuration (firewall, security groups) allowing public access to the following TCP ports:
- 9999/tcp
 - 443/tcp
 - 26656/tcp
 - 80/tcp (in case if you are going to use ZeroSSL).
 
 - Backup of any existing Dash Core and Dashmate configuration, including private keys
 - ZeroSSL API access key or SSL certificate for the public IPv4 address (not DNS name).
 
Upgrade existing Dashmate v0.25 node
Make sure you are on the right path
		Code:
	
	dashmate --version
	Install a new Dashmate version
- Stop Dashmate:
Code:dashmate stop - Install Dashmate => 1.0.2
 - Reset previous services to ensure compatibility with a new version:
Code:dashmate reset --keep-data 
Setup SSL certificate
There are two ways to setup SSL certificates:- Register in the ZeroSSL service and set your API key. We recommend not using your personal email. The free plan provides free 3 certificates or 3 renewals of 1 certificate. In order to obtain the certificate you need to log-in to your zeroSSL account, press "Developer" on your left and grab the ZeroSSL API Key. Do not create a 'New certificate", just get the API key. Other plans require a credit card to pay. ZeroSSL provides API so Dashmate will update your certificates automatically.
 - You can obtain SSL certificates for your IP address using any available provider and upload certificate files. SSL Dragon and SuperbitHost are selling certificates with crypto.
 
ZeroSSL
- Register on https://zerossl.com/
 - Set your Zero SSL API key:
Code:dashmate config set platform.gateway.ssl.enabled true dashmate config set platform.gateway.ssl.provider zerossl dashmate config set platform.gateway.ssl.providerConfigs.zerossl.apiKey [YOUR-KEY] dashmate ssl obtain 
Files
- Update Dashmate config:
Code:dashmate config set platform.gateway.ssl.enabled true dashmate config set platform.gateway.ssl.provider file - Copy 
bundle.crtandprivate.keyto Dashmate home directory:$HOME/.dashmate/mainnet/platform/gateway/ssl 
Start Dashmate node
- Start the node:
Code:dashmate start - Make sure the node works properly:
Code:dashmate status dashmate status core dashmate status platform 
Upgrade existing Dashmate v1 node
Make sure you are on the right path
		Code:
	
	dashmate --version
	
Install a new Dashmate version
- Stop Dashmate:
Code:dashmate stop - Install dashmate => 1.0.2
 - Reset  previous services to ensure compatibility with a new version:
Code:dashmate reset --keep-data dashmate update 
Start Dashmate node
- Start the node:
Code:dashmate start - Make sure the node works properly:
Code:dashmate status dashmate status core dashmate status platform 
Setup a Dashmate node on a new host
Setup a new node
- Set up a new server
 - Install Dashmate => 1.0.2
 
Sync a full node
To minimize downtime we need to sync the Core blockchain without interrupting the existing node. The easiest way to achieve this is to sync a full node and then switch it to an Evomasternode.- Set up a Dashmate full node to have Core synced first:
Code:dashmate setup - Please choose a network and then “full node”
 - Enable platform-required indexes and then start Dashmate to sync:
Code:dashmate config set core.indexes '["tx"]' dashmate start - Make sure it syncing:
Code:dashmate status core 
Setup evo masternode
- Reset configuration and services, but keep synced data:
Code:dashmate stop dashmate reset --keep-data --hard - Transfer IP address to the new node. Alternatively, you can use a new IP address and update Evomasternode service with the protx update_service_evo command.
 - Set up an Evomasternode:
Code:dashmate setup - Please choose a network -> “evo masternode” -> “already registered” -> “do not import existing data”
 - Import keys of your existing masternode
 - Obtain SSL certificate
 
Shutdown existing masternode
- Please shut down your existing server or 
dashdprocess. - Ensure you don’t have any startup schedulers configured (systemd, cron, etc) if you keep the node running.
 
Start a Dashmate node
- Start a node:
Code:dashmate start - Make sure the node works properly:
Code:dashmate status dashmate status core dashmate status platform 
Setup a Dashmate node on the existing host
Setup a Dashmate node
- Install dashmate >= 1.0.2
 - Set up an Evomasternode:
Code:dashmate setup - Choose a network -> “evo masternode” -> “already registered” -> “import existing data”
 - Import keys of your existing masternode
 - Obtain SSL certificate
 
Stop existing dashd
- Please stop the existing 
dashdprocess. - Make sure you don’t have any startup schedulers configured (systemd, cron, etc).
 
Start a Dashmate node
- Start a node:
Code:dashmate start - Make sure the node works properly:
Code:dashmate status dashmate status core dashmate status platform 
Cleanup old dashd data
Now you can remove old dashd data if all is good
			
				Last edited by a moderator: