Исключение IoT Edge Hub - невозможно запустить Kestrel - PullRequest
0 голосов
/ 09 мая 2018

Я использую прозрачный шлюз IoT Edge в пользовательском дистрибутиве Debian Linux, но время от времени я сталкиваюсь с этой ошибкой «Невозможно запустить Kestrel».Кто-нибудь знает в чем причина этой ошибки?

2018-05-06 23:54:49.750 +00:00 [INF] - Starting Edge Hub
2018-05-06 23:54:49.756 +00:00 [INF] - Version - 1.0.0-preview022.11567621 (12a8e1bb63e619b17ca685efd470ad3f412034f4)
2018-05-06 23:54:49.757 +00:00 [INF] - 
        █████╗ ███████╗██╗   ██╗██████╗ ███████╗
       ██╔══██╗╚══███╔╝██║   ██║██╔══██╗██╔════╝
       ███████║  ███╔╝ ██║   ██║██████╔╝█████╗
       ██╔══██║ ███╔╝  ██║   ██║██╔══██╗██╔══╝
       ██║  ██║███████╗╚██████╔╝██║  ██║███████╗
       ╚═╝  ╚═╝╚══════╝ ╚═════╝ ╚═╝  ╚═╝╚══════╝

 ██╗ ██████╗ ████████╗    ███████╗██████╗  ██████╗ ███████╗
 ██║██╔═══██╗╚══██╔══╝    ██╔════╝██╔══██╗██╔════╝ ██╔════╝
 ██║██║   ██║   ██║       █████╗  ██║  ██║██║  ███╗█████╗
 ██║██║   ██║   ██║       ██╔══╝  ██║  ██║██║   ██║██╔══╝
 ██║╚██████╔╝   ██║       ███████╗██████╔╝╚██████╔╝███████╗
 ╚═╝ ╚═════╝    ╚═╝       ╚══════╝╚═════╝  ╚═════╝ ╚══════╝

2018-05-06 23:54:49.763 +00:00 [INF] - Initializing configuration
2018-05-06 23:54:51.071 +00:00 [INF] - Created persistent store   at /tmp/edgeHub
2018-05-06 23:54:51.293 +00:00 [INF] - Attempting to connect to IoT Hub for client SIVgateway/$edgeHub via AMQP...
2018-05-06 23:54:54.723 +00:00 [INF] - Connected to IoT Hub for client SIVgateway/$edgeHub via AMQP, with client operation timeout 60000.
2018-05-06 23:54:54.769 +00:00 [INF] - Created cloud connection for client SIVgateway/$edgeHub
2018-05-06 23:54:54.782 +00:00 [INF] - New cloud connection created for device SIVgateway/$edgeHub
2018-05-06 23:54:54.887 +00:00 [INF] - New device connection for device SIVgateway/$edgeHub
2018-05-06 23:54:56.330 +00:00 [INF] - Created new message store
2018-05-06 23:54:56.344 +00:00 [INF] - Started task to cleanup processed and stale messages
2018-05-06 23:54:58.266 +00:00 [INF] - Obtained edge hub config from module twin
2018-05-06 23:54:58.773 +00:00 [INF] - Set the following 1 route(s) in edge hub
2018-05-06 23:54:58.790 +00:00 [INF] - route: FROM /* INTO $upstream
2018-05-06 23:54:58.794 +00:00 [INF] - Updated message store TTL to 7200 seconds
2018-05-06 23:54:58.802 +00:00 [INF] - Updated the edge hub store and forward configuration
2018-05-06 23:54:58.804 +00:00 [INF] - Initialized edge hub configuration
2018-05-06 23:54:59.039 +00:00 [INF] - Starting protocol heads - (HTTP, MQTT)
2018-05-06 23:54:59.050 +00:00 [INF] - Starting HTTP head
2018-05-06 23:54:59.294 +00:00 [INF] - Starting MQTT head
2018-05-06 23:55:00.347 +00:00 [INF] - Initializing TLS endpoint on port 8883 for MQTT head.
2018-05-06 23:55:00.686 +00:00 [INF] - Started MQTT head
2018-05-06 23:55:00.759 +00:00 [FTL] - Unable to start Kestrel.
Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.Networking.UvException: Error -13 EACCES permission denied
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.Networking.LibuvFunctions.ThrowError(Int32 statusCode)
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.Networking.UvTcpHandle.Bind(IPEndPoint endPoint)
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.Listener.ListenTcp(Boolean useFileHandle)
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.Listener.c.b__8_0(Listener listener)
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.LibuvThread.DoPostWork()

Ответы [ 2 ]

0 голосов
/ 06 декабря 2018

У меня та же проблема при запуске моего приложения в прокси-среде.

При работе вне прокси-сервера вообще никаких проблем.

Для запуска внутри прокси-сервера мне пришлосьВключите переменные окружения UpstreamProtocol и https_proxy.

{"Env":["EdgeHubUser=root"]} при создании параметров не очень помогли, так как в нем указано недопустимая переменная среды при выполнении журнала пограничного агента.

0 голосов
/ 09 мая 2018

Нам удалось решить эту проблему, добавив следующую строку в «Параметры создания» пограничного концентратора на портале Azure (Главная страница -> IoT Edge (предварительный просмотр) -> Сведения об устройстве -> Задать модули -> Дополнительные параметры пограничного уровня ):

{ "ко": [ "EdgeHubUser = корень"]}

...