Nxt extensions
Shell

README.md

Nxt Kit

  • Nxt Kit is an easy way to deploy/update Nxt on any number of your VPS or Dedicated Servers.
  • !!! For the most of the people it is more convenient not to manage nodes by themselves.

Features

  • Supports almost any Linux distribution.
  • Hallmarks nodes, changes config to make node public.
  • Detects malfunctioning and automatically restarts client.

Usage

To deploy new version of Nxt, download it via safe-nxt-download.sh, check file signature and execute playbook.

cd ~/nxt-kit/distrib
./safe-nxt-download.sh 1.1.4 # replace with the latest version. CHECK FOR OK
ansible-playbook -f 10 -v ~/nxt-kit/playbooks/deploy.yml

You can also save the outbound traffic of the control machine by downloading a snapshot from Nxt PeerExplorer before running the playbook.

ansible nxts -m get_url -a "url=https://www.dropbox.com/s/CHANGE_THIS_URL/nxt_db_peerexplorer.zip?dl=1 dest=~/nxt-kit-deployed/distrib/chain-original-conf.zip force=yes" -f 10 -v

Installation

On managed VPS nodes

  1. Satisfy these requirements. For the latest Ubuntu/Debian/RedHat it would work out of the box.
  2. Configure SSH access using key authentication without password.
  3. If you are not paranoid
  4. If you are paranoid
    • install oracle-java8-installer and unzip packages manually.

On control machine

  1. Install ansible and openssh-client.
  2. Add your servers to inventory group nxts.
  3. Add exec ssh-agent bash to the end of ~/.profile.
  4. SSH and exit to each of your managed node (to cache their public keys).
  5. Add ssh-add ~/.ssh/PRIVATE-KEY-FOR-REMOTE-SERVER > /dev/null 2>&1 to the end of the ~/.bashrc for each private key for remote server.
  6. Relogin.
  7. Clone this repo to ~/nxt-kit via git clone https://github.com/nxt-ext/nxt-kit.git ~/nxt-kit.
  8. Put a valid zipped nxt_db folder as ~/nxt-kit/distrib/chain-original-conf.zip (optional). The archive from Nxt PeerExplorer is OK.
  9. If you was paranoid on managed nodes installation

Contacts

  • There is a thread on NXT Forum for this tool. Feel free to discuss it there.
  • Also you can PM me (EmoneyRu) on BCT or NXT Forum.

Donations