MultiversX Full Observing Squad

In order to integrate with the MultiversX Network and be able to broadcast transactions and query blockchain data in an optimized approach, one needs to set up an on-premises Observing Squad. An Observing Squad is defined as a set of N Observer Nodes (one for each Shard, including the Metachain) plus an MultiversX Proxy instance which will connect to these Observers and provide an HTTP API (by delegating requests to the Observers).

Creating an App using the Control Panel

Click the Deploy to DigitalOcean button to create a Droplet based on this 1-Click App. If you aren’t logged in, this link will prompt you to log in with your DigitalOcean account.

Deploy to DO

Creating an App using the API

In addition to creating a Droplet from the MultiversX Full Observing Squad 1-Click App using the control panel, you can also use the DigitalOcean API. As an example, to create a 4GB MultiversX Full Observing Squad Droplet in the SFO2 region, you can use the following curl command. You need to either save your API access token) to an environment variable or substitute it in the command below.

curl -X POST -H 'Content-Type: application/json' \
         -H 'Authorization: Bearer '$TOKEN'' -d \
        '{"name":"choose_a_name","region":"sfo2","size":"s-2vcpu-4gb","image": "multiversx-multiversxfullob"}' \
        "https://api.digitalocean.com/v2/droplets"

Getting Started After Deploying MultiversX Full Observing Squad

In full history mode all the data from genesis is retained. This enables querying historical data.

Since the full-archive mode requires additional storage capacity, please add an additional storage volume of 1TB and select the “Automatically Format and Mount” option. This volume will be used to store the blockchain data.

After boot, a systemd service will start to download blockchain archives and once that is finished another service will start the docker compose and run all the MultiversX Observers shards in full-archive mode .

The following tools are available at this path : /opt/multiversx-observing-squad-tools/

./stop_stack.sh      #-- stops the observing squad stack
./start_stack.sh     #-- starts the observing squad stack
./check_stack_sync_status.sh    #-- get node syncronization status
./check_stack_node_version.sh   #-- get stack version information
./upgrade_stack.sh   #-- upgrade stack version

Once the stack is in sync you can query the proxy for information :

curl -s -k localhost:8079/network/config

Full list of supported operations in snapshotless mode can be found here: https://gateway.multiversx.com/