správa Azure Stack hraničního zařízení Pro GPU prostřednictvím Windows PowerShell
platí pro:
Azure Stack Edge pro – GPU
Azure Stack Edge pro r
Azure Stack Edge Mini r
řešení Azure Stack Edge Pro GPU umožňuje zpracovávat data a odesílat je přes síť do Azure. tento článek popisuje některé úlohy konfigurace a správy pro Azure Stack hraniční Pro zařízení GPU. ke správě zařízení můžete použít Azure Portal, místní webové uživatelské rozhraní nebo rozhraní Windows PowerShell.
Tento článek se zaměřuje na to, jak se můžete připojit k rozhraní PowerShellu zařízení a úlohám, které můžete používat v tomto rozhraní.
Připojte se k rozhraní PowerShellu.
Postupy vzdáleného připojení k zařízení se liší v závislosti na operačním systému klienta.
Vzdálené připojení z klienta Windows
Požadavky
Než začnete, ujistěte se, že:
Váš klient Windows používá Windows PowerShell 5.0 nebo novější.
Váš klient Windows má řetěz podpisů (kořenový certifikát) odpovídající certifikátu uzlu nainstalovanému na zařízení. Podrobné pokyny najdete v tématu Instalace certifikátu do klienta Windows.
Soubor pro vašeho klienta windows má položku
hostsC:\Windows\System32\drivers\etcodpovídající certifikátu uzlu v následujícím formátu:<Device IP> <Node serial number>.<DNS domain of the device>Tady je příklad položky pro
hostssoubor:10.100.10.10 1HXQG13.wdshcsso.com
Podrobné kroky
Pokud se chcete vzdáleně připojit z klienta Windows, postupujte podle těchto kroků.
Spusťte Windows PowerShell jako správce.
Ujistěte se, Vzdálená správa systému Windows ve vašem klientovi spuštěná služba . Na příkazovém řádku zadejte:
winrm quickconfigDalší informace najdete v tématu Instalace a konfigurace pro Vzdálená správa systému Windows.
Přiřaďte proměnnou k připojovacímu řetězci použitému v
hostssouboru.$Name = "<Node serial number>.<DNS domain of the device>"Nahraďte
<Node serial number><DNS domain of the device>a sériovým číslem uzlu a doménou DNS vašeho zařízení. Hodnoty sériového čísla uzlu můžete získat ze stránky Certifikáty a domény DNS ze stránky Zařízení v místním webovém uživatelském rozhraní vašeho zařízení.Pokud chcete přidat tento připojovací řetězec pro vaše zařízení do seznamu důvěryhodných hostitelů klienta, zadejte následující příkaz:
Set-Item WSMan:\localhost\Client\TrustedHosts $Name -Concatenate -ForceSpusťte Windows PowerShell na zařízení:
Enter-PSSession -ComputerName $Name -Credential ~\EdgeUser -ConfigurationName Minishell -UseSSLPokud se zobrazí chyba související s vztahem důvěryhodnosti, zkontrolujte, jestli je na klientovi, který přistupuje k vašemu zařízení, nainstalovaný také řetěz podepisování certifikátu uzlu nahraného do vašeho zařízení.
Po zobrazení výzvy zadejte heslo. Použijte stejné heslo, které se používá pro přihlášení k místnímu webovému uživatelskému rozhraní. Výchozí heslo místního webového uživatelského rozhraní je Password1. Po úspěšném připojení k zařízení pomocí vzdáleného prostředí PowerShell se zobrazí následující vzorový výstup:
Windows PowerShell Copyright (C) Microsoft Corporation. All rights reserved. PS C:\WINDOWS\system32> winrm quickconfig WinRM service is already running on this machine. PS C:\WINDOWS\system32> $Name = "1HXQG13.wdshcsso.com" PS C:\WINDOWS\system32> Set-Item WSMan:\localhost\Client\TrustedHosts $Name -Concatenate -Force PS C:\WINDOWS\system32> Enter-PSSession -ComputerName $Name -Credential ~\EdgeUser -ConfigurationName Minishell -UseSSL WARNING: The Windows PowerShell interface of your device is intended to be used only for the initial network configuration. Please engage Microsoft Support if you need to access this interface to troubleshoot any potential issues you may be experiencing. Changes made through this interface without involving Microsoft Support could result in an unsupported configuration. [1HXQG13.wdshcsso.com]: PS>
Když použijete tuto -UseSSL možnost, bude Vzdálená komunikace prostřednictvím prostředí PowerShell prostřednictvím protokolu HTTPS. Pro vzdálené připojení prostřednictvím PowerShellu doporučujeme vždycky používat protokol HTTPS . V rámci důvěryhodných sítí je komunikace prostřednictvím PowerShellu přes protokol HTTP přijatelná. Nejdřív v místním uživatelském rozhraní povolíte vzdálené prostředí PowerShell přes protokol HTTP. Pak se můžete připojit k rozhraní PowerShell zařízení pomocí předchozího postupu bez -UseSSL Možnosti.
Pokud certifikáty nepoužíváte (doporučujeme použít certifikáty!), můžete tuto kontrolu přeskočit pomocí možností relace: -SkipCACheck -SkipCNCheck -SkipRevocationCheck .
$sessOptions = New-PSSessionOption -SkipCACheck -SkipCNCheck -SkipRevocationCheck
Enter-PSSession -ComputerName $Name -Credential ~\EdgeUser -ConfigurationName Minishell -UseSSL -SessionOption $sessOptions
Tady je příklad výstupu při přeskočení kontroly certifikátu:
PS C:\WINDOWS\system32> $Name = "1HXQG13.wdshcsso.com"
PS C:\WINDOWS\system32> $sessOptions = New-PSSessionOption -SkipCACheck -SkipCNCheck -SkipRevocationCheck
PS C:\WINDOWS\system32> $sessOptions
MaximumConnectionRedirectionCount : 5
NoCompression : False
NoMachineProfile : False
ProxyAccessType : None
ProxyAuthentication : Negotiate
ProxyCredential :
SkipCACheck : True
SkipCNCheck : True
SkipRevocationCheck : True
OperationTimeout : 00:03:00
NoEncryption : False
UseUTF16 : False
IncludePortInSPN : False
OutputBufferingMode : None
MaxConnectionRetryCount : 0
Culture :
UICulture :
MaximumReceivedDataSizePerCommand :
MaximumReceivedObjectSize :
ApplicationArguments :
OpenTimeout : 00:03:00
CancelTimeout : 00:01:00
IdleTimeout : -00:00:00.0010000
PS C:\WINDOWS\system32> Enter-PSSession -ComputerName $Name -Credential ~\EdgeUser -ConfigurationName Minishell -UseSSL -SessionOption $sessOptions
WARNING: The Windows PowerShell interface of your device is intended to be used only for the initial network configuration. Please
engage Microsoft Support if you need to access this interface to troubleshoot any potential issues you may be experiencing.
Changes made through this interface without involving Microsoft Support could result in an unsupported configuration.
[1HXQG13.wdshcsso.com]: PS>
Důležité
V aktuální verzi se můžete připojit k rozhraní PowerShell zařízení jenom přes klienta Windows. -UseSSLMožnost nefunguje u klientů se systémem Linux.
Vytvoření balíčku pro podporu
Pokud se setkáte s problémy zařízení, můžete vytvořit balíček pro podporu ze systémových protokolů. Podpora Microsoftu používá tento balíček k řešení problémů. Pomocí těchto kroků vytvořte balíček pro podporu:
Pomocí
Get-HcsNodeSupportPackagepříkazu vytvořte balíček pro podporu. Použití rutiny je následující:Get-HcsNodeSupportPackage [-Path] <string> [-Zip] [-ZipFileName <string>] [-Include {None | RegistryKeys | EtwLogs | PeriodicEtwLogs | LogFiles | DumpLog | Platform | FullDumps | MiniDumps | ClusterManagementLog | ClusterLog | UpdateLogs | CbsLogs | StorageCmdlets | ClusterCmdlets | ConfigurationCmdlets | KernelDump | RollbackLogs | Symbols | NetworkCmdlets | NetworkCmds | Fltmc | ClusterStorageLogs | UTElement | UTFlag | SmbWmiProvider | TimeCmds | LocalUILogs | ClusterHealthLogs | BcdeditCommand | BitLockerCommand | DirStats | ComputeRolesLogs | ComputeCmdlets | DeviceGuard | Manifests | MeasuredBootLogs | Stats | PeriodicStatLogs | MigrationLogs | RollbackSupportPackage | ArchivedLogs | Default}] [-MinimumTimestamp <datetime>] [-MaximumTimestamp <datetime>] [-IncludeArchived] [-IncludePeriodicStats] [-Credential <pscredential>] [<CommonParameters>]Rutina shromažďuje protokoly ze zařízení a kopíruje tyto protokoly do zadané sítě nebo místní sdílené složky.
Použijí se následující parametry:
-Path-Zadejte síť nebo místní cestu ke zkopírování balíčku pro podporu. požadovanou-Credential-Zadejte přihlašovací údaje pro přístup k chráněné cestě.-Zip– Určete, aby se vygeneroval soubor zip.-Include– Určuje, že se mají zahrnout součásti, které se mají zahrnout do balíčku pro podporu. Pokud není zadaný,Defaultpředpokládá se.-IncludeArchived– Určuje, že se mají do balíčku pro podporu zahrnout archivované protokoly.-IncludePeriodicStats– Určuje, že se mají do balíčku pro podporu zahrnout protokoly pravidelného oznámení.
Zobrazit informace o zařízení
Get-HcsApplianceInfoInformace pro vaše zařízení získáte pomocí.Následující příklad ukazuje použití této rutiny:
[10.100.10.10]: PS>Get-HcsApplianceInfo Id : b2044bdb-56fd-4561-a90b-407b2a67bdfc FriendlyName : DBE-NBSVFQR94S6 Name : DBE-NBSVFQR94S6 SerialNumber : HCS-NBSVFQR94S6 DeviceId : 40d7288d-cd28-481d-a1ea-87ba9e71ca6b Model : Virtual FriendlySoftwareVersion : Data Box Gateway 1902 HcsVersion : 1.4.771.324 IsClustered : False IsVirtual : True LocalCapacityInMb : 1964992 SystemState : Initialized SystemStatus : Normal Type : DataBoxGateway CloudReadRateBytesPerSec : 0 CloudWriteRateBytesPerSec : 0 IsInitialPasswordSet : True FriendlySoftwareVersionNumber : 1902 UploadPolicy : All DataDiskResiliencySettingName : Simple ApplianceTypeFriendlyName : Data Box Gateway IsRegistered : FalseTady je tabulka shrnující některé důležité informace o zařízení:
Parametr Popis FriendlyName Popisný název zařízení nakonfigurovaný prostřednictvím místního webového uživatelského rozhraní během nasazování zařízení. Výchozím popisným názvem je sériové číslo zařízení. SerialNumber Sériové číslo zařízení je jedinečné číslo přiřazené v továrně. Modelování Model pro Azure Stack Edge nebo Data Box Gateway zařízení. Model je fyzický pro Azure Stack Edge a Virtual pro Data Box Gateway. FriendlySoftwareVersion Popisný řetězec, který odpovídá verzi softwaru zařízení. V systému, ve kterém je spuštěný náhled, by se měla používat popisná verze softwaru Data Box Edge 1902. HcsVersion Verze softwaru klientovi HCS spuštěná na vašem zařízení. Například verze softwaru klientovi HCS, která odpovídá Data Box Edge 1902, je 1.4.771.324. LocalCapacityInMb Celková místní kapacita zařízení v megabajtech. Registrováno Tato hodnota označuje, jestli je zařízení aktivované službou.
Zobrazit informace o ovladači GPU
Pokud je v zařízení nakonfigurovaná výpočetní role, můžete informace o ovladači GPU získat taky přes rozhraní PowerShell.
Použijte
Get-HcsGpuNvidiaSmik získání informací o ovladači GPU pro vaše zařízení.Následující příklad ukazuje použití této rutiny:
Get-HcsGpuNvidiaSmiPoznamenejte si informace o ovladači z ukázkového výstupu této rutiny.
+-----------------------------------------------------------------------------+ | NVIDIA-SMI 440.64.00 Driver Version: 440.64.00 CUDA Version: 10.2 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | |===============================+======================+======================| | 0 Tesla T4 On | 000029CE:00:00.0 Off | 0 | | N/A 60C P0 29W / 70W | 1539MiB / 15109MiB | 0% Default | +-------------------------------+----------------------+----------------------+ | 1 Tesla T4 On | 0000AD50:00:00.0 Off | 0 | | N/A 58C P0 29W / 70W | 330MiB / 15109MiB | 0% Default | +-------------------------------+----------------------+----------------------+
Povolit službu Multi-Process Service (MPS)
Služba multi-Process (MPS) na NVIDIA GPU poskytuje mechanismus, ve kterém může být prostředí GPU sdíleno více úlohami, kde každá úloha má přiděleno určité procento prostředků GPU. mp je funkce ve verzi preview na Azure Stack Edge Pro zařízení GPU. Pokud chcete na svém zařízení povolit MPS, postupujte podle těchto kroků:
Než začnete, ujistěte se, že:
- Nakonfigurovali jste a aktivovali své zařízení Azure Stack Edge pro s využitím prostředků Azure Stack Edge v Azure.
- Na tomto zařízení jste nakonfigurovali COMPUTE na Azure Portal.
Pomocí následujícího příkazu povolte na svém zařízení MPS.
Start-HcsGpuMPS
Poznámka
Po aktualizaci softwaru zařízení a clusteru Kubernetes se nastavení MPS pro úlohy nezachová. Budete muset znovu povolit MPS.
Resetování zařízení
Pokud chcete resetovat zařízení, musíte bezpečně vymazat všechna data na datovém a spouštěcím disku zařízení.
Pomocí Reset-HcsAppliance rutiny můžete vymazat datové disky i spouštěcí disk nebo jenom datové disky. ClearDataPřepínače a BootDisk umožňují vymazat datové disky a spouštěcí disk v uvedeném pořadí.
BootDiskPřepínač vymaže spouštěcí disk a zařízení bude nepoužitelné. Měl by se použít pouze v případě, že je potřeba vrátit zařízení do Microsoftu. Další informace najdete v tématu o vrácení zařízení do Microsoftu.
Pokud využijete možnost resetování zařízení v místním webovém uživatelském rozhraní, bezpečně se vymažou pouze datové disky a spouštěcí disk zůstane nedotčený. Spouštěcí disk obsahuje konfiguraci zařízení.
Na příkazovém řádku zadejte:
Reset-HcsAppliance -ClearData -BootDiskNásledující příklad ukazuje, jak použít tuto rutinu:
[10.128.24.33]: PS>Reset-HcsAppliance -ClearData -BootDisk Confirm Are you sure you want to perform this action? Performing the operation "Reset-HcsAppliance" on target "ShouldProcess appliance". [Y] Yes [A] Yes to All [N] No [L] No to All [?] Help (default is "Y"): N
Získat výpočetní protokoly
Pokud je v zařízení nakonfigurovaná výpočetní role, můžete získat výpočetní protokoly i přes rozhraní PowerShell.
Použijte
Get-AzureDataBoxEdgeComputeRoleLogsk získání výpočetních protokolů pro vaše zařízení.Následující příklad ukazuje použití této rutiny:
Get-AzureDataBoxEdgeComputeRoleLogs -Path "\\hcsfs\logs\myacct" -Credential "username" -FullLogCollectionTady je popis parametrů použitých pro rutinu:
Path: Zadejte síťovou cestu ke sdílené složce, ve které chcete vytvořit balíček výpočetního protokolu.Credential: Zadejte uživatelské jméno pro sdílenou síťovou složku. Při spuštění této rutiny budete muset zadat heslo pro sdílení.FullLogCollection: Tento parametr zajišťuje, že balíček protokolu bude obsahovat všechny protokoly výpočtů. Ve výchozím nastavení obsahuje balíček protokolu pouze podmnožinu protokolů.
Změna podsítí podu a služby Kubernetes
Ve výchozím nastavení Kubernetes Azure Stack na zařízení Edge používá podsítě 172.27.0.0/16 a 172.28.0.0/16 pro pod a službu. Pokud se tyto podsítě už ve vaší síti používají, můžete spuštěním Set-HcsKubeClusterNetworkInfo rutiny tyto podsítě změnit.
Tuto konfiguraci chcete provést před konfigurací výpočtů z Azure Portal, protože se v tomto kroku vytvoří cluster Kubernetes.
Z rozhraní PowerShellu zařízení spusťte:
Set-HcsKubeClusterNetworkInfo -PodSubnet <subnet details> -ServiceSubnet <subnet details>Nahraďte <subnet details> rozsahem podsítě, který chcete použít.
Po spuštění tohoto příkazu můžete pomocí
Get-HcsKubeClusterNetworkInfopříkazu ověřit, zda byly podsítě pod a služby změněny.
Zde je ukázkový výstup tohoto příkazu.
[10.100.10.10]: PS>Set-HcsKubeClusterNetworkInfo -PodSubnet 10.96.0.1/16 -ServiceSubnet 10.97.0.1/16
[10.100.10.10]: PS>Get-HcsKubeClusterNetworkInfo
Id PodSubnet ServiceSubnet
-- --------- -------------
6dbf23c3-f146-4d57-bdfc-76cad714cfd1 10.96.0.1/16 10.97.0.1/16
[10.100.10.10]: PS>
Ladění problémů s Kubernetes souvisejícími s IoT Edge
Než začnete, musíte mít:
- Je nakonfigurovaná výpočetní síť. viz kurz: konfigurace sítě pro Azure Stack Edge Pro s grafickým procesorem.
- V zařízení je nakonfigurovaná výpočetní role.
na Azure Stack Edge Pro zařízení GPU s nakonfigurovanou výpočetní rolí můžete vyřešit nebo monitorovat zařízení pomocí dvou různých sad příkazů.
- Použití
iotedgepříkazů. Tyto příkazy jsou k dispozici pro základní operace vašeho zařízení. - Použití
kubectlpříkazů. Tyto příkazy jsou k dispozici pro rozsáhlou sadu operací pro vaše zařízení.
pokud chcete spustit jednu z výše uvedených příkazů, musíte Připojení k rozhraní PowerShell.
Použití iotedge příkazů
Pokud chcete zobrazit seznam dostupných příkazů, Připojte se k rozhraní PowerShell a použijte iotedge funkci.
[10.100.10.10]: PS>iotedge -?
Usage: iotedge COMMAND
Commands:
list
logs
restart
[10.100.10.10]: PS>
Následující tabulka obsahuje stručný popis příkazů, které jsou k dispozici pro iotedge :
| command | Popis |
|---|---|
list |
Seznam modulů |
logs |
Načtení protokolů modulu |
restart |
Zastavení a restartování modulu |
Vypsat všechny IoT Edge moduly
Pokud chcete zobrazit seznam všech modulů spuštěných v zařízení, použijte iotedge list příkaz.
Zde je ukázkový výstup tohoto příkazu. Tento příkaz vypíše všechny moduly, přidruženou konfiguraci a externí IP adresy přidružené k modulům. Můžete například získat přístup k aplikaci webserver na adrese https://10.128.44.244 .
[10.100.10.10]: PS>iotedge list
NAME STATUS DESCRIPTION CONFIG EXTERNAL-IP
---- ------ ----------- ------ -----
gettingstartedwithgpus Running Up 10 days mcr.microsoft.com/intelligentedge/solutions:latest
iotedged Running Up 10 days azureiotedge/azureiotedge-iotedged:0.1.0-beta10 <none>
edgehub Running Up 10 days mcr.microsoft.com/azureiotedge-hub:1.0 10.128.44.243
edgeagent Running Up 10 days azureiotedge/azureiotedge-agent:0.1.0-beta10
webserverapp Running Up 10 days nginx:stable 10.128.44.244
[10.100.10.10]: PS>
Restartovat moduly
Pomocí list příkazu můžete zobrazit seznam všech modulů spuštěných ve vašem zařízení. Pak Identifikujte název modulu, který chcete restartovat, a použijte ho pomocí restart příkazu.
Tady je ukázkový výstup, jak restartovat modul. V závislosti na tom, jak dlouho je modul spuštěný, vidíte, že se cuda-sample1 restartoval.
[10.100.10.10]: PS>iotedge list
NAME STATUS DESCRIPTION CONFIG EXTERNAL-IP PORT(S)
---- ------ ----------- ------ ----------- -------
edgehub Running Up 5 days mcr.microsoft.com/azureiotedge-hub:1.0 10.57.48.62 443:31457/TCP,5671:308
81/TCP,8883:31753/TCP
iotedged Running Up 7 days azureiotedge/azureiotedge-iotedged:0.1.0-beta13 <none> 35000/TCP,35001/TCP
cuda-sample2 Running Up 1 days nvidia/samples:nbody
edgeagent Running Up 7 days azureiotedge/azureiotedge-agent:0.1.0-beta13
cuda-sample1 Running Up 1 days nvidia/samples:nbody
[10.100.10.10]: PS>iotedge restart cuda-sample1
[10.100.10.10]: PS>iotedge list
NAME STATUS DESCRIPTION CONFIG EXTERNAL-IP PORT(S)
---- ------ ----------- ------ ----------- -------
edgehub Running Up 5 days mcr.microsoft.com/azureiotedge-hub:1.0 10.57.48.62 443:31457/TCP,5671:30
881/TCP,8883:31753/TC
P
iotedged Running Up 7 days azureiotedge/azureiotedge-iotedged:0.1.0-beta13 <none> 35000/TCP,35001/TCP
cuda-sample2 Running Up 1 days nvidia/samples:nbody
edgeagent Running Up 7 days azureiotedge/azureiotedge-agent:0.1.0-beta13
cuda-sample1 Running Up 4 minutes nvidia/samples:nbody
[10.100.10.10]: PS>
Získat protokoly modulů
Pomocí logs příkazu můžete získat protokoly pro jakýkoli IoT Edge modul běžící na vašem zařízení.
Pokud došlo k chybě při vytváření image kontejneru nebo při nastavování image, spusťte příkaz logs edgeagent . edgeagent je kontejner IoT Edge runtime, který zodpovídá za zřizování jiných kontejnerů. Protože logs edgeagent vypíše všechny protokoly, dobrým způsobem, jak zobrazit nedávné chyby, je použití možnosti --tail 0.
Zde je ukázkový výstup.
[10.100.10.10]: PS>iotedge logs cuda-sample2 --tail 10
[10.100.10.10]: PS>iotedge logs edgeagent --tail 10
<6> 2021-02-25 00:52:54.828 +00:00 [INF] - Executing command: "Report EdgeDeployment status: [Success]"
<6> 2021-02-25 00:52:54.829 +00:00 [INF] - Plan execution ended for deployment 11
<6> 2021-02-25 00:53:00.191 +00:00 [INF] - Plan execution started for deployment 11
<6> 2021-02-25 00:53:00.191 +00:00 [INF] - Executing command: "Create an EdgeDeployment with modules: [cuda-sample2, edgeAgent, edgeHub, cuda-sample1]"
<6> 2021-02-25 00:53:00.212 +00:00 [INF] - Executing command: "Report EdgeDeployment status: [Success]"
<6> 2021-02-25 00:53:00.212 +00:00 [INF] - Plan execution ended for deployment 11
<6> 2021-02-25 00:53:05.319 +00:00 [INF] - Plan execution started for deployment 11
<6> 2021-02-25 00:53:05.319 +00:00 [INF] - Executing command: "Create an EdgeDeployment with modules: [cuda-sample2, edgeAgent, edgeHub, cuda-sample1]"
<6> 2021-02-25 00:53:05.412 +00:00 [INF] - Executing command: "Report EdgeDeployment status: [Success]"
<6> 2021-02-25 00:53:05.412 +00:00 [INF] - Plan execution ended for deployment 11
[10.100.10.10]: PS>
Poznámka
Přímé metody, jako je GetModuleLogs nebo UploadModuleLogs, nejsou podporované v IoT Edge na Kubernetesu na Azure Stack Edge.
Použití příkazů kubectl
na Azure Stack Edge Pro zařízení GPU s nakonfigurovanou výpočetní rolí je kubectl k dispozici všechny příkazy pro monitorování a odstraňování potíží s moduly. Pokud chcete zobrazit seznam dostupných příkazů, spusťte kubectl --help z příkazového řádku.
C:\Users\myuser>kubectl --help
kubectl controls the Kubernetes cluster manager.
Find more information at: https://kubernetes.io/docs/reference/kubectl/overview/
Basic Commands (Beginner):
create Create a resource from a file or from stdin.
expose Take a replication controller, service, deployment or pod and expose it as a new Kubernetes Service
run Run a particular image on the cluster
set Set specific features on objects
run-container Run a particular image on the cluster. This command is deprecated, use "run" instead
==============CUT=============CUT============CUT========================
Usage:
kubectl [flags] [options]
Use "kubectl <command> --help" for more information about a given command.
Use "kubectl options" for a list of global command-line options (applies to all commands).
C:\Users\myuser>
Úplný seznam kubectl příkazů najdete na kubectl k vytištění.
Získání IP adresy služby nebo modulu vystaveného mimo cluster Kubernetes
Pokud chcete získat IP adresu služby Vyrovnávání zatížení nebo modulů vystavených mimo Kubernetes, spusťte následující příkaz:
kubectl get svc -n iotedge
Následuje ukázkový výstup všech služeb nebo modulů, které jsou vystaveny mimo cluster Kubernetes.
[10.100.10.10]: PS>kubectl get svc -n iotedge
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
edgehub LoadBalancer 10.103.52.225 10.128.44.243 443:31987/TCP,5671:32336/TCP,8883:30618/TCP 34h
iotedged ClusterIP 10.107.236.20 <none> 35000/TCP,35001/TCP 3d8h
webserverapp LoadBalancer 10.105.186.35 10.128.44.244 8080:30976/TCP 16h
[10.100.10.10]: PS>
IP adresa ve sloupci externí IP adresa odpovídá externímu koncovému bodu pro službu nebo modul. Externí IP adresu můžete získat i na řídicím panelu Kubernetes.
Postup kontroly úspěšného nasazení modulu
Výpočetní moduly jsou kontejnery, které mají implementaci obchodní logiky. Kubernetes pod může mít spuštěno více kontejnerů.
Pokud chcete zjistit, jestli je výpočetní modul úspěšně nasazený, připojte se k rozhraní PowerShell zařízení.
Spusťte get pods příkaz a ověřte, jestli je spuštěný kontejner (odpovídající modulu COMPUTE).
Chcete-li získat seznam všech lusků spuštěných v určitém oboru názvů, spusťte následující příkaz:
get pods -n <namespace>
Chcete-li kontrolovat moduly nasazené pomocí IoT Edge, spusťte následující příkaz:
get pods -n iotedge
Následuje ukázkový výstup všech lusků spuštěných v iotedge oboru názvů.
[10.100.10.10]: PS>kubectl get pods -n iotedge
NAME READY STATUS RESTARTS AGE
edgeagent-cf6d4ffd4-q5l2k 2/2 Running 0 20h
edgehub-8c9dc8788-2mvwv 2/2 Running 0 56m
filemove-66c49984b7-h8lxc 2/2 Running 0 56m
iotedged-675d7f4b5f-9nml4 1/1 Running 0 20h
[10.100.10.10]: PS>
Stav stav označuje, že všechny lusky v oboru názvů jsou spuštěné a kde Ready označuje počet kontejnerů nasazených v poli pod. V předchozí ukázce jsou spuštěny všechny lusky a jsou spuštěny všechny moduly nasazené v každém z obou lusků.
Pokud chcete kontrolovat moduly nasazené přes Azure ARC, spusťte následující příkaz:
get pods -n azure-arc
alternativně můžete Připojení na řídicí panel Kubernetes a zobrazit tak IoT Edge nebo nasazení Arc Azure.
Pokud chcete podrobnější výstup konkrétního podu pro daný obor názvů, můžete spustit následující příkaz:
kubectl describe pod <pod name> -n <namespace>
Ukázkový výstup je zobrazený tady.
[10.100.10.10]: PS>kubectl describe pod filemove-66c49984b7 -n iotedge
Name: filemove-66c49984b7-h8lxc
Namespace: iotedge
Priority: 0
Node: k8s-1hwf613cl-1hwf613/10.139.218.12
Start Time: Thu, 14 May 2020 12:46:28 -0700
Labels: net.azure-devices.edge.deviceid=myasegpu-edge
net.azure-devices.edge.hub=myasegpu2iothub.azure-devices.net
net.azure-devices.edge.module=filemove
pod-template-hash=66c49984b7
Annotations: net.azure-devices.edge.original-moduleid: filemove
Status: Running
IP: 172.17.75.81
IPs: <none>
Controlled By: ReplicaSet/filemove-66c49984b7
Containers:
proxy:
Container ID: docker://fd7975ca78209a633a1f314631042a0892a833b7e942db2e7708b41f03e8daaf
Image: azureiotedge/azureiotedge-proxy:0.1.0-beta8
Image ID: docker://sha256:5efbf6238f13d24bab9a2b499e5e05bc0c33ab1587d6cf6f289cdbe7aa667563
Port: <none>
Host Port: <none>
State: Running
Started: Thu, 14 May 2020 12:46:30 -0700
Ready: True
Restart Count: 0
Environment:
PROXY_LOG: Debug
=============CUT===============================CUT===========================
Volumes:
config-volume:
Type: ConfigMap (a volume populated by a ConfigMap)
Name: iotedged-proxy-config
Optional: false
trust-bundle-volume:
Type: ConfigMap (a volume populated by a ConfigMap)
Name: iotedged-proxy-trust-bundle
Optional: false
myasesmb1local:
Type: PersistentVolumeClaim (a reference to a PersistentVolumeClaim in the same namespace)
ClaimName: myasesmb1local
ReadOnly: false
myasesmb1:
Type: PersistentVolumeClaim (a reference to a PersistentVolumeClaim in the same namespace)
ClaimName: myasesmb1
ReadOnly: false
filemove-token-pzvw8:
Type: Secret (a volume populated by a Secret)
SecretName: filemove-token-pzvw8
Optional: false
QoS Class: BestEffort
Node-Selectors: <none>
Tolerations: node.kubernetes.io/not-ready:NoExecute for 300s
node.kubernetes.io/unreachable:NoExecute for 300s
Events: <none>
[10.100.10.10]: PS>
Získání protokolů kontejneru
Pokud chcete získat protokoly pro modul, spusťte z rozhraní PowerShellu zařízení následující příkaz:
kubectl logs <pod_name> -n <namespace> --all-containers
Vzhledem k tomu, že příznak vy výpisy všech protokolů pro všechny kontejnery, je dobrým způsobem, jak zobrazit nedávné all-containers chyby, použít možnost --tail 10 .
Následuje ukázkový výstup.
[10.100.10.10]: PS>kubectl logs filemove-66c49984b7-h8lxc -n iotedge --all-containers --tail 10
DEBUG 2020-05-14T20:40:42Z: loop process - 0 events, 0.000s
DEBUG 2020-05-14T20:40:44Z: loop process - 0 events, 0.000s
DEBUG 2020-05-14T20:40:44Z: loop process - 0 events, 0.000s
DEBUG 2020-05-14T20:40:44Z: loop process - 1 events, 0.000s
DEBUG 2020-05-14T20:40:44Z: loop process - 0 events, 0.000s
DEBUG 2020-05-14T20:42:12Z: loop process - 0 events, 0.000s
DEBUG 2020-05-14T20:42:14Z: loop process - 0 events, 0.000s
DEBUG 2020-05-14T20:42:14Z: loop process - 0 events, 0.000s
DEBUG 2020-05-14T20:42:14Z: loop process - 1 events, 0.000s
DEBUG 2020-05-14T20:42:14Z: loop process - 0 events, 0.000s
05/14/2020 19:46:44: Info: Opening module client connection.
05/14/2020 19:46:45: Info: Open done.
05/14/2020 19:46:45: Info: Initializing with input: /home/input, output: /home/output, protocol: Amqp.
05/14/2020 19:46:45: Info: IoT Hub module client initialized.
[10.100.10.10]: PS>
Změna limitů paměti a procesorů pro pracovní uzel Kubernetes
Pokud chcete změnit limity paměti nebo procesoru pro pracovní uzel Kubernetes, proveďte následující kroky:
Spuštěním následujícího příkazu získejte aktuální prostředky pro pracovní uzel a možnosti role:
Get-AzureDataBoxEdgeRoleTady je ukázkový výstup. Poznamenejte si hodnoty pro
NameComputea v částiResources.MemoryInBytesa označují aktuálně přiřazené hodnoty paměti aProcessorCountpočtu procesorů pro pracovní uzel Kubernetes.[10.100.10.10]: PS>Get-AzureDataBoxEdgeRole ImageDetail : Name:mcr.microsoft.com/azureiotedge-agent Tag:1.0 PlatformType:Linux EdgeDeviceConnectionString : IotDeviceConnectionString : HubHostName : ase-srp-007.azure-devices.net IotDeviceId : srp-007-storagegateway EdgeDeviceId : srp-007-edge Version : Id : 6ebeff9f-84c5-49a7-890c-f5e05520a506 Name : IotRole Type : IOT Resources : Compute: MemoryInBytes:34359738368 ProcessorCount:12 VMProfile: Storage: EndpointMap: EndpointId:c0721210-23c2-4d16-bca6-c80e171a0781 TargetPath:mysmbedgecloudshare1 Name:mysmbedgecloudshare1 Protocol:SMB EndpointId:6557c3b6-d3c5-4f94-aaa0-6b7313ab5c74 TargetPath:mysmbedgelocalshare Name:mysmbedgelocalshare Protocol:SMB RootFileSystemStorageSizeInBytes:0 HostPlatform : KubernetesCluster State : Created PlatformType : Linux HostPlatformInstanceId : 994632cb-853e-41c5-a9cd-05b36ddbb190 IsHostPlatformOwner : True IsCreated : True [10.100.10.10]: PS>Pokud chcete změnit hodnoty paměti a procesorů pracovního uzlu, spusťte následující příkaz:
Set-AzureDataBoxEdgeRoleCompute -Name <Name value from the output of Get-AzureDataBoxEdgeRole> -Memory <Value in Bytes> -ProcessorCount <No. of cores>Tady je ukázkový výstup.
[10.100.10.10]: PS>Set-AzureDataBoxEdgeRoleCompute -Name IotRole -MemoryInBytes 32GB -ProcessorCount 16 ImageDetail : Name:mcr.microsoft.com/azureiotedge-agent Tag:1.0 PlatformType:Linux EdgeDeviceConnectionString : IotDeviceConnectionString : HubHostName : ase-srp-007.azure-devices.net IotDeviceId : srp-007-storagegateway EdgeDeviceId : srp-007-edge Version : Id : 6ebeff9f-84c5-49a7-890c-f5e05520a506 Name : IotRole Type : IOT Resources : Compute: MemoryInBytes:34359738368 ProcessorCount:16 VMProfile: Storage: EndpointMap: EndpointId:c0721210-23c2-4d16-bca6-c80e171a0781 TargetPath:mysmbedgecloudshare1 Name:mysmbedgecloudshare1 Protocol:SMB EndpointId:6557c3b6-d3c5-4f94-aaa0-6b7313ab5c74 TargetPath:mysmbedgelocalshare Name:mysmbedgelocalshare Protocol:SMB RootFileSystemStorageSizeInBytes:0 HostPlatform : KubernetesCluster State : Created PlatformType : Linux HostPlatformInstanceId : 994632cb-853e-41c5-a9cd-05b36ddbb190 IsHostPlatformOwner : True IsCreated : True [10.100.10.10]: PS>
Při změně využití paměti a procesoru postupujte podle těchto pokynů.
- Výchozí paměť je 25 % specifikace zařízení.
- Výchozí počet procesorů je 30 % specifikace zařízení.
- Při změně hodnot pro počty paměti a procesorů doporučujeme měnit hodnoty od 15 % do 60 % paměti zařízení a počtu procesorů.
- Doporučujeme použít horní limit 60 %, aby pro systémové komponenty byl dostatek prostředků.
Připojení k BMC
Řadič pro správu základní desky (BMC) se používá ke vzdálenému monitorování a správě vašeho zařízení. Tato část popisuje rutiny, které je možné použít ke správě konfigurace BMC. Před spuštěním kterékoli z těchto rutin Připojení k rozhraní PowerShellu zařízení.
Get-HcsNetBmcInterface: Pomocí této rutiny můžete získat vlastnosti konfigurace sítě konzoly pro správu základní desky, napříkladIPv4Address,IPv4Gateway, ,IPv4SubnetMaskDhcpEnabled.Zde je ukázkový výstup:
[10.100.10.10]: PS>Get-HcsNetBmcInterface IPv4Address IPv4Gateway IPv4SubnetMask DhcpEnabled ----------- ----------- -------------- ----------- 10.128.53.186 10.128.52.1 255.255.252.0 False [10.100.10.10]: PS>Set-HcsNetBmcInterface: Tuto rutinu můžete použít následujícími dvěma způsoby.Pomocí rutiny povolte nebo zakažte konfiguraci DHCP pro BMC pomocí příslušné hodnoty
UseDhcpparametru .Set-HcsNetBmcInterface -UseDhcp $trueZde je ukázkový výstup:
[10.100.10.10]: PS>Set-HcsNetBmcInterface -UseDhcp $true [10.100.10.10]: PS>Get-HcsNetBmcInterface IPv4Address IPv4Gateway IPv4SubnetMask DhcpEnabled ----------- ----------- -------------- ----------- 10.128.54.8 10.128.52.1 255.255.252.0 True [10.100.10.10]: PS>Tuto rutinu použijte ke konfiguraci statické konfigurace pro BMC. Můžete zadat hodnoty
IPv4Addresspro , aIPv4GatewayIPv4SubnetMask.Set-HcsNetBmcInterface -IPv4Address "<IPv4 address of the device>" -IPv4Gateway "<IPv4 address of the gateway>" -IPv4SubnetMask "<IPv4 address for the subnet mask>"Zde je ukázkový výstup:
[10.100.10.10]: PS>Set-HcsNetBmcInterface -IPv4Address 10.128.53.186 -IPv4Gateway 10.128.52.1 -IPv4SubnetMask 255.255.252.0 [10.100.10.10]: PS>Get-HcsNetBmcInterface IPv4Address IPv4Gateway IPv4SubnetMask DhcpEnabled ----------- ----------- -------------- ----------- 10.128.53.186 10.128.52.1 255.255.252.0 False [10.100.10.10]: PS>
Set-HcsBmcPassword: Tuto rutinu použijte k úpravě hesla konzoly pro správu základní desky proEdgeUser. V uživatelském jménu seEdgeUserrozlišují malá a velká písmena.Zde je ukázkový výstup:
[10.100.10.10]: PS> Set-HcsBmcPassword -NewPassword "Password1" [10.100.10.10]: PS>
Ukončení vzdálené relace
Pokud chcete vzdálenou relaci PowerShellu ukončit, zavřete okno PowerShellu.
Další kroky
- Nasazení Azure Stack Edge Pro GPU v Azure Portal.