Comments (5)
Hi @ericvruder,
Thank you for the detailed question and background. We are aware of a similar issue with the wssdagent and networking problems.
If you have this problem again, go to Hyper-V Manager, and select the Networking tab and check if the VM has an assigned IP. If not, please try resetting the VM and check again.
Let me know if that fixes the problem. We will be addressing it in our next update.
from iotedge-eflow.
Hi @fcabrera23
So it fails during creation of the VM, so it's not something to do with any currently deployed VM. I start out by removing the guest and then redeploying.
[04/23/2021 08:15:11] Deleting virtual machine
- Removing vnic (name: PCName-EFLOWInterface)
- Removing storage vhd (file: AzureIoTEdgeForLinux-v1-EFLOW)
[04/23/2021 08:15:16] Virtual machine removed successfully
True
[04/23/2021 08:15:16] Deploying Azure IoT Edge for Linux on Windows
[04/23/2021 08:15:16] Enabling Microsoft Update. This will allow Azure IoT Edge for Linux on Windows to receive updates.
- Microsoft Update is enabled.
[04/23/2021 08:15:16] Step 1: Preparing host for Azure IoT Edge for Linux on Windows
[04/23/2021 08:15:16] Checking host for required features
- Checking the status of 'Microsoft-Hyper-V'
- Checking the status of 'Microsoft-Hyper-V-Management-PowerShell'
- Checking the status of 'Microsoft-Hyper-V-Hypervisor'
- Checking the status of 'OpenSSH.Client*'
[04/23/2021 08:15:18] Checking for virtual switch with name 'Default Switch'
- The virtual switch 'Default Switch' of type 'Internal' is already present
[04/23/2021 08:15:18] Step 2: Verifying host limits
[04/23/2021 08:15:18] Verifying required storage, RAM and number of cores are available
- Drive 'C:' has 169 GB free
- A minimum of 10 GB disk space is required on drive 'C:'
- Host has 5 GB free memory
- A minimum of 2 GB memory is required
- Host has 6 CPU cores
- A minimum of 4 CPU cores is required
[04/23/2021 08:15:18] Step 3: Configuring directories and virtual
[04/23/2021 08:15:18] Configuring directories
It then fails here, associating the wssdagent
[04/23/2021 08:15:18] Associating wssdagent service with nodectl
- C:\iotedge\nodectl.exe security login --loginpath c:\programdata\wssdagent\nodelogin.yaml --identity failed to execute [Error: rpc error: code = Unauthenticated desc = Valid Token Required.]
False
After that, it continues on as normally.
[04/23/2021 08:15:18] Verifying installation
- Testing for expected binaries
- Testing for expected images
- Testing for ssh key
- Testing for wssdagent service
- Testing if wssdagent is running
- Testing for Hyper-V Host Compute Service
- Verifying whether Hyper-V is active
- Hyper-V is active
- Testing if container resource is provisioned
- Testing if vnet resource 'Default Switch' is provisioned
[04/23/2021 08:15:18] Step 4: Runtime install complete. Creating virtual machine
[04/23/2021 08:15:19] Creating virtual machine (username: iotedge-user)
[04/23/2021 08:15:19] Verifying required storage, RAM and number of cores are available
- Drive 'C:' has 169 GB free
- A minimum of 16 GB disk space is required on drive 'C:'
- Host has 5 GB free memory
- A minimum of 2 GB memory is required
- Host has 6 CPU cores
- A minimum of 4 CPU cores is required
[04/23/2021 08:15:21] Setting dynamically expanding virtual hard disk maximum size to 16 GB
- Creating storage vhd (file: AzureIoTEdgeForLinux-v1-EFLOW)
- Creating vnic (name: PCName-EFLOWInterface)
- Instantiating virtual machine (name: PCName-EFLOW)
- Virtual machine instantiated, hostname is: PCName-EFLOW-3f097630
[04/23/2021 08:15:31] Virtual machine created successfully.
[04/23/2021 08:15:31] Successfully created virtual machine
[04/23/2021 08:15:31] Querying IP and MAC addresses from virtual machine (PCName-EFLOW)
- Virtual machine MAC: 00:00:00:00:00:00
- Virtual machine IP : 172.18.156.139
[04/23/2021 08:15:40] Done.
[04/23/2021 08:15:40] Virtual machine hostname: PCName-EFLOW-3f097630
[04/23/2021 08:15:40] Virtual machine IP address: 172.18.156.139
[04/23/2021 08:15:40] Virtual machine MAC address: 00:00:00:00:00:00
[04/23/2021 08:15:40] Testing SSH connection...
[04/23/2021 08:15:41] ...successfully connected to the Linux VM
[04/23/2021 08:15:41] Retrieving vTPM EK pub hash and registration ID for automated provisioning with DPS
- TPM provisioning information retrieved!
[04/23/2021 08:15:42] vTPM Endorsement Key: XXX
[04/23/2021 08:15:42] Registration ID: XXX
[04/23/2021 08:15:42] Step 5: Installing and verifying virtual machine software
- Installing and verifying required virtual machine features (username: iotedge-user)
- Successfully installed/verified moby-engine package
- Successfully installed/verified azure-iotedge package
[04/23/2021 08:16:04] Provisioning information not specified, provisioning skipped.
[04/23/2021 08:16:04] Deployment successful
OK
Configuring Eflow VM...
[04/23/2021 08:16:04] Querying IP and MAC addresses from virtual machine (PCName-EFLOW)
- Virtual machine MAC: 00:15:5d:26:43:0b
- Virtual machine IP : 172.18.156.139
[04/23/2021 08:16:04] Done.
As can be seen, it got a IP address assigned to it. This is validated further on when I deploy some files to it through SCP
Warning: Permanently added '172.18.156.139' (ECDSA) to the list of known hosts.
cert.der 100% 1358 807.7KB/s 00:00
cert.pem 100% 1730 1.6MB/s 00:00
daemon.json 100% 115 112.3KB/s 00:00
nodeConfiguration.json 100% 3749 3.6MB/s 00:00
opcPublisher.json 100% 1209 1.2KB/s 00:00
setup.sh 100% 686 670.0KB/s 00:00
From now on, this will ALWAYS happen when I delete and redeploy the VM. As mentioned, the only way to solve this is to reinstall Eflow completely. But I am not sure what the consequences of the error is? There doesn't seem to be any.
from iotedge-eflow.
Hi @ericvruder, thanks for trying this out. In the next update of EFLOW, the publicly exposed functions "New-EflowVm" and "Remove-EflowVm" will be removed. Any call into these functions leads to unexpected behavior.
The lifecycle should be: Install the EFLOW MSI, run Deploy-Eflow exactly once, Uninstall EFLOW. After that, you can re-install EFLOW.
The removal of the EFLOW VM and subsequent re-creations such as by calling New-EflowVm or Deploy-Eflow are not supported scenarios.
Apologies, this is a deficiency in our documentation. Please let us know if you come across the described problem for the scenario where you run Deploy-Eflow only after MSI installation. In this case we will need to make an investigation.
Thanks,
Manuel
from iotedge-eflow.
No worries! But I do have a few questions:
The lifecycle should be: Install the EFLOW MSI, run Deploy-Eflow exactly once, Uninstall EFLOW. After that, you can re-install EFLOW.
Why should I uninstall, then re-install?
What is the imagined flow if I need to re-provision the edge gateway? Right now, I reinstall everything to set it into a fresh condition. Will I be able to just call Provision-Eflow with some new parameters?
Is the goal here to remove the need for me to interact with the linux container host? By removing the remove-vm and redeploy-vm, you are making it more difficult for me to test setting up the vm with the correct configuration. But most of that stuff is "default", in the sense that I followed the production guide as closely as possible, and that suited my needs. I only change the configuration for the modules I am trying to deploy. Will you be simplifying that process?
Finally, is there a release date for the next version? :)
from iotedge-eflow.
@ericvruder - If you want a new fresh installation of EFLOW, you need to uninstall EFLOW before being able to re-install it. That's the flow, we do not support reinstallation without cleaning the machine first.
Regarding the re-provisioning, in our next release, you can just call the Provision-Eflow with the method (TPM, manualx509, manual string, DPS x509) and the corresponding parameters.
For the setting up, you can use parameters to set up the hardware requirements. Also, we plan to add port configuration, file sharing, and certificate configuration in future releases.
Finally, we are working hard to get our next version public, probably soon, although we don't have a defined date set.
from iotedge-eflow.
Related Issues (20)
- Connection failed: transport: authentication handshake failed: x509: certificate has expired or is not yet valid HOT 1
- EFlow deployment error (failed to add device 'Synthetic Ethernet Port') HOT 6
- Deploy-Eflow ignores -vmDataSize parameter HOT 2
- Error : no space left on device : EFLOW HOT 1
- Uable to add installation path to Autodeployment HOT 4
- After File Sharing Feature Docker Engine docker engine Stops, if we stop and start Eflow VM. HOT 4
- How to provide NTP server to EFLOW? HOT 1
- Azure - IoTEdge EFLOW NTP configuration/errors HOT 12
- EFLOW VM fails to sync time after the host OS goes to sleep HOT 11
- Make eflow deployed web/api modules https HOT 1
- Upgrade to EFLOW 1.4 fails - Password required ? HOT 2
- High Memory Usage in Azure IoT Edge LTS with Custom Modules HOT 4
- samples/camera-over-rtsp can't be built HOT 2
- Hoe to automate pn.json updation with addition/modification of new tags HOT 3
- Installing EFLOW 1.4.5 on Windows 2019 Core results in 'wssdagent is unreachable' HOT 7
- Configured DNS but iotedge check reports a DNS warning HOT 8
- Unable to Navigate into inside container on EFLOW machine HOT 6
- Connect-EFlowVM / too many authentication failures / edge case for SSH / Solution Found HOT 1
- Get-EflowLogs does not work in powershell core HOT 4
- Eflow-Vm not running after reinstallation HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from iotedge-eflow.