Ansible role for nimbus-fluffy client https://github.com/status-im/nimbus-eth1
Go to file
Jakub Sokołowski a97db210ce
consul: use rpc.sh and discv5_nodeInfo for check
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2022-03-16 00:57:13 +01:00
defaults parametrize name of service to restart after build 2022-03-08 15:48:47 +01:00
files add first working version 2022-03-04 13:27:09 +01:00
handlers add first working version 2022-03-04 13:27:09 +01:00
meta add Ansible metadata 2022-03-04 11:56:24 +01:00
tasks consul: use rpc.sh and discv5_nodeInfo for check 2022-03-16 00:57:13 +01:00
templates consul: use rpc.sh and discv5_nodeInfo for check 2022-03-16 00:57:13 +01:00
README.md add first working version 2022-03-04 13:27:09 +01:00

README.md

Description

This role provisions a Nimbus Fluffy Eth1 node.

Introduction

The role will:

Ports

The service exposes three ports by default:

  • 9009 - DevP2P UDP peering port. Must ALWAYS be public.
  • 9200 - Prometheus metrics port. Should not be public.
  • 9900 - JSON RPC port. Must NEVER be public.

Installation

Add to your requirements.yml file:

- name: infra-role-nimbus-fluffy
  src: git+git@github.com:status-im/infra-role-nimbus-fluffy.git
  scm: git

Configuration

The crucial settings are:

# branch which should be built
nimbus_fluffy_repo_branch: 'master'
# ethereum network to connect to
nimbus_fluffy_network: 'mainnet'
# optional setting for debug mode
nimbus_fluffy_log_level: 'DEBUG'

Management

Service

Assuming the stable branch was built you can manage the service with:

sudo systemctl start nimbus-fluffy-master
sudo systemctl status nimbus-fluffy-master
sudo systemctl stop nimbus-fluffy-master

You can view logs under:

tail -f /data/nimbus-fluffy-master/logs/service.log

All node data is located in /data/nimbus-fluffy-master/data.

Builds

A timer will be installed to build the image:

 > sudo systemctl list-units --type=service '*nimbus-fluffy-*'
  UNIT                         LOAD   ACTIVE SUB     DESCRIPTION
  nimbus-fluffy-master.service loaded active running Nimbus Eth1 Fluffy node (master)
  nimbus-fluffy-debug.service  loaded active running Nimbus Eth1 Fluffy node (debug)

To rebuild the image:

 > sudo systemctl start build-nimbus-fluffy-master
 > sudo systemctl status build-nimbus-fluffy-master
 ● nimbus-fluffy-master-build.service - Build nimbus-fluffy-master
     Loaded: loaded (/etc/systemd/system/nimbus-fluffy-master-build.service; enabled; vendor preset: enabled)
     Active: inactive (dead) since Wed 2021-09-29 12:00:12 UTC; 2h 15min ago
TriggeredBy: ● nimbus-fluffy-master-build.timer
       Docs: https://github.com/status-im/infra-role-systemd-timer
    Process: 1212987 ExecStart=/data/nimbus-fluffy-master/build.sh (code=exited, status=0/SUCCESS)
   Main PID: 1212987 (code=exited, status=0/SUCCESS)

Sep 29 12:00:12 build.sh[1213054]: HEAD is now at f782327f reimplement engine API rpc kiln spec v2
Sep 29 12:00:12 build.sh[1212987]:  >>> Binary already built
Sep 29 12:00:12 systemd[1]: nimbus-fluffy-master-build.service: Succeeded.
Sep 29 12:00:12 systemd[1]: Finished Build nimbus-fluffy-master.

To check full build logs use:

journalctl -u build-nimbus-fluffy-master.service

Requirements

Due to being part of Status infra this role assumes availability of certain things:

  • The iptables-persistent module