Funkce PowerShellu pro IoT Edge pro Linux na Windows
Platí pro: IoT Edge 1.4
Důležité
Podporované verze azure IoT Edge 1.5 LTS a IoT Edge 1.4. IoT Edge 1.4 LTS končí 12. listopadu 2024. Pokud používáte starší verzi, podívejte se na článek Aktualizace IoT Edge.
Seznamte se s funkcemi PowerShellu, které nasazují, zřizují a získávají stav virtuálního počítače IoT Edge pro Linux ve Windows (EFLOW).
Požadavky
Příkazy popsané v tomto článku pocházejí ze AzureEFLOW.psm1
souboru, který najdete v systému v adresáři v WindowsPowerShell
části C:\Program Files\WindowsPowerShell\Modules\AzureEFLOW
.
Pokud ve svém adresáři PowerShellu nemáte složku AzureEflow , stáhněte a nainstalujte Azure IoT Edge pro Linux ve Windows pomocí následujícího postupu:
V relaci PowerShellu se zvýšenými oprávněními spusťte každý z následujících příkazů a stáhněte si IoT Edge pro Linux ve 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
Nainstalujte na zařízení IoT Edge pro Linux ve Windows.
Start-Process -Wait msiexec -ArgumentList "/i","$([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))","/qn"
Vlastní instalace a adresáře VHDX můžete zadat přidáním
INSTALLDIR="<FULLY_QUALIFIED_PATH>"
parametrůVHDXDIR="<FULLY_QUALIFIED_PATH>"
do příkazu install.Nastavte zásadu spouštění na cílovém zařízení alespoň
AllSigned
na hodnotu .Set-ExecutionPolicy -ExecutionPolicy AllSigned -Force
Add-EflowNetwork
Příkaz Add-EflowNetwork přidá do virtuálního počítače EFLOW novou síť. Tento příkaz přijímá dva parametry.
Parametr | Přípustné hodnoty | Komentáře |
---|---|---|
vswitchName | Název virtuálního přepínače | Název virtuálního přepínače přiřazeného virtuálnímu počítači EFLOW |
vswitchType | Interní nebo externí | Typ virtuálního přepínače přiřazeného k virtuálnímu počítači EFLOW |
Vrátí objekt, který obsahuje čtyři vlastnosti:
- Název
- AllocationMethod
- Cidr
- Typ
Další informace potřebujete pomocí příkazu Get-Help Add-EflowNetwork -full
.
Add-EflowVmEndpoint
Příkaz Add-EflowVmEndpoint přidá do virtuálního počítače EFLOW nový koncový bod sítě. K nastavení statické IP adresy použijte volitelné parametry.
Parametr | Přípustné hodnoty | Komentáře |
---|---|---|
vswitchName | Název virtuálního přepínače | Název virtuálního přepínače přiřazeného virtuálnímu počítači EFLOW |
název_vendpointu | Název virtuálního koncového bodu | Název virtuálního koncového bodu přiřazeného virtuálnímu počítači EFLOW |
ip4Address | Adresa IPv4 v rozsahu oboru serveru DCHP | Statická ipv4 adresa virtuálního počítače EFLOW |
ip4PrefixLength | Délka předpony IPv4 podsítě | Délka předpony podsítě Ipv4, platná pouze v případě, že je zadaná statická adresa Ipv4. |
ip4GatewayAddress | Adresa IPv4 brány podsítě | Adresa Ipv4 brány, platná pouze v případě, že je zadaná statická adresa Ipv4. |
Vrátí objekt, který obsahuje čtyři vlastnosti:
- Název
- MacAddress
- HealthStatus
- IpConfiguration
Další informace potřebujete pomocí příkazu Get-Help Add-EflowVmEndpoint -full
.
Add-EflowVmSharedFolder
Příkaz Add-EflowVmSharedFolder umožňuje sdílení jedné nebo více složek hostitelského operačního systému Windows s virtuálním počítačem EFLOW.
Parametr | Přípustné hodnoty | Komentáře |
---|---|---|
sharedFoldersJsonPath | String | Cesta ke konfiguračnímu souboru JSON sdílených složek |
Konfigurační soubor JSON musí mít následující strukturu:
- sharedFOlderRoot : Cesta ke kořenové složce Windows, která obsahuje všechny složky, které se mají sdílet s virtuálním počítačem EFLOW.
- hostFolderPath: Relativní cesta (k nadřazené kořenové složce) složky, kterou chcete sdílet s virtuálním počítačem EFLOW.
- readOnly: Definuje, jestli je sdílená složka zapisovatelná nebo jen pro čtení z virtuálního počítače EFLOW – hodnoty: false nebo true.
- targetFolderOnGuest : Cesta ke složce uvnitř virtuálního počítače EFLOW, kde je připojena složka hostitelského operačního systému Windows.
[
{
"sharedFolderRoot": "<shared-folder-root-windows-path>",
"sharedFolders": [
{ "hostFolderPath": "<path-shared-folder>",
"readOnly": "<read-only>",
"targetFolderOnGuest": "<linux-mounting-point>"
}
]
}
]
Další informace potřebujete pomocí příkazu Get-Help Add-EflowVmSharedFolder -full
.
Connect-EflowVm
Příkaz Connect-EflowVm se připojí k virtuálnímu počítači pomocí SSH. Jediným účtem povoleným SSH k virtuálnímu počítači je uživatel, který ho vytvořil.
Tento příkaz funguje jenom v relaci PowerShellu spuštěné na hostitelském zařízení. Nebude fungovat při použití Windows Admin Center nebo prostředí PowerShell ISE.
Další informace potřebujete pomocí příkazu Get-Help Connect-EflowVm -full
.
Copy-EflowVmFile
Příkaz Copy-EflowVmFile zkopíruje soubor do nebo z virtuálního počítače pomocí SCP. Pomocí volitelných parametrů určete cesty ke zdrojovému a cílovému souboru a směr kopírování.
Uživatel iotedge-uživatel musí mít oprávnění ke čtení všech adresářů původu nebo oprávnění k zápisu do všech cílových adresářů na virtuálním počítači.
Parametr | Přípustné hodnoty | Komentáře |
---|---|---|
fromFile | Řetězec představující cestu k souboru | Definuje soubor, ze který se má číst. |
toFile | Řetězec představující cestu k souboru | Definuje soubor, do který se má zapisovat. |
pushFile | Nic | Tento příznak označuje směr kopírování. Pokud je k dispozici, příkaz soubor odešle do virtuálního počítače. Pokud chybí, příkaz stáhne soubor z virtuálního počítače. |
Další informace potřebujete pomocí příkazu Get-Help Copy-EflowVMFile -full
.
Deploy-Eflow
Příkaz Deploy-Eflow je hlavní metoda nasazení. Příkaz pro nasazení vytvoří virtuální počítač, zřídí soubory a nasadí modul agenta IoT Edge. I když nejsou potřeba žádné parametry, je možné je použít k úpravě nastavení virtuálního počítače během vytváření.
Parametr | Přípustné hodnoty | Komentáře |
---|---|---|
acceptEula | Ano nebo Ne | Zástupce pro přijetí nebo zamítnutí euLA a obejití výzvy EULA |
acceptOptionalTelemetry | Ano nebo Ne | Zástupce pro přijetí nebo zamítnutí volitelné telemetrie a obejití výzvy k telemetrii. |
cpuCount | Celočíselná hodnota mezi 1 a jádry procesoru zařízení | Počet jader procesoru pro virtuální počítač Výchozí hodnota: 1 virtuální jádro. |
memoryInMB | Celočíselná sudá hodnota mezi 1024 a maximální velikostí volné paměti zařízení | Paměť přidělená virtuálnímu počítači. Výchozí hodnota: 1024 MB. |
vmDiskSize | Mezi 21 GB a 2 TB | Maximální velikost logického disku dynamicky se rozšiřujícího virtuálního pevného disku Výchozí hodnota: 29 GB. Poznámka: Buď vmDiskSize nebo vmDataSize lze použít, ale ne oba dohromady. |
vmDataSize | Mezi 2 GB a 2 TB | Maximální velikost datového oddílu výsledného pevného disku v GB. Výchozí hodnota: 10 GB. Poznámka: Buď vmDiskSize nebo vmDataSize lze použít, ale ne oba dohromady. |
vmLogSize | Malé nebo velké | Zadejte velikost oddílu protokolu. Malé = 1 GB, Velké = 6 GB. Výchozí hodnota: Small. |
vswitchName | Název virtuálního přepínače | Název virtuálního přepínače přiřazeného virtuálnímu počítači EFLOW |
vswitchType | Interní nebo externí | Typ virtuálního přepínače přiřazeného k virtuálnímu počítači EFLOW |
ip4Address | Adresa IPv4 v rozsahu oboru serveru DCHP | Statická ipv4 adresa virtuálního počítače EFLOW |
ip4PrefixLength | Délka předpony IPv4 podsítě | Délka předpony podsítě Ipv4, platná pouze v případě, že je zadaná statická adresa Ipv4. |
ip4GatewayAddress | Adresa IPv4 brány podsítě | Adresa Ipv4 brány, platná pouze v případě, že je zadaná statická adresa Ipv4. |
gpuName | Název zařízení GPU | Název zařízení GPU, které se má použít pro předávání. |
gpuPassthroughType | DirectDeviceAssignment, ParaVirtualization nebo none (pouze procesor) | Typ průchodu GPU |
GpuCount | Celočíselná hodnota mezi 1 a počtem jader GPU zařízení | Počet zařízení GPU pro virtuální počítač Poznámka: Pokud používáte ParaVirtualization, nezapomeňte nastavit gpuCount = 1. |
customSsh | Nic | Určuje, jestli chce uživatel používat vlastní instalaci OpenSSH.Client. Pokud je k dispozici, musí být ssh.exe k dispozici pro PSM EFLOW. |
sharedFoldersJsonPath | String | Cesta ke konfiguračnímu souboru JSON sdílených složek |
Další informace potřebujete pomocí příkazu Get-Help Deploy-Eflow -full
.
Get-EflowHostConfiguration
Příkaz Get-EflowHostConfiguration vrátí konfiguraci hostitele. Tento příkaz nepřijímá žádné parametry. Vrátí objekt, který obsahuje čtyři vlastnosti:
- FreePhysicalMemoryInMB
- NumberOfLogicalProcessors
- DiskInfo
- GpuInfo
Další informace potřebujete pomocí příkazu Get-Help Get-EflowHostConfiguration -full
.
Get-EflowLogs
Příkaz Get-EflowLogs shromažďuje protokoly z IoT Edge pro Linux a jeho instalaci. Výstupem jsou sbalené protokoly ve formě .zip
složky.
Další informace potřebujete pomocí příkazu Get-Help Get-EflowLogs -full
.
Get-EflowNetwork
Příkaz Get-EflowNetwork vrátí seznam sítí přiřazených virtuálnímu počítači EFLOW. K získání konkrétní sítě použijte volitelný parametr.
Parametr | Přípustné hodnoty | Komentáře |
---|---|---|
vswitchName | Název virtuálního přepínače | Název virtuálního přepínače přiřazeného virtuálnímu počítači EFLOW |
Vrátí seznam objektů, které obsahují čtyři vlastnosti:
- Název
- AllocationMethod
- Cidr
- Typ
Další informace potřebujete pomocí příkazu Get-Help Get-EflowNetwork -full
.
Get-EflowVm
Příkaz Get-EflowVm vrátí aktuální konfiguraci virtuálního počítače. Tento příkaz nepřijímá žádné parametry. Vrátí objekt, který obsahuje čtyři vlastnosti:
- VmConfiguration
- VmPowerState
- EdgeRuntimeVersion
- EdgeRuntimeStatus
- SystemStatistics
Pokud chcete zobrazit konkrétní vlastnost v čitelném seznamu, spusťte Get-EflowVM
příkaz s rozbalenou vlastností. Příklad:
Get-EflowVM | Select -ExpandProperty VmConfiguration | Format-List
Další informace potřebujete pomocí příkazu Get-Help Get-EflowVm -full
.
Get-EflowVmAddr
Příkaz Get-EflowVmAddr slouží k dotazování aktuální IP adresy a adresy MAC virtuálního počítače. Tento příkaz existuje k tomu, aby zohlednil skutečnost, že se IP adresa a adresa MAC můžou v průběhu času měnit.
Další informace potřebujete pomocí příkazu Get-Help Get-EflowVmAddr -full
.
Get-EflowVmEndpoint
Příkaz Get-EflowVmEndpoint vrátí seznam koncových bodů sítě přiřazených virtuálnímu počítači EFLOW. K získání konkrétního koncového bodu sítě použijte volitelný parametr.
Parametr | Přípustné hodnoty | Komentáře |
---|---|---|
vswitchName | Název virtuálního přepínače | Název virtuálního přepínače přiřazeného virtuálnímu počítači EFLOW |
Vrátí seznam objektů, které obsahují čtyři vlastnosti:
- Název
- MacAddress
- HealthStatus
- IpConfiguration
Další informace potřebujete pomocí příkazu Get-Help Get-EflowVmEndpoint -full
.
Get-EflowVmFeature
Příkaz Get-EflowVmFeature vrátí stav povolení funkce IoT Edge pro Linux ve Windows.
Parametr | Přípustné hodnoty | Komentáře |
---|---|---|
funkce | DpsTpm | Název funkce pro dotaz. |
Další informace potřebujete pomocí příkazu Get-Help Get-EflowVmFeature -full
.
Get-EflowVmName
Příkaz Get-EflowVmName vrátí aktuální název hostitele virtuálního počítače. Tento příkaz existuje, aby zohlednil skutečnost, že název hostitele systému Windows se může v průběhu času měnit.
Další informace potřebujete pomocí příkazu Get-Help Get-EflowVmName -full
.
Get-EflowVmSharedFolder
Příkaz Get-EflowVmSharedFolder vrátí informace o jedné nebo více složkách operačního systému Windows, které jsou sdílené s virtuálním počítačem EFLOW.
Parametr | Přípustné hodnoty | Komentáře |
---|---|---|
sharedfolderRoot | String | Cesta ke sdílené kořenové složce hostitelského operačního systému Windows |
hostFolderPath | Řetězec nebo seznam | Relativní cesta/cesty (ke kořenové složce) ke sdílené složce operačního systému Windows. |
Vrátí seznam objektů, které obsahují tři vlastnosti:
- hostFolderPath: Relativní cesta (k nadřazené kořenové složce) složky sdílené s virtuálním počítačem EFLOW.
- readOnly: Definuje, jestli je sdílená složka zapisovatelná nebo jen pro čtení z virtuálního počítače EFLOW – hodnoty: false nebo true.
- targetFolderOnGuest: Cesta ke složce uvnitř virtuálního počítače EFLOW, kde je připojena složka Windows.
Další informace potřebujete pomocí příkazu Get-Help Get-EflowVmSharedFolder -full
.
Get-EflowVmTelemetryOption
Příkaz Get-EflowVmTelemetryOption zobrazí stav telemetrie (volitelné nebo povinné) ve virtuálním počítači.
Další informace potřebujete pomocí příkazu Get-Help Get-EflowVmTelemetryOption -full
.
Get-EflowVmTpmProvisioningInfo
Příkaz Get-EflowVmTpmProvisioningInfo vrátí informace o zřizování TPM. Tento příkaz nepřijímá žádné parametry. Vrátí objekt, který obsahuje dvě vlastnosti:
- Ověřovací klíč
- ID registrace
Další informace potřebujete pomocí příkazu Get-Help Get-EflowVmTpmProvisioningInfo -full
.
Invoke-EflowVmCommand
Příkaz Invoke-EflowVMCommand spustí příkaz Linuxu uvnitř virtuálního počítače a vrátí výstup. Tento příkaz funguje jenom pro linuxové příkazy, které vracejí konečný výstup. Nejde ho použít pro linuxové příkazy, které vyžadují interakci uživatele nebo které běží neomezeně dlouho.
Následující volitelné parametry lze použít k zadání příkazu předem.
Parametr | Přípustné hodnoty | Komentáře |
---|---|---|
příkaz | String | Příkaz, který se má spustit na virtuálním počítači |
ignoreError | Nic | Pokud je tento příznak k dispozici, ignorujte chyby z příkazu. |
Další informace potřebujete pomocí příkazu Get-Help Invoke-EflowVmCommand -full
.
Provision-EflowVm
Příkaz Provision-EflowVm přidá informace o zřizování vašeho zařízení IoT Edge do souboru IoT Edge config.yaml
virtuálního počítače.
Parametr | Přípustné hodnoty | Komentáře |
---|---|---|
provisioningType | ManualConnectionString, ManualX509, DpsTPM, DpsX509 nebo DpsSymmetricKey | Definuje typ zřizování, které chcete použít pro zařízení IoT Edge. |
devConnString | Zařízení připojovací řetězec stávajícího zařízení IoT Edge | Zařízení připojovací řetězec pro ruční zřízení zařízení IoT Edge (ManualConnectionString). |
iotHubHostname | Název hostitele existujícího centra IoT | Název hostitele služby Azure IoT Hub pro zřízení zařízení IoT Edge (ManualX509). |
deviceId | ID zařízení existujícího zařízení IoT Edge | ID zařízení pro zřízení zařízení IoT Edge (ManualX509). |
scopeId | ID oboru pro existující instanci DPS. | ID oboru pro zřízení zařízení IoT Edge (DpsTPM, DpsX509 nebo DpsSymmetricKey). |
symmKey | Primární klíč pro existující registraci DPS nebo primární klíč existujícího zařízení IoT Edge zaregistrovaného pomocí symetrických klíčů | Symetrický klíč pro zřízení zařízení IoT Edge (DpsSymmetricKey). |
registrationId | ID registrace existujícího zařízení IoT Edge | ID registrace pro zřízení zařízení IoT Edge (DpsSymmetricKey, DpsTPM). |
identityCertPath | Directory path | Absolutní cílová cesta certifikátu identity na hostitelském počítači s Windows (ManualX509, DpsX509). |
identityPrivKeyPath | Directory path | Absolutní zdrojová cesta privátního klíče identity na hostitelském počítači s Windows (ManualX509, DpsX509). |
globalEndpoint | Adresa URL koncového bodu zařízení | Adresa URL globálního koncového bodu, která se má použít pro zřizování DPS. |
Další informace potřebujete pomocí příkazu Get-Help Provision-EflowVm -full
.
Remove-EflowNetwork
Příkaz Remove-EflowNetwork odebere existující síť připojenou k virtuálnímu počítači EFLOW. Tento příkaz přebírá jeden parametr.
Parametr | Přípustné hodnoty | Komentáře |
---|---|---|
vswitchName | Název virtuálního přepínače | Název virtuálního přepínače přiřazeného virtuálnímu počítači EFLOW |
Další informace potřebujete pomocí příkazu Get-Help Remove-EflowNetwork -full
.
Remove-EflowVmEndpoint
Příkaz Remove-EflowVmEndpoint odebere existující koncový bod sítě připojený k virtuálnímu počítači EFLOW. Tento příkaz přebírá jeden parametr.
Parametr | Přípustné hodnoty | Komentáře |
---|---|---|
název_vendpointu | Název virtuálního koncového bodu | Název virtuálního koncového bodu přiřazeného virtuálnímu počítači EFLOW |
Další informace potřebujete pomocí příkazu Get-Help Remove-EflowVmEndpoint -full
.
Remove-EflowVmSharedFolder
Příkaz Remove-EflowVmSharedFolder zastaví sdílení složky hostitelského operačního systému Windows s virtuálním počítačem EFLOW. Tento příkaz přijímá dva parametry.
Parametr | Přípustné hodnoty | Komentáře |
---|---|---|
sharedfolderRoot | String | Cesta ke sdílené kořenové složce hostitelského operačního systému Windows |
hostFolderPath | Řetězec nebo seznam | Relativní cesta/cesty (ke kořenové složce) ke sdílené složce operačního systému Windows. |
Další informace potřebujete pomocí příkazu Get-Help Remove-EflowVmSharedFolder -full
.
Set-EflowVM
Příkaz Set-EflowVM aktualizuje konfiguraci virtuálního počítače požadovanými vlastnostmi. Pomocí volitelných parametrů definujte konkrétní konfiguraci virtuálního počítače.
Parametr | Přípustné hodnoty | Komentáře |
---|---|---|
cpuCount | Celočíselná hodnota mezi 1 a jádry procesoru zařízení | Počet jader procesoru pro virtuální počítač |
memoryInMB | Celočíselná hodnota mezi 1024 a maximální velikostí volné paměti zařízení | Paměť přidělená virtuálnímu počítači. |
gpuName | Název zařízení GPU | Název zařízení GPU, které se má použít pro předávání. |
gpuPassthroughType | DirectDeviceAssignment, ParaVirtualization nebo none (bez průchodu) | Typ průchodu GPU |
GpuCount | Celočíselná hodnota mezi 1 a jádry GPU zařízení | Počet zařízení GPU pro virtuální počítač Poznámka: Platné pouze při použití DirectDeviceAssignment |
bezhlavý | Nic | Pokud je tento příznak k dispozici, určuje, zda uživatel musí potvrdit v případě vydání upozornění zabezpečení. |
Další informace potřebujete pomocí příkazu Get-Help Set-EflowVM -full
.
Set-EflowVmDNSServers
Příkaz Set-EflowVmDNSServers nakonfiguruje servery DNS pro virtuální počítač EFLOW.
Parametr | Přípustné hodnoty | Komentáře |
---|---|---|
název_vendpointu | Řetězcová hodnota názvu virtuálního koncového bodu | Pomocí get-EflowVmEndpoint získejte virtuální rozhraní přiřazená k virtuálnímu počítači EFLOW. Např. DESKTOP-CONTOSO-EflowInterface |
dnsServers | Seznam IPaddress serveru DNS, který se má použít pro překlad ip adres IP | Například @("10.0.10.1") |
Další informace potřebujete pomocí příkazu Get-Help Set-EflowVmDNSServers -full
.
Set-EflowVmFeature
Příkaz Set-EflowVmFeature povolí nebo zakáže stav ioT Edge pro Linux ve funkcích Windows.
Parametr | Přípustné hodnoty | Komentáře |
---|---|---|
funkce | DpsTpm, Defender | Název funkce, který chcete přepnout. |
zapnout | Nic | Pokud je tento příznak k dispozici, příkaz tuto funkci povolí. |
Další informace potřebujete pomocí příkazu Get-Help Set-EflowVmFeature -full
.
Set-EflowVmTelemetryOption
Příkaz Set-EflowVmTelemetryOption povolí nebo zakáže volitelnou telemetrii uvnitř virtuálního počítače.
Parametr | Přípustné hodnoty | Komentáře |
---|---|---|
optionalTelemetry | Pravda nebo Nepravda | Určuje, jestli je vybraná volitelná telemetrie. |
Další informace potřebujete pomocí příkazu Get-Help Set-EflowVmTelemetryOption -full
.
Start-EflowVm
Příkaz Start-EflowVm spustí virtuální počítač. Pokud je virtuální počítač již spuštěný, není provedena žádná akce.
Další informace potřebujete pomocí příkazu Get-Help Start-EflowVm -full
.
Stop-EflowVm
Příkaz Stop-EflowVm zastaví virtuální počítač. Pokud je virtuální počítač již zastavený, není provedena žádná akce.
Další informace potřebujete pomocí příkazu Get-Help Stop-EflowVm -full
.
Verify-EflowVm
Příkaz Verify-EflowVm je vystavená funkce, která kontroluje, jestli se na virtuálním počítači s Windows vytvořil IoT Edge pro Linux. Přebírá pouze běžné parametry a vrátí hodnotu True , pokud byl virtuální počítač vytvořen, a nepravda , pokud ne.
Další informace potřebujete pomocí příkazu Get-Help Verify-EflowVm -full
.
Další kroky
V následujícím článku se dozvíte, jak pomocí těchto příkazů nainstalovat a zřídit IoT Edge pro Linux ve Windows: