🌍Evernode: Become a Pioneering Host

ilaNihas 🌍
13 min readJan 16, 2024

--

© by Evernode

What is Evernode? — An Overview

Evernode is set to launch as a Layer-2 platform on the Xahau Network, with the objective of integrating smart contracts and decentralized blockchain applications into the XRP ecosystem. By merging the HotPocket protocol with the upcoming Hooks amendment, Evernode enables XRP Ledger Accounts to operate as simplified smart contracts. This integration prepares the way for a worldwide, unrestricted, and decentralized node network, incentivized to support decentralized applications (dApps) in a variety of languages and scales with efficiency and adaptability. By addressing the challenges such as excessive fees, sluggish transaction times, and language and functionality limitations that early dApp platforms faced, Evernode seeks to catalyze a wider embrace and utilization of dApps.

If you’ve previously owned XRP on the XRP ledger, through the Xaman app or similar self-custodial wallets, you might have been eligible for an airdrop of Evers (Ticker: $EVR), the native token of the Evernode Layer 2 platform. However, to qualify, you needed to have registered your XRPL wallet address on their website by December 11, 2023. So, if you’re just learning about this now, unfortunately, the deadline has passed. Additionally, if you operated a node on the Evernode testnet, you could have received an airdrop by submitting your testnet wallet details.

This guide will cover the essentials of setting up and maintaining your host in the Evernode ecosystem. We’ll explore the system requirements needed, various hosting options available, how to keep your host running smoothly, the potential rewards you can earn, and much more.

Gathering the Essentials: Preparing for Your Evernode Setup

Let’s begin by outlining all the essentials you’ll need to get started. While this list may appear extensive, it’s quite manageable once you get into it:

  • An understanding of technical concepts
  • A wallet compatible with the Xahau Network, such as XUMM
  • A domain name dedicated to your host
  • A public email address for contact purposes
  • A minimum of 500 $EVR token to cover the registration fee for the registry hook (when you deregister your node, you will receive a return of 250 $EVR tokens)
  • Adequate $XAH token to maintain the reserves and cover ongoing transaction costs associated with your host
  • Linux-based machine, either physical or virtual. The specific requirements are:

- Operating System: Ubuntu 20.04 (64 bit) is a must
- RAM: At least 2GB
- Swap Memory: A minimum of 2GB
- Disk Space: Minimum 4GB of free space for the home directory

Part 1: Order and configure your VPS

To get started with installing your node, you’ll first need to rent a VPS (Virtual Private Server). Using a VPS offers several advantages, such as enhanced performance, scalability and reliability. I’ll guide you through the process of renting a VPS at a lower cost, and show you how to configure it. Follow the steps below to get your VPS ready for the node installation. Research VPS providers: Take some time to explore different VPS providers available in the market. Consider factors like pricing, reputation, and customer reviews to find the right fit for your needs. Look for plans that offer the appropriate amount of resources (CPU, RAM, storage) to support your node. Contabo is my preferred choice due to their combination of affordable pricing, reliable performance, and user-friendly interface.

I personally use and trust Contabo for my blockchain nodes. I’ve recently joined their affiliate program to recommend their services. If you decide to use my affiliate links for Contabo, you’ll be supporting my work at no extra cost to you. This support is important for continuing our journey together in the fascinating world of crypto, and using these affiliate links is a direct and impactful way to back my efforts. Thank you very much for your support!

Given the modest hardware requirements, I suggest opting for the Cloud VPS 1package, as it offers a suitable balance of performance and efficiency for these needs.

I will initially select a rental period of 1 month, with the flexibility to extend it later if needed:

Make sure to choose the option “European Union (Germany)” for the best latency:

For optimal storage, I suggest opting for a 50 GB NVMe storage option, as this project has modest disk space requirements:

Navigate to either the “Popular” or “OS” tab and choose the standard Ubuntu 20.04 image from there:

To prioritize security, I highly recommend to generate a strong password and securely store it to ensure maximum protection:

For the final step, it’s recommended to leave the sections titled “Object Storage”, “Networking”, and “Add-Ons” in their default state without any modifications. If you are new to Contabo, please create an account; otherwise, login using your existing credentials. Provide your personal data by filling in the required fields. Complete the remaining fields with your personal information, and click the “Next” button to proceed with the payment. After successfully completing the payment for your order, you will receive an initial email. Within approximately 15 minutes, you will receive a second email containing all the information needed to connect to your VPS.

Part 2: Connect to your VPS via SSH

Download and install most recent edition of PuTTY by visiting the official website:

You will find the IP adress of your VPS in the second email. Launch PuTTY, enter the IP address of your VPS and click “Open”:

Once the server interface is open, you will be prompted to provide login details; simply enter “root” as the user and use your chosen password:

Congratulations! You are now successfully logged into your server:

Part 3: Preparations

To continue, we can update the packages by running the following commands in the terminal. The first part of the command (sudo apt update) updates the package lists for upgrades, and the second part (sudo apt upgrade -y) actually performs the upgrades with the “-y” flag allowing for automatic confirmation of prompts during the upgrade process:

sudo apt update && sudo apt upgrade -y

Part 4: Creating a Swap File

The initial step involves creating a swap file in your system’s filesystem. Given the recent VPS installation and the availability of sufficient hard drive space, you can utilize the ‘fallocate’ program. This allows for the rapid creation of a ‘swapfile’ in the root (/) directory. The size of this file should be tailored to match your server’s memory capacity, such as 4 GB of RAM, but feel free to adjust it according to your server’s specific needs.

sudo fallocate -l 4G /swapfile

To confirm that the intended amount of space has been allocated correctly, enter the command:

ls -lh /swapfile

With the correct file size established, the next step is to convert it into swap space. This involves securing the file so only root users can read it, enhancing security by preventing normal user access. To do this, set the file permissions exclusively for the root:

sudo chmod 600 /swapfile

To set up the swap space, use the command:

sudo mkswap /swapfile

This command will configure the file as swap space. Once done, you can enable it with:

sudo swapon /swapfile

To confirm that the swap is active, check its status using:

sudo swapon --show
Output:
NAME TYPE SIZE USED PRIO
/swapfile file 4096M 0B -2

To ensure the swap file remains active after a reboot, we need to add it to the /etc/fstab file. Start by backing up the current fstab file:

sudo cp /etc/fstab /etc/fstab.bak

Then, append the swap file information to /etc/fstab:

echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

The swappiness parameter determines how often your system uses swap space instead of RAM, with a range from 0 (less frequent swapping) to 100 (more frequent). Lower values mean less reliance on swap, enhancing performance, as swap interactions are slower than RAM. For desktops, a swappiness of 60 is typical, but servers may benefit from a value closer to 0. Check current swappiness:

cat /proc/sys/vm/swappiness

Set a new swappiness value (e.g., 20):

sudo sysctl vm.swappiness=20

To make changes permanent, add vm.swappiness=20 to /etc/sysctl.conf. To optimize your system’s file system data caching, consider adjusting the vfs_cache_pressure setting. This value determines how much the system prioritizes caching inode and dentry information. A lower value, like 50, means the system retains inode information in the cache longer, which can be beneficial due to its frequent access needs. To modify this value. View the current setting with:

cat /proc/sys/vm/vfs_cache_pressure

Change it to a lower number (e.g., 50) for the current session:

sudo sysctl vm.vfs_cache_pressure=50

To make the change permanent, add vm.vfs_cache_pressure=50 to the /etc/sysctl.conf file, similar to how you would for the swappiness setting.

Part 5: Acquiring $EVR and $XAH Tokens

Initially, you’ll need 500 $EVR tokens and a certain amount of $XAH tokens. The required quantity of $XAH tokens is influenced by the size of the VPS you select during installation and the number of lease contracts you plan to establish. For a setup with 6 leases, an estimate of 15–20 $XAH tokens should be enough. It’s advisable to have extra $XAH tokens on hand for gas fees and to cushion against potential price increases. These tokens can be acquired from various exchanges. While centralized exchanges like Bitrue are an option, decentralized exchanges like xmagnetic are also available. Given that withdrawals on Bitrue will become available tomorrow, I’ve decided to go with xmagnetic for now. It’s a good idea to register with Bitrue regardless, as you may find it useful for future withdrawals.

  1. Transfer your $XRP tokens into your XUMM wallet on the XRP Ledger
  2. Use xmagnetic to bridge your $XRP to the Xahau network, which will then automatically convert them into $XAH tokens
  3. Finally, swap your $XAH tokens for 500 $EVR tokens.

Part 6: Getting your Domain and Email address

Domain Name: Owning a domain name (like host.myevernode.com) is essential for accessing your host and is a prerequisite for SSL support, which is crucial for secure communication with smart contracts on your host. Evernode uses Let’s Encrypt for hassle-free SSL certificate issuance. It’s important to avoid domain names linked to multiple IP addresses, as these aren’t suitable for this purpose.

Email Address: During your host’s setup, you’re required to provide an email address. This address will be publicly visible, as it gets listed on your host registration on the Hook and is displayed on your host’s dashboard. Its primary functions are:

  1. Serving as a public contact point for inquiries or issues related to your host.
  2. If you choose Let’s Encrypt’s automatic SSL setup, this email is used for SSL certificate registration and will receive notifications about SSL renewals.

You have the freedom to select any domain and email provider that suits your preferences. When making your choice, consider factors like customer service quality and pricing. It’s difficult for me to suggest a specific domain and email provider as there are numerous options available. However, based on my positive personal experiences, I chose IONOS for my needs. Once you’ve purchased your domain, you’ll need to configure its DNS settings. This involves creating an A-Record that points to your node’s IP address. The configuration setup should resemble the following (substitute ‘host’ with your subdomain’s name).

Part 7: Setting Up Your Evernode

After a lot of steps, we finally reached the fun part installation. Luckily this process is really straightforward. We will begin with executing this command:

curl -fsSL https://raw.githubusercontent.com/EvernodeXRPL/evernode-resources/main/sashimono/installer/evernode.sh | sudo bash -s install

Initially, it’s crucial to verify that your system is currently free of any critical workloads or data, as these might be impacted by the installation process. Next, the installation routine will assess whether your system meets the requirements to become an Evernode host. Following this, you’ll need to review and agree to the license agreement, and confirm that you are undertaking a new installation.

In the following step, you’ll finalize the environment configuration. This includes confirming your intention to connect to the default rippled server at the address wss://xahau.network:

At this stage in the setup, you’ll need to input the contact email address and your previously created domain (e.g., “host.myevernode.com”) from step 5. The installation will utilize Let’s Encrypt for domain verification and SSL certificate creation. During this process:

  • To enable Let’s Encrypt automatic SSL, input “Y” when prompted
  • For agreeing to receive SSL certificate notifications from Let’s Encrypt at your email address, enter “Y”
  • To accept the Terms of Service, respond with “Y”
  • If asked about assigning an IPv6 subnet, choose “n”
  • To confirm this allocation, enter “Y”
  • For using standard ports, respond with “Y”
  • When specifying the lease amount in $EVR tokens for your contract instances, type “0.00001”
  • To use the default key file path, enter “Y”

By default, your host’s secret key is stored in the directory /home/sashimbxrpl/.evernode-host/.host-account-secret.key. It's crucial to note that if this file is lost for any reason, such as operating system or software glitches, or hardware malfunctions, you will permanently lose access to your host account and any associated funds. This key is irrecoverable by anyone, emphasizing the importance of securely backing up a copy of the secret key yourself.

Next, you’ll need to transfer the specified amount of $XAH tokens (18.8 $XAH in my base with 12 lease contracts) and a minimum of 500 $EVR tokens to your Evernode host. This can be done using the XUMM wallet. Keep in mind that in some instances, you may need to establish a Trustline for the $EVR token in the sending wallet. The Trustline for the receiving wallet should be automatically set up during the installation process. To send the funds, use the XUMM app to scan the displayed QR Code.

When prompted to subscribe to automatic updates, type “Y” to agree. Next, you’ll be asked to confirm if you wish to start the installation process; proceed by entering “Y” once more. Once the installation completes and all necessary packages are installed, you’ll be prompted to reboot. To do so, enter “Y” for the final time:

Great job! Your Evernode installation is now successfully complete :-) Next, we’ll verify the status of our node by using the command “evernode status”. After a short wait, you should see your Host status, Sashimono agent status and Sashimono message board status displayed as “active”:

Part 8: Tracking and Managing Your Host’s Performance

I recommend visiting the Evernode Dashboards at the following links:

  1. https://xahau.xrplwin.com/
  2. https://node01.evernode.network:3000/

Feel free to explore both options and choose the one that suits your preferences. These dashboards provide insights into your Evernode’s performance, including earnings, total hosts count, distributed $EVR per Node per Day, and various other metrics.

Part 9: Rewards

Check out the reward schedule for operating an Evernode. Notably, the rewards for the first six weeks, beginning on January 15, 2024, are quite substantial, with each epoch seeing a halving of these rewards:

It’s important to note that the weekly rewards for running an Evernode are subject to decrease as the number of hosts increases. Currently, with around ~600 hosts and the likelihood of reaching 2000 soon, partly due to many operators running multiple Evernodes, the peak $EVR rewards are expected to be reached in the near future:

I recommend staying informed about Evernode by following their updates on Twitter and joining their Discord community. This way, you can keep up with all the latest news and information. If you encounter any issues, I recommend consulting the official documentation first. If you still need assistance, feel free to post your questions in the “host-chatroom” channel on the official Discord server. Alternatively, you’re always welcome to reach out to me directly for assistance.

Hey everyone, I’m excited to share that I’ve partnered with Dotcom Canvas, a standout German brand known for its exquisite crypto-themed wall art. Their acrylic glass pieces are particularly impressive.

Discover their unique collection via my affiliate link. For a special treat, use the code CRYPTOTRIBE at checkout to get a 15% discount. To see these art pieces in their full glory, take a peek at this promotional video. It’s a great way to visualize how they could elevate your space.

Let’s enjoy some awesome crypto art together!

Disclosure: By using my affiliate link for purchases, I receive a commission.

About me

Hi! I’m ilaNihas, a big football fan (or soccer, if you prefer). After 13 years in IT, I paused my career to explore crypto, blockchain, and Web3. I’m fascinated by the potential and constantly searching for interesting projects, airdrops, and new nodes to explore. Join me as I combine my passions for sports, writing, and tech. Let’s dive into the world of crypto and blockchain together!

Thanks for reading! Please share your feedback in a comment and follow me on my socials if you enjoyed the article. I’ve also set up a Discord community where we can get together and have discussions about interesting crypto-related topics. You’re welcome to join us and be part of the conversation → https://discord.gg/zN4dH35JJZ

Disclaimer

Please note that the content provided on this blog is intended solely for educational, informational, and entertainment purposes and should not be considered as financial advice. In summary, always do your own research, evaluate the information critically, and seek professional advice when necessary. Stay informed, exercise caution, and make well-informed decisions based on your own unique circumstances.

--

--

ilaNihas 🌍

Crypto reptile | Join us on this ride through the cryptoverse, as we explore the strangest corners of the blockchain -> https://discord.gg/zN4dH35JJZ