Distribuire il provider di risorse SQL Server nell'hub di Azure Stack

Importante

A partire dalla compilazione dell'hub di Azure Stack 2108, i provider di risorse SQL e MySQL vengono offerti alle sottoscrizioni a cui è stato concesso l'accesso. Se si vuole iniziare a usare questa funzionalità o se è necessario eseguire l'aggiornamento da una versione precedente, aprire un caso di supporto e i tecnici di supporto guideranno l'utente attraverso il processo di distribuzione o aggiornamento.

Usare l'hub di Azure Stack SQL Server provider di risorse per esporre i database SQL come servizio hub di Azure Stack.

Il provider di risorse SQL viene eseguito come servizio in una macchina virtuale Windows Server 2016 Server Core.

Il provider di risorse SQL viene eseguito come servizio in un componente aggiuntivo speciale di Windows Server.

Importante

Solo il provider di risorse deve creare elementi nei server che ospitano SQL o MySQL. Gli elementi creati in un server host non creati dal provider di risorse non sono supportati e possono causare uno stato non corrispondente.

Importante

Il provider di risorse V2.x SQL/MySQL usa il meccanismo di installazione del provider di risorse di distribuzione (DRP), che non è supportato nel provider di risorse di distribuzione. Pertanto, il provider di risorse SQL/MySQL V2.x non è supportato nel codice ASDK.

Prerequisiti

Se è già stato installato un provider di risorse, è probabile che siano stati completati i prerequisiti seguenti e sia possibile ignorare questa sezione. In caso contrario, completare questi passaggi prima di continuare:

  1. Registrare l'istanza dell'hub di Azure Stack con Azure, se non è stato fatto. Questo passaggio è necessario quando ci si connetterà e si scaricano elementi nel marketplace da Azure.

  2. Se non si ha familiarità con la funzionalità di gestione del Marketplace del portale di amministrazione dell'hub di Azure Stack, vedere Scaricare gli elementi del marketplace da Azure e pubblicare nell'hub di Azure Stack. L'articolo illustra il processo di download di elementi da Azure al marketplace dell'hub di Azure Stack. Copre sia scenari connessi che disconnessi. Se l'istanza dell'hub di Azure Stack è disconnessa o parzialmente connessa, sono necessari prerequisiti aggiuntivi per completare la preparazione per l'installazione.

  3. Aggiornare la home directory Microsoft Entra. A partire dalla build 1910, una nuova applicazione deve essere registrata nel tenant della home directory. Questa app consentirà all'hub di Azure Stack di creare e registrare correttamente provider di risorse più recenti (ad esempio Hub eventi e altri) con il tenant di Microsoft Entra. Si tratta di un'azione una volta che deve essere eseguita dopo l'aggiornamento alla compilazione 1910 o successiva. Se questo passaggio non è stato completato, le installazioni del provider di risorse del Marketplace avranno esito negativo.

prerequisiti del provider di risorse SQL Server

  • Sarà necessario un computer e un account che può accedere:

    • il portale di amministratore dell'hub di Azure Stack.
    • l'endpoint con privilegi (necessario solo quando si distribuisce SQL Server provider di risorse V1 o l'aggiornamento da SQL Server provider di risorse V1 a SQL Server provider di risorse V2).
    • l'endpoint amministratore di Azure Resource Manager, , https://adminmanagement.region.<fqdn>dove <fqdn> è il nome di dominio completo.
    • Internet, se l'hub di Azure Stack è stato distribuito per usare Microsoft Entra ID come provider di identità.
  • Scaricare la versione supportata del file binario del provider di risorse SQL in base alla tabella di mapping delle versioni seguente. Per il provider di risorse SQL V2, scaricare l'elemento del marketplace nell'hub di Azure Stack.

    Versione supportata dell'hub di Azure Stack Versione di SQL RP Windows Server in cui è in esecuzione il servizio RP
    2206, 2301, 2306, 2311 SQL RP versione 2.0.13.x Componente aggiuntivo Di Microsoft AzureStack Windows Server 1.2009.0
    2108, 2206 SQL RP versione 2.0.6.x Componente aggiuntivo Di Microsoft AzureStack Windows Server 1.2009.0
  • Assicurarsi che la macchina virtuale Windows Server richiesta sia scaricata in Azure Stack Hub Marketplace. Scaricare manualmente l'immagine in base alla tabella di mapping delle versioni precedente, se necessario.

  • Verificare che i prerequisiti di integrazione del data center siano soddisfatti:

    Prerequisito Riferimento
    L'inoltro DNS condizionale è impostato correttamente. Integrazione del data center dell'hub di Azure Stack - DNS
    Le porte in ingresso per i provider di risorse sono aperte. Integrazione del data center dell'hub di Azure Stack - Porte e protocolli in ingresso
    L'oggetto del certificato PKI e SAN sono impostati correttamente. Prerequisiti obbligatori per la distribuzione dell'hub di Azure Stack
    Prerequisiti del certificato PaaS dell'hub di Azure Stack
  • Preparare il certificato. (Solo per installazioni integrate).

    • È necessario specificare il certificato PKI PAaS SQL descritto nella sezione facoltativa dei certificati PaaS dei requisiti PKI di distribuzione dell'hub di Azure Stack. Il nome alternativo soggetto (SAN) deve rispettare il modello di denominazione seguente: CN=*.dbadapter.<area>.<fqdn>, con password protetta. Screenshot dei pacchetti scaricati dalla gestione del marketplace.
    • Quando si distribuisce SQL Server provider di risorse V1, inserire il file pfx nel percorso specificato dal parametro DependencyFilesLocalPath. Non fornire un certificato per i sistemi ASDK.
    • Quando si distribuisce SQL Server provider di risorse V2, preparare il certificato per la procedura di installazione seguente.

Scenario disconnesso

Quando si distribuisce SQL Server provider di risorse V2 in uno scenario disconnesso, seguire gli elementi del marketplace di download nell'hub di Azure Stack per scaricare l'elemento del provider di risorse SQL Server e l'elemento rp-on di Windows Server per l'ambiente dell'hub di Azure Stack.

Quando si distribuisce SQL Server provider di risorse V1 in uno scenario disconnesso, completare la procedura seguente per scaricare i moduli di PowerShell necessari e registrare manualmente il repository.

  1. Accedere a un computer con connettività Internet e usare gli script seguenti per scaricare i moduli di PowerShell.

    Import-Module -Name PowerShellGet -ErrorAction Stop
    Import-Module -Name PackageManagement -ErrorAction Stop
    
    # path to save the packages, c:\temp\azs1.6.0 as an example here
    $Path = "c:\temp\azs1.6.0"
    
  2. A seconda della versione del provider di risorse distribuita, eseguire uno degli script.

    # for resource provider version >= 1.1.93.0
    Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureRM -Path $Path -Force -RequiredVersion 2.5.0
    Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureStack -Path $Path -Force -RequiredVersion 1.8.2
    
    # for resource provider version <= 1.1.47.0
    Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureRM -Path $Path -Force -RequiredVersion 2.3.0
    Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureStack -Path $Path -Force -RequiredVersion 1.6.0
    
  3. Copiare quindi i pacchetti scaricati in un dispositivo USB.

  4. Accedere alla workstation disconnessa e copiare i pacchetti dal dispositivo USB in una posizione nella workstation.

  5. Registrare questo percorso come repository locale.

    # requires -Version 5
    # requires -RunAsAdministrator
    # requires -Module PowerShellGet
    # requires -Module PackageManagement
    
    $SourceLocation = "C:\temp\azs1.6.0"
    $RepoName = "azs1.6.0"
    
    Register-PSRepository -Name $RepoName -SourceLocation $SourceLocation -InstallationPolicy Trusted
    
    New-Item -Path $env:ProgramFiles -name "SqlMySqlPsh" -ItemType "Directory"
    

Distribuire il provider di risorse SQL V2

Se si esegue l'aggiornamento da una versione V1, fare riferimento alla documentazione Aggiornare il provider di risorse SQL Server.

Avviare l'installazione

  1. Se non è già stato fatto, accedere al portale dell'amministratore dell'hub di Azure Stack, selezionare Gestione marketplace a sinistra e quindi scegliere Provider di risorse.

  2. Dopo aver scaricato il provider di risorse SQL e altri software necessari, La gestione del Marketplace mostra i pacchetti "provider di risorse SQL Server" con stato "Non installato". Potrebbero essere presenti anche altri pacchetti con lo stato impostato su "Scaricato". Screenshot della gestione del marketplace prima di installare il rp.

  3. Selezionare la riga da installare. La pagina del pacchetto di installazione del provider di risorse SQL Server mostra un banner blu nella parte superiore. Selezionare il banner per avviare l'installazione. Screenshot della gestione del marketplace inizia l'installazione.

Installare i prerequisiti

  1. Si verrà trasferiti alla pagina di installazione. Selezionare Installa prerequisiti per avviare il processo di installazione. Screenshot dei prerequisiti di installazione della gestione del marketplace.

  2. Attendere che l'installazione dei prerequisiti abbia esito positivo. Verrà visualizzato un segno di spunta verde accanto a Installa prerequisiti prima di procedere al passaggio successivo. Screenshot dei prerequisiti di installazione della gestione del marketplace riuscita.

Preparare i segreti

  1. Sotto la 2. Preparare il passaggio dei segreti , selezionare Aggiungi certificato e verrà visualizzato il pannello Aggiungi un certificato . Screenshot della preparazione dei segreti per la gestione del marketplace.

  2. Selezionare il pulsante sfoglia in Aggiungere un certificato, a destra del campo del nome file del certificato. Selezionare il file di certificato con estensione pfx ottenuto dopo aver completato i prerequisiti.

  3. Immettere la password specificata per creare una stringa sicura per SQL Server certificato SSL del provider di risorse. Quindi selezionare Aggiungi. Screenshot dell'aggiunta del certificato di gestione del marketplace.

Installare il provider di risorse

  1. Se l'installazione del certificato ha esito positivo, verrà visualizzato un segno di spunta verde accanto a Preparare i segreti, prima di procedere al passaggio successivo. Selezionare ora il pulsante Installa accanto a 3 Installare il provider di risorse. Screenshot dell'installazione di RP di gestione del marketplace.

  2. Verrà quindi visualizzata la pagina seguente, che indica che il provider di risorse SQL viene installato. Screenshot dell'installazione di RP di gestione del marketplace.

  3. Attendere la notifica che l'installazione è stata completata. Questo processo richiede in genere una o più ore, a seconda del tipo dell'hub di Azure Stack. Screenshot dell'installazione di RP di gestione del marketplace in corso.

  4. Verificare che l'installazione di SQL Server provider di risorse abbia avuto esito positivo, restituendo alla pagina Gestione marketplace, Provider di risorse. Lo stato del provider di risorse SQL Server deve essere visualizzato "Installato". Screenshot dell'RP di gestione del marketplace installato.

Distribuire il provider di risorse SQL V1

Dopo aver completato tutti i prerequisiti, eseguire l'estrattore automatico per estrarre il pacchetto di installazione scaricato in una directory temporanea. eseguire lo script diDeploySqlProvider.ps1 da un computer che può accedere sia all'endpoint amministratore di Azure Stack Hub di Azure Resource Manager che all'endpoint con privilegi, per distribuire il provider di risorse SQL. Lo script DeploySqlProvider.ps1 viene estratto come parte del file binario del provider di risorse SQL scaricato per la versione dell'hub di Azure Stack.

Importante

Prima di distribuire il provider di risorse, esaminare le note sulla versione per informazioni sulle nuove funzionalità, correzioni e eventuali problemi noti che potrebbero influire sulla distribuzione.

Per distribuire il provider di risorse SQL, aprire una nuova finestra di PowerShell con privilegi elevati (non PowerShell ISE) e passare alla directory in cui sono stati estratti i file binari del provider di risorse SQL.

Importante

È consigliabile usare Clear-AzureRmContext -Scope CurrentUser e Clear-AzureRmContext -Scope Process per cancellare la cache prima di eseguire lo script di distribuzione o aggiornamento.

Eseguire lo script di DeploySqlProvider.ps1, che completa le attività seguenti:

  • Carica i certificati e altri artefatti in un account di archiviazione nell'hub di Azure Stack.
  • Pubblica i pacchetti della raccolta in modo da poter distribuire i database SQL tramite la raccolta.
  • Pubblica un pacchetto della raccolta per la distribuzione di server di hosting.
  • Distribuisce una macchina virtuale usando l'immagine principale di Windows Server 2016 o l'immagine del componente aggiuntivo RP windows Server di Microsoft AzureStack scaricata e quindi installa il provider di risorse SQL.
  • Registra un record DNS locale che esegue il mapping alla macchina virtuale del provider di risorse.
  • Registra il provider di risorse con il Resource Manager di Azure locale per l'account dell'operatore.

Nota

Quando viene avviata la distribuzione del provider di risorse SQL, viene creato il gruppo di risorse system.local.sqladapter . Possono essere necessari fino a 75 minuti per completare le distribuzioni necessarie in questo gruppo di risorse. Non è consigliabile inserire altre risorse nel gruppo di risorse system.local.sqladapter .

parametri DeploySqlProvider.ps1

È possibile specificare i parametri seguenti dalla riga di comando. Se non si esegue o se la convalida dei parametri ha esito negativo, viene richiesto di fornire i parametri necessari.

Nome parametro Descrizione Commento o valore predefinito
CloudAdminCredential Credenziali per l'amministratore del cloud, necessarie per accedere all'endpoint con privilegi. Obbligatorio
AzCredential Credenziali per l'account amministratore del servizio hub di Azure Stack. Usare le stesse credenziali usate per la distribuzione dell'hub di Azure Stack. Lo script avrà esito negativo se l'account usato con AzCredential richiede l'autenticazione a più fattori (MFA). Obbligatorio
VMLocalCredential Credenziali per l'account amministratore locale della macchina virtuale del provider di risorse SQL. Obbligatorio
PrivilegedEndpoint Indirizzo IP o nome DNS dell'endpoint con privilegi. Obbligatorio
AzureEnvironment Ambiente di Azure dell'account amministratore del servizio usato per la distribuzione dell'hub di Azure Stack. Obbligatorio solo per le distribuzioni di Microsoft Entra. I nomi di ambiente supportati sono AzureCloud, AzureUSGovernment o se si usa un Microsoft Entra ID Cina, AzureChinaCloud. AzureCloud
DependencyFilesLocalPath Solo per i sistemi integrati, il file pfx del certificato deve essere inserito in questa directory. È possibile copiare facoltativamente un pacchetto MSU Windows Update qui. Facoltativo (obbligatorio per i sistemi integrati)
DefaultSSLCertificatePassword Password per il certificato pfx. Obbligatorio
MaxRetryCount Numero di tentativi di ripetizione di ogni operazione se si verifica un errore. 2
RetryDuration Intervallo di timeout tra tentativi, in secondi. 120
Disinstalla Rimuove il provider di risorse e tutte le risorse associate (vedere le note seguenti). No
DebugMode Impedisce la pulizia automatica in caso di errore. No

Distribuire il provider di risorse SQL usando uno script personalizzato

Se si distribuisce il provider di risorse SQL versione 1.1.33.0 o versioni precedenti, è necessario installare versioni specifiche dei moduli AzureRm.BootStrapper e Azure Stack Hub in PowerShell.

Se si distribuisce il provider di risorse SQL versione 1.1.47.0 o successiva, lo script di distribuzione scarica automaticamente e installa i moduli di PowerShell necessari per il percorso C:\Programmi\SqlMySqlPsh.

# Install the AzureRM.Bootstrapper module, set the profile, and install the AzureStack module
# Note that this might not be the most currently available version of Azure Stack Hub PowerShell
Install-Module -Name AzureRm.BootStrapper -RequiredVersion 0.5.0 -Force
Use-AzureRmProfile -Profile 2018-03-01-hybrid -Force
Install-Module -Name AzureStack -RequiredVersion 1.6.0

Nota

Nello scenario disconnesso, è necessario scaricare i moduli di PowerShell necessari e registrare manualmente il repository come prerequisito.

Per eliminare qualsiasi configurazione manuale durante la distribuzione del provider di risorse, è possibile personalizzare lo script seguente. Modificare le informazioni e le password predefinite dell'account in base alle esigenze per la distribuzione dell'hub di Azure Stack.

# Use the NetBIOS name for the Azure Stack Hub domain. On the Azure Stack Hub SDK, the default is AzureStack but could have been changed at install time.
$domain = "AzureStack"

# For integrated systems, use the IP address of one of the ERCS VMs
$privilegedEndpoint = "AzS-ERCS01"

# Provide the Azure environment used for deploying Azure Stack Hub. Required only for Azure AD deployments. Supported values for the <environment name> parameter are AzureCloud, AzureChinaCloud, or AzureUSGovernment depending which Azure subscription you're using.
$AzureEnvironment = "<EnvironmentName>"

# Point to the directory where the resource provider installation files were extracted.
$tempDir = 'C:\TEMP\SQLRP'

# The service admin account can be Azure Active Directory or Active Directory Federation Services.
$serviceAdmin = "admin@mydomain.onmicrosoft.com"
$AdminPass = ConvertTo-SecureString 'P@ssw0rd1' -AsPlainText -Force
$AdminCreds = New-Object System.Management.Automation.PSCredential ($serviceAdmin, $AdminPass)

# Set credentials for the new resource provider VM local admin account.
$vmLocalAdminPass = ConvertTo-SecureString 'P@ssw0rd1' -AsPlainText -Force
$vmLocalAdminCreds = New-Object System.Management.Automation.PSCredential ("sqlrpadmin", $vmLocalAdminPass)

# Add the cloudadmin credential that's required for privileged endpoint access.
$CloudAdminPass = ConvertTo-SecureString 'P@ssw0rd1' -AsPlainText -Force
$CloudAdminCreds = New-Object System.Management.Automation.PSCredential ("$domain\cloudadmin", $CloudAdminPass)

# Change the following as appropriate.
$PfxPass = ConvertTo-SecureString 'P@ssw0rd1' -AsPlainText -Force

# For version 1.1.47.0 or later, the PowerShell modules used by the RP deployment are placed in C:\Program Files\SqlMySqlPsh
# The deployment script adds this path to the system $env:PSModulePath to ensure correct modules are used.
$rpModulePath = Join-Path -Path $env:ProgramFiles -ChildPath 'SqlMySqlPsh'
$env:PSModulePath = $env:PSModulePath + ";" + $rpModulePath 

# Change to the directory folder where you extracted the installation files. Don't provide a certificate on ASDK!
. $tempDir\DeploySQLProvider.ps1 `
    -AzCredential $AdminCreds `
    -VMLocalCredential $vmLocalAdminCreds `
    -CloudAdminCredential $cloudAdminCreds `
    -PrivilegedEndpoint $privilegedEndpoint `
    -AzureEnvironment $AzureEnvironment `
    -DefaultSSLCertificatePassword $PfxPass `
    -DependencyFilesLocalPath $tempDir\cert

Al termine dello script di installazione del provider di risorse, aggiornare il browser per assicurarsi di visualizzare gli aggiornamenti più recenti e chiudere la sessione di PowerShell corrente.

Verificare la distribuzione V1 usando il portale dell'hub di Azure Stack

  1. Accedere al portale di amministratore come amministratore del servizio.
  2. Selezionare Gruppi di risorse.
  3. Selezionare il sistema.<gruppo di risorse location.sqladapter>.
  4. Nella pagina di riepilogo per Panoramica del gruppo di risorse non è possibile eseguire distribuzioni non riuscite.
  5. Infine, selezionare Macchine virtuali nel portale di amministrazione per verificare che la macchina virtuale del provider di risorse SQL sia stata creata correttamente ed è in esecuzione.

Configurazione importante per Microsoft Entra ID

Se l'hub di Azure Stack usa Microsoft Entra ID come provider di identità, assicurarsi che la macchina virtuale installata SQL Server provider di risorse abbia connettività Internet in uscita.

Se è necessario ottenere l'INDIRIZZO IP della macchina virtuale che ha installato SQL Server provider di risorse (ad esempio, aggiungere l'INDIRIZZO IP all'elenco di consenti firewall), è necessario aprire un caso di supporto e avere il tecnico del supporto rendere temporaneamente visibile la sottoscrizione del provider di risorse SQL Server. È quindi possibile individuare la macchina virtuale nella sottoscrizione e ottenere il relativo INDIRIZZO IP.

Passaggi successivi

Aggiungere server di hosting