PRODUCTS AND SUPPORT


How to get Ethrereum Full Node on AWS




This section describes how to launch and connect to Ethrereum Full Node in Amazon Web Services (AWS).

  1. Open Ethereum Full Node VM listing on AWS marketplace

  2. /img/aws/ethereum-fullnode/marketplace.png

  3. Click on Continue to subscribe.
    • Login with your credentials and follow the instruction.click on Continue to configuration
    • Select a Region where you want to launch the VM(such as US East (N.Virginia))

    • /img/aws/ethereum-fullnode/region.png

    • Choose Action: You can launch it through EC2 or from Website.(Let's choose Launch from website)

    • /img/aws/ethereum-fullnode/launch.png

    • Optionally change the EC2 instance type. (This defaults to t2.large instance type, 2 vCPUs and 8 GB RAM.)

    • Optionally change the network name and subnetwork names.

      /img/aws/ethereum-fullnode/network.png

    • Select the Security Group. Be sure that whichever Security Group you specify have ports 22 (for ssh) and 3389 (for RDP) exposed.
    • Be sure to download the key-pair which is available by default, or you can create the new key-pair and download it.
    • /img/aws/ethereum-fullnode/SG.png

    • Click on Launch..
      Ethereum Full Node will begin deploying.
  1. A summary page displays.To see this instance on EC2 Console click on EC2 Console link.

  2. /img/aws/ethereum-fullnode/deployed.png

  3. On the EC2 Console page, instance is up and running. To connect to this instance through putty, copy the IPv4 Public IP Address

  4. /img/aws/ethereum-fullnode/public-ip.png

  5. Open putty, paste the IP address and browse your private key you downloaded while deploying the VM, by going to SSH->Auth , click on Open. Enter ubuntu as userid

  6. /img/aws/ethereum-fullnode/putty-01.png

    /img/aws/ethereum-fullnode/putty-02.png

  7. Once connected, change the password for ubuntu user using below command

  8. sudo passwd ubuntu

    /img/aws/ethereum-fullnode/ssh.png

  9. Now the password for ubuntu user is set, you can connect to the VM's desktop environment from any local Windows Machine using RDP protocol or Linux Machine using Remmina.

    From your local windows machine, goto "start" menu , in the search box type and select "Remote desktop connection". In the "Remote Desktop connection" wizard, copy the public IP address and click connect

  10. /img/aws/ethereum-fullnode/rdp.png

  11. This will connect you to the VM's desktop environment. Provide the username (e.g "ubuntu") and the password set in the above "Reset password" step to authenticate. Click OK

  12. /img/aws/ethereum-fullnode/rdp-login.png

  13. Now you are connected to the out of box Ethereum Full Node environment via Windows Machine.

  14. /img/aws/ethereum-fullnode/rdp-desktop.png

  15. To connect using RDP via Linux machine, first note the external IP of the VM from VM details page,then from your local Linux machine, goto menu , in the search box type and select "Remmina".

    Note: If you don't have Remmina installed on your Linux machine, first Install Remmina as per your linux distribution.


  16. /img/gcp/common/remmina-search.png

  17. In the "Remmina Remote Desktop Client" wizard, select the RDP option from dropdown and paste the external ip and click enter.

  18. /img/gcp/common/remmina-external-ip.png

  19. This will connect you to the VM's desktop environment. Provide "ubuntu" as the userid and the password set in above reset password step to authenticate. Click OK

  20. /img/gcp/common/remmina-rdp-login.png

  21. Now you are connected to out of box Ethereum Full Node environment via Linux machine.

  22. /img/aws/ethereum-fullnode/rdp-desktop.png

  1. Ethereum Full Node directories:
  2. Ethereum home directory location is /home/ubuntu/ethereum

    /img/aws/ethereum-fullnode/ethereum-directory.png

    Data directory location is /home/ubuntu/ethereum/datadir

    /img/aws/ethereum-fullnode/ethereum-datadir.png

  3. Monitoring and managing node sync process :
  4. The VM automatically starts the sync process on startup. To verify if the sync is in progress, run below commands

    ps -ef|grep geth

    If sync is in progress , you will see the below highlighted process running

    /img/aws/ethereum-fullnode/sync-process.png

    You can also verify the sync process by monitoring the sync log as shown below

    tail -f /var/log/cloud-init-output.log

    /img/aws/ethereum-fullnode/logs.png

    To stop the sync process, simply run below command :

    sudo killall -HUP geth

    /img/aws/ethereum-fullnode/stop-sync.png

    To restart the sync process, run below command .
    Note: Make sure below command is executed from terminal inside Remote desktop GUI to avoid process termination

    sudo nohup geth --config /home/ubuntu/ethereum/eth_config.toml >> /var/log/cloud-init-output.log 2>&1 &

    /img/aws/ethereum-fullnode/restart-sync.png

  5. Tracking sync progress
  6. You can track the sync progress by attaching to the running geth console and running the monitoring script as shown below . Note that if the progress is shown 99% then the node is mostly synced:

    sudo geth attach --datadir /home/ubuntu/ethereum/datadir/

    /img/aws/ethereum-fullnode/geth-attach.png

    this will connect to the console, then run

    loadScript("/home/ubuntu/ethereum/sync_status.js")

    /img/aws/ethereum-fullnode/loadscript.png

  7. Accessing Metamask Ethereum wallet
  8. The VM comes with Metamask the most popular Ethereum wallet , preinstalled in Firefox browser.
    Connect to the VM via Remote desktop , open the Firefox Browser and you will see metamask plugin in the browser

    /img/aws/ethereum-fullnode/firefox-metamask.png

    To know more on how to use Metamask, please follow below links: