PowerShell-funktioner för IoT Edge för Linux på Windows

Gäller för:Bockmarkering för IoT Edge 1.4 IoT Edge 1.4

Viktigt!

IoT Edge 1.5 LTS och IoT Edge 1.4 stöds. IoT Edge 1.4 LTS upphör den 12 november 2024. Om du har en tidigare version läser du Uppdatera IoT Edge.

Förstå de PowerShell-funktioner som distribuerar, etablerar och hämtar status för din virtuella IoT Edge för Linux på en virtuell Dator med 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:

  1. 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
    
  2. 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>" och VHDXDIR="<FULLY_QUALIFIED_PATH>" parametrar i installationskommandot.

  3. 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äxel som tilldelats den virtuella EFLOW-datorn.
vswitchType Intern eller extern 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äxel som tilldelats den virtuella EFLOW-datorn.
vendpointName Namnet på den virtuella slutpunkten Namnet på den virtuella slutpunkt 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 har angetts.
ip4GatewayAddress IPv4-adress för undernätsgatewayen Gateway Ipv4-adress, endast giltig när statisk Ipv4-adress har angetts.

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 String Sökväg till JSON-konfigurationsfilen för 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 för Windows-värdoperativsystemet 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.

Anslut-EflowVm

Kommandot Anslut-EflowVm ansluter till den virtuella datorn med hjälp av SSH. Det enda konto som tillåts för SSH till den virtuella datorn är användaren 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 kopians riktning.

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 kopieringsriktningen. Om det finns skickar kommandot filen till den virtuella datorn. Om den 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 IoT Edge-agentmodulen. Ingen av parametrarna krävs, men de kan användas för att ändra inställningarna för den virtuella datorn när den 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 Heltalsvärde mellan 1024 och den maximala mängden ledigt minne på enheten Minne som allokerats 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äxel som tilldelats den virtuella EFLOW-datorn.
vswitchType Intern eller extern 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 har angetts.
ip4GatewayAddress IPv4-adress för undernätsgatewayen Gateway Ipv4-adress, endast giltig när statisk Ipv4-adress har angetts.
gpuName GPU-enhetsnamn Namn på 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 String Sökväg till JSON-konfigurationsfilen för 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äxel som tilldelats den virtuella EFLOW-datorn.

Den returnerar en lista över 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. Till 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.

Mer information finns i kommandot Get-Help Get-EflowVmAddr -full.

Get-EflowVmEndpoint

Kommandot Get-EflowVmEndpoint returnerar en lista över de nätverksslutpunkter som tilldelats 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äxel som tilldelats den virtuella EFLOW-datorn.

Den returnerar en lista över 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 att fråga efter.

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 String 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ärdoperativsystemet.

Den returnerar en lista över 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 (valfri eller Obligatorisk) 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 i 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
kommando String 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-fil config.yaml .

Parameter Godkända värden Kommentarer
provisioningType Manuell Anslut ionString, ManualX509, DpsTPM, DpsX509 eller DpsSymmetricKey Definierar vilken typ av etablering du vill använda för din IoT Edge-enhet.
devConnString Enhetens anslutningssträng för en befintlig IoT Edge-enhet Enheten anslutningssträng för att manuellt etablera en IoT Edge-enhet (manuell Anslut ionString).
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:t 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 enhetsslutpunkt 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äxel 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 slutpunkt som tilldelats den virtuella EFLOW-datorn.

Mer information finns i kommandot Get-Help Remove-EflowVmEndpoint -full.

Remove-EflowVmSharedFolder

Kommandot Remove-EflowVmSharedFolder slutar dela mappen Windows-värdoperativsystem till den virtuella EFLOW-datorn. Det här kommandot tar två parametrar.

Parameter Godkända värden Kommentarer
sharedfolderRoot String 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ärdoperativsystemet.

Mer information finns i kommandot Get-Help Remove-EflowVmSharedFolder -full.

Set-EflowVM

Set-EflowVM-kommandot 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 Minne som allokerats för den virtuella datorn.
gpuName GPU-enhetsnamn Namnet på den GPU-enhet som ska användas för genomströmning.
gpuPassthroughType DirectDeviceAssignment, ParaVirtualization eller ingen (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 EFLOW-datorn.

Parameter Godkända värden Kommentarer
vendpointName Strängvärde för det virtuella slutpunktsnamnet Använd Get-EflowVmEndpoint för att hämta de virtuella gränssnitt som tilldelats 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 att växla.
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 i 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 skapades 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: