Adding the LMDB deployment tools to the stack and installers.

This commit is contained in:
Alexander Blair 2017-06-02 04:39:55 -07:00
parent 76b1c898bf
commit 8337487577
3 changed files with 21 additions and 0 deletions

View file

@ -1,3 +1,11 @@
SUPER IMPORTANT UPDATE UNTIL THIS UPDATE DISAPPEARS
===================================================
None of the following applies if you installed the pool AFTER 6/2/2017, as the installers will do this work for you.
The pool currently uses a version of LMDB that is not supported in Ubuntu 16.04 at this time. Please run: bash deployment/install_lmdb_tools.sh once from the root of the installation to load the LMDB tools, this will put them somewhere handy on your path, and drop a new alias to them so they can be used to introspect your database.
If you had installed the pool prior to 6/2/2017, PLEASE make sure you run a npm install before you restart services.
Pool Design/Theory
==================
The nodejs-pool is built around a small series of core daemons that share access to a single LMDB table for tracking of shares, with MySQL being used to centralize configurations and ensure simple access from local/remote nodes. The core daemons follow:

View file

@ -92,4 +92,5 @@ mysql -u root --password=$ROOT_SQL_PASS < deployment/base.sql
mysql -u root --password=$ROOT_SQL_PASS pool -e "INSERT INTO pool.config (module, item, item_value, item_type, Item_desc) VALUES ('api', 'authKey', '`cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1`', 'string', 'Auth key sent with all Websocket frames for validation.')"
mysql -u root --password=$ROOT_SQL_PASS pool -e "INSERT INTO pool.config (module, item, item_value, item_type, Item_desc) VALUES ('api', 'secKey', '`cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1`', 'string', 'HMAC key for Passwords. JWT Secret Key. Changing this will invalidate all current logins.')"
pm2 start init.js --name=api --log-date-format="YYYY-MM-DD HH:mm Z" -- --module=api
bash ~/nodejs-pool/deployment/install_lmdb_tools.sh
echo "You're setup! Please read the rest of the readme for the remainder of your setup and configuration. These steps include: Setting your Fee Address, Pool Address, Global Domain, and the Mailgun setup!"

View file

@ -0,0 +1,12 @@
#!/bin/bash
cd ~
git clone https://github.com/LMDB/lmdb
cd lmdb
git checkout 4d2154397afd90ca519bfa102b2aad515159bd50
cd libraries/liblmdb/
make -j `nproc`
mkdir ~/.bin
echo ' ' >> ~/.bashrc
echo 'export PATH=~/.bin:$PATH' >> ~/.bashrc
for i in mdb_copy mdb_dump mdb_load mdb_stat; do cp $i ~/.bin/; done
echo "Please run source ~/.bashrc to initialize the new LMDB tools. Thanks for flying Snipa22 Patch Services."