Iot Edge for Linux on Windows (EFLOW) fails the deployment

107 views Asked by At

I am bit getting crazy about this issue. I have a VM with Windows 10 and following the instructions to install EFLOW:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All

$msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))
$ProgressPreference = 'SilentlyContinue'
Invoke-WebRequest "https://aka.ms/AzEFLOWMSI_1_4_LTS_X64" -OutFile $msiPath

Start-Process -Wait msiexec -ArgumentList "/i","$([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))","/qn"

Get-ExecutionPolicy -List
Set-ExecutionPolicy -ExecutionPolicy AllSigned -Force

Deploy-Eflow

Reading lot of posts but I always get this error:

PS C:\Users\iotedge> Deploy-Eflow

[11/09/2023 11:10:02] Deploying Azure IoT Edge for Linux on Windows

 - Configuration 'eflowBaseDir' is not present. A default will be applied.
 - Configuration 'eflowVhdxDir' is not present. A default will be applied.

[11/09/2023 11:10:02] Exception caught!!!

 - Could not find a part of the path 'C:\Users\iotedge\LICENSE\Azure IoT Edge for Linux on Windows - Standalone (free) Use Terms (11.1.21).rtf'. (L427)

[11/09/2023 11:10:02] In order to attempt another deployment, please uninstall the Azure IoT Edge msi and start from fresh

Get-ItemProperty : Property MachineId does not exist at path HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SQMClient.
At C:\Program Files\WindowsPowerShell\Modules\AzureEFLOW\AzureEFLOW.psm1:6674 char:31
+ ... ] $sqmId = (Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\SQMClien ...
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (MachineId:String) [Get-ItemProperty], PSArgumentException
    + FullyQualifiedErrorId : System.Management.Automation.PSArgumentException,Microsoft.PowerShell.Commands.GetItemPr
   opertyCommand

Could not find a part of the path 'C:\Users\iotedge\LICENSE\Azure IoT Edge for Linux on Windows - Standalone (free) Use Terms (11.1.21).rtf'.

Any hint? thanks

2

There are 2 answers

1
Mark Radbourne On

I have encountered this error before. I suspect that you are trying to install Eflow on Windows server. Sometimes, Windows server does not have all of the certificates in its trust store that are required, and it will fail in this manner.

Visit this section https://learn.microsoft.com/en-us/azure/aks/hybrid/aks-edge-howto-offline-install#windows-certificates which describes how you can check that you have the relevant certificates. If any are missing, you will need to acquire the missing certificates and install them to your localmachine trusted store.

4
toto' On

it seems the problem was Power Shell x86