Запуск Полной ноды на GCP
В этом руководстве объясняется, как настроить и развернуть публичную полную ноду для подключения к Aptos devnet с помощью Google Cloud (GCP). Запуск полной ноды в облаке обычно обеспечивает лучшую стабильность и доступность по сравнению с запуском на ноутбуке. Если вы хотите развернуть полную ноду производственного уровня, мы рекомендуем вам развернуть ее в облаке.
Примечание: Пожалуйста, прочитайте раздел Запуск полной ноды, если вам нужны другие альтернативы для развертывания, использование Cloud влечет за собой расходы, и они зависят от того, как вы ее настроите.
Необходимые условия
Вы можете выполнить команды этого руководства для развертывания полной ноды на Google Kubernetes Engine с любого компьютера. С виртуальной машины на GCP, Google Cloud Shell или с вашего персонального компьютера.
Следующие пакеты предустановлены в Cloud Shell. Если вы решите использовать Cloud Shell, обязательно изучите документацию по работе с ephermability. Но если вы запускаете установку с ноутбука или другого компьютера, вам необходимо установить:
Terraform 1.1.7: https://www.terraform.io/downloads.html
Kubernetes cli: https://kubernetes.io/docs/tasks/tools/
Google Cloud cli: https://cloud.google.com/sdk/docs/install-sdk
После установки gcloud CLI войдите в GCP с помощью gcloud (https://cloud.google.com/sdk/gcloud/reference/auth/login).
Если у вас уже настроена учетная запись GCP, переходите к началу работы, если нет, следуйте приведенным ниже разделам, чтобы создать и настроить учетную запись GCP.
Настройка GCP
Зарегистрируйтесь на 90-дневную бесплатную пробную версию Google Cloud предлагает 90-дневную бесплатную пробную версию за 300 долларов для каждого нового пользователя. Эти 300 долларов предоставляются в виде кредитов на ваш счет, и вы можете использовать их, чтобы получить представление о продуктах Google Cloud. Имейте в виду, что при регистрации бесплатной пробной версии вам потребуется ввести платежную информацию. Это делается для проверки личности и не влечет за собой расходов, пока вы не перейдете на платный аккаунт и не исчерпаете кредиты). Некоторые функции GCP, такие как графические процессоры и серверы Windows, недоступны в бесплатной пробной версии.
Зарегистрируйтесь для получения кредитов на сумму $300 здесь.
Создайте новый проект GCP
Вам также потребуется создать новый проект на консоли GCP Console или с помощью команды gcloud из Google Cloud CLI. Однако перед этим вам будет полезно ознакомиться с иерархией ресурсов на GCP.
Следуйте этим инструкциям, чтобы настроить новый проект.
Включить биллинг / Обновить учетную запись
Вы по-прежнему сможете использовать бесплатные пробные кредиты, но включение биллинга позволит вам получить полный доступ ко всем возможностям GCP и не испытывать перебоев в работе ваших нод.
Обновите свою учетную запись, следуя шагам, описанным здесь.
Дополнительные ресурсы GCP
Этого должно быть достаточно, чтобы ваша настройка GCP была готова к развертыванию вашей полной ноды. Но если вы совсем новичок в GCP, возможно, вам стоит ознакомиться с некоторыми из наших руководств по быстрому запуску и Google Cloud Skills Boost.
Начало работы
Вы можете развернуть публичную полную ноду на GCP с помощью модуля полной ноды Aptos Terraform. Это руководство предполагает, что у вас уже настроена учетная запись GCP и создан новый проект для развертывания полной ноды Aptos. Если это не так, ознакомьтесь с приведенными выше инструкциями по настройке GCP.
Создайте рабочий каталог для вашей настройки.
Выберите имя рабочего пространства, например,
devnet
. Примечание: это определяет имя рабочего пространства terraform, которое, в свою очередь, используется для формирования имен ресурсов.
Создайте каталог для рабочей области
Создайте хранилище для хранения состояния Terraform в Google Cloud Storage. Используйте консоль или эту команду gcs для создания хранилища. Имя хранилища должно быть уникальным. См. документацию по Google Cloud Storage здесь: https://cloud.google.com/storage/docs/creating-buckets#prereq-cli
Создайте файл Terraform с именем
main.tf
в рабочем каталоге:Измените файл
main.tf
для настройки Terraform и создания полной ноды из модуля Terraform. Пример содержимого файлаmain.tf
:Инициализируйте Terraform в том же каталоге, где находится ваш файл
main.tf
Это позволит загрузить все зависимости terraform в папку
.terraform
.Создайте новое рабочее пространство Terraform, чтобы изолировать среды:
Примените настройку.
Это может занять некоторое время (10 - 20 минут), Terraform создаст все ресурсы на вашем облачном аккаунте.
Валидация
После завершения применения Terraform, вы можете следовать этому разделу для проверки вашего развертывания.
Настройте клиент Kubernetes для доступа к кластеру, который вы только что развернули:
Убедитесь, что ваши полные ноды подсистемы запущены (это может занять несколько минут):
Получите IP-адрес своей полной ноды:
Проверьте REST API, убедитесь, что версия увеличивается.
Чтобы проверить правильность работы вашей полной ноды, как описано в документации по полной ноде, вам нужно настроить механизм переадресации портов непосредственно на Aptos pod в одном терминале SSH и протестировать его в другом терминале ssh
Настройте переадресацию портов на pod aptos-fullnode. Используйте
kubectl get pods -n aptos
для получения имени podОткройте новый терминал ssh. Выполните следующие запросы curl для проверки работоспособности
Завершите переадресацию портов, введя в терминале control-c.
Обновление полной ноды с новыми релизами
Релизы могут быть двух типов: один сопровождается стиранием данных для запуска блокчейна, другой - просто обновлением программного обеспечения.
Обновление со стиранием данных
Вы можете увеличить номер
era
в файлеmain.tf
, чтобы вызвать создание нового объема данных, что приведет к запуску узла на новой БД.Обновление тега
image_tag
в файлеmain.tf
Обновите модуль Terraform для полной ноды, запустите его в том же каталоге, где находится ваш файл
main.tf
Примените изменения Terraform
Обновление без стирания данных
Обновление тега
image_tag
в файлеmain.tf
Обновите модуль Terraform для полной ноды, запустите его в том же каталоге, где находится ваш файл
main.tf
Примените изменения Terraform
Настройка идентификации и seed пиров
Статическая идентичность
Если вы хотите настроить ноду со статической идентификацией, ознакомьтесь с расширенным руководством полной ноды о том, как генерировать ключи, и следуйте приведенной ниже инструкции, чтобы настроить его в файле terraform.
Сгенерируйте свой собственный закрытый ключ и извлеките peer id, следуя руководству здесь
Измените
main.tf
, чтобы добавитьfullnode_identity
вfullnode_helm_values
, это настроит ключи для полной ноды, например:Примените изменения Terraform
Добавление вышестоящих seed пиров
Вы можете добавить вышестоящие seed пиры для синхронизации состояния ноды с определенной полной ноды, это полезно, когда полная нода не может подключиться к сети из-за перегрузки.
Получите информацию об идентификаторе пира Upstream, вы можете использовать тот, который мы перечислили в руководстве по Полной ноде; или взять его из Aptos Discord,
#advertise-full-node
канал, это ноды, размещенные в нашем сообществе.Измените
main.tf
, чтобы добавить seed для devnet вfullnode_helm_values
, это настроит upstream seeds для fullnode, например:
Обязательно обновите файл aptos_chains.devnet
на соответствующие сети, если вы подключаетесь к другим сетям.
3. Примените изменения Terraform
Проверка регистрации
Чтобы проверить регистрацию pod, используйте следующие команды.
При использовании GKE журналы кластера и стручка будут автоматически отображаться в консоли Google Cloud. В меню консоли выберите Kubernetes Engine
. В боковом меню выберите Workloads
. Вы увидите список всех pods из кластера.
devnet0-aptos-fullnode
- это pod, в котором запущено хранилище полной ноды aptos. Нажмите на pod для просмотра подробностей. Вы увидите некоторые метрики и другие подробности о pod.
Перейдите на вкладку LOGS
, чтобы просмотреть регистрацию непосредственно из pod. Если в pod возникли ошибки, вы увидите их здесь.
Нажмите на значок open in new window
, чтобы просмотреть регистрацию в Log Explorer. Этот экран позволяет осуществлять расширенный поиск в журналах.
Другие сведения о регистрации доступны на панели мониторинга журналов
Дополнительные функции доступны через Cloud Logging, включая создание метрик на основе регистраций, источников регистрации и хранилищ регистраций.
Проверка мониторинга
Облако Google собирает множество показателей кластера и делает их легко просматриваемыми в консоли. В меню консоли выберите Kubernetes Engine
. Щелкните на кластере, на котором развернут aptos. Нажмите на ссылку Operations
в правом верхнем углу. Нажмите на подвкладку Metrics
, чтобы просмотреть конкретные метрики кластера.
Нажмите на ссылку View in Cloud Monitoring
вверху, чтобы просмотреть встроенную информационную панель GKE для кластера.
Google Cloud Monitoring имеет множество других функций для удобного мониторинга кластера и подсистем. Вы можете настроить проверку работоспособности сервисов и настроить оповещения о достижении метриками определенного порога.
Last updated