Скрипт (bash) для быстрой установки ноды Idena (idena-go) с автоматическими обновлениями для ОС Ubuntu 20.04 и выше. С его помощью вы можете установить на сервер одну и больше нод.
Установщик Идена в виде bash скрипта. Позволяет устанавить множество нод Idena-Go на ваш сервер в виде простого и понятного мастера с дружественным интерфейсом.
Рекомендации от команды (на ОДНУ ноду):
На период валидации, во избежание перегрузки сервера, на случай оверсейла VPS, можно добавить 1-2 CPU.
☆ Внимание: для работы веб интерфейса, вам поребуется API ключ (англ. Shared Node API KEY).
Приобрести API ключ можно у меня (первая валидация бесплатная), либо в маркет плейсе, при переходе в настройки вашего аккаунта, после авторизации.
idena_install.sh
(запускать от пользователя с привилегиями root)Пожалуйста убедитесь, что у вас установлена ОС Ubuntu 18.04 и выше. Для установки ноды идена-гоу, используя данный скрипт, вам нужно выполнить 4 простых шага:
apt-get install -y git
git clone https://github.com/ltraveler/idena-runner.git
cd idena-runner
chmod +x idena_install.sh
./idena_install.sh
idena-go
как шаред ноду, с указанием всех наиболее важных параметров.config.json
. Файл можно редактировать во время процесса установки.private key
и nodekey
на ваш собственный, если он у вас есть.--profile=shared
в качестве аргумента для запуска сервиса шаред ноды;BlockPinThreshold
, FlipPinThreshold
, AllFlipsLoadingTime
BlockPinThreshold
= 0.3
FlipPinThreshold
= 1
AllFlipsLoadingTime
= 7200000000000
Скрипт создаёт демон-сервис который называется idena_$username. Сервис запускается при запуске системы, на стадии начальной инициализации. Таким образом обеспечивая бесперебойную работу ноды.
service idena_$username status
service idena_$username restart
service idena_$username stop
service idena_$username start
*здесь $username это имя пользователя, от которого запускается демон
Начиная с версии 0.3.0 скрипт может быть запущен в полностью автоматическом (тихом) режиме.
В котором все или часть ответов на вопросы мастера установки, могут быть переданы через командную строку.
Доступные опции:
-u
или --username
- username
-p
или --password
- password в случае использования -u
без -p
имя пользователя и пароль будут одинаковыми
-s
или --shared
- установка клиента idena-go в качестве шаред ноды
-v
или --version
- версия клиента idena-go или аргумент latest для скачивания последней доступной версии
-b
или --blockpinthreshold
- Block Pin Threshold если не указано, при указании -f
и/или l
будет взято значение по умолчанию [0.3
]
-f
или --flippinthreshold
- Flip Pin Threshold если не указано, при указании -b
и/или l
будет взято значение по умолчанию [1
]
-l
или --allflipsloadingtime
- All Flips Loading Time если не указано, при указании -b
и/или f
будет взято значение по умолчанию [7200000000000
]
-r
или --rpcport
- RPC Port известный также как HTTP Port
-i
или --ipfsport
- IPFS Port
-k
или --privatekey
- Приватный ключ Идены для импорта известный также как nodekey /datadir/keystore/nodekey
-a
или --apikey
- Идена API ключ ноды для импорта /datadir/api.key
-d
или --updatefreq
- Частота обновления в формате CRON expression
За исключением флага -s
или --shared
, все остальные флаги требуют обязательного указания аргумента внутри ‘’ (знак апострофа)
Например, для установки ноды в полностью автоматическом режиме:
./idena_install.sh -u ratel -p ratel -s -v 'latest' -b '0.3' -f '1' -l '7200000000000' -r '9189' -i '41283' -k '6e17f7490f7922f3224d41769ce5ed2a01030de69d77163a291a77e8280aad3' -a '33e32cd86ecfb3179e50208428541a1e' -d '0 0 * * *'
/home/idena_instance_username/idena-go/datadir/keystore/nodekey
)/home/idena_instance_username/idena-go/datadir/api.key
)service idena_$username stop
nodekey
и API ключа ноды api.key
из бэкапа, сделанного на шаге №1.service idena_$username start
service idena_username stop
pkill -u username
deluser --remove-home username
rm /etc/cron.d/idena_update_username
rm /etc/systemd/system/idena_username.service
systemctl disable idena_username
systemctl daemon-reload
and systemctl reset-failed
ufw show added | grep "IDENA Instance for user $username" | awk '{ gsub("ufw","ufw delete",$0); system($0)}'
$username
на имя удалённого пользователя от которого запускалась инстанция иденыsudo visudo
nano /etc/ssh/sshd_config
sudo sshd -t
sudo service sshd restart
0xf041640788910fc89a211cd5bcbf518f4f14d831
dna://send/v1?address=0xf041640788910fc89a211cd5bcbf518f4f14d831&amount=20&comment=%D0%9E%D1%82%D0%BB%D0%B8%D1%87%D0%BD%D0%BE%2C+%D1%87%D1%82%D0%BE%D0%B1%D1%8B+%D1%8F+%D0%B4%D0%B5%D0%BB%D0%B0%D0%BB+%D0%B1%D0%B5%D0%B7+%D1%82%D0%B2%D0%BE%D0%B5%D0%B3%D0%BE+%D1%81%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%B0&callback_url=https%3A%2F%2Fgithub.com%2Fltraveler%2Fidena-runner
dna://send/v1?address=0xf041640788910fc89a211cd5bcbf518f4f14d831&amount=10&comment=%D0%A5%D0%BE%D1%80%D0%BE%D1%88%D0%BE%2C+%D1%81%D0%BA%D1%80%D0%B8%D0%BF%D1%82+%D0%BF%D1%80%D0%B8%D0%B3%D0%BE%D0%B4%D0%B8%D0%BB%D1%81%D1%8F&callback_url=https%3A%2F%2Fgithub.com%2Fltraveler%2Fidena-runner
ltraveler@protonmail.com
За более подробной информацией о клиенте idena-go вы можете обратится к официальному репозиторию idena-go github.