Migrera befintlig agentbaserad Hybrid Worker till tilläggsbaserad Hybrid Worker

Viktigt!

Azure Automation-agentbaserad Hybrid Runbook Worker för användare (Windows och Linux) dras tillbaka den 31 augusti 2024 och stöds inte efter det datumet. Du måste slutföra migreringen av befintliga agentbaserade Hybrid Runbook Workers för användare till tilläggsbaserade arbetsroller före den 31 augusti 2024. Från och med den 1 november 2023 skulle det dessutom inte vara möjligt att skapa nya agentbaserade hybridarbetare. Läs mer.

Den här artikeln beskriver fördelarna med Tilläggsbaserad Hybrid Runbook Worker för användare och hur du migrerar befintliga Agent-baserade User Hybrid Runbook Workers till tilläggsbaserade hybridarbetare.

Det finns två installationsplattformar för Hybrid Runbook Workers som stöds av Azure Automation:

  • Agentbaserad hybrid runbook worker (V1) – Den agentbaserade hybrid runbook-arbetaren är beroende av Log Analytics-agenten.
  • Tilläggsbaserad hybrid runbook worker (V2) – Den tilläggsbaserade hybrid runbook worker ger intern integrering av hybrid runbook worker-rollen via tillägget virtual machine (VM). 

Processen med att köra runbooks på Hybrid Runbook Workers är densamma för båda.

Fördelar med tilläggsbaserade Hybrid Runbook-arbetare för användare jämfört med agentbaserade arbetare

Syftet med den tilläggsbaserade metoden är att förenkla installationen och hanteringen av Hybrid Worker och ta bort komplexiteten i att arbeta med den agentbaserade versionen. Här är några viktiga fördelar:

  • Sömlös registrering – Den agentbaserade metoden för registrering av Hybrid Runbook Worker är beroende av Log Analytics-agenten, som är en process med flera steg, tidskrävande och felbenägen process. Den tilläggsbaserade metoden ger mer säkerhet och är inte längre beroende av Log Analytics-agenten.

  • Enkel hanterbarhet – Den erbjuder intern integrering med Azure Resource Manager-identitet (ARM) för Hybrid Runbook Worker och ger flexibiliteten för styrning i stor skala via principer och mallar.

  • Microsoft Entra ID-baserad autentisering – Den använder en systemtilldelad hanterad identitet för virtuella datorer som tillhandahålls av Microsoft Entra-ID. Detta centraliserar kontrollen och hanteringen av identiteter och resursautentiseringsuppgifter.

  • Enhetlig upplevelse – Det ger en identisk upplevelse för att hantera Azure- och Azure Arc-aktiverade datorer.

  • Flera onboarding-kanaler – Du kan välja att registrera och hantera tilläggsbaserade arbetare via Azure-portalen, PowerShell-cmdletar, Bicep, ARM-mallar, REST API och Azure CLI.

  • Automatisk standarduppgradering – Den erbjuder automatisk uppgradering av mindre versioner som standard, vilket avsevärt minskar hanterbarheten för att hålla sig uppdaterad om den senaste versionen. Vi rekommenderar att du aktiverar automatiska uppgraderingar för att dra nytta av eventuella säkerhets- eller funktionsuppdateringar utan manuella omkostnader. Du kan också välja bort automatiska uppgraderingar när som helst. Alla större versionsuppgraderingar stöds för närvarande inte och bör hanteras manuellt.

Kommentar

Den tilläggsbaserade Hybrid Runbook Worker stöder endast typen User Hybrid Runbook Worker och innehåller inte den System Hybrid Runbook Worker som krävs för funktionen Uppdateringshantering.

Förutsättningar

Minimikrav för datorer

  • Två kärnor
  • 4 GB RAM
  • Datorer som inte är Azure-datorer måste ha Azure Anslut ed Machine-agenten installerad. Information om hur du installerar AzureConnectedMachineAgentfinns i Anslut hybriddatorer till Azure från Azure-portalen för Arc-aktiverade servrar eller i Hantera virtuella VMware-datorer Azure Arc för att aktivera gästhantering för Arc-aktiverade virtuella VMware vSphere-datorer.
  • Den systemtilldelade hanterade identiteten måste vara aktiverad på den virtuella Azure-datorn, den Arc-aktiverade servern eller den Arc-aktiverade virtuella VMware vSphere-datorn. Om den systemtilldelade hanterade identiteten inte är aktiverad aktiveras den som en del av installationsprocessen via Azure-portalen.

Operativsystem som stöds

Windows (x64) Linux (x64)
● Windows Server 2022 (inklusive Server Core)
● Windows Server 2019 (inklusive Server Core)
● Windows Server 2016, version 1709 och 1803 (exklusive Server Core)
● Windows Server 2012, 2012 R2 (exklusive Server Core)
● Windows 10 Enterprise (inklusive flera sessioner) och Pro
● Debian GNU/Linux 8,9,10 och 11
● Ubuntu 18.04 LTS, 20.04 LTS och 22.04 LTS
● SUSE Linux Enterprise Server 15.2 och 15.3
● Red Hat Enterprise Linux Server 7, 8 och 9
● CentOS Linux 7 och 8
● SUSE Linux Enterprise Server (SLES) 15
● Rocky Linux 9
● Oracle Linux 7 och 8
Hybrid Worker-tillägget skulle följa supporttidslinjen för OS-leverantören. 

Övriga krav

Windows (x64) Linux (x64)
Windows PowerShell 5.1 (ladda ned WMF 5.1). PowerShell Core stöds inte. Linux Hardening får inte vara aktiverat. 
.NET Framework 4.6.2 eller senare. 

Paketkrav för Linux

Obligatoriskt paket beskrivning Minimiversion
Glibc GNU C-bibliotek 2.5-12
Openssl OpenSSL-bibliotek 1.0 (TLS 1.1 och TLS 1.2 stöds)
Curl cURL-webbklient 7.15.5
Python-ctyper Externt funktionsbibliotek för Python Python 2.x eller Python 3.x krävs
PAM Autentiseringsmoduler som kan anslutas
Valfritt paket beskrivning Minimiversion
PowerShell Core PowerShell Core måste installeras för att kunna köra PowerShell-runbooks. Anvisningar finns i Installera PowerShell Core i Linux 6.0.0

Behörigheter för Hybrid Worker-autentiseringsuppgifter

Om agentbaserad Hybrid Worker använder anpassade Hybrid Worker-autentiseringsuppgifter kontrollerar du att följande behörigheter har tilldelats till den anpassade användaren för att undvika att jobb pausas på den tilläggsbaserade Hybrid Worker.

Resurstyp Mappbehörigheter
Azure VM C:\Packages\Plugins\Microsoft.Azure.Automation.HybridWorker.HybridWorkerForWindows (läsa och köra)
Arc-aktiverade servrar C:\ProgramData\Azure Anslut edMachineAgent\Tokens (läs)
C:\Packages\Plugins\Microsoft.Azure.Automation.HybridWorker.HybridWorkerForWindows (läs och kör)

Kommentar

  • För den Arc-aktiverade servern måste du tilldela om behörigheterna när de tas bort när ARC-agenten uppdateras.
  • Hybrid Runbook Worker stöds för närvarande inte för VMSS (Virtual Machine Scale Sets).

Migrera en befintlig agentbaserad hybridarbetare till tilläggsbaserad hybridarbetare

Om du vill utnyttja fördelarna med tilläggsbaserade hybridarbetare måste du migrera alla befintliga agentbaserade användarhybridarbetare till tilläggsbaserade arbetare. En hybrid worker-dator kan samexistera på både agentbaserade (V1) och tilläggsbaserade (V2) plattformar. Den tilläggsbaserade installationen påverkar inte installationen eller hanteringen av en agentbaserad worker.

Följ dessa steg för att installera Hybrid Worker-tillägget på en befintlig agentbaserad hybridarbetare:

  1. Under ProcessAutomatisering väljer du Hybrid worker-grupper och väljer sedan din befintliga hybridarbetsgrupp för att gå till sidan Hybrid Worker-grupp .

  2. Under Hybrid Worker-grupp väljer du Hybrid Worker>+ Lägg till för att gå till sidan Lägg till datorer som hybridarbetare.

  3. Markera kryssrutan bredvid den befintliga agentbaserade hybridarbetaren (V1). Om du inte ser din agentbaserade Hybrid Worker i listan kontrollerar du att Azure Arc Anslut ed Machine-agenten är installerad på datorn. Information om hur du installerar AzureConnectedMachineAgentfinns i Anslut hybriddatorer till Azure från Azure-portalen för Arc-aktiverade servrar, eller se Hantera virtuella VMware-datorer i Azure Arc för att aktivera gästhantering för Arc-aktiverade virtuella VMware vSphere-datorer.

    Skärmbild av att lägga till datorer som hybridarbetare.

  4. Välj Lägg till för att lägga till datorn i gruppen.

    Kolumnen Plattform visar samma hybridarbetare som både agentbaserad (V1) och tilläggsbaserad (V2). När du är säker på den tilläggsbaserade Hybrid Worker-upplevelsen och användningen kan du ta bort agentbaserade Worker.

    Skärmbild av plattformsfältet som visar agent- eller tilläggsbaserad hybridarbetare.

För skalbar migrering av flera agentbaserade hybridarbetare kan du också använda andra kanaler som – Bicep, ARM-mallar, PowerShell-cmdletar, REST API och Azure CLI.

Hantera Hybrid Worker-tillägget med hjälp av Bicep- och ARM-mallar, REST API, Azure CLI och PowerShell

Du kan använda Bicep-mallen för att skapa en ny Hybrid Worker-grupp, skapa en ny virtuell Azure Windows-dator och lägga till den i en befintlig Hybrid Worker-grupp. Läs mer om Bicep.

Följ stegen nedan som ett exempel:

  1. Skapa en Hybrid Worker-grupp.
  2. Skapa antingen en virtuell Azure-dator eller en Arc-aktiverad server. Du kan också använda en befintlig virtuell Azure-dator eller Arc-aktiverad server.
  3. Anslut den virtuella Azure-datorn eller Arc-aktiverade servern till den hybridarbetsgrupp som skapades ovan.
  4. Generera ett nytt GUID och skicka det som namnet på Hybrid Worker.
  5. Aktivera systemtilldelad hanterad identitet på den virtuella datorn.
  6. Installera Hybrid Worker-tillägget på den virtuella datorn.
  7. Om du vill kontrollera om tillägget har installerats på den virtuella datorn går du till fliken VM-tillägg> i Azure-portalen och kontrollerar statusen för Hybrid Worker-tillägget som är installerat på den virtuella datorn.
param automationAccount string
param automationAccountLocation string
param workerGroupName string

@description('Name of the virtual machine.')
param virtualMachineName string

@description('Username for the Virtual Machine.')
param adminUsername string

@description('Password for the Virtual Machine.')
@minLength(12)
@secure()
param adminPassword string

@description('Location for the VM.')
param vmLocation string = 'North Central US'

@description('Size of the virtual machine.')
param vmSize string = 'Standard_DS1_v2'

@description('The Windows version for the VM. This will pick a fully patched image of this given Windows version.')
@allowed([
  '2008-R2-SP1'
  '2012-Datacenter'
  '2012-R2-Datacenter'
  '2016-Nano-Server'
  '2016-Datacenter-with-Containers'
  '2016-Datacenter'
  '2019-Datacenter'
  '2019-Datacenter-Core'
  '2019-Datacenter-Core-smalldisk'
  '2019-Datacenter-Core-with-Containers'
  '2019-Datacenter-Core-with-Containers-smalldisk'
  '2019-Datacenter-smalldisk'
  '2019-Datacenter-with-Containers'
  '2019-Datacenter-with-Containers-smalldisk'
])
param osVersion string = '2019-Datacenter'

@description('DNS name for the public IP')
param dnsNameForPublicIP string

var nicName_var = 'myVMNict'
var addressPrefix = '10.0.0.0/16'
var subnetName = 'Subnet'
var subnetPrefix = '10.0.0.0/24'
var subnetRef = resourceId('Microsoft.Network/virtualNetworks/subnets', virtualNetworkName_var, subnetName)
var vmName_var = virtualMachineName
var virtualNetworkName_var = 'MyVNETt'
var publicIPAddressName_var = 'myPublicIPt'
var networkSecurityGroupName_var = 'default-NSGt'
var UniqueStringBasedOnTimeStamp = uniqueString(resourceGroup().id)

resource publicIPAddressName 'Microsoft.Network/publicIPAddresses@2020-08-01' = {
  name: publicIPAddressName_var
  location: vmLocation
  properties: {
    publicIPAllocationMethod: 'Dynamic'
    dnsSettings: {
      domainNameLabel: dnsNameForPublicIP
    }
  }
}

resource networkSecurityGroupName 'Microsoft.Network/networkSecurityGroups@2020-08-01' = {
  name: networkSecurityGroupName_var
  location: vmLocation
  properties: {
    securityRules: [
      {
        name: 'default-allow-3389'
        properties: {
          priority: 1000
          access: 'Allow'
          direction: 'Inbound'
          destinationPortRange: '3389'
          protocol: 'Tcp'
          sourceAddressPrefix: '*'
          sourcePortRange: '*'
          destinationAddressPrefix: '*'
        }
      }
    ]
  }
}

resource virtualNetworkName 'Microsoft.Network/virtualNetworks@2020-08-01' = {
  name: virtualNetworkName_var
  location: vmLocation
  properties: {
    addressSpace: {
      addressPrefixes: [
        addressPrefix
      ]
    }
    subnets: [
      {
        name: subnetName
        properties: {
          addressPrefix: subnetPrefix
          networkSecurityGroup: {
            id: networkSecurityGroupName.id
          }
        }
      }
    ]
  }
}

resource nicName 'Microsoft.Network/networkInterfaces@2020-08-01' = {
  name: nicName_var
  location: vmLocation
  properties: {
    ipConfigurations: [
      {
        name: 'ipconfig1'
        properties: {
          privateIPAllocationMethod: 'Dynamic'
          publicIPAddress: {
            id: publicIPAddressName.id
          }
          subnet: {
            id: subnetRef
          }
        }
      }
    ]
  }
  dependsOn: [

    virtualNetworkName
  ]
}

resource vmName 'Microsoft.Compute/virtualMachines@2020-12-01' = {
  name: vmName_var
  location: vmLocation
  identity: {
    type: 'SystemAssigned'
  }
  properties: {
    hardwareProfile: {
      vmSize: vmSize
    }
    osProfile: {
      computerName: vmName_var
      adminUsername: adminUsername
      adminPassword: adminPassword
    }
    storageProfile: {
      imageReference: {
        publisher: 'MicrosoftWindowsServer'
        offer: 'WindowsServer'
        sku: osVersion
        version: 'latest'
      }
      osDisk: {
        createOption: 'FromImage'
      }
    }
    networkProfile: {
      networkInterfaces: [
        {
          id: nicName.id
        }
      ]
    }
  }
}

resource automationAccount_resource 'Microsoft.Automation/automationAccounts@2021-06-22' = {
  name: automationAccount
  location: automationAccountLocation
  properties: {
    sku: {
      name: 'Basic'
    }
  }
}

resource automationAccount_workerGroupName 'Microsoft.Automation/automationAccounts/hybridRunbookWorkerGroups@2022-02-22' = {
  parent: automationAccount_resource
  name: workerGroupName
  dependsOn: [

    vmName
  ]
}

resource automationAccount_workerGroupName_testhw_UniqueStringBasedOnTimeStamp 'Microsoft.Automation/automationAccounts/hybridRunbookWorkerGroups/hybridRunbookWorkers@2021-06-22' = {
  parent: automationAccount_workerGroupName
  name: guid('testhw', UniqueStringBasedOnTimeStamp)
  properties: {
    vmResourceId: resourceId('Microsoft.Compute/virtualMachines', virtualMachineName)
  }
  dependsOn: [
    vmName
  ]
}

resource virtualMachineName_HybridWorkerExtension 'Microsoft.Compute/virtualMachines/extensions@2022-03-01' = {
  name: '${virtualMachineName}/HybridWorkerExtension'
  location: vmLocation
  properties: {
    publisher: 'Microsoft.Azure.Automation.HybridWorker'
    type: 'HybridWorkerForWindows'
    typeHandlerVersion: '1.1'
    autoUpgradeMinorVersion: true
    enableAutomaticUpgrade: true
    settings: {
      AutomationAccountURL: automationAccount_resource.properties.automationHybridServiceUrl
    }
  }
  dependsOn: [
    vmName
  ]
}

output output1 string = automationAccount_resource.properties.automationHybridServiceUrl

Ta bort agentbaserad hybridarbetare

  1. Öppna PowerShell-sessionen i administratörsläge och kör följande kommando:

     Remove-Item -Path "HKLM:\SOFTWARE\Microsoft\HybridRunbookWorker\<AutomationAccountID>\<HybridWorkerGroupName>" -Force -Verbose
    
  2. Under Processautomatisering väljer du Hybrid Worker-grupper och sedan din Hybrid Worker-grupp för att gå till sidan Hybrid Worker-grupp.

  3. Under Hybrid Worker-grupp väljer du Hybrid Workers.

  4. Markera kryssrutan bredvid de datorer som du vill ta bort från Hybrid Worker-gruppen.

  5. Välj Ta bort för att ta bort den agentbaserade Windows Hybrid Worker.

    Kommentar

    • När du har inaktiverat Private Link i ditt Automation-konto kan det ta upp till 60 minuter att ta bort Hybrid Runbook Worker.
    • När du har ta bort Hybrid Worker är autentiseringscertifikatet för Hybrid Worker på datorn giltigt i 45 minuter.

Nästa steg