Estamos intentando explorar Azure Stream Analytics en IoT Edge. estamos siguiendoestetutorial.
Hemos realizado los siguientes pasos:
- Creó una máquina virtual Windows
- Creó un dispositivo Edge
- Creado en el módulo Azure Stream Analytics, configurado de entrada, salida y consulta
- Se agregó un sensor de temperatura y humedad simulado de Azure Market Place.
- Se agregó el módulo Azure Stream Analytics
- Configure rutas como se menciona en el tutorial e implemente en el dispositivo Edge (Azure VM)
Al usar comandos, puedo ver los 4 elementos en el dispositivo (Windows VM). El sensor simulado envía datos, pero la consulta no se activa y está escrita en el trabajo ASA. Al revisar los registros de edgeHub encontramos el siguiente error:
Error en el protocolo de enlace TLS. System.AggregateException: se produjeron uno o más errores. (Las credenciales proporcionadas al paquete no fueron reconocidas) ---> System.ComponentModel.Win32Exception: Las credenciales proporcionadas al paquete no fueron reconocidas en System.Net.SSPIWrapper.AcquireCredentialsHandle(SSPIInterface secModule, String package, CredentialUse intent, SCHANNEL_CRED scc ) en System.Net.Security.SslStreamPal.AcquireCredentialsHandle(CredentialUse credUsage, SCHANNEL_CRED SecureCredential) en System.Net.Security.SslStreamPal.AcquireCredentialsHandle(certificado X509Certificate, protocolos SslProtocols, política EncryptionPolicy, booleano isServer) en System.Net.Security.S canal seguro. AcquireServerCredentials(Byte[]& thumbPrint, Byte[] clientHello) en System.Net.Security.SecureChannel.GenerateToken(Byte[] entrada, desplazamiento Int32, recuento Int32, Byte[]& salida) en System.Net.Security.SecureChannel. NextMessage(Byte[] entrante, desplazamiento Int32, recuento Int32) en System.Net.Security.SslState.StartSendBlob(Byte[] entrante, recuento Int32, AsyncProtocolRequest asyncRequest) en System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer , Int32 count, AsyncProtocolRequest asyncRequest) en System.Net.Security.SslState.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest) en System.Net.Security.SslState.PartialFrameCallback(AsyncProtocolRequest asyncRequest) --- Fin del seguimiento de la pila desde la ubicación anterior donde se produjo la excepción --- en System.Net.Security.SslState.ThrowIfExceptional() en System.Net.Security.SslState.InternalEndProcessAuthentication(LazyAsyncResult lazyResult) en System.Net.Security.SslState.EndProcessAuthentication(resultado de IAsyncResult) en System.Net.Security.SslStream.EndAuthenticateAsServer(IAsyncResult asyncResult) en System.Net.Security.SslStream.<>c.b__50_2(IAsyncResult iar) en System.Threading.Tasks.TaskFactory1.FromAsyncCoreLogic(IAsyncResult iar, Func2 endFunction, Action1 endAction, promesa de Task1, booleano requiere sincronización) --- Fin del seguimiento de la pila de excepción interna --- ---> (Excepción interna n.° 0) System.ComponentModel.Win32Exception (0x8009030D): las credenciales proporcionadas al paquete no se reconocieron en el sistema .Net.SSPIWrapper.AcquireCredentialsHandle(SSPIInterface secModule, paquete String, CredentialUse intent, SCHANNEL_CRED scc) en System.Net.Security.SslStreamPal.AcquireCredentialsHandle(CredentialUse credUsage, SCHANNEL_CRED SecureCredential) en System.Net.Security.SslStreamPal.AcquireCredentialsHand le(certificado X509Certificado, Protocolos SslProtocols, política EncryptionPolicy, booleano isServer) en System.Net.Security.SecureChannel.AcquireServerCredentials(Byte[]& thumbPrint, Byte[] clientHello) en System.Net.Security.SecureChannel.GenerateToken(Byte[] entrada, desplazamiento Int32, Recuento de Int32, Byte[] y salida) en System.Net.Security.SecureChannel.NextMessage(Byte[] entrante, desplazamiento de Int32, recuento de Int32) en System.Net.Security.SslState.StartSendBlob(Byte[] entrante, recuento de Int32,AsyncProtocolRequest asyncRequest) en System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, recuento Int32, AsyncProtocolRequest asyncRequest) en System.Net.Security.SslState.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest) en System. Net.Security.SslState.PartialFrameCallback(AsyncProtocolRequest asyncRequest) --- Fin del seguimiento de la pila desde la ubicación anterior donde se produjo la excepción --- en System.Net.Security.SslState.ThrowIfExceptional() en System.Net.Security.SslState.InternalEndProcessAuthentication (LazyAsyncResult lazyResult) en System.Net.Security.SslState.EndProcessAuthentication(resultado de IAsyncResult) en System.Net.Security.SslStream.EndAuthenticateAsServer(IAsyncResult asyncResult) en System.Net.Security.SslStream.<>c.b__50_2(IAsyncResult iar) en System.Threading.Tasks.TaskFactory1.FromAsyncCoreLogic(IAsyncResult iar, Func2 endFunction, Action1 endAction, promesa Task1, booleano requiere sincronización)<---, 1b20a2d4
Creamos certificados OpenSSL en la VM y los configuramos en config.yaml, luego dio un error al verificar los registros del módulo ASA móvil o del sensor simulado.