PowerShell-funktioner för IoT Edge för Linux på Windows
Gäller för kryssrutan: IoT Edge 1.4
Förstå de PowerShell-funktioner som distribuerar, etablerar och hämtar status för din IoT Edge för den virtuella Datorn Linux på Windows (EFLOW).
Förutsättningar
Kommandona som beskrivs i den AzureEFLOW.psm1
här artikeln kommer från filen som finns i systemet i katalogen WindowsPowerShell
under C:\Program Files\WindowsPowerShell\Modules\AzureEFLOW
.
Om du inte har AzureEflow-mappen i PowerShell-katalogen använder du följande steg för att ladda ned och installera Azure IoT Edge för Linux i Windows:
I en upphöjd PowerShell-session kör du vart och ett av följande kommandon för att ladda ned IoT Edge för Linux i Windows.
- X64/AMD64
$msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi')) $ProgressPreference = 'SilentlyContinue' Invoke-WebRequest "https://aka.ms/AzEFLOWMSI_1_4_LTS_X64" -OutFile $msiPath
- ARM64
$msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi')) $ProgressPreference = 'SilentlyContinue' Invoke-WebRequest "https://aka.ms/AzEFLOWMSI_1_4_LTS_ARM64" -OutFile $msiPath
Installera IoT Edge för Linux på Windows på din enhet.
Start-Process -Wait msiexec -ArgumentList "/i","$([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))","/qn"
Du kan ange anpassad installation och VHDX-kataloger genom att lägga till
INSTALLDIR="<FULLY_QUALIFIED_PATH>"
ochVHDXDIR="<FULLY_QUALIFIED_PATH>"
parametrar i installationskommandot.Ange körningsprincipen på målenheten till minst
AllSigned
.Set-ExecutionPolicy -ExecutionPolicy AllSigned -Force
Add-EflowNetwork
Kommandot Add-EflowNetwork lägger till ett nytt nätverk till den virtuella EFLOW-datorn. Det här kommandot tar två parametrar.
Parameter | Godkända värden | Kommentarer |
---|---|---|
vswitchName | Namn på den virtuella växeln | Namnet på den virtuella växeln som tilldelats den virtuella EFLOW-datorn. |
vswitchType | Internt eller externt | Typ av virtuell växel som tilldelats den virtuella EFLOW-datorn. |
Det returnerar ett objekt som innehåller fyra egenskaper:
- Name
- AllocationMethod
- Cidr
- Typ
Mer information finns i kommandot Get-Help Add-EflowNetwork -full
.
Add-EflowVmEndpoint
Kommandot Add-EflowVmEndpoint lägger till en ny nätverksslutpunkt till den virtuella EFLOW-datorn. Använd de valfria parametrarna för att ange en statisk IP-adress.
Parameter | Godkända värden | Kommentarer |
---|---|---|
vswitchName | Namn på den virtuella växeln | Namnet på den virtuella växeln som tilldelats den virtuella EFLOW-datorn. |
vendpointName | Namnet på den virtuella slutpunkten | Namnet på den virtuella slutpunkten som tilldelats den virtuella EFLOW-datorn. |
ip4Address | IPv4-adress i intervallet för DCHP-serveromfånget | Statisk Ipv4-adress för den virtuella EFLOW-datorn. |
ip4PrefixLength | IPv4 Prefixlängd för undernätet | Ipv4-undernätsprefixlängd, endast giltig när statisk Ipv4-adress anges. |
ip4GatewayAddress | IPv4-adress för undernätsgatewayen | Gateway Ipv4-adress, endast giltig när statisk Ipv4-adress anges. |
Det returnerar ett objekt som innehåller fyra egenskaper:
- Name
- MacAddress
- HealthStatus
- IpConfiguration
Mer information finns i kommandot Get-Help Add-EflowVmEndpoint -full
.
Add-EflowVmSharedFolder
Kommandot Add-EflowVmSharedFolder tillåter delning av en eller flera Windows-värdoperativsystemmappar med den virtuella EFLOW-datorn.
Parameter | Godkända värden | Kommentarer |
---|---|---|
sharedFoldersJsonPath | Sträng | Sökväg till JSON-konfigurationsfilen delade mappar . |
JSON-konfigurationsfilen måste ha följande struktur:
- sharedFOlderRoot : Sökväg till Windows-rotmappen som innehåller alla mappar som ska delas med den virtuella EFLOW-datorn.
- hostFolderPath: Relativ sökväg (till den överordnade rotmappen) för mappen som ska delas med den virtuella EFLOW-datorn.
- readOnly: Definierar om den delade mappen ska vara skrivbar eller skrivskyddad från den virtuella EFLOW-datorn – Värden: false eller true.
- targetFolderOnGuest : Mappsökväg i den virtuella EFLOW-datorn där Mappen Windows-värdoperativsystem monteras.
[
{
"sharedFolderRoot": "<shared-folder-root-windows-path>",
"sharedFolders": [
{ "hostFolderPath": "<path-shared-folder>",
"readOnly": "<read-only>",
"targetFolderOnGuest": "<linux-mounting-point>"
}
]
}
]
Mer information finns i kommandot Get-Help Add-EflowVmSharedFolder -full
.
Connect-EflowVm
Kommandot Connect-EflowVm ansluter till den virtuella datorn med hjälp av SSH. Det enda konto som tillåts att SSH till den virtuella datorn är den användare som skapade det.
Det här kommandot fungerar bara på en PowerShell-session som körs på värdenheten. Det fungerar inte när du använder Windows Admin Center eller PowerShell ISE.
Mer information finns i kommandot Get-Help Connect-EflowVm -full
.
Copy-EflowVmFile
Kommandot Copy-EflowVmFile kopierar filen till eller från den virtuella datorn med hjälp av SCP. Använd de valfria parametrarna för att ange sökvägarna för käll- och målfilen och kopieringsriktningen.
Användaren iotedge-user måste ha läsbehörighet till alla ursprungskataloger eller skrivbehörighet till målkataloger på den virtuella datorn.
Parameter | Godkända värden | Kommentarer |
---|---|---|
fromFile | Sträng som representerar sökvägen till filen | Definierar filen som ska läsas från. |
toFile | Sträng som representerar sökvägen till filen | Definierar filen som ska skrivas till. |
pushFile | Ingen | Den här flaggan anger kopieringsriktning. Om det finns skickar kommandot filen till den virtuella datorn. Om det saknas hämtar kommandot filen från den virtuella datorn. |
Mer information finns i kommandot Get-Help Copy-EflowVMFile -full
.
Deploy-Eflow
Kommandot Deploy-Eflow är den huvudsakliga distributionsmetoden. Distributionskommandot skapar den virtuella datorn, etablerar filer och distribuerar modulen IoT Edge agent. Ingen av parametrarna krävs, men de kan användas för att ändra inställningarna för den virtuella datorn när de skapas.
Parameter | Godkända värden | Kommentarer |
---|---|---|
acceptEula | Ja eller Nej | En genväg för att acceptera/neka EULA och kringgå EULA-prompten. |
acceptOptionalTelemetry | Ja eller Nej | En genväg för att acceptera/neka valfri telemetri och kringgå telemetriprompten. |
cpuCount | Heltalsvärde mellan 1 och enhetens CPU-kärnor | Antal CPU-kärnor för den virtuella datorn. Standardvärde: 1 virtuell kärna. |
memoryInMB | Heltals jämnt värde mellan 1024 och den maximala mängden ledigt minne på enheten | Allokerat minne för den virtuella datorn. Standardvärde: 1 024 MB. |
vmDiskSize | Mellan 21 GB och 2 TB | Maximal logisk diskstorlek för den dynamiskt expanderande virtuella hårddisken. Standardvärde: 29 GB. Obs! Antingen vmDiskSize eller vmDataSize kan användas, men inte båda tillsammans. |
vmDataSize | Mellan 2 GB och 2 TB | Maximal datapartitionsstorlek för den resulterande hårddisken i GB. Standardvärde: 10 GB. Obs! Antingen vmDiskSize eller vmDataSize kan användas, men inte båda tillsammans. |
vmLogSize | Liten eller stor | Ange loggpartitionens storlek. Small = 1GB, Large = 6GB. Standardvärde: Liten. |
vswitchName | Namn på den virtuella växeln | Namnet på den virtuella växeln som tilldelats den virtuella EFLOW-datorn. |
vswitchType | Internt eller externt | Typ av virtuell växel som tilldelats den virtuella EFLOW-datorn. |
ip4Address | IPv4-adress i intervallet för DCHP-serveromfånget | Statisk Ipv4-adress för den virtuella EFLOW-datorn. |
ip4PrefixLength | IPv4 Prefixlängd för undernätet | Ipv4-undernätsprefixlängd, endast giltig när statisk Ipv4-adress anges. |
ip4GatewayAddress | IPv4-adress för undernätsgatewayen | Gateway Ipv4-adress, endast giltig när statisk Ipv4-adress anges. |
gpuName | GPU-enhetsnamn | Namnet på den GPU-enhet som ska användas för genomströmning. |
gpuPassthroughType | DirectDeviceAssignment, ParaVirtualization eller ingen (endast CPU) | GPU-genomströmningstyp |
gpuCount | Heltalsvärde mellan 1 och antalet GPU-kärnor för enheten | Antal GPU-enheter för den virtuella datorn. Obs! Om du använder ParaVirtualization måste du ange gpuCount = 1 |
customSsh | Ingen | Avgör om användaren vill använda sin anpassade OpenSSH.Client-installation. Om det finns måste ssh.exe vara tillgängligt för EFLOW PSM |
sharedFoldersJsonPath | Sträng | Sökväg till JSON-konfigurationsfilen delade mappar . |
Mer information finns i kommandot Get-Help Deploy-Eflow -full
.
Get-EflowHostConfiguration
Kommandot Get-EflowHostConfiguration returnerar värdkonfigurationen. Det här kommandot tar inga parametrar. Det returnerar ett objekt som innehåller fyra egenskaper:
- FreePhysicalMemoryInMB
- NumberOfLogicalProcessors
- DiskInfo
- GpuInfo
Mer information finns i kommandot Get-Help Get-EflowHostConfiguration -full
.
Get-EflowLogs
Kommandot Get-EflowLogs samlar in och paketar loggar från IoT Edge för Linux i Windows-distribution och -installation. Den matar ut de paketerade loggarna i form av en .zip
mapp.
Mer information finns i kommandot Get-Help Get-EflowLogs -full
.
Get-EflowNetwork
Kommandot Get-EflowNetwork returnerar en lista över de nätverk som tilldelats den virtuella EFLOW-datorn. Använd den valfria parametern för att hämta ett specifikt nätverk.
Parameter | Godkända värden | Kommentarer |
---|---|---|
vswitchName | Namn på den virtuella växeln | Namnet på den virtuella växeln som tilldelats den virtuella EFLOW-datorn. |
Den returnerar en lista med objekt som innehåller fyra egenskaper:
- Name
- AllocationMethod
- Cidr
- Typ
Mer information finns i kommandot Get-Help Get-EflowNetwork -full
.
Get-EflowVm
Kommandot Get-EflowVm returnerar den virtuella datorns aktuella konfiguration. Det här kommandot tar inga parametrar. Det returnerar ett objekt som innehåller fyra egenskaper:
- VmConfiguration
- VmPowerState
- EdgeRuntimeVersion
- EdgeRuntimeStatus
- Systemstatistik
Om du vill visa en specifik egenskap i en läsbar lista kör Get-EflowVM
du kommandot med egenskapen expanderad. Exempel:
Get-EflowVM | Select -ExpandProperty VmConfiguration | Format-List
Mer information finns i kommandot Get-Help Get-EflowVm -full
.
Get-EflowVmAddr
Kommandot Get-EflowVmAddr används för att fråga den virtuella datorns aktuella IP- och MAC-adress. Det här kommandot finns för att ta hänsyn till att IP- och MAC-adressen kan ändras över tid.
Om du vill ha mer information använder du kommandot Get-Help Get-EflowVmAddr -full
.
Get-EflowVmEndpoint
Kommandot Get-EflowVmEndpoint returnerar en lista över de nätverksslutpunkter som tilldelats till den virtuella EFLOW-datorn. Använd den valfria parametern för att hämta en specifik nätverksslutpunkt.
Parameter | Godkända värden | Kommentarer |
---|---|---|
vswitchName | Namn på den virtuella växeln | Namnet på den virtuella växeln som tilldelats den virtuella EFLOW-datorn. |
Den returnerar en lista med objekt som innehåller fyra egenskaper:
- Name
- MacAddress
- HealthStatus
- IpConfiguration
Mer information finns i kommandot Get-Help Get-EflowVmEndpoint -full
.
Get-EflowVmFeature
Kommandot Get-EflowVmFeature returnerar status för aktiveringen av IoT Edge för Linux på Windows-funktioner.
Parameter | Godkända värden | Kommentarer |
---|---|---|
funktion | DpsTpm | Funktionsnamn som ska frågas. |
Mer information finns i kommandot Get-Help Get-EflowVmFeature -full
.
Get-EflowVmName
Kommandot Get-EflowVmName returnerar den virtuella datorns aktuella värdnamn. Det här kommandot finns för att ta hänsyn till att Windows-värdnamnet kan ändras över tid.
Mer information finns i kommandot Get-Help Get-EflowVmName -full
.
Get-EflowVmSharedFolder
Kommandot Get-EflowVmSharedFolder returnerar information om en eller flera Windows-värdoperativsystemmappar som delas med den virtuella EFLOW-datorn.
Parameter | Godkända värden | Kommentarer |
---|---|---|
sharedfolderRoot | Sträng | Sökväg till den delade rotmappen för Windows-värdoperativsystemet. |
hostFolderPath | Sträng eller lista | Relativ sökväg/sökvägar (till rotmappen) till den delade mappen/s för Windows-värdens operativsystem. |
Den returnerar en lista med objekt som innehåller tre egenskaper:
- hostFolderPath: Relativ sökväg (till den överordnade rotmappen) för mappen som delas med den virtuella EFLOW-datorn.
- readOnly: Definierar om den delade mappen är skrivbar eller skrivskyddad från den virtuella EFLOW-datorn – Värden: false eller true.
- targetFolderOnGuest: Mappsökväg i den virtuella EFLOW-datorn där Windows-mappen är monterad.
Mer information finns i kommandot Get-Help Get-EflowVmSharedFolder -full
.
Get-EflowVmTelemetryOption
Kommandot Get-EflowVmTelemetryOption visar status för telemetrin ( valfritt eller obligatoriskt) i den virtuella datorn.
Mer information finns i kommandot Get-Help Get-EflowVmTelemetryOption -full
.
Get-EflowVmTpmProvisioningInfo
Kommandot Get-EflowVmTpmProvisioningInfo returnerar TPM-etableringsinformationen. Det här kommandot tar inga parametrar. Det returnerar ett objekt som innehåller två egenskaper:
- Bekräftelsenyckel
- Registrerings-ID
Mer information finns i kommandot Get-Help Get-EflowVmTpmProvisioningInfo -full
.
Invoke-EflowVmCommand
Kommandot Invoke-EflowVMCommand kör ett Linux-kommando på den virtuella datorn och returnerar utdata. Det här kommandot fungerar bara för Linux-kommandon som returnerar en begränsad utdata. Det kan inte användas för Linux-kommandon som kräver användarinteraktion eller som körs på obestämd tid.
Följande valfria parametrar kan användas för att ange kommandot i förväg.
Parameter | Godkända värden | Kommentarer |
---|---|---|
command | Sträng | Kommando som ska köras på den virtuella datorn. |
ignoreError | Ingen | Om den här flaggan finns ignorerar du fel från kommandot . |
Mer information finns i kommandot Get-Help Invoke-EflowVmCommand -full
.
Provision-EflowVm
Kommandot Provision-EflowVm lägger till etableringsinformationen för din IoT Edge-enhet i den virtuella datorns IoT Edge-filconfig.yaml
.
Parameter | Godkända värden | Kommentarer |
---|---|---|
provisioningType | ManualConnectionString, ManualX509, DpsTPM, DpsX509 eller DpsSymmetricKey | Definierar vilken typ av etablering du vill använda för din IoT Edge enhet. |
devConnString | Enhetsanslutningssträngen för en befintlig IoT Edge enhet | Enhetsanslutningssträng för att manuellt etablera en IoT Edge enhet (ManualConnectionString). |
iotHubHostname | Värdnamnet för en befintlig IoT-hubb | Azure IoT Hub värdnamn för etablering av en IoT Edge-enhet (ManualX509). |
deviceId | Enhets-ID för en befintlig IoT Edge enhet | Enhets-ID för etablering av en IoT Edge enhet (ManualX509). |
Scopeid | Omfångs-ID för en befintlig DPS-instans. | Omfångs-ID för etablering av en IoT Edge-enhet (DpsTPM, DpsX509 eller DpsSymmetricKey). |
symmKey | Primärnyckeln för en befintlig DPS-registrering eller primärnyckeln för en befintlig IoT Edge enhet som registrerats med symmetriska nycklar | Symmetrisk nyckel för etablering av en IoT Edge enhet (DpsSymmetricKey). |
registrationId | Registrerings-ID för en befintlig IoT Edge enhet | Registrerings-ID för etablering av en IoT Edge enhet (DpsSymmetricKey, DpsTPM). |
identityCertPath | Katalogsökväg | Absolut målsökväg för identitetscertifikatet på din Windows-värddator (ManualX509, DpsX509). |
identityPrivKeyPath | Katalogsökväg | Absolut källsökväg för identitetens privata nyckel på din Windows-värddator (ManualX509, DpsX509). |
globalEndpoint | URL för enhetens slutpunkt | URL för global slutpunkt som ska användas för DPS-etablering. |
Mer information finns i kommandot Get-Help Provision-EflowVm -full
.
Remove-EflowNetwork
Kommandot Remove-EflowNetwork tar bort ett befintligt nätverk som är kopplat till den virtuella EFLOW-datorn. Det här kommandot tar en parameter.
Parameter | Godkända värden | Kommentarer |
---|---|---|
vswitchName | Namn på den virtuella växeln | Namnet på den virtuella växeln som tilldelats den virtuella EFLOW-datorn. |
Mer information finns i kommandot Get-Help Remove-EflowNetwork -full
.
Remove-EflowVmEndpoint
Kommandot Remove-EflowVmEndpoint tar bort en befintlig nätverksslutpunkt som är kopplad till den virtuella EFLOW-datorn. Det här kommandot tar en parameter.
Parameter | Godkända värden | Kommentarer |
---|---|---|
vendpointName | Namnet på den virtuella slutpunkten | Namnet på den virtuella slutpunkten som tilldelats den virtuella EFLOW-datorn. |
Mer information finns i kommandot Get-Help Remove-EflowVmEndpoint -full
.
Remove-EflowVmSharedFolder
Kommandot Remove-EflowVmSharedFolder slutar dela windows-värdens OS-mapp till den virtuella EFLOW-datorn. Det här kommandot tar två parametrar.
Parameter | Godkända värden | Kommentarer |
---|---|---|
sharedfolderRoot | Sträng | Sökväg till den delade rotmappen för Windows-värdoperativsystemet. |
hostFolderPath | Sträng eller lista | Relativ sökväg/sökvägar (till rotmappen) till den delade mappen/s för Windows-värdens operativsystem. |
Mer information finns i kommandot Get-Help Remove-EflowVmSharedFolder -full
.
Set-EflowVM
Kommandot Set-EflowVM uppdaterar konfigurationen av den virtuella datorn med de begärda egenskaperna. Använd de valfria parametrarna för att definiera en specifik konfiguration för den virtuella datorn.
Parameter | Godkända värden | Kommentarer |
---|---|---|
cpuCount | Heltalsvärde mellan 1 och enhetens CPU-kärnor | Antal CPU-kärnor för den virtuella datorn. |
memoryInMB | Heltalsvärde mellan 1024 och den maximala mängden ledigt minne på enheten | Allokerat minne för den virtuella datorn. |
gpuName | GPU-enhetsnamn | Namnet på GPU-enheten som ska användas för genomströmning. |
gpuPassthroughType | DirectDeviceAssignment, ParaVirtualization eller none (ingen genomströmning) | GPU-genomströmningstyp |
gpuCount | Heltalsvärde mellan 1 och enhetens GPU-kärnor | Antal GPU-enheter för den virtuella datorn Obs! Endast giltigt när du använder DirectDeviceAssignment |
Headless | Ingen | Om den här flaggan finns avgör den om användaren behöver bekräfta om en säkerhetsvarning utfärdas. |
Mer information finns i kommandot Get-Help Set-EflowVM -full
.
Set-EflowVmDNSServers
Kommandot Set-EflowVmDNSServers konfigurerar DNS-servrarna för den virtuella datorn EFLOW.
Parameter | Godkända värden | Kommentarer |
---|---|---|
vendpointName | Strängvärde för namnet på den virtuella slutpunkten | Använd Get-EflowVmEndpoint för att hämta de virtuella gränssnitt som tilldelats till den virtuella EFLOW-datorn. T.ex. DESKTOP-CONTOSO-EflowInterface |
dnsServers | Lista över DNS-serverns IPAddress som ska användas för namnmatchning | T.ex. @("10.0.10.1") |
Mer information finns i kommandot Get-Help Set-EflowVmDNSServers -full
.
Set-EflowVmFeature
Kommandot Set-EflowVmFeature aktiverar eller inaktiverar status för IoT Edge för Linux på Windows-funktioner.
Parameter | Godkända värden | Kommentarer |
---|---|---|
funktion | DpsTpm, Defender | Funktionsnamn som ska växlas. |
Aktivera | Ingen | Om den här flaggan finns aktiverar kommandot funktionen . |
Mer information finns i kommandot Get-Help Set-EflowVmFeature -full
.
Set-EflowVmTelemetryOption
Kommandot Set-EflowVmTelemetryOption aktiverar eller inaktiverar den valfria telemetrin på den virtuella datorn.
Parameter | Godkända värden | Kommentarer |
---|---|---|
optionalTelemetry | Sant eller falskt | Om valfri telemetri har valts. |
Mer information finns i kommandot Get-Help Set-EflowVmTelemetryOption -full
.
Start-EflowVm
Kommandot Start-EflowVm startar den virtuella datorn. Om den virtuella datorn redan har startats vidtas ingen åtgärd.
Mer information finns i kommandot Get-Help Start-EflowVm -full
.
Stop-EflowVm
Kommandot Stop-EflowVm stoppar den virtuella datorn. Om den virtuella datorn redan har stoppats vidtas ingen åtgärd.
Mer information finns i kommandot Get-Help Stop-EflowVm -full
.
Verify-EflowVm
Kommandot Verify-EflowVm är en exponerad funktion som kontrollerar om IoT Edge för Linux på den virtuella Windows-datorn har skapats. Det tar bara vanliga parametrar och returnerar Sant om den virtuella datorn har skapats och False om inte.
Mer information finns i kommandot Get-Help Verify-EflowVm -full
.
Nästa steg
Lär dig hur du använder dessa kommandon för att installera och etablera IoT Edge för Linux i Windows i följande artikel: