Funções PowerShell para IoT Edge para Linux em Windows

Aplica-se a:  sim ícone IoT Edge 1.1

Compreenda as funções PowerShell que implementam, provisões e obtenha o estado do seu IoT Edge para Linux na Windows (EFLOW) máquina virtual.

Pré-requisitos

Os comandos descritos neste artigo são do AzureEFLOW.psm1 ficheiro, que pode ser encontrado no seu sistema no seu WindowsPowerShell diretório sob C:\Program Files\WindowsPowerShell\Modules\AzureEFLOW .

Se não tiver a pasta AzureEflow no seu diretório PowerShell, utilize os seguintes passos para descarregar e instalar o Azure IoT Edge para o Linux no Windows:

  1. Numa sessão elevada de PowerShell, execute cada um dos seguintes comandos para baixar IoT Edge para Linux em Windows.

    $msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))
    $ProgressPreference = 'SilentlyContinue'
    Invoke-WebRequest "https://aka.ms/AzEflowMSI" -OutFile $msiPath
    
  2. Instale ioT Edge para Linux na Windows no seu dispositivo.

    Start-Process -Wait msiexec -ArgumentList "/i","$([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))","/qn"
    

    Pode especificar a instalação personalizada e os diretórios VHDX adicionando INSTALLDIR="<FULLY_QUALIFIED_PATH>" e VHDXDIR="<FULLY_QUALIFIED_PATH>" parâmetros ao comando de instalação.

  3. Desaponte a política de execução no dispositivo-alvo AllSigned para, se ainda não estiver.

    Set-ExecutionPolicy -ExecutionPolicy AllSigned -Force
    

Connect-EflowVM

O comando Ligação-EflowVM liga-se à máquina virtual utilizando SSH. A única conta permitida para o SSH para a máquina virtual é o utilizador que a criou.

Este comando funciona apenas numa sessão PowerShell em execução no dispositivo anfitrião. Não funcionará quando utilizar Windows Centro de Administração ou PowerShell ISE.

Para mais informações, utilize o Get-Help Connect-EflowVM -full comando.

Copy-EflowVmFile

O ficheiro copy-EflowVmFile de ou para a máquina virtual utilizando sCP. Utilize os parâmetros opcionais para especificar os caminhos de arquivo de origem e destino, bem como a direção da cópia.

O utilizador deve ter lido permissão para quaisquer diretórios de origem ou escrever permissão para quaisquer diretórios de destino na máquina virtual.

Parâmetro Valores aceites Comentários
fromFile Cadeia representando caminho para arquivar Define o ficheiro a ser lido.
toFile Cadeia representando caminho para arquivar Define o ficheiro a ser escrito.
pushFile Nenhuma Esta bandeira indica a direção da cópia. Se estiver presente, o comando empurra o ficheiro para a máquina virtual. Se estiver ausente, o comando retira o ficheiro da máquina virtual.

Para mais informações, utilize o Get-Help Copy-EflowVMFile -full comando.

Deploy-Eflow

O comando Implementar-Fluxo é o principal método de implantação. O comando de implementação cria a máquina virtual, fornece ficheiros e implanta o módulo de agente IoT Edge. Embora nenhum dos parâmetros seja necessário, podem ser utilizados para forrar o seu dispositivo IoT Edge durante a implementação e modificar as definições para a máquina virtual durante a criação.

Parâmetro Valores aceites Comentários
aceitarEula Sim ou Não Um atalho para aceitar/negar a EULA e contornar o pedido da EULA.
aceitarTelemetry Optional Sim ou Não Um atalho para aceitar/negar a telemetria opcional e contornar a operação de telemetria.
cpuCount Valor inteiro entre 1 e os núcleos cpu do dispositivo Número de núcleos de CPU para o VM.

Valor predefinido: 1 vCore.
memóriaInMB Valor inteiro entre 1024 e a quantidade máxima de memória gratuita do dispositivo Memória atribuída para o VM.

Valor padrão: 1024 MB.
vmDiskSize Entre 8 GB e 256 GB Tamanho máximo do disco do disco rígido em expansão dinâmica.

Valor predefinido: 16 GB.
gpuName Nome do dispositivo GPU Nome do dispositivo GPU a ser utilizado para passagem.
gpuPassthroughType DirectDeviceAssignment, ParaVirtualization, ou nenhum (apenas CPU) Tipo GPU Passthrough
gpuCount Valor inteiro entre 1 e o número de núcleos de GPU do dispositivo Número de dispositivos GPU para o VM.

Nota: Se utilizar a ParaVirtualization, certifique-se de definir gpuCount = 1

Para mais informações, utilize o Get-Help Deploy-Eflow -full comando.

Get-EflowLogs

O comando Get-EflowLogs recolhe e embala registos do IoT Edge para Linux na Windows implantação e instalação. Produz os troncos agregados sob a forma de uma .zip pasta.

Para mais informações, utilize o Get-Help Get-EflowLogs -full comando.

Get-EflowVm

O comando Get-EflowVm devolve a configuração atual da máquina virtual. Este comando não tem parâmetros. Devolve um objeto que contém quatro propriedades:

  • VmConfiguration
  • EdgeRuntimeVersion
  • EdgeRuntimeStatus
  • Estatísticas do Sistema

Para ver uma propriedade específica numa lista legível, executar o Get-EflowVM comando com a propriedade expandida. Por exemplo:

Get-EflowVM | Select -ExpandProperty VmConfiguration | Format-List

Para mais informações, utilize o Get-Help Get-EflowVm -full comando.

Get-EflowVmAddr

O comando Get-EflowVmAddr é utilizado para consultar o endereço IP e MAC da máquina virtual. Este comando existe para explicar o facto de que o endereço IP e MAC pode ser alterado ao longo do tempo.

Para obter informações adicionais, utilize o comando Get-Help Get-EflowVmAddr -full .

Get-EflowVmFeature

O comando Get-EflowVmFeature devolve o estado da ativação do IoT Edge para Linux nas funcionalidades Windows.

Parâmetro Valores aceites Comentários
funcionalidade DpsTpm Nome de recurso para alternar.

Para mais informações, utilize o Get-Help Get-EflowVmFeature -full comando.

Get-EflowVmName

O comando Get-EflowVmName devolve o nome de anfitrião atual da máquina virtual. Este comando existe para explicar o facto de que o nome de hospedeiro Windows pode mudar com o tempo.

Para mais informações, utilize o Get-Help Get-EflowVmName -full comando.

Get-EflowVmTelemetryOption

O comando Get-EflowVmTelemetryOp exibe o estado da telemetria (opcional ou requerida) dentro da máquina virtual.

Para mais informações, utilize o Get-Help Get-EflowVmTelemetryOption -full comando.

Invoke-EflowVmCommand

O comando Invoke-EflowVMCommand executa um comando Linux dentro da máquina virtual e devolve a saída. Este comando só funciona para comandos Linux que devolvem uma saída finita. Não pode ser utilizado para comandos Linux que requerem interação do utilizador ou que funcionam indefinidamente.

Os seguintes parâmetros opcionais podem ser utilizados para especificar o comando com antecedência.

Parâmetro Valores aceites Comentários
command String Comando a ser executado no VM.
ignoreError Nenhuma Se esta bandeira estiver presente, ignore os erros do comando.

Para mais informações, utilize o Get-Help Invoke-EflowVmCommand -full comando.

Provision-EflowVm

O comando Provision-EflowVm adiciona as informações de provisionamento do seu dispositivo IoT Edge ao ficheiro IoT Edge da máquina config.yaml virtual.

Parâmetro Valores aceites Comentários
a provisionamentoType ManualConnectionString, ManualX509, DpsTPM, DpsX509, ou DpsSymmetricKey Define o tipo de provisão que deseja utilizar para o seu dispositivo IoT Edge.
devConnString A cadeia de ligação do dispositivo de um dispositivo IoT Edge existente Cadeia de ligação do dispositivo para o fornecimento manual de um dispositivo IoT Edge (ManualConnectionString).
iotHubHostname O nome hospedeiro de um hub IoT existente Nome de anfitrião Azure IoT Hub para o fornecimento de um dispositivo IoT Edge (ManualX509).
deviceId O ID do dispositivo de um dispositivo IoT Edge existente ID do dispositivo para o fornecimento de um dispositivo IoT Edge (ManualX509).
scopeId A identificação de âmbito para um caso dPS existente. ID de âmbito para o fornecimento de um dispositivo IoT Edge (DpsTPM, DpsX509, ou DpsSymmetricKey).
symmKey A chave primária para uma inscrição dPS existente ou a chave primária de um dispositivo IoT Edge existente registado com teclas simétricas Chave simétrica para o fornecimento de um dispositivo IoT Edge (DpsSymmetricKey).
registrationId O ID de registo de um dispositivo IoT Edge existente ID de registo para o fornecimento de um dispositivo IoT Edge (DpsSymmetricKey).
identidadeCertPath Caminho do diretório Percurso de destino absoluto do certificado de identidade na sua máquina de anfitrião Windows (ManualX509, DpsX509).
identidadePrivKeyPath Caminho do diretório Caminho de origem absoluta da chave privada de identidade na sua máquina de anfitrião Windows (ManualX509, DpsX509).

Para mais informações, utilize o Get-Help Provision-EflowVm -full comando.

Set-EflowVM

O comando Set-EflowVM atualiza a configuração da máquina virtual com as propriedades solicitadas. Utilize os parâmetros opcionais para definir uma configuração específica para a máquina virtual.

Parâmetro Valores aceites Comentários
cpuCount Valor inteiro entre 1 e os núcleos de GPU do dispositivo Número de núcleos de CPU para o VM.
memóriaInMB Valor inteiro entre 1024 e a quantidade máxima de memória gratuita do dispositivo Memória atribuída para o VM.
gpuName Nome do dispositivo GPU Nome do dispositivo GPU a ser utilizado para passagem.
gpuPassthroughType DirectDeviceAssignment, ParaVirtualization, ou nenhum (sem passagem) Tipo GPU Passthrough
gpuCount Valor inteiro entre 1 e os núcleos de GPU do dispositivo Número de dispositivos GPU para a nota VM : Apenas válidos quando se utiliza a assinatura directDeviceAssignment
sem cabeça Nenhuma Se esta bandeira estiver presente, determina se o utilizador precisa de confirmar no caso de ser emitido um aviso de segurança.

Para mais informações, utilize o Get-Help Set-EflowVM -full comando.

Set-EflowVmFeature

O comando Set-EflowVmFeature permite ou desativa o estado de IoT Edge para Linux nas Windows funcionalidades.

Parâmetro Valores aceites Comentários
funcionalidade DpsTpm Nome de recurso para alternar.
ativar Nenhuma Se esta bandeira estiver presente, o comando permite a funcionalidade.

Para mais informações, utilize o Get-Help Set-EflowVmFeature -full comando.

Set-EflowVmTelemetryOption

O comando Set-EflowVmTelemetryOp permite ou desativa a telemetria opcional dentro da máquina virtual.

Parâmetro Valores aceites Comentários
opcionalTelemetry Verdadeiro ou Falso Se a telemetria opcional é selecionada.

Para mais informações, utilize o Get-Help Set-EflowVmTelemetryOption -full comando.

Start-EflowVm

O comando Start-EflowVm inicia a máquina virtual. Se a máquina virtual já estiver iniciada, não serão tomadas medidas.

Para mais informações, utilize o Get-Help Start-EflowVm -full comando.

Stop-EflowVm

O comando Stop-EflowVm para a máquina virtual. Se a máquina virtual já estiver parada, não serão tomadas medidas.

Para mais informações, utilize o Get-Help Stop-EflowVm -full comando.

Verify-EflowVm

O comando Check-EflowVm é uma função exposta que verifica se foi criada a borda IoT para Linux na Windows máquina virtual. Só são necessários parâmetros comuns, e retornará True se a máquina virtual for criada e falsa se não for.

Para mais informações, utilize o Get-Help Verify-EflowVm -full comando.

Passos seguintes

Saiba como utilizar estes comandos para instalar e providenciar IoT Edge para Linux no Windows no seguinte artigo: