Медиаплатформа децентрализованной экосистемы Viz
CoinMarketCap
  • WIKI
  • FAQ
    • Введение в VIZ
    • Мануал для Viz Social Bot
    • Знакомство с экосистемой: My Viz Plus
    • Знакомство с экосистемой: Info Viz Plus
    • Знакомство с экосистемой: WILDVIZ
    • Знакомство с экосистемой: Боты
    • Как купить/продать VIZ на бирже
    • Расширение Vizonator
EN EN
The Viz Blockchain
МАГАЗИН
Бустер
Нет результатов
Посмотреть все результаты
  • Новости
    • Блокчейн
    • ДАО
    • Игры
    • Личное
    • Новичкам
    • Разработка
    • Сервисы
    • Социал
    • История
  • Viz.World
    • Social Gateways
    • Telegram
      • Каналы
      • Группы
    • Визонатор
    • API Nodes
  • Control.Viz
    • Медиа платформа
    • Пользователи
    • Аккаунты
    • Инструменты
      • Система платных подписок
      • Система инвайтов (чеки)
      • Создание аккаунта
      • Продажа аккаунта
      • Продажа сабаккаунтов
      • Покупка аккаунта
      • Делегирование доли
      • Расписание делегатов
      • Обзор блоков
      • Смена доступов
      • Локализация
      • Генерация ключей
    • Профиль
    • Кошелек
    • Комитет
    • Делегаты
    • Статьи
    • Опубликовать контент
  • Viz.Plus
    • Start Viz+
      • GitHub
    • About Viz+
      • Разработка
      • Бизнес
      • Инвестиции
    • My Viz+
      • Аккаунты
        • Создать аккаунт
        • Создать субаккаунт
        • Сбросить ключи
        • Доступы аккаунта
        • Изменить профиль
      • Активы
        • Увеличить соцкапитал
        • Уменьшить соцкапитал
        • Делегировать соцкапитал
        • Перевести
        • Обменять
        • Чеки
        • Наградить
      • ДАО
        • Голосовать за делегатов
        • Установить параметры
        • Подать заявку
        • Рассмотреть заявки
      • Магазин
        • Купить аккаунт
        • Продать аккаунт
        • Купить субаккаунт
        • Продать субаккаунт
        • Обзор подписок
        • Управлять подписками
        • Создать подписку
      • Приложение
      • GitHub
    • Info Viz+
      • Аккаунты
      • Делегаты
      • Блок-эксплорер
      • GitHub
    • Поваренная книга
    • Белая бумага
    • GitHub
    • Поддержка
  • Dpos.Space
    • Профиль пользователя
    • Топ пользователей
      • VIZ
      • SHARES
      • Эффективный соцкапитал
      • Делегированный соцкапитал
      • Полученный соцкапитал
    • Калькулятор блокчейна
    • Прокси
    • Управление мультисигом
    • Функционал сервиса
    • GitHub
    • Поддержка
  • Readdle.Me
    • GitHub
    • Telegram
  • Шлюзы
    • Graphene
      • XCHNG
      • RUDEX
    • Minter
    • Golos
    • BitShares
    • Магазин чеков
    • Маркет WildViz
    • Menaskop Exchange
    • Поддержка
  • Код
    • GitHub
    • Нода на C++
      • Инструкция по установке
    • Контрольная панель на PHP
    • JS библиотека
    • GO библиотека
    • PHP библиотека
    • Python библиотека
  • Игры
    • Русское лото
      • Статьи
    • VIZ Dice
      • Лотерея
    • VIZ Quiz
    • Рисовый фермер
  • Дополнительно
    • Viz.Doc — Документация
    • Wild.Viz — Инвайты
    • Viz.Cx — В разработке
      • GitHub
      • Поддержка
    • BitcoinTalk — Ветка
      • Список чатов
    • Viz.Wiki — Википедия
    • Инфляционная модель
    • Web3.0 — Книга
  • Новости
    • Блокчейн
    • ДАО
    • Игры
    • Личное
    • Новичкам
    • Разработка
    • Сервисы
    • Социал
    • История
  • Viz.World
    • Social Gateways
    • Telegram
      • Каналы
      • Группы
    • Визонатор
    • API Nodes
  • Control.Viz
    • Медиа платформа
    • Пользователи
    • Аккаунты
    • Инструменты
      • Система платных подписок
      • Система инвайтов (чеки)
      • Создание аккаунта
      • Продажа аккаунта
      • Продажа сабаккаунтов
      • Покупка аккаунта
      • Делегирование доли
      • Расписание делегатов
      • Обзор блоков
      • Смена доступов
      • Локализация
      • Генерация ключей
    • Профиль
    • Кошелек
    • Комитет
    • Делегаты
    • Статьи
    • Опубликовать контент
  • Viz.Plus
    • Start Viz+
      • GitHub
    • About Viz+
      • Разработка
      • Бизнес
      • Инвестиции
    • My Viz+
      • Аккаунты
        • Создать аккаунт
        • Создать субаккаунт
        • Сбросить ключи
        • Доступы аккаунта
        • Изменить профиль
      • Активы
        • Увеличить соцкапитал
        • Уменьшить соцкапитал
        • Делегировать соцкапитал
        • Перевести
        • Обменять
        • Чеки
        • Наградить
      • ДАО
        • Голосовать за делегатов
        • Установить параметры
        • Подать заявку
        • Рассмотреть заявки
      • Магазин
        • Купить аккаунт
        • Продать аккаунт
        • Купить субаккаунт
        • Продать субаккаунт
        • Обзор подписок
        • Управлять подписками
        • Создать подписку
      • Приложение
      • GitHub
    • Info Viz+
      • Аккаунты
      • Делегаты
      • Блок-эксплорер
      • GitHub
    • Поваренная книга
    • Белая бумага
    • GitHub
    • Поддержка
  • Dpos.Space
    • Профиль пользователя
    • Топ пользователей
      • VIZ
      • SHARES
      • Эффективный соцкапитал
      • Делегированный соцкапитал
      • Полученный соцкапитал
    • Калькулятор блокчейна
    • Прокси
    • Управление мультисигом
    • Функционал сервиса
    • GitHub
    • Поддержка
  • Readdle.Me
    • GitHub
    • Telegram
  • Шлюзы
    • Graphene
      • XCHNG
      • RUDEX
    • Minter
    • Golos
    • BitShares
    • Магазин чеков
    • Маркет WildViz
    • Menaskop Exchange
    • Поддержка
  • Код
    • GitHub
    • Нода на C++
      • Инструкция по установке
    • Контрольная панель на PHP
    • JS библиотека
    • GO библиотека
    • PHP библиотека
    • Python библиотека
  • Игры
    • Русское лото
      • Статьи
    • VIZ Dice
      • Лотерея
    • VIZ Quiz
    • Рисовый фермер
  • Дополнительно
    • Viz.Doc — Документация
    • Wild.Viz — Инвайты
    • Viz.Cx — В разработке
      • GitHub
      • Поддержка
    • BitcoinTalk — Ветка
      • Список чатов
    • Viz.Wiki — Википедия
    • Инфляционная модель
    • Web3.0 — Книга
Viz Media
Нет результатов
Посмотреть все результаты
Home Блокчейн

Инструкция по установке ноды VIZ + настройка её публичной для API

Публичные ноды важная составляющая для блокчейна, тем более тогда, когда мы ждём рост приложений (клиентов, скриптов и пр.), которые увеличивают нагрузку и могут влиять на стабильность сети

lex от lex
15.01.2019
в Блокчейн, ДАО, Новости
0
0
Инструкция по установке ноды VIZ + настройка её публичной для API

Публичные ноды важная составляющая для блокчейна, тем более тогда, когда мы ждём рост приложений (клиентов, скриптов и пр.), которые увеличивают нагрузку и могут влиять на стабильность сети.

Так как об этом вопросе задумываются в основном те, кто уже установил делегатские ноды (здесь подробный гайд), обойдёмся без скриншотов. Советую начать с 2 ядер + 16 Гб RAM (напр. можно стартануть с бонусом в 300$ от Google Cloud, которого хватит на 3-4 месяца).

Либо сервер с 8 Гб RAM и добавлением swap-файла на ssd.

sudo fallocate -l 8G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

Заходим в файл

sudo nano /etc/fstab

Добавить в конце строку

/swapfile none swap sw 0 0

Сохраняем изменения Ctrl+O, подтверждаем Enter, выходим Ctrl+X

Для хранения файла «оперативных данных» блокчейна shared_memory.bin в случае с API-нодой эффективнее использовать RAM, да и SSD сбережёте от массы операций ввода-вывода. Минус только в том, что в случае перезагрузки сервера вам придется вновь делать реплей, но пока это занимает менее часа, shared-файл около 8 Гб.

Раздел /dev/shm занимает во многих Unix-подобных ОС только 50% от размера оперативной памяти, поэтому лучше сразу его изменить, заходим в файл

sudo nano /etc/fstab

Добавляем в конце строку (в зависимости от ресурсов сервера, напр. если у вас 16 Гб RAM, ставьте 15G)

none /dev/shm tmpfs defaults,size=15G 0 0

Сохраняем изменения Ctrl+O, подтверждаем Enter, выходим Ctrl+X

Перемонтируем раздел с новым размером

sudo mount -o remount /dev/shm

Проверяем

df -h | grep /dev/shm

Если Docker ещё не установлен, ставим и его

sudo apt-get update
sudo apt-get install -y \
apt-transport-https \
ca-certificates \
curl \
software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
sudo apt-get update
sudo apt-get install docker-ce -y

Устанавливаем ноду

Далее скачиваем список seed-нод

sudo wget -P ~/vizconfig https://raw.githubusercontent.com/VIZ-Blockchain/viz-cpp-node/master/share/vizd/seednodes && sudo truncate -s 0 ~/vizconfig/seednodes

И файлы block_log, пока разместил на Dropbox (чтобы не скачивать их часами от seed-нод)

sudo wget -P ~/vizhome/blockchain https://www.dropbox.com/s/t6unua73agivwzf/block_log.index https://www.dropbox.com/s/bve0bx1jzkl6mcv/block_log

Добавляем конфиг ноды (witness и private-key убрал, т.к. лучше не смешивать функции публичной API-ноды, с делегатской или seed) и нажимаем Enter

echo 'p2p-seed-node = seed.viz.lexa.host:2001
p2p-seed-node = 116.203.64.42:2001
p2p-seed-node = 167.86.66.169:2001
p2p-seed-node = 5.189.158.54:2001
p2p-seed-node = 195.201.129.96:2001
webserver-thread-pool-size = 2
webserver-http-endpoint = 0.0.0.0:8090
webserver-ws-endpoint = 0.0.0.0:8091
read-wait-micro = 500000
max-read-wait-retries = 2
write-wait-micro = 500000
max-write-wait-retries = 3
single-write-thread = true
enable-plugins-on-push-transaction = false
shared-file-dir = /shm
shared-file-size = 2G
min-free-shared-file-size = 500M
inc-shared-file-size = 2G
block-num-check-free-size = 1000
plugin = chain p2p json_rpc webserver network_broadcast_api witness database_api private_message follow social_network tags account_by_key operation_history account_history block_info raw_block witness_api invite_api committee_api paid_subscription_api
clear-votes-before-block = 0
skip-virtual-ops = false
follow-max-feed-size = 500
enable-stale-production = false
required-participation = 0
[log.console_appender.stderr]
stream=std_error
[log.file_appender.p2p]
filename=logs/p2p/p2p.log
[logger.default]
level=debug
appenders=stderr
[logger.p2p]
level=none
appenders=stderr' | sudo tee -a ~/vizconfig/config.ini

Запускаем докер-контейнер

sudo docker run -it -p 127.0.0.1:8090:8090 -p 127.0.0.1:8091:8091 -v ~/vizconfig:/etc/vizd -v ~/vizhome/blockchain:/var/lib/vizd/blockchain -v /dev/shm:/shm --name vizd vizlex/viz:latest

После загрузки докер-образа для ноды и реплея, с получением логов вида handle_block «Got 0 transactions on block 3071930 by …» можно закрыть окно терминала.

Устанавливаем Nginx

В новом окне терминала начинаем установку

sudo apt-get update
sudo apt-get install nginx -y

Добавляем на сервер файл где пропишем свои настройки к Nginx

sudo nano /etc/nginx/sites-enabled/node.conf

Добавляем в него правила, предварительно заменив адрес server_name на свой (не забыв привязать его в настройках DNS домена к IP сервера)

server {
listen 80;
server_name test.lexai.host;
location / {
if ($request_method = 'OPTIONS') {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range';
add_header 'Access-Control-Max-Age' 1728000;
add_header 'Content-Type' 'text/plain; charset=utf-8';
add_header 'Content-Length' 0;
return 204;
}
if ($request_method = 'POST') {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range';
}
if ($request_method = 'GET') {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range';
}
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass https://127.0.0.1:8090;
}
location /ws {
if ($request_method = 'OPTIONS') {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
add_header 'Access-Control-Max-Age' 1728000;
add_header 'Content-Type' 'text/plain; charset=utf-8';
add_header 'Content-Length' 0;
return 204;
}
if ($request_method = 'POST') {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range';
}
if ($request_method = 'GET') {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range';
}
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass https://127.0.0.1:8091;
proxy_read_timeout 3600;
}
}

Сохраняем изменения Ctrl+O, подтверждаем Enter, выходим Ctrl+X

Устанавливаем сертификаты

sudo apt-get install software-properties-common
sudo add-apt-repository ppa:certbot/certbot -y
sudo apt-get update
sudo apt-get install python-certbot-nginx -y

После следующей команды потребуется ввести: 1. Email, на который будут отправляться уведомления о необходимости продления сертификата; 2. Согласиться с правилами сервиса сертификатов введя A и Enter; 3. Отказаться от рассылки N и Enter; 4. Подтвердить добавление сертификатов к указанным доменам вводом Enter; 5. Отказаться от редиректа, введя 1 и Enter.

sudo certbot --nginx

Будут добавлены настройки в наш node.conf, лучше перепроверить, появились ли строки с пометкой «# managed by Certbot» в конце файла

sudo nano /etc/nginx/sites-enabled/node.conf

выходим Ctrl+X

Перезапускаем Nginx командой

sudo systemctl restart nginx

Проверяем статус Nginx

sudo systemctl status nginx.service

Мы запустили публичную API-ноду, к которой можно подключаться как по адресу https://test.lexai.host (RPC) так и через wss://test.lexai.host/ws (WebSockets).

При получении письма о необходимости обновить сертификат (раз в 3 месяца), это можно сделать и вручную, командой:

sudo certbot renew
Наградить автора поста Для награждения, в браузере должно быть
установлено расширение Визонатор
Метки: APIRUНоды
Предыдущая запись

Встречайте VIZ на Dart — viz transaction!

Следующая запись

Недочет в изменении веса голосов за делегатов при create_vesting

Следующая запись
Недочет в изменении веса голосов за делегатов при create_vesting

Недочет в изменении веса голосов за делегатов при create_vesting

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Информация

  • Техническое описание блокчейн-системы VIZ

  • Консенсус управления — уникальная система чередования делегатов

  • Справедливый DPoS — участник голосует за любое количество делегатов

  • Система платных подписок — процессинг периодических переводов на блокчейне

  • Анонимная регистрация — две механики для процессинга создания аккаунтов

  • Социальные шлюзы позволяют привлекать пользователей без регистрации

Комментарии

  • VIRT к записи События в протоколе Голос
  • Денис Скрипник к записи Пулы ликвидности
  • VIZ.Media к записи Почему вам нужен социальный капитал минимум 25 тысяч viz?
  • ae к записи Шлюз USDT TRC-20 (блокчейн Graphene)
  • VIZ.Media к записи Нода с отладкой GDB
  • semasping к записи Нода с отладкой GDB
  • Americanets к записи Android приложение автономной версии сайта My Viz+ (обновлено v1.5)
  • Liveone к записи VIZ Dice Bot в телеграме
  • Анна к записи VIZ Dice Bot в телеграме
  • Сергей к записи How to use the Telegram @viz_social_bot to reward and receive rewards

Актуальные темы

API Awards CryptoStorm.Fund Custom Dapp EN ES GoldVoice.Club PHP Protocol Proxy Readdle.me RU Social Network Viz+ VIZ Heroes Vizonator Viz Projects Viz Social Bot Voice WildViz WordPress Xchng Библиотеки Биржи Боты Видео Делегаты Децентрализация Документация Заявки Идея Комитет Конкурс Медиа Ноды Обмен Обновления Подкаст Рисовый фермер Телеграм Токены Функционал Хардхорк Шлюз

Архивы

Авторы

Категории

  • FAQ
  • Web3.0
  • Блокчейн
  • ДАО
  • Игры
  • История
  • Личное
  • Новичкам
  • Новости
  • Разработка
  • Сервисы
  • Социал
  • Торговля

Приложения

Google Play App Store
  • Состояние блокчейна
  • Аккаунты
  • Делегаты
  • Блок-эксплорер
  • Контакты

2018/22 © Блокчейн VIZ · Разработка и поддержка сайта "Веб Драйвер"

  • Авторизация
Нет результатов
Посмотреть все результаты
  • Новости
    • Блокчейн
    • ДАО
    • Игры
    • Личное
    • Новичкам
    • Разработка
    • Сервисы
    • Социал
    • История
  • Viz.World
    • Social Gateways
    • Telegram
      • Каналы
      • Группы
    • Визонатор
    • API Nodes
  • Control.Viz
    • Медиа платформа
    • Пользователи
    • Аккаунты
    • Инструменты
      • Система платных подписок
      • Система инвайтов (чеки)
      • Создание аккаунта
      • Продажа аккаунта
      • Продажа сабаккаунтов
      • Покупка аккаунта
      • Делегирование доли
      • Расписание делегатов
      • Обзор блоков
      • Смена доступов
      • Локализация
      • Генерация ключей
    • Профиль
    • Кошелек
    • Комитет
    • Делегаты
    • Статьи
    • Опубликовать контент
  • Viz.Plus
    • Start Viz+
      • GitHub
    • About Viz+
      • Разработка
      • Бизнес
      • Инвестиции
    • My Viz+
      • Аккаунты
      • Активы
      • ДАО
      • Магазин
      • Приложение
      • GitHub
    • Info Viz+
      • Аккаунты
      • Делегаты
      • Блок-эксплорер
      • GitHub
    • Поваренная книга
    • Белая бумага
    • GitHub
    • Поддержка
  • Dpos.Space
    • Профиль пользователя
    • Топ пользователей
      • VIZ
      • SHARES
      • Эффективный соцкапитал
      • Делегированный соцкапитал
      • Полученный соцкапитал
    • Калькулятор блокчейна
    • Прокси
    • Управление мультисигом
    • Функционал сервиса
    • GitHub
    • Поддержка
  • Readdle.Me
    • GitHub
    • Telegram
  • Шлюзы
    • Graphene
      • XCHNG
      • RUDEX
    • Minter
    • Golos
    • BitShares
    • Магазин чеков
    • Маркет WildViz
    • Menaskop Exchange
    • Поддержка
  • Код
    • GitHub
    • Нода на C++
      • Инструкция по установке
    • Контрольная панель на PHP
    • JS библиотека
    • GO библиотека
    • PHP библиотека
    • Python библиотека
  • Игры
    • Русское лото
      • Статьи
    • VIZ Dice
      • Лотерея
    • VIZ Quiz
    • Рисовый фермер
  • Дополнительно
    • Viz.Doc — Документация
    • Wild.Viz — Инвайты
    • Viz.Cx — В разработке
      • GitHub
      • Поддержка
    • BitcoinTalk — Ветка
      • Список чатов
    • Viz.Wiki — Википедия
    • Инфляционная модель
    • Web3.0 — Книга

2018/22 © Блокчейн VIZ · Разработка и поддержка сайта "Веб Драйвер"

Добро пожаловать!

Войдите в свой аккаунт ниже

Забыли пароль?

Создать аккаунт!

Fill the forms bellow to register

Все поля обязательны для заполнения. Войти

Восстановите ваш пароль

Введите имя пользователя или электронную почту для сброса пароля.

Войти
Posting....