mtlynch.storj

Ansible Role: Storj

Build Status Ansible Galaxy License

The Storj Ansible role installs Storj on a node and automates its initial provisioning steps.

Features

  • Automatically installs storjshare-daemon and all of its dependencies
  • Supports version upgrades/downgrades
  • Automatically creates Storj farmer nodes

Role Variables

Available variables are listed below, along with default values (see defaults/main.yml):

The version of Storj to install:

storj_daemon_version: 5.3.1

Storj farmer configurations. You'll need to specify your Storj payment address (the address where you can receive Storj ERC20 Ethereum tokens) and a share size (e.g. 5GB). To set up multiple farmer configurations, simply add another config to the storj_farmer_configs list:

storj_farmer_configs:
- payment_address: null
  share_size: null
  rpc_address: "127.0.0.1"
  rpc_port: 45015

Username and group to use for Storj daemon:

storj_user: storj
storj_group: "{{ storj_user }}"

Directories for Storj files:

storj_dir: /opt/storj
storj_farmer_config_dir: "{{ storj_dir }}/configs"
storj_farmer_share_dir: "{{ storj_dir }}/shared"
storj_logs_dir: "{{ storj_dir }}/logs"

Dependencies

Example Playbook

example.yml

---
- hosts: all
  become: True
  become_method: sudo
  become_user: root
  vars:
    storj_farmer_configs:
      # Change payment_address to your own Storj ERC20 address.
      - payment_address: "0x161441Efd42171687dd1468A9e23E74226541c38"
        rpc_address: "{{ ansible_host }}"
        rpc_port: 6000
        storage_dir: /mnt/path1
        share_size: 5GB
  roles:
    - role: mtlynch.storj

Running Example Playbook

To run the example playbook, example.yml (above), run the following commands:

ansible-galaxy install mtlynch.storj
ansible-playbook example.yml

Demo

The demo video below shows ansible-role-storj installing Storj to a remote system and spawning two farmer nodes, each with independent settings and payout addresses:

asciicast

License

MIT

Author Information

This role was created in 2018 by Michael Lynch.

About

Storj distributed storage network

Install
ansible-galaxy install mtlynch.storj
GitHub repository
License
mit
Downloads
120