Устарело. Не следуйте этому руководству для развертывания узла, который вы собираетесь использовать.
zcashd достиг автоматической остановки End-of-Support 18 июля 2026 года. Узел zcashd, развернутый сегодня, не синхронизируется с актуальным состоянием цепочки, поэтому развертывание ежемесячно стоит денег и ничего не производит.
Эта страница сохранена как историческая запись о развертывании zcashd.
Руководство по развертыванию полного узла zcashd Zcash (реализация Electric Coin Co) с использованием Akash Console. Ниже приведен видеоурок. Более подробное руководство также можно найти ниже.
Что вы развертываете
Полный узел zcashd, который будет:
-> Синхронизировать весь блокчейн Zcash (350 ГБ+ для mainnet, ~ 40 ГБ для testnet)
-> Стоить примерно $15/месяц в зависимости от цен токена AKT
-> Требовать от нескольких часов до нескольких дней для полной синхронизации
-> Использовать 4 vCPU, 16 ГБ RAM, 350 ГБ хранилища (mainnet) или 2 vCPU, 8 ГБ RAM, 50 ГБ (testnet)
-> Загружать криптографические параметры при первом запуске (~ 2 ГБ, однократно)
zcashd против Zebra:
-> zcashd был исходной реализацией узла Zcash от Electric Coin Co, остановленной с 18 июля 2026 года
-> Zebra от Zcash Foundation сегодня является используемым полным узлом
-> Только Zebra следует текущей цепочке; узел zcashd не может достичь актуального состояния цепочки
-> Используйте zcashd, если вам нужна функциональность кошелька или определенные RPC API
Важно: сопоставление портов в Akash
Когда вы открываете порт в Akash (например, порт 8233 для P2P zcashd), он НЕ привязывается к этому точному порту на публичном IP провайдера. Вместо этого провайдер назначает случайный высокий порт (например, 31234 или 42567) и настраивает обратное проксирование на порт 8233 вашего контейнера.
Это сделано намеренно: провайдеры запускают несколько развертываний, и возникли бы конфликты, если бы все пытались использовать порт 8233 напрямую.
Что это означает для вас:
-> Вы настраиваете порт 8233 в SDL (стандартный P2P-порт zcashd)
-> Akash выдает вам URI вида provider.com:31234
-> Другие узлы Zcash подключаются к вам по адресу provider.com:31234
-> Внутри вашего контейнера zcashd по-прежнему слушает порт 8233
Это обрабатывается автоматически. Просто используйте URI, который выдает Akash.
Предварительные требования
-> Установлено расширение браузера Keplr Wallet (Chrome/Brave/Firefox)
-> Выберите Keplr (или предпочитаемый вами Cosmos-кошелек)
-> Подтвердите подключение, когда появится окно Keplr
Ваш баланс AKT должен появиться в правом верхнем углу. Если он равен нулю, сначала пополните кошелек.
Шаг 2: Создайте развертывание
-> Нажмите кнопку "Deploy" (большая синяя кнопка в центре страницы)
-> Выберите "Build your template" (или сразу перейдите к загрузке SDL)
Вариант A: Загрузка файла SDL (рекомендуется)
Эта кнопка развертывает остановленный узел. С вашего баланса AKT будут списываться средства за узел, который не может синхронизироваться. Вместо этого используйте руководство по Zebra.
Вариант B: Использование редактора SDL
Если вы хотите вручную вставить SDL:
-> Скопируйте содержимое zcashd-akash.yml
-> Вставьте его в редактор SDL
-> При необходимости измените (см. раздел конфигурации ниже)
-> Нажмите "Create Deployment"
Шаг 3: Проверьте и подтвердите депозит
Console покажет вам:
-> Депозит развертывания: ~ 5 AKT (вы получите его обратно, когда закроете развертывание)
-> Оценочная стоимость: на основе цен в вашем SDL
Нажмите "Approve" и подпишите транзакцию в Keplr.
Шаг 4: Выберите провайдера
Примерно через 30 секунд вы увидите ставки от провайдеров. Каждая ставка показывает:
-> Цену за блок (в AKT или USDC)
-> Оценочную месячную стоимость
-> Сведения о провайдере (аптайм, регион и т. д.)
Не выбирайте просто самый дешевый вариант. Проверьте:
-> % аптайма (ориентируйтесь на > 95%)
-> Регион (ближе к вам = ниже задержка, но для блокчейн-узлов это не так важно)
-> Статус аудита (зеленая галочка = выше доверие)
Нажмите "Accept Bid" у выбранного провайдера и подпишите в Keplr.
Шаг 5: Дождитесь развертывания
Console будет:
-> Создавать lease с выбранным провайдером
-> Отправлять manifest (сообщает провайдеру, что запускать)
-> Запускать ваш контейнер
Это занимает 1-2 минуты. Вы увидите обновления статуса в интерфейсе.
Шаг 6: Убедитесь, что все работает
После развертывания вы увидите:
-> Вкладка Services: показывает ваш сервис zcashd со статусом
-> Вкладка Logs: журналы в реальном времени от вашего узла zcashd
-> Вкладка Leases: сведения о вашем развертывании (DSEQ, провайдер, стоимость)
При первом запуске будет загружен zcash-params (~2GB). Это одноразовая операция, которая занимает 5-10 минут в зависимости от пропускной способности провайдера. При последующих перезапусках этот этап будет пропущен.
Синхронизация займет от нескольких часов до нескольких дней в зависимости от сети. Следите за:
-> Ростом высоты блоков
-> Подключениями к пирам (должно быть 10-30 пиров)
-> Отсутствием повторяющихся ошибок
Шаг 7: Получите адрес вашего узла
Нажмите на вкладку Leases, затем URIs.
Вы увидите что-то вроде:
Code-highlight
zcashd-8233: provider-hostname.com:31234
Это публичный P2P-эндпоинт вашего узла. Другие узлы Zcash будут подключаться к вам по этому адресу.
Обратите внимание на сопоставление портов: вы настроили порт 8233 в SDL, но Akash назначил ему другой публичный порт (31234 в этом примере). Это нормально - см. раздел "сопоставление портов в Akash" вверху, если это вас смущает. Ваш узел доступен на том порту, который здесь показывает Akash, а не обязательно на 8233.
Если вы включили RPC (по умолчанию в SDL он закомментирован), здесь также появится RPC-эндпоинт с собственным сопоставленным портом.
Параметры конфигурации
Переключение на Testnet
По умолчанию SDL использует Mainnet. Чтобы использовать Testnet:
-> Необязательно: уменьшите ресурсы для Testnet в profiles.compute.zcashd.resources:
Code-highlight
cpu:
units: 2 # Down from 4
memory:
size: 8Gi # Down from 16Gi
storage:
- size: 50Gi # Down from 150Gi
-> Необязательно: уменьшите цену в profiles.placement.akash.pricing:
Code-highlight
amount: 5000 # Down from 10000
note lowering prices may filter our providers form bidding. experiement with this value, or use the provider endpiont to check if they would bid. (review provider api documentation)
Включение RPC-доступа
RPC по умолчанию отключен в целях безопасности. Чтобы включить его:
КРИТИЧЕСКИ ВАЖНО: задайте надежные учетные данные. RPC zcashd передает имя пользователя/пароль по HTTP (не HTTPS). Открывайте RPC наружу только если понимаете последствия для безопасности.
-> Раскомментируйте в разделе env:
Code-highlight
- "ZCASHD_RPCUSER=yourusername"
- "ZCASHD_RPCPASSWORD=your_very_strong_password_here" # Use a real password
- "ZCASHD_RPCBIND=0.0.0.0"
- "ZCASHD_RPCPORT=8232" # Mainnet
# - "ZCASHD_RPCPORT=18232" # Testnet
- "ZCASHD_ALLOWIP=0.0.0.0/0" # Allow from anywhere (use with caution)
-> Раскомментируйте RPC-порт в expose:
Для Mainnet:
Code-highlight
- port: 8232
as: 8232
to:
- global: false # Keep internal for security
proto: tcp
Предупреждение: Если вы установите global: true для RPC, вы откроете его в интернет с basic auth. Это плохая идея. Используйте global: false и получайте доступ к RPC через внутреннюю сеть Akash или настройте защищенный туннель.
Напоминание о сопоставлении портов: Даже если вы откроете RPC глобально, Akash сопоставит его со случайным высоким портом (а не 8232/18232). Проверьте URI в своем развертывании, чтобы увидеть фактический публичный эндпоинт. Для global: false (рекомендуется) RPC-эндпоинт доступен только внутри сети развертывания Akash, а не из публичного интернета.
Включение индекса транзакций
Индекс транзакций позволяет запрашивать любую транзакцию по ее ID через RPC. Использует больше хранилища (~ 20% прироста).
Раскомментируйте в env:
Code-highlight
- "ZCASHD_TXINDEX=1"
Предупреждение: Включение txindex на уже синхронизированном существующем узле требует повторной индексации всего блокчейна, что занимает часы.
Включение Insight Explorer
Insight Explorer предоставляет дополнительные REST API-эндпоинты для данных блокчейна (полезно для обозревателей блоков).
Раскомментируйте в env:
Code-highlight
- "ZCASHD_INSIGHTEXPLORER=1"
Это автоматически включает txindex и добавляет дополнительные RPC-методы.
Если вы не получаете ставок или хотите оптимизировать стоимость:
Для провайдеров с более слабыми характеристиками уменьшите значения в разделе profiles.compute.zcashd.resources:
-> CPU: units: 2 (минимум для приемлемой скорости синхронизации)
-> Memory: size: 12Gi (минимум для стабильности)
-> Storage: size: 120Gi (минимум для mainnet)
Чтобы привлечь больше ставок, увеличьте значение в profiles.placement.akash.pricing:
-> Mainnet: попробуйте amount: 15000 uakt/block
-> Testnet: попробуйте amount: 7500 uakt/block
Значения в SDL установлены консервативно высокими. Большинство провайдеров предложат более низкую цену.
Обновление вашего развертывания
Нужно изменить конфигурацию после развертывания?
-> Перейдите в My Deployments в Console
-> Найдите свое развертывание zcashd
-> Нажмите "Update Deployment"
-> Отредактируйте SDL
-> Нажмите "Update" и подтвердите в Keplr
Примечание: Обновление перезапустит ваш контейнер. Узел продолжит работу с сохраненного состояния (постоянное хранилище), но ожидайте 1-2 минуты простоя.
Мониторинг
Через Console
-> Вкладка Logs: журналы контейнера в реальном времени
-> Вкладка Shell: получить shell внутри контейнера (полезно для отладки)
-> Вкладка Events: события Kubernetes (в основном бесполезно, если только что-то не сломалось)
Через RPC (если включен)
Если вы включили RPC, то можете запрашивать свой узел как обычный полный узел zcashd (потому что это он и есть!)
Альтернатива zcash-cli
Если у вас есть shell-доступ через Console, вы можете использовать zcash-cli напрямую:
Code-highlight
# From the Shell tab in Console
zcash-cli getblockchaininfo
zcash-cli getpeerinfo
zcash-cli getinfo
Закрытие вашего развертывания
Когда закончите или захотите перестать платить:
-> Перейдите в My Deployments
-> Найдите свое развертывание zcashd
-> Нажмите "Close Deployment"
-> Подтвердите и подпишите в Keplr
Ваш депозит 5 AKT будет возвращен. Постоянное хранилище должно быть сохранено провайдером, но не полагайтесь на это - относитесь к нему как к любому другому облачному провайдеру.
Устранение неполадок
Ошибка "Insufficient funds"
Вам нужно больше AKT. Пополните свой кошелек Keplr.
Ставки не появляются
Либо:
-> Ваша цена слишком низкая (увеличьте amount в SDL)
-> Ваши требования к ресурсам слишком высоки для доступных провайдеров (уменьшите CPU/memory/storage)
-> Подождите дольше (иногда ставки появляются через 60-90 секунд)
Развертывание зависло в состоянии "pending"
У провайдера могут быть проблемы. Закройте развертывание и попробуйте другого провайдера.
В журналах zcashd видно "No peers connected"
После остановки End-of-Support 18 июля 2026 года это ожидаемое постоянное состояние, а не задержка запуска, и никакое ожидание или повторное развертывание этого не исправит. Вместо этого разверните Zebra.
Ошибки "Out of memory" в журналах
Вы слишком сэкономили на RAM. Закройте развертывание и разверните заново как минимум с 12Gi памяти (рекомендуется 16Gi).
Синхронизация занимает вечность
Определите, что значит "вечность":
-> Часы: нормально
-> Дни: тоже нормально для mainnet с нуля
-> Недели: что-то не так, проверьте журналы на наличие ошибок
"Error fetching zcash-params"
У провайдера могут быть проблемы с сетью или низкая пропускная способность. Обычно это решается само. Если проблема сохраняется более 30 минут, попробуйте повторно развернуть у другого провайдера.
Ошибки аутентификации RPC
-> Проверьте, что ZCASHD_RPCUSER и ZCASHD_RPCPASSWORD заданы правильно
-> Убедитесь, что используете правильный порт (8232 для mainnet, 18232 для testnet)
-> Помните, что порты сопоставляются Akash - используйте URI из вашего развертывания, а не 8232 напрямую
Управление расходами
Следите за расходами в Console:
-> My Deployments -> Ваше развертывание -> показывает оценку "Cost per month"
-> Баланс вашего кошелька Keplr со временем будет уменьшаться
Когда ваш баланс станет низким, Akash автоматически закроет ваше развертывание. Периодически пополняйте кошелек или настройте оповещения.
Снижение расходов
-> Используйте Testnet для непродакшн-тестирования (на 50% дешевле)
-> Уменьшите CPU/memory, если вам не нужна быстрая синхронизация
-> Выбирайте более дешевых провайдеров (не всегда разумно - аптайм важен)
-> Используйте USDC вместо AKT, если цена AKT волатильна (требуется изменить цену в SDL)
-> Отключите txindex, если он вам не нужен (экономит ~ 20% хранилища)