How To Deploy Your Own Ark Chain On Azure?
This deployment method can be used to jump-start your journey to your own BridgeChain in the process outlined here (Ark Deployer)
- Ubuntu VM in Azure
- Azure PublicIP and Firewall configurations pre-built
- Your own BridgeChain node and Ark Explorer running in < 20 minutes
- Re-usable and customizable deployment script
Script available at Ark Azure on GitHub
1. Virtual Machine Quick Deployment
Navigate to: https://github.com/ArkEcosystem/ark-azure Click on the big blue “Deploy to Azure” button to be taken to Portal.Azure.com. Login with your account (Trial or not, either work).
You should only need to input data for 3 empty fields (Resource Group, Admin Password, and DNS Label), but full details for this section:
Subscription - If not already on your current one. Resource Group - ‘Create New’ only option that will work unless you wish to edit the template yourself. We will use My-Ark-RG for this guide. Location - Choose your desired region, ensuring it allows the subscription you chose above. If in doubt, use the default region when using a Free Trial. Admin Username - This is the account you will sign into the server with. Admin Password - Secure string and has high complexity requirements. Dns Label Prefix - This is the unique DNS name that you are giving to this VM. It is mandatory that this name be unique in the Location Datacenter as a whole (It will self-check after input) - Remember this for easy SSH Ubuntu OS Version - Only option is 16.04-LTS at this time. ARKNSG Name - This is the name for the firewall group to permit SSH as well as Ark Node/Explorer port access to this VM.
Currently, the VM produced is a Standard_A1 size VM. This is a very low-cost resource VM for tutorial purposes (can be scaled-up after deployment if desired or via template adjustment)
Click ‘Agree’, and ‘Purchase’ to begin deployment. Should take 5–10 minutes.
2. Connecting to VM + Ark Deployer
You are welcome to explore your new VM’s Overview, etc, by clicking on ‘Resource Groups’ and finding your new group, and the VM inside. There are lots of configuration items here.
If you do not remember your Public DNS name or IP address (for SSH), go to: Resource Groups > My-Ark-RG > MyUbuntuVM > Overview. This has all the general information you will need.
Connecting via SSH
The Public DNS Name for all VMs follows this pattern: PublicDNSname.locationid.cloudapp.azure.com
So in our instance it would be here: firstarksidechain.southcentralus.cloudapp.azure.com
SSH into your new VM using the Public DNS Name and login with the credentials used during the VM Template deployment page.
Starting here, is the default quick-installation method with the chain being named “MyTest”. If you wish to customize it, please see the bottom-most section of this article.
Run the following command (It’s a one-liner, copy and paste the full contents from here or from the Ark Azure Github page)
curl -o- https://raw.githubusercontent.com/ArkEcosystem/ark-azure/master/script/arkdefaultinstall.sh | bash
This script will complete all of the installation steps to get both the node and explorer running for your BridgeChain, with all the default values. Total installation time is about 10 minutes.
There is 1 important item to locate in the stream of data being output to the console (for wallet control, etc). Your Genesis Passphrase details! Just after the node gets installed, there will be 3 lines of text to record. Copy these lines outlined in red below.
This information will be used later on, as you explore Ark past the deployment phase with Ark Deployer. Copy and paste it right out of the console window for safe keeping.
3. Final result — see explorer in action
This is the Public IP of your server, and the port required to view the Ark Explorer for your BridgeChain (4200). The API should be available on port 4100.
You can highlight the URL straight from the SSH window, such as http://184.108.40.206:4200 and hit CTRL+C to copy it. Paste into a browser, and voila!
4. Customizing Your Deployment
If you wish to customize your deployment of Ark within the bounds of Ark Deployer, download a copy of the Azure Shell script.
Within this file, you’re welcome to edit the list of variables on lines 21–31 and personalize them. These variables all align with an optional parameter of Ark Deployer (See GitHub: https://github.com/ArkEcosystem/ark-deployer#optional-parameters)
You can then run this new version of your script against a new VM, or, you can uninstall the original node/explorer and re-install using the script again. We would recommend just rolling out a new server for ease of use, but that’s your call.
To quickly make a personalized copy of the script (GitHub account)
- Go in browser to: https://raw.githubusercontent.com/ArkEcosystem/ark-azure/master/script/arkdefaultinstall.sh
- Copy the contents of this file (ALL of it; Just CTRL+A and CTRL+C)
- Open a new tab to https://gist.github.com/
- Paste contents of clipboard to this file, and customize lines 21–31 to your hearts content. These variables all align with an optional parameter of Ark Deployer (See GitHub: https://github.com/ArkEcosystem/ark-deployer#optional-parameters).
- Create a ‘Public Gist’ with a .sh file name (required)
Click on “Raw” on the same line as your file name and copy the URL.
You can now, on a prepared VM, run via SSH:
curl -o- paste-raw-gist-URL-here-ending-in.sh | bash
For more in-depth and customizable BridgeChain enjoy following along with the Ark Deployer guide going forward in your Ark journey. Welcome aboard Ark.