Giter VIP home page Giter VIP logo

Comments (4)

ericvruder avatar ericvruder commented on September 24, 2024

Okay, so a bit more info:
The two reg values eflowBaseDir and eflowVhdxDir had not been set for some reason. I had not edited anything in regedit at any point in time, until now.

After setting eflowBaseDir to "C:\Program Files\Azure IoT Edge" and eflowVhdxDir to "C:\iotedge\vm" (I had thought the permission issues where happening here, thats why I changed it, and I didn't know what else to set), it managed to continue from where it failed previously.

Now though, it started failing when trying to locate the images that should have been located in that folder. For some reason, I found AzureIoTEdgeForLinux-v1.cab and AzureIoTEdgeForLinux-v1.vhdx in the root of my program data folder. After moving them to "C:\iotedge\vm", it managed to continue even further, although now it fails in another step.

I will now try to uninstall everything (again), clear the reg, and try to reinstall Eflow and redeploy. Hopefully, that will fix the next issue as well.. I will post how that goes soon.

from iotedge-eflow.

ericvruder avatar ericvruder commented on September 24, 2024

Same issue arrises. So I fixed it by creating a folder called vm ("C:\Program Files\Azure IoT Edge\vm"), moving "AzureIoTEdgeForLinux-v1.cab" to that directory and modifying eflowVhdxDir in the registry to point to that location. Then it works... Until it needs to instantiate the VM. Then it fails with the following error:

C:\Program Files\Azure IoT Edge\nodectl.exe compute virtualmachine create --config "C:\Program Files\Azure IoT Edge\\yaml\cloudvm.yaml" failed to execute [Error: rpc error: code = Unknown desc = executePowershell failed with error new-vm : 'XXX-EFLOW' failed to add resources to 'XXX-EFLOW'. Failed to set folder permission. Verify that the host machine account has read/write access to the share. Failed to set security info. 'XXX-EFLOW' failed to add resources. (Virtual machine ID AE70119B-F4B8-41B5-A36A-3919F45D1929) 'XXX-EFLOW' failed to set folder permission for C:\Program Files: Access is denied. (0x80070005). Verify that the 'XXX' machine account has read/write access to the share. (Virtual machine ID AE70119B-F4B8-41B5-A36A-3919F45D19 29) Failed to set security info for 'C:\Program Files': 'Access is denied.'('0x80070005'). At line:24 char:10 + ... $vm = new-vm -Name $vmName -MemoryStartupBytes $memory -BootDev ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (:) [New-VM], VirtualizationException + FullyQualifiedErrorId : InvalidParameter,Microsoft.HyperV.PowerShell.Commands.NewVM : exit status 1] at line 2289

Seems like it is trying to change permissions for the Program Files folder.

After rereading the docs, I found out that I could change those directories during installation. Note that I had not done that previously, all paths had been default paths.

After running the installer with the following parameters, everything worked as expected.

INSTALLDIR="C:\iotedge", VHDXDIR="C:\iotedge\vm"

So I was able to install eflow and then immediately run Deploy-Eflow, and everything ran as expected.

from iotedge-eflow.

TerryWarwick avatar TerryWarwick commented on September 24, 2024

@ericvruder,

I am glad that you were able to get over the hurdle by specifying a different install directory. I initially thought that perhaps you were running into a low disk space or low memory situation that was right on the border, but your latest update appears to eliminate that concern. The error indicates that you do not have write access to the default installation location where the virtual machine is attempting to startup. Do you have some sort of management software on this device that restricts write access to C:\Program Files? Perhaps an AntiVirus solution that is preventing access?

Terry

from iotedge-eflow.

ericvruder avatar ericvruder commented on September 24, 2024

Well, I have a pretty strict IT group managing my machine ;)

I am pretty confident it is some kind of group policy preventing me from editing permissions on that folder. I am actually not sure why its not on my original report, but it was failing on line 3067 - which is a set-acl command. Also, I had elevated my powershell as well, both when installing and running Deploy-Eflow.

Is it unusual for a group policy to block permissions changes on that folder? I was wondering if it would make more sense to have the default directory for the vm images be a less "contended" directory? Maybe one inside the base directory itself?

Unfortunately, I am having some issues with the installer not recognizing the arguments I pass to it, so I can't test this out myself. This doesn't seem to work; here the MSI help message box is shown instead of the installer.

Start-Process -Wait msiexec -ArgumentList '/i', $fileName, '/log', $logFile, '/qn', INSTALLDIR='C:\Program Files\Azure IoT Edge', VHDXDIR='C:\Program Files\Azure IoT Edge\vm'

while this does work

Start-Process -Wait msiexec -ArgumentList '/i', $fileName, '/log', $logFile, '/qn', INSTALLDIR="C:\iotedge", VHDXDIR="C:\iotedge\vm"

from iotedge-eflow.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.