Гид по технологиям

Настройка Raspberry Pi 4 как Edge Gateway с EdgeX Foundry

7 min read Интернет вещей Обновлено 30 Nov 2025
Raspberry Pi 4 как Edge Gateway с EdgeX Foundry
Raspberry Pi 4 как Edge Gateway с EdgeX Foundry

Что такое шлюз на границе сети и EdgeX Foundry

Edge gateway — это устройство, которое принимает и предварительно обрабатывает данные от локальных датчиков и устройств, а затем пересылает отфильтрованные или агрегированные данные в облако. EdgeX Foundry — это открытая платформа для построения решений IoT: набор сервисов для сбора, обработки, хранения и доставки телеметрии между устройствами и облачными системами.

Важно: здесь мы используем Ubuntu 19.10 и EdgeX через snap. Позже версии Ubuntu могут поддерживаться, но шаги настройки могут отличаться.

Основные преимущества использования Raspberry Pi как Edge Gateway

  • Снижение задержек за счёт локальной предобработки данных.
  • Меньше сетевого трафика и экономия на трансфере данных в облако.
  • Гибкость интеграции локальных протоколов (MQTT, Modbus, BLE, Zigbee и др.).
  • Быстрая отладка и визуализация через веб-консоль EdgeX.

Требования

Вам понадобятся:

  • Raspberry Pi 4
  • SD-карта (рекомендуется класс 10 или выше)
  • Компьютер или ноутбук для скачивания образа Ubuntu
  • Блок питания, совместимый с Raspberry Pi
  • Ethernet-кабель
  • Micro HDMI-кабель
  • Внешний монитор
  • Внешняя клавиатура (или способ подключить клавиатуру)
  • Мышь по желанию или тачпад

Подготовка образа Ubuntu и запись на SD-карту

Мы будем использовать бесплатное приложение balenaEtcher для записи образа Ubuntu 19.10 на карту памяти.

  1. Скачайте 64-битную версию Ubuntu 19.10 для Raspberry Pi 4 с сайта Ubuntu.
  2. Вставьте SD-карту в ноутбук или компьютер.
  3. Запустите приложение Etcher.
  4. В Etcher нажмите “Select image” и выберите скачанный файл Ubuntu.
  5. Нажмите “Select target” и укажите SD-карту как целевой носитель.

Запись Ubuntu на SD-карту с помощью Etcher

Etcher запишет системный образ на SD-карту. Дождитесь завершения операции и безопасно извлеките карту.

Первичная загрузка Raspberry Pi в Ubuntu

  1. Вставьте SD-карту в Raspberry Pi.
  2. Подключите монитор через micro HDMI.
  3. Подключите клавиатуру и при необходимости мышь.
  4. Подключите Ethernet-кабель для упрощённой настройки сети.
  5. Подключите питание — Raspberry Pi должен автоматически загрузиться.
  6. При первом запуске Ubuntu попросит имя пользователя и пароль. По умолчанию это “ubuntu” / “ubuntu”.
  7. Система сразу предложит сменить пароль — задайте новый.

После входа откроется Терминал — дальше большинство действий выполняется из него.

Установка EdgeX Foundry

Откройте Терминал и выполните команду для установки платформы EdgeX через snap:

sudo snap install edgexfoundry

Snap загрузит все нужные сервисы EdgeX (ядро EdgeX, службы безопасности и поддержки, Consul, Kong, MongoDB и Vault).

Чтобы получить веб-интерфейс управления EdgeX, установите UI snap:

sudo snap install edgex-ui-go --channel=latest/beta

После установки откройте веб-браузер и перейдите по адресу:

http://((your-raspberry-pir-url):4000/

Например, если IP вашего Raspberry Pi 192.168.1.45, то URL будет:

http://192.168.1.45:4000/

Если вы не знаете IP-адрес устройства, получите его командой:

hostname-I

Откроется консоль EdgeX Foundry.

Регистрация Raspberry Pi как Edge Gateway

В веб-консоли войдите под логином и паролем по умолчанию: admin / admin.

Вход в консоль EdgeX Foundry с учётными данными по умолчанию

Далее выполните шаги:

  1. В меню слева выберите Gateway.
  2. Нажмите Add, чтобы создать новый шлюз.
  3. Задайте имя и описание шлюза.
  4. Укажите IP-адрес Raspberry Pi.
  5. Нажмите Submit.

После этого ваше устройство появится в списке, и вы сможете привязывать к нему устройства, правила и профили данных.

Raspberry Pi 4 добавлен в консоль как Edge Gateway

Мини-методология: шаги от датчика до облака

  1. Подключение: датчики подключаются к шлюзу локально (USB, BLE, Zigbee, Ethernet).
  2. Приём: EdgeX Device Services получают данные в «сырых» форматах.
  3. Предобработка: фильтрация, агрегация, нормализация и базовая валидация на шлюзе.
  4. Хранение: временное локальное хранение в MongoDB для устойчивости.
  5. Передача: только релевантные или сжатые данные отправляются в облако или в аналитические сервисы.

Это уменьшает объём передаваемых данных и ускоряет реакции на локальные события.

Рекомендации по безопасности и надёжности

Important: Raspberry Pi обычно не предназначен для прямого подключения к Интернету без дополнительных мер безопасности.

  • Измените стандартные пароли и создайте отдельную учётную запись администратора.
  • Обновляйте систему и snap-пакеты регулярно.
  • Отключайте неиспользуемые сетевые сервисы и порты.
  • Используйте брандмауэр (ufw) для ограничения доступа по IP.
  • Настройте резервное копирование конфигураций и базы данных.

Пример базовой команды для включения ufw и открытия SSH только для локальной подсети:

  • Разрешить SSH только из подсети 192.168.1.0/24:

sudo ufw allow from 192.168.1.0/24 to any port 22

  • Включить ufw:

sudo ufw enable

(Не забудьте предварительно разрешить ваш текущий SSH-сеанс.)

Отладка и распространённые проблемы

  • Raspberry Pi не загружается: проверьте совместимость блока питания и корректность образа на SD.
  • EdgeX snap не запускается: дождитесь окончания установки snap, проверьте статус с помощью snap services.
  • Веб-консоль не доступна: проверьте IP и порт 4000, убедитесь, что firewall не блокирует порт.

Короткий чеклист для проверки работоспособности шлюза:

  • Raspberry Pi загружается в Ubuntu
  • EdgeX Foundry установлен (snap)
  • edgex-ui-go установлен и доступен на порту 4000
  • Raspberry Pi добавлен в консоль как Gateway
  • Как минимум одно устройство или симулятор данных подключено и отправляет события

Критерии приёмки

  • Веб-консоль EdgeX открывается по IP:4000.
  • В списке Gateway видно созданный Raspberry Pi с корректным IP.
  • EdgeX принимает и отображает хотя бы одно событие от подключённого устройства (реального или тестового).
  • Все изменения конфигурации сохраняются после перезагрузки системы.

Альтернативные подходы

  • Использовать Raspberry Pi Imager вместо Etcher для записи образа Ubuntu.
  • Развернуть EdgeX через Docker Compose вместо snap, если необходим гибкий контроль версий контейнеров.
  • Для простых сценариев можно использовать легковесные мосты (MQTT-брокеры) без полного EdgeX.

Когда EdgeX может оказаться избыточным:

  • Если у вас один-два устройства и нет необходимости в управлении профилями и безопасностью — lightweight MQTT брокер и локальная БД могут быть проще.

Ролевые чеклисты

Для инженера по DevOps:

  • Убедиться в автоматизации развёртывания (скрипты/ansible/docker-compose).
  • Настроить мониторинг сервисов EdgeX и доступности порта 4000.

Для домашнего пользователя:

  • Проверить физические подключения и питание.
  • Сменить стандартные пароли и создать точку восстановления.

Для разработчика устройств:

  • Настроить Device Service или написать адаптер, чтобы шлюз принимал данные в нужном формате.

Тесты и критерии приёмки (короткие)

  • Тест 1: Доступность UI — браузер открывает http://IP:4000 в течение 10 секунд.
  • Тест 2: Регистрация шлюза — созданный шлюз виден в списке через 1 минуту после добавления.
  • Тест 3: Инжекция данных — при отправке тестового события через Device Service событие отображается в консоли.

Матрица рисков и смягчение

  • Риск: некорректная работа из-за устаревшей Ubuntu. Смягчение: тестировать в изолированной сети и иметь образ для восстановления.
  • Риск: утечка данных. Смягчение: шифрование на уровне транспорта и ограничение доступа.
  • Риск: потеря целостности конфигурации. Смягчение: хранить конфигурации в системе контроля версий и делать регулярные бэкапы.

Часто задаваемые вопросы

Что если у меня другая версия Ubuntu?

EdgeX может работать и на более новых версиях Ubuntu, но шаги установки или совместимость некоторых snap-пакетов могут отличаться. Тестируйте в тестовой среде перед развертыванием в продакшн.

Нужна ли интернет-связь для EdgeX?

Для локальной работы EdgeX интернет не обязателен. Для отправки агрегированных данных в облако или получения обновлений он потребуется.

Как узнать IP Raspberry Pi?

Используйте команду hostname-I в терминале или проверьте DHCP-таблицу вашего роутера.

Заключение

Вы узнали, как подготовить SD-карту с Ubuntu, загрузить Raspberry Pi 4, установить EdgeX Foundry через snap и зарегистрировать устройство как Edge Gateway в веб-консоли. Этот подход помогает сократить задержки, уменьшить объём передаваемых данных и централизовать управление локальными устройствами.

Notes: поделитесь вашими проектами и сценариями использования шлюза — будь то домашняя автоматизация, образовательный проект или промышленный прототип.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Как пользоваться Steam Server Browser
Руководство

Как пользоваться Steam Server Browser

Скачать Google Документы и доступ офлайн
How-to

Скачать Google Документы и доступ офлайн

Включение и отключение контекстных меню Windows
Windows

Включение и отключение контекстных меню Windows

Управление уведомлениями в Google Chrome
браузер

Управление уведомлениями в Google Chrome

Как получить приглашение на Amazon Astro
Гаджеты

Как получить приглашение на Amazon Astro

Отключить персонализированные объявления в Windows 10
Windows 10

Отключить персонализированные объявления в Windows 10