Core Server Types

Client server

The client server is responsible for the customers interactions with Attestant and their validators. It handles a range of operations, including handling deposits, reporting and alerting.

Install PostgreSQL

The customer data for their validators is coordinated through PostgreSQL using two main databases: chain DB and ops DB. The first is for validators, the second is for operational data (such as customer information).

Initial configuration and settings

Open /ops/eth2-client/setup and view in "Raw" mode for easier text manipulation. Open a terminal and use SSH to login on to the box as root, e.g.

ssh root@client-eu01.attestant.io

Work through the script. As you reach each new section ensure you read the notes below before proceeding to ensure you understand why you are doing these commands.

Install from apt repository

The PostgreSQL application releases are provided through the standard Linux package manager.

Configure PostgreSQL

Attestant requires customised settings which are held in /etc/postgresql/12/main/conf.d/attestant.conf for PostgreSQL v12.

At this point no databases should be installed as there are no validating servers in place to provide data.

Install Operations support

To track the beacon nodes on each of the servers, an operations database is required. This is used by beacond, attestantd, reportd, financialsd, opsd, and acli.

Configure ops DB user

The Ops DB has its own user within PostgreSQL to isolate it from other database applications.

Create Ops DB in PostgreSQL

It is now necessary to create the ops DB schema to support the various daemons coordinating with each other. Typically this will require a secure copy of the raw data from the private Attestant repository to a local machine and then back up to the server:

wget https://raw.githubusercontent.com/attestantio/ops/master/client/schema.sql

scp schema.sql root@client-eu01.attestant.io:/root/client/