Een exemplaarpool maken (preview) - Azure SQL Managed Instance
Van toepassing op: Azure SQL Managed Instance
In dit artikel leert u hoe u een exemplaargroep maakt voor Azure SQL Managed Instance, en hoe u exemplaren naar en uit de pool verplaatst.
Exemplaargroepen maken het mogelijk om meerdere exemplaren met gedeelde resources te implementeren op één virtuele machine, die een handige en rendabele infrastructuur biedt voor het migreren van meerdere SQL Server-exemplaren zonder dat u kleinere en minder rekenintensieve workloads hoeft samen te voegen op een groter SQL Managed Instance.
Notitie
Exemplaarpools voor Azure SQL Managed Instance zijn momenteel in preview.
Vereisten
Als u een exemplaargroep wilt maken, hebt u het volgende nodig:
- Een bestaand virtueel netwerk met een subnetbereik van de juiste grootte .
- De meest recente Az.SQL module voor de huidige versie van PowerShell of de nieuwste versie van de Azure CLI.
- Instantie- en pooleigenschappen gecontroleerd.
Overwegingen voor subnetgrootte
Plan de grootte van uw subnet zorgvuldig als u van plan bent een exemplaargroep te gebruiken. Raadpleeg de richtlijnen voor het bepalen van de vereiste subnetgrootte en het vereiste bereik voor subnetgrootten.
Gebruik de volgende formule bij het berekenen van het aantal IP-adressen dat is vereist voor één exemplaargroep met meerdere exemplaren voor algemeen gebruik:
2 * (5 + (3 * # of MIs)) + 5
De # of MIs
waarde verwijst naar het maximum aantal exemplaren dat u wilt inrichten. Het maximum aantal exemplaren in de groep is 40.
Instantie-pool maken
U kunt een exemplaargroep maken met behulp van PowerShell of de Azure CLI. Denk aan het volgende:
- Alleen de servicelaag Algemeen gebruik op hardware uit de Standard-serie (Gen5) of premium-serie is momenteel beschikbaar.
- De naam van de pool mag alleen kleine letters, cijfers en afbreekstreepjes bevatten en kan niet beginnen met een afbreekstreepje.
- Azure Hybrid Benefit wordt toegepast op exemplaargroepniveau. U kunt het licentietype instellen wanneer u de pool maakt en het licentietype bijwerken nadat de pool is gemaakt.
Belangrijk
Het implementeren van een exemplaargroep is een langdurige bewerking die maximaal 4,5 uur kan duren.
Gebruik New-AzSqlInstancePool om uw exemplaargroep te maken.
Denk aan het volgende:
- Gebruik
LicenseType
BasePrice voor Azure Hybrid Benefit of LicenseIncluded als u geen SQL Server-licentie hebt die kan worden gebruikt voor de korting voor Azure Hybrid Benefit. - Gebruik
Get-AzLocation | select displayname, location
deze functie om een lijst met regio's te verkrijgen waarin exemplaargroepen beschikbaar zijn.
Maak een nieuwe exemplaarpool met 8 vCores op standard-series (Gen5) hardware door het volgende voorbeeldscript uit te voeren:
# Identify the SubnetId
$virtualNetwork = Get-AzVirtualNetwork -Name <vnet name> -ResourceGroupName <resource group name>
$miSubnet = Get-AzVirtualNetworkSubnetConfig -Name <subnet name> -VirtualNetwork $virtualNetwork
$miSubnetConfigId = $miSubnet.Id
# Create the instance
$instancePool = New-AzSqlInstancePool `
-ResourceGroupName <resource group name> `
-Name <instance pool name> `
-SubnetId $miSubnetConfigId `
-LicenseType LicenseIncluded `
-VCore 8 `
-Edition GeneralPurpose `
-ComputeGeneration Gen5 `
-Location <region>
Nieuw exemplaar in pool maken
Nadat uw pool is gemaakt, kunt u een nieuw exemplaar in de pool maken met behulp van PowerShell of de Azure CLI.
Als u poolparameters wilt identificeren, gebruikt u Get-AzSqlInstancePool en maakt u vervolgens uw exemplaar in de specifieke pool met New-AzSqlInstance.
Maak een nieuw exemplaar in uw pool door het volgende voorbeeldscript uit te voeren:
$adminCredential = Get-Credential
$instancePool = Get-AzSqlInstancePool -ResourceGroupName <resource group name> -Name <instance pool name>
$instance01 = $instancePool | New-AzSqlInstance `
-Name $instance01`
-VCore 2 `
-StorageSizeInGB 32 `
-AdministratorCredential $adminCredential `
Bestaand exemplaar verplaatsen
U kunt een bestaand exemplaar verplaatsen naar en uit een pool met behulp van PowerShell of de Azure CLI als:
- Deze bevindt zich in dezelfde resourcegroep als de pool.
- Het bevindt zich in hetzelfde virtuele netwerk en subnet als de pool.
- Deze past bij de resourcelimieten van de instantiegroep.
Wanneer een bestaand exemplaar naar een groep wordt verplaatst, hebben instellingen op groepsniveau voorrang op instellingen op exemplaarniveau. Het exemplaar neemt bijvoorbeeld het licentietype en het onderhoudsvenster over dat is ingesteld op groepsniveau. Wanneer een exemplaar uit de pool wordt verplaatst, blijven de instellingen behouden die het van de pool heeft overgenomen. De enige uitzondering is met het licentietype, dat standaard terug is op LicenseIncluded wanneer een exemplaar wordt verwijderd uit de exemplaargroep. Het voordeel van Azure Hybrid Benefit en hybride failoverrechten moet handmatig worden geconfigureerd nadat een exemplaar uit een pool is verplaatst.
Als u een exemplaar naar een pool wilt verplaatsen, geeft u de naam van de pool op wanneer u Set-AzSqlInstance gebruikt:
$instance01 | Set-AzSqlInstance -InstancePoolName $instancePoolName
Als u een exemplaar uit een pool wilt verplaatsen, geeft u een lege poolnaam op:
$instance01 | Set-AzSqlInstance -InstancePoolName ''
Verbinding maken voor exemplaar in een pool
Als u verbinding wilt maken met een exemplaar in een pool, schakelt u eerst het openbare eindpunt voor het exemplaar in en staat u vervolgens openbaar eindpuntverkeer toe in de netwerkbeveiligingsgroep.
Als u het openbare eindpunt voor een exemplaar wilt inschakelen, stelt u deze in -PublicDataEndpointEnabled
op true wanneer u exemplaareigenschappen bijwerkt met Set-AzSqlInstance:
$instance01 | Set-AzSqlInstance -InstancePoolName $instancePoolName -PublicDataEndpointEnabled $true
Een -database maken
Het maken van een database voor een exemplaar in een pool is hetzelfde als het maken van een database voor één exemplaar. U kunt een nieuwe database maken met behulp van PowerShell of de Azure CLI.
Als u een nieuwe database voor uw exemplaar wilt maken, gebruikt u New-AzSqlInstanceDatabase:
New-AzSqlInstanceDatabase -Name <database name> -InstanceName <instance name> -ResourceGroupName <resource group>
Gebruik van pools ophalen
U kunt PowerShell gebruiken om te bepalen hoe resources in een pool worden gebruikt.
Gebruik Get-AzSqlInstance om een lijst met exemplaren in een pool op te halen:
$instancePool | Get-AzSqlInstance
Gebruik Get-AzSqlInstancePoolUsage om het resourcegebruik van de pool op te halen:
$instancePool| Get-AzSqlInstancePoolUsage
U kunt de parameter -ExpandChildren toevoegen om een gedetailleerd overzicht te krijgen van de pool en instanties erin:
$instancePool | Get-AzSqlInstancePoolUsage –ExpandChildren
Als u de databases in een exemplaar wilt weergeven, gebruikt u Get-AzSqlInstanceDatabase:
$databases = Get-AzSqlInstanceDatabase -InstanceName $instance01Name -ResourceGroupName $resourceGroupName
Notitie
Als u de limieten voor de exemplaren wilt controleren die zijn geïmplementeerd in een pool en databases per exemplaargroep, controleert u de resourcelimieten.
Een exemplaargroep bijwerken
U kunt PowerShell gebruiken om wijzigingen aan te brengen in de limieten van de exemplaargroep.
In het volgende voorbeeldscript wordt het licentietype, de vCore-grootte en het hardwaretype gewijzigd:
Licentietype wijzigen:
$instancePool | Set-AzSqlInstancePool -LicenseType BasePrice -VCores 16 -ComputeGeneration Gen8
U kunt ook de beschikbare onderhoudsvensterschema's bepalen:
# 'Available maintenance schedules in $location'
$configurations = Get-AzMaintenancePublicConfiguration
$configurations | ?{ $_.Location -eq $location -and $_.MaintenanceScope -eq "SQLManagedInstance"}
$maintenanceWindowOptions = $configurations | ?{ $_.Location -eq $location -and $_.MaintenanceScope -eq "SQLManagedInstance"}
Vervolgens kunt u het onderhoudsvenster wijzigen door een vensteroptie op te geven, zoals:
$instancePool | Set-AzSqlInstancePool -MaintenanceConfigurationId $maintenanceWindowOptions[1].Id
Een poolexemplaren bijwerken
Als de resourcelimieten van de pool niet zijn overschreden, kunt u resourceconfiguraties wijzigen voor een exemplaar in een pool met behulp van PowerShell of de Azure CLI.
Als u resourceparameters voor een exemplaar in een pool wilt wijzigen, gebruikt u Set-AzSqlInstance.
Met het volgende script worden de vCores bijvoorbeeld bijgewerkt naar 8 en wordt de opslaggrootte gewijzigd in 512 GB voor Exemplaar1:
$instance1name | Set-AzSqlInstance -VCore 8 -StorageSizeInGB 512 -InstancePoolName $instancePoolName
Een exemplaargroep verwijderen
U kunt een exemplaargroep verwijderen met behulp van PowerShell of de Azure CLI, zodra alle exemplaren in de pool zijn verwijderd of uit de pool zijn verplaatst.
Als u een exemplaargroep wilt verwijderen, gebruikt u Remove-AzSqlInstancePool.
Met het volgende voorbeeldscript wordt een lege exemplaargroep verwijderd:
Remove-AzSqlInstancePool -ResourceGroupName <resource group name -Name <instance pool name>
Bewerkingen van exemplaarpools
In de volgende tabel ziet u de beschikbare bewerkingen voor exemplaarpools:
Opdracht | Azure Portal | PowerShell | Azure-CLI |
---|---|---|---|
Een exemplaargroep maken | Nr. | Ja | Ja |
Pooleigenschappen bijwerken | Nr. | Ja | Ja |
Gebruik en eigenschappen van een pool controleren | Ja | Ja | Ja |
Een exemplaargroep verwijderen | Ja | Ja | Ja |
Een beheerd exemplaar in een pool maken | Nr. | Ja | Ja |
Een beheerd exemplaar verplaatsen naar een pool | Nr. | Ja | Ja |
Een beheerd exemplaar uit een pool verwijderen | Ja | Ja | Ja |
Een beheerd exemplaar uit een pool verplaatsen | Nr. | Ja | Ja |
Een database maken in een exemplaar binnen een pool | Ja | Ja | Ja |
Een database verwijderen uit SQL Managed Instance | Ja | Ja | Ja |
Als u PowerShell wilt gebruiken, installeert u de nieuwste versie van PowerShell Core en volgt u de instructies voor het installeren van de Azure PowerShell-module.
Beschikbare PowerShell-opdrachten:
Cmdlet | Beschrijving |
---|---|
New-AzSqlInstancePool | Hiermee maakt u een exemplaarpool. |
Get-AzSqlInstancePool | Retourneert informatie over een exemplaargroep. |
Set-AzSqlInstancePool | Hiermee stelt u eigenschappen in voor een exemplaargroep. |
Remove-AzSqlInstancePool | Hiermee verwijdert u een exemplaargroep. |
Get-AzSqlInstancePoolUsage | Retourneert informatie over het gebruik van exemplaargroepen. |
Voor bewerkingen die betrekking hebben op exemplaren binnen pools en enkele exemplaren, gebruikt u de standaardopdrachten voor beheerde exemplaren, maar de eigenschap naam van de instantiegroep moet worden ingevuld wanneer u deze opdrachten gebruikt voor een exemplaar in een pool.
Beperkingen
Tijdens de openbare preview gelden voor exemplaren in een pool de volgende beperkingen:
- De naam van de pool mag alleen kleine letters, cijfers en afbreekstreepjes bevatten en kan niet beginnen met een afbreekstreepje.
- Alle exemplaren in de pool gebruiken hetzelfde licentiemodel. Wanneer u een licentiemodel opgeeft voor een exemplaar dat verschilt van het licentiemodel voor de pool, wordt het licentiemodel voor de pool gebruikt. Wanneer het exemplaar uit de pool wordt verplaatst, wordt automatisch overgeschakeld naar een volledige betaalde licentie (
LicenseType
= 'LicenseIncluded'). Activeer azure Hybrid Benefit of het voordeel van hybride failoverrechten handmatig om het licentiemodel te wijzigen. - Gegroepeerde exemplaren moeten deel uitmaken van hetzelfde subnet en dezelfde resourcegroep. Het verplaatsen van een exemplaar in en uit de pool is alleen mogelijk binnen het subnet van de pool en dezelfde resourcegroep.
- Alleen de servicelaag Algemeen gebruik is beschikbaar op hardware uit de Standard-serie (Gen5) of premium-serie. De servicelaag Bedrijfskritiek en geoptimaliseerde hardware uit de Premium-serie is niet beschikbaar.
- Het maximum aantal exemplaren in de groep is 40.
- Een exemplaargroep kan alleen worden verwijderd nadat alle exemplaren in de pool zijn verwijderd of uit de pool zijn verplaatst.
- U kunt Azure Portal niet gebruiken om het volgende te doen:
- Configureer de exemplaargroep. Gebruik in plaats daarvan PowerShell of de Azure CLI.
- Exemplaren in en uit de pool verplaatsen. Gebruik in plaats daarvan PowerShell of de Azure CLI.
- De volgende functies van SQL Managed Instance worden niet ondersteund wanneer exemplaren zich in een pool bevinden:
- Failovergroepen. Failoverrechten zijn niet beschikbaar voor exemplaren in een pool.
- Starten/stoppen.
- Zoneredundantie.
- Prijzen voor gereserveerde capaciteitsinstanties zijn niet beschikbaar.
Ondersteuningsaanvragen
Ondersteuningsaanvragen maken en beheren voor exemplaarpools in Azure Portal.
Als u problemen ondervindt bij het maken of verwijderen van een exemplaar, moet u exemplaargroepen opgeven in het subtypeveld Probleem.
Als u problemen ondervindt met betrekking tot één beheerd exemplaar of een individuele database in een pool, moet u een regelmatig ondersteuningsticket maken voor Azure SQL Managed Instance.
Als u grotere SQL Managed Instance-implementaties (met of zonder exemplaarpools) wilt maken, moet u mogelijk een groter regionaal quotum verkrijgen. Zie Quotumverhogingen aanvragen voor Azure SQL Database voor meer informatie. De implementatielogica voor exemplaargroepen vergelijkt het totale vCore-verbruik op poolniveau met uw quotum om te bepalen of u nieuwe resources mag maken zonder het quotum verder te verhogen.
Gerelateerde inhoud
- Algemene SQL-functies.
- Virtuele netwerkconfiguratie van SQL Managed Instance.
- Een quickstart voor een beheerd exemplaar maken.
- Migratie van SQL Managed Instance met behulp van Database Migration Service.
- Bewaak Azure SQL Managed Instance met behulp van Azure SQL Analytics.
- Prijzen voor SQL Managed Instance.