Ansible role for status-go https://github.com/status-im/status-go
Go to file
Anton Iakimov 6773a358b9
status-go: support new settings
2024-04-15 15:07:55 +02:00
defaults status-go: support new settings 2024-04-15 15:07:55 +02:00
handlers add role files from infra-eth-cluster repo 2023-01-11 16:43:29 +01:00
meta meta: use full names of Ansible roles 2024-03-21 17:44:42 +01:00
tasks migrate docker compose from v1 to v2 2024-04-15 15:07:12 +02:00
templates status-go: support new settings 2024-04-15 15:07:55 +02:00
README.md migrate docker compose from v1 to v2 2024-04-15 15:07:12 +02:00

README.md

Description

This role configures a status-go history node for archiving whisper envelopes.

Ports

  • 30504 - DevP2P port for peer communicaiton (public)
  • 443 - Alternative peer port for avoiding firewalls (public)
  • 8545 - HTTP JSON RPC port for administration (private)
  • 9305 - Prometheus Metrics port (private)
  • 52525 - Go Performance Profiling port (private)

Configuration

The most important settings would be:

status_go_node_cont_tag: 'deploy-test'
status_go_waku_v1_enabled: true
status_go_waku_v2_enabled: false
status_go_history_enabled: false
status_go_log_level: 'DEBUG'

If you want to provide specific node key you can use:

status_go_node_key: 'abc321...'

Usage

The containers are created using Docker Compose and consist of the status-go node and PostgreSQL database:

admin@mail-01.do-ams3.eth.test:~ % docker ps 
CONTAINER ID        NAMES               IMAGE                              CREATED             STATUS
dca9b2a708c2        status-go-node   statusteam/status-go:deploy-test   2 minutes ago       Up 4 seconds
bfed6063abe9        status-go-db     postgres:9.6-alpine                2 minutes ago       Up 2 minutes

You can manage the containers using docker compose. To re-create them use:

admin@mail-01.do-ams3.eth.test:/docker/status-go % docker compose --compatibility up --force-recreate -d
Recreating status-go-db ... done
Recreating status-go-node ... done

Backups

Backups of the PostgreSQL DB are done using systemd timers and can be viewed using systemctl:

admin@mail-01.do-ams3.eth.test:~ % sudo systemctl -a list-timers 'dump-status-go*'   
NEXT                         LEFT     LAST PASSED UNIT                       ACTIVATES
Wed 2020-04-01 00:00:00 UTC  10h left n/a  n/a    dump-status-go-db.timer dump-status-go-db.service

And ran manually:

admin@mail-01.do-ams3.eth.test:~ % sudo systemctl start dump-status-go-db

And check logs:

admin@mail-01.do-ams3.eth.test:~ % sudo journalctl -o cat -u dump-status-go-db
Starting Dumping mailserver PostgreSQL database...
Created: /var/tmp/backups/mailsrv/status_go_db_dump_20200331130625.sql
Started Dumping mailserver PostgreSQL database.