1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/edgegallery-mep

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README-zh.md 6.4 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 01.12.2024 09:33 e5e98b3

EdgeGallery MEP проект

Введение

Edgegallery MEP — это открытая исходная MEP-схема, разработанная в соответствии со стандартами ETSI MEC 003 и 011.

В ETSI GS MEC 003 описывается MEP, который создаёт среду, позволяющую приложениям обнаруживать, оповещать, использовать и предоставлять MEC-сервисы. После получения от MEC-платформы менеджера, приложения или службы правил потока MEP выполняет соответствующие действия. Также MEP получает DNS-записи от MEC платформы менеджера и использует их для настройки DNS-прокси/сервера.

ETSI GS MEC 011 определяет MEP и Mp1-точку контакта между MEP и приложением, которая позволяет активировать базовые функции:

  • MEC-совместная работа сервисов: аутентификация и авторизация для использования и предоставления MEC-сервисов; регистрация и отмена регистрации MEC-приложений, предоставляющих MEC-сервисы, на MEC платформе, а также оповещение об изменениях доступности MEC-сервиса; обнаружение доступных MEC-сервисов.
  • Помощь MEC-приложениям: подписка на доступность MEC-приложений и прекращение подписки.

Архитектура MEP

Регистрация и обнаружение MEP Mp1-сервисов основаны на servicecomb-сервисе центра (servicecomb-сервис центра — это основанный на Restful сервис регистрации, обеспечивающий микросервисное обнаружение и управление). MEP использует функции регистрации и механизм плагинов servicecomb для реализации интерфейса Mp1. mep-server — это ядро MEP-сервера API. Он предоставляет API для регистрации или обнаружения сервисов MEC Apps на MEC-платформе.

Каталог кода MEP

├── kong-plugin
│   ├── appid-header
│   └── kong.conf
├── mepauth
├── mepserver
└── README.md

Выше представлено дерево каталогов проекта MEP: — kong-plugin: MEP API-шлюз kong-плагин; — mepserver: реализация MEP-сервера; — mepauth: модуль mepauth предоставляет API токенов для приложений.

Сборка и запуск MEP Большая часть кода проекта MEP написана на Golang, а kong-плагин — на Lua. Проект MEP публикуется через образ Docker.

Для сборки образа mepauth необходимо выполнить следующие шаги:

cd mepauth
sudo ./docker-build.sh

Для создания образа mepserver выполните следующие действия:

cd mepserver
sudo ./docker-build.sh

Чтобы запустить mepauth, выполните следующее:

docker run -itd --name mepauth \
             --cap-drop All \
             --network mep-net \
             --link kong-service:kong-service \
             -v ${MEP_CERTS_DIR}/jwt_publickey:${MEPAUTH_KEYS_DIR}/jwt_publickey:ro \
             -v ${MEP_CERTS_DIR}/jwt_encrypted_privatekey:${MEPAUTH_KEYS_DIR}/jwt_encrypted_privatekey:ro \
             -v ${MEP_CERTS_DIR}/mepserver_tls.crt:${MEPAUTH_SSL_DIR}/server.crt:ro \
             -v ${MEP_CERTS_DIR}/mepserver_tls.key:${MEPAUTH_SSL_DIR}/server.key:ro \
             -v ${MEP_CERTS_DIR}/ca.crt:${MEPAUTH_SSL_DIR}/ca.crt:ro \
             -v ${MEPAUTH_CONF_PATH}:/usr/mep/mprop/mepauth.properties \
             -e "MEPAUTH_APIGW_HOST=kong-service" \
             -e "MEPAUTH_APIGW_PORT=8444"  \
             -e "MEPAUTH_CERT_DOMAIN_NAME=${DOMAIN_NAME}" \
             -e "MEPSERVER_HOST=mepserver" \
             edgegallery/mepauth:latest

MEP_CERTS_DIR — каталог, в котором хранятся сертификаты и ключи сервера mepauth. MEPAUTH_CONF_PATH — файл конфигурации mepauth.

Запустите mepserver следующим образом: MEP_CERTS_DIR — это каталог, содержащий сертификаты и ключи mep-сервера. MEP_ROOT_KEY_COMPONENT — случайный компонент корневого ключа длиной 256 бит. CERT_PASSPHRASE — пароль для создания сертификата.

docker run -itd --name mepserver --network mep-net -e "SSL_ROOT=${MEPSERVER_SSL_DIR}" \
                                 --cap-drop All \
                                 -v ${MEP_CERTS_DIR}/mepserver_tls.crt:${MEPSERVER_SSL_DIR}/server.cer:ro \
                                 -v ${MEP_CERTS_DIR}/mepserver_encryptedtls.key:${MEPSERVER_SSL_DIR}/server_key.pem:ro \
                                 -v ${MEP_CERTS_DIR}/ca.crt:${MEPSERVER_SSL_DIR}/trust.cer:ro \
                                 -v ${MEP_CERTS_DIR}/mepserver_cert_pwd:${MEPSERVER_SSL_DIR}/cert_pwd:ro \
                                 -e "ROOT_KEY=${MEP_ROOT_KEY_COMPONENT}" \
                                 -e "TLS_KEY=${CERT_PASSPHRASE}" \
                                 edgegallery/mep:latest

Дополнительные сведения о настройке сертификатов, ключей и сборке MEP см. в HERE.

Ссылки [1] https://www.etsi.org/deliver/etsi_gs/MEC/001_099/003/02.01.01_60/gs_MEC003v020101p.pdf

[2] https://www.etsi.org/deliver/etsi_gs/MEC/001_099/011/02.01.01_60/gs_MEC011v020101p.pdf

[3] https://github.com/apache/servicecomb-service-center

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/edgegallery-mep.git
git@api.gitlife.ru:oschina-mirror/edgegallery-mep.git
oschina-mirror
edgegallery-mep
edgegallery-mep
master