суббота, 25 августа 2018 г.

Запуск Storj Share для Linux

В данной статье, мы разберем вопрос запуска Storj Share для заработка с помощью лишнего пространства на наших жестких дисках. Гайд написан для пользователей Linux, именно данная ОС рекомендуется для постоянного использования в подобных делах.
Группа Storj Вконтакте: https://vk.com/storjproject
Неофициальные минимальные системные требования для установки Storj Share Daemon:
  • 1 гигабайт оперативной памяти (Критический минимум)
  • 10 гигабайт на жестком диске
  • Стабильное подключение к интернету,  +10 мбит/с
  • Средненький процессор, не рекомендуется использование Intel Atom и тому подобных.
  • Свежая ОС семейства Linux
  • Белый IP, с возможностью проброса порта вашей машины во внешний мир.
Хотелось бы дополнить. По мере наполнения вашего хранилища, растет и нагрузка, от загруженности вашего процессора зависит дельта (задержки с сетью Storj), что в последствии приводит к возможной потере контрактов.  Вы можете использовать VDS для создания ноды в Storj, но учтите, все может захлебнуться в любой момент.

Установка Storj Share Daemon в Linux

Шаг 1. Обязательно обновляем репозитории системы из под привилегированного пользователя, например root.
Для Debian & Ubuntu:
apt-get update
Для Centos:
yum update

Шаг 2. Устанавливаем необходимые зависимости для установки Storj Share Daemon.
Для Debian & Ubuntu:
apt install git python build-essential
Для Centos:
yum groupinstall ‘Development Tools’

Шаг 3. Создаем пользователя с произвольным именем, из под которого будет работать Storj Share Daemon(Обязательный пункт).
Добавить пользователя систему:
adduser имяпользователя
Сменить пароль для пользователя:
passwd имяпользователя

Шаг 4. Переходим под созданного пользователя, Вы можете заново подключиться к сессии используя новые данные, или перейти на нового пользователя с помощью команды su (при этом нужно будет сменить директорию на домашнюю).
Устанавливаем NVM.
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash

Закройте терминал, откройте новый. Установите NPM.
nvm install --lts
Шаг 5. После успешной установки NPM & NVM, устанавливаем Storj Share Daemon из репозиториев.
npm install --global storjshare-daemon
Ожидаем компиляции.
Поздравляем! Если Вы сделали все правильно, Storj Share установлен на ваш сервер. Далее необходимо настроить конфиг storj ноды и запустить его.

Запуск Storj Share Daemon в Linux

Шаг 1. Ознакомимся с доступными командами, используем пользователя под которым устанавливали Storj ранее.
Все достаточно просто, чтобы узнать, какими командами взаимодействовать с Storj, используйте:
storjshare —help

Шаг 2Запускаем Storj Share Daemon, данный процесс требуется для работы наших нод.
storjshare daemon

Шаг 3Создаем конфиг ноды для Storj Share.
Пример создания простого конфига, без дополнительных настроек.
storjshare create --storj <Адрес_Кошелька> --key <Приватный_Ключ> --storage <Адрес_Папки_или_Диска> --size <Размер> --noedit
<Адрес_Кошелька> — регистрируем адрес на My Ether Wallet, используем ему для получения вознаграждений в сети Storj.
<Приватный_Ключ> — случайный идентификатор, используется для переноса конфигов вместе с контрактами и файлами на другой сервер.
<Адрес_Папки_или_Диска> — путь, где Storj будет создавать и хранить файлы сети.
--noedit — используется для того, чтобы после создания конфига не открывался его редактор. Если вы хотите более тонко настроить Storj, уберите данный аргумент.
ВАЖНО! Если у вашей машины есть свой белый ип, или Вы пробросили порт через роутер, используйте аргумент --manualforwarding
ВАЖНО! Стандартно Storj использует 3 порта для RPC: 4000, 4001, 4002. Убедитесь данные порты не заблокированы и доступны для внешних соединений.
После создания конфига, скопируйте его идентификатор, например 3306d8d761cbe14b79c3acc5e7e19839592efc3d, он потребуется в следующем шаге для запуска.
Шаг 4. Запуск ноды Storj Share Daemon.
storjshare start -c /home/имяпользователя/.config/storjshare/configs/ИД_КОНФИГА.json
После этого Вы должны получить уведомление об успешном запуске ноды.
Шаг 5. Ждем 5 минут после запуска. Смотрим статус ноды, чтобы удостовериться что все идет по плану:
storjshare status

Здесь отображается основная информация о нашей ноде, все достаточно просто — зеленое хорошо, красное — плохо.
С помощью данной команды Вы можете отслеживать статус ноды, аптайм (время непрерывной работы, рестарты, количество подключенных пиров, контракты (показываются новые контракты полученные после рестарта), дельта (задержка), порт (В нашем случае используется белый IP, по этому Storj работает по TCP что обеспечивает максимальную отдачу), вкладка Shared отображает общее количество место уже занятое под контракты.
Storj Share Daemon установлен и запущен!
Для работы Storj очень важно синхронизировать время в системе, выполните следующие действия:
(Инструкция для Ubuntu & Debian)
service ntp stop
ntpdate -s time.nist.gov
service ntp start
timedatectl status timedatectl
list-timezones
sudo timedatectl
set-timezone <Часовой_пояс_из_списка>
После этого время будет синхронизировано.

 Автозагрузка Storj Share при включении

1. Открываем терминал и выполняем:
env > ~/.env
 2. Создаем скрипт watchdog.sh в своей домашней директории
nano ~/watchdog.sh
3. Добавляем строки в скрипт, не забывая при этом указать свои пути к файлу
#!/bin/bash
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
cd $HOME

APP=$(ps aux | grep -v grep | grep storjshare)
if [ -z "$APP" ];
then
echo "Restart storjshare-daemon"
storjshare daemon
fi
APP=$(ps aux | grep -v grep | grep 'farmer.js --config')
if [ -z "$APP" ];
then
echo "Restart farmers"
storjshare start --config $HOME/.config/storjshare/configs/1f100594a6c1830b3d135f537575dea05f41cbf1.json
fi
3.  Делаем его выполняемым
chmod +x ~/watchdog.sh
4. Создвем задачу Cron
crontab -e
5. Добавляем строки в самый конец файла
*/5 * * * * $HOME/watchdog.sh
@reboot $HOME/watchdog.sh

Комментариев нет:

Отправить комментарий