Registro de operaciones desconectadas para Azure Local

En este artículo se explica cómo registrar operaciones desconectadas para Azure Local después de implementar el clúster de administración con el plano de control. Obtenga información sobre cómo garantizar el cumplimiento de los requisitos de Azure Local a través del registro adecuado.

Registro mediante el flujo de autocertificación

En un equipo con acceso a Internet, asegúrese de que CLI de Azure y Azure PowerShell estén instalados.

Copie la función proporcionada desde PowerShell.

function New-AzureLocalDisconnectedOperationsSelfAttestation {
    <#
    .SYNOPSIS
    Registers your disconnected operations resource using a self-attestation flow.
    #>
    [CmdletBinding()]
    param(
        [Parameter(Mandatory)]
        [ValidateSet('AzureCloud', 'AzureUSGovernment')]
        [string]$Cloud,

[Parameter(Mandatory)]
        [string]$SubscriptionId,

[Parameter(Mandatory)]
        [string]$ResourceGroup,

[Parameter(Mandatory)]
        [string]$ResourceName,

[Parameter(Mandatory)]
        [int]$TotalCores,

[Parameter(Mandatory)]
        [int]$DiskSpaceInGb,

[Parameter(Mandatory)]
        [int]$MemoryInGb,

[Parameter(Mandatory)]
        [string]$Oem,

[Parameter(Mandatory)]
        [string]$HardwareSku,

[Parameter(Mandatory)]
        [int]$Nodes,

[Parameter(Mandatory)]
        [string]$VersionAtRegistration,

[Parameter(Mandatory)]
        [string]$SolutionBuilderExtension,

[Parameter(Mandatory)]
        [string]$DeviceId,

[string]$ApiVersion = '2026-03-01-preview',

[switch]$SkipLogin
    )

if (-not $SkipLogin) {
                Connect-AzAccount -EnvironmentName $Cloud -ErrorAction Stop | Out-Null
}

Select-AzSubscription -SubscriptionId $SubscriptionId -ErrorAction Stop | Out-Null

function Get-BearerToken {
                param(
                        [Parameter(Mandatory)]
                        [ValidateSet('AzureCloud', 'AzureUSGovernment')]
                        [string]$CloudEnvironment
                )

$resource = switch ($CloudEnvironment) {
                        'AzureCloud'        { 'https://management.azure.com/' }
                        'AzureUSGovernment' { 'https://management.usgovcloudapi.net/' }
                }

$tokenResponse = Get-AzAccessToken -ResourceUrl $resource -ErrorAction Stop
                $token = $tokenResponse.Token
                if ($token -is [System.Security.SecureString]) {
                        $plainTextToken = [System.Runtime.InteropServices.Marshal]::PtrToStringAuto([System.Runtime.InteropServices.Marshal]::SecureStringToCoTaskMemUnicode($token))
                } else {
                        $plainTextToken = $token
                }
                return "Bearer $plainTextToken"
        }

$baseEndpoint = switch ($Cloud) {
        'AzureCloud'         { 'management.azure.com' }
        'AzureUSGovernment'  { 'management.usgovcloudapi.net' }
    }

$token = Get-BearerToken -CloudEnvironment $Cloud
Write-host "Obtained authorization token $token." -ForegroundColor Green
$uri = "https://$baseEndpoint/subscriptions/$SubscriptionId/resourceGroups/$ResourceGroup/providers/Microsoft.Edge/disconnectedOperations/$ResourceName/hardwareSettings/default?api-version=$ApiVersion"

$body = @{
        properties = @{
            totalCores               = $TotalCores
            diskSpaceInGb            = $DiskSpaceInGb
            memoryInGb               = $MemoryInGb
            oem                      = $Oem
            hardwareSku              = $HardwareSku
            nodes                    = $Nodes
            versionAtRegistration    = $VersionAtRegistration
            solutionBuilderExtension = $SolutionBuilderExtension
            deviceId                 = $DeviceId
        }
    } | ConvertTo-Json -Depth 5

Write-Host "Creating HardwareSetting for '$ResourceName'..." -ForegroundColor Cyan
    Write-Host "  PUT $uri" -ForegroundColor DarkGray

$response = Invoke-RestMethod -Method Put -Uri $uri -Headers @{
        'Authorization' = $token
        'Content-Type' = 'application/json'
    } -Body $body

Write-Host "HardwareSetting created successfully." -ForegroundColor Green
    $response | ConvertTo-Json -Depth 10
}

Registre sus operaciones desconectadas de Azure Local

# Modify these to fit your disconnected operations resource. You can find the DeviceId by running the Get-ApplianceInstanceConfiguration on your deployed environment. This should be a guid.
$params = @{
    Cloud                      = 'AzureCloud'
    SubscriptionId             = ''
    ResourceGroup              = ''
    ResourceName               = ''
    TotalCores                 = 320  # Total cores managed by Azure Local disconnected operations
    DiskSpaceInGb              = 2000 # Management cluster total disk capacity
    MemoryInGb                 = 2000 # Total memory
    Oem                        = ''   # E.g. Dell / Lenovo / HPE etc.
    HardwareSku                = ''   # E.g. AX-760 / MX 655
    Nodes                      = 10   # Total number of nodes managed
    VersionAtRegistration      = '2602.2.32510'
    SolutionBuilderExtension   = 'x.y.z'
    DeviceId                   = ''   # Copy your device id from portal
    ApiVersion                 = '2026-03-01-preview'
}

New-AzureLocalDisconnectedOperationsSelfAttestation @params

Después del registro correcto, aparece el mensaje "Configuración de hardware creada correctamente". El mensaje de Azure Portal también desaparece, y las propiedades de hardware de las operaciones desconectadas de Azure Local se completan con la información registrada.

Esta característica solo está disponible en Azure Local 2602 o posterior.