Kite module for crypto-nodes deployment
Supported currencies:
ETH and ERC20 tokens - Geth.
BTC - Bitcoind.
BCH - Bitcoin ABC.
LTC - Litecoind.
Dash - Dashd.
Ripple - Rippled
Do not apply Terraform configuration from the environment
Fill in the configurations of your nodes deployment
$> $EDITOR config/environments/<env>/vars.kite-opex.yml
Find this block in the file and fill it in with the correct options
cryptonodes:
  ethereum:
    enabled:         true      # Set to false if you don't want it to be deployed
    client:          "geth"    # Available options: geth, parity.
    network:         "rinkeby" # Available options: rinkeby, kovan, mainnet.
    disk_size:       "30"
    hostname:        "eth.helioscloud.com"
    rpcport:         "8545"
    port:            "30303"
    whitelisted_ips: ["0.0.0.0/0"]
  ripple:
    ...
You need to build images for cryptonodes you want to deploy (ethereum bitcoind bitcoincash litecoind dashd rippled wcg):
$> bundle exec rake "cryptonodes:build[image]" # This will build the exact image you specify
$> bundle exec rake "cryptonodes:build:all"    # This will build all images enabled in config/environments/stage/vars.kite-opex.yml
All images will be stored in gcp, you do not need to build an image if you have one already.
After build finishes, put image (smth like geth-1524260905) to config/environments/<env>/vars.kite-opex.yml:
variables:
  terraform:
    ethereum_image: geth-1524260905
Make sure you disabled cryptonodes you do not want to deploy (enabnled: false)
Now you can deploy cryptonodes:
kite terraform init
kite terraform apply
Configuration for each cryptonode you can find in:
$> cat cryptonodes/images/(cryptonode).json                     # Configuration for cryptonode image
$> cat cryptonodes/resources/(cryptonode)/(cryptonode).conf     # Configuration for cryptonode image
$> cat cryptonodes/resources/(cryptonode)/(cryptonode).service  # Configuration for cryptonode image
$> cat cryptonodes/resources/scripts/install-(cryptonode).sh    # Bash script that packer uses to build cryptonode image
After successfull deployment, crypto node synchronization will start and take a while. Please be patient.
You can find more information about your deployment using gcloud or Google Cloud Platform UI.
$> gcloud compute instances list
NAME            ZONE            MACHINE_TYPE  PREEMPTIBLE  INTERNAL_IP  EXTERNAL_IP      STATUS
image-xxxx      xxxxxx-xxxxx-x  xx-xxxxxxxx-x              10.xxx.x.x   35.xxx.xxx.xxx   RUNNING
You can also see your deployed cryptonodes using
$> kite t show
Among other created resources you'll see deployed cryptonodes on virtual machines
If you want to tear down a cryptonode you can do:
$> kite t destroy (cryptonode VM) # you can find the exact VM by doing `kite t show`