Distribuera Azure SQL Managed Instance till en instanspool
GÄLLER FÖR:
Azure SQL Managed Instance
Den här artikeln innehåller information om hur du skapar en instanspool och distribuerar Azure SQL Managed Instance till den.
Åtgärder för instanspool
I följande tabell visas tillgängliga åtgärder relaterade till instanspooler och deras tillgänglighet i Azure Portal, PowerShell och Azure CLI.
| Kommando | Azure Portal | PowerShell | Azure CLI |
|---|---|---|---|
| Skapa en instanspool | Inga | Ja | Ja |
| Uppdatera en instanspool (begränsat antal egenskaper) | Inga | Ja | Ja |
| Kontrollera användning och egenskaper för en instanspool | Inga | Ja | Ja |
| Ta bort en instanspool | Inga | Ja | Ja |
| Skapa en hanterad instans i en instanspool | Inga | Ja | Inga |
| Uppdatera resursanvändningen för en hanterad instans | Ja | Ja | Inga |
| Kontrollera användning och egenskaper för en hanterad instans | Ja | Ja | Inga |
| Ta bort en hanterad instans från poolen | Ja | Ja | Inga |
| Skapa en databas i instansen i poolen | Ja | Ja | Inga |
| Ta bort en databas från SQL Managed Instance | Ja | Ja | Inga |
Om du vill använda PowerShell installerar du den senaste versionen PowerShell Coreoch följer instruktionerna för att installera Azure PowerShell modulen.
Tillgängliga PowerShell-kommandon:
| Cmdlet | Beskrivning |
|---|---|
| New-AzSqlInstancePool | Skapar en SQL Managed Instance-pool. |
| Get-AzSqlInstancePool | Returnerar information om en instanspool. |
| Set-AzSqlInstancePool | Anger egenskaper för en instanspool i SQL Managed Instance. |
| Remove-AzSqlInstancePool | Tar bort en instanspool i SQL Managed Instance. |
| Get-AzSqlInstancePoolUsage | Returnerar information om SQL poolanvändning för hanterad instans. |
För åtgärder som rör både instanser i pooler och enskilda instanser använder du standardkommandonaför hanterad instans, men egenskapen för instanspoolens namn måste fyllas i när du använder dessa kommandon för en instans i en pool.
Distributionsprocess
Om du vill distribuera en hanterad instans till en instanspool måste du först distribuera instanspoolen, vilket är en engångsåtgärd där varaktigheten är densamma som när du distribuerar en enskild instans som skapats i ett tomt undernät. Därefter kan du distribuera en hanterad instans till poolen, vilket är en relativt snabb åtgärd som vanligtvis tar upp till fem minuter. Instanspoolparametern måste uttryckligen anges som en del av den här åtgärden.
I den offentliga förhandsversionen stöds båda åtgärderna endast med PowerShell och Azure Resource Manager mallar. Den Azure Portal upplevelsen är inte tillgänglig för närvarande.
När en hanterad instans har distribuerats till en pool kan du använda Azure Portal för att ändra dess egenskaper på sidan prisnivå.
Skapa ett virtuellt nätverk med ett undernät
Om du vill placera flera instanspooler i samma virtuella nätverk kan du läsa följande artiklar:
- Fastställ storleken på det virtuella nätverkets undernät för Azure SQL Managed Instance.
- Skapa ett nytt virtuellt nätverk och undernät med hjälp Azure Portal mallen eller följ instruktionerna för att förbereda ett befintligt virtuellt nätverk.
Skapa en instanspool
När du har slutfört de föregående stegen är du redo att skapa en instanspool.
Följande begränsningar gäller för instanspooler:
- Endast Generell användning och Gen5 är tillgängliga i offentlig förhandsversion.
- Poolnamnet får bara innehålla gemener, siffror och bindestreck och får inte börja med bindestreck.
- Om du vill använda Azure Hybrid-förmån tillämpas den på instanspoolnivå. Du kan ange licenstypen när poolen skapas eller uppdatera den när som helst efter att den har skapats.
Viktigt
Att distribuera en instanspool är en långvarig åtgärd som tar cirka 4,5 timmar.
Så här hämtar du nätverksparametrar:
$virtualNetwork = Get-AzVirtualNetwork -Name "miPoolVirtualNetwork" -ResourceGroupName "myResourceGroup"
$subnet = Get-AzVirtualNetworkSubnetConfig -Name "miPoolSubnet" -VirtualNetwork $virtualNetwork
Så här skapar du en instanspool:
$instancePool = New-AzSqlInstancePool `
-ResourceGroupName "myResourceGroup" `
-Name "mi-pool-name" `
-SubnetId $subnet.Id `
-LicenseType "LicenseIncluded" `
-VCore 8 `
-Edition "GeneralPurpose" `
-ComputeGeneration "Gen5" `
-Location "westeurope"
Viktigt
Eftersom distributionen av en instanspool är en långvarig åtgärd måste du vänta tills den har slutförts innan du kör något av följande steg i den här artikeln.
Skapa en hanterad instans
Efter den lyckade distributionen av instanspoolen är det dags att skapa en hanterad instans i den.
Kör följande kommando för att skapa en hanterad instans:
$instanceOne = $instancePool | New-AzSqlInstance -Name "mi-one-name" -VCore 2 -StorageSizeInGB 256
Det tar några minuter att distribuera en instans i en pool. När den första instansen har skapats kan ytterligare instanser skapas:
$instanceTwo = $instancePool | New-AzSqlInstance -Name "mi-two-name" -VCore 4 -StorageSizeInGB 512
Skapa en databas
Om du vill skapa och hantera databaser i en hanterad instans som finns i en pool använder du kommandona för en instans.
Så här skapar du en databas i en hanterad instans:
$poolinstancedb = New-AzSqlInstanceDatabase -Name "mipooldb1" -InstanceName "poolmi-001" -ResourceGroupName "myResourceGroup"
Hämta poolanvändning
Så här hämtar du en lista över instanser i en pool:
$instancePool | Get-AzSqlInstance
Så här hämtar du resursanvändning för pooler:
$instancePool | Get-AzSqlInstancePoolUsage
Så här får du en detaljerad användningsöversikt över poolen och instanserna i den:
$instancePool | Get-AzSqlInstancePoolUsage –ExpandChildren
Så här listar du databaserna i en instans:
$databases = Get-AzSqlInstanceDatabase -InstanceName "pool-mi-001" -ResourceGroupName "resource-group-name"
Anteckning
Information om hur du kontrollerar gränserna för antalet databaser per instanspool och den hanterade instans som distribueras i poolen finns i avsnittet Resursbegränsningar för instanspooler.
Skala
När du har fyllt i en hanterad instans med databaser kan du komma till instansgränserna för lagring eller prestanda. I så fall kan du skala din instans om poolanvändningen inte har överskridits. Skalning av en hanterad instans i en pool är en åtgärd som tar några minuter. Förutsättningen för skalning är tillgängliga virtuella kärnor och lagring på instanspoolnivå.
Så här uppdaterar du antalet virtuella kärnor och lagringsstorleken:
$instanceOne | Set-AzSqlInstance -VCore 8 -StorageSizeInGB 512 -InstancePoolName "mi-pool-name"
Så här uppdaterar du lagringsstorleken:
$instance | Set-AzSqlInstance -StorageSizeInGB 1024 -InstancePoolName "mi-pool-name"
Anslut
Följande två steg krävs för att ansluta till en hanterad instans i en pool:
- Aktivera den offentliga slutpunkten för instansen.
- Lägg till en regel för inkommande trafik i nätverkssäkerhetsgruppen (NSG).
När båda stegen är klara kan du ansluta till instansen med hjälp av en offentlig slutpunktsadress, port och autentiseringsuppgifter som angavs när instansen skapades.
Aktivera den offentliga slutpunkten
Du kan aktivera den offentliga slutpunkten för en instans via Azure Portal eller med hjälp av följande PowerShell-kommando:
$instanceOne | Set-AzSqlInstance -InstancePoolName "pool-mi-001" -PublicDataEndpointEnabled $true
Den här parametern kan även anges när instansen skapas.
Lägga till en regel för inkommande trafik i nätverkssäkerhetsgruppen
Det här steget kan göras via Azure Portal eller med PowerShell-kommandon och kan göras när som helst när som helst när undernätet har förberetts för den hanterade instansen.
Mer information finns i Tillåt trafik för offentliga slutpunkter i nätverkssäkerhetsgruppen.
Flytta en befintlig enskild instans till en pool
Att flytta instanser till och från en pool är en av begränsningarna i den offentliga förhandsversionen. En lösning är beroende av återställning till tidpunkt av databaser från en instans utanför en pool till en instans som redan finns i en pool.
Båda instanserna måste finnas i samma prenumeration och region. Återställning mellan regioner och prenumerationer stöds inte för närvarande.
Den här processen har en stilleståndsperiod.
Så här flyttar du befintliga databaser:
Pausa arbetsbelastningar på den hanterade instans som du migrerar från.
Generera skript för att skapa systemdatabaser och köra dem på den instans som finns i instanspoolen.
Gör en återställning till en tidpunkt av varje databas från den enskilda instansen till instansen i poolen.
$resourceGroupName = "my resource group name" $managedInstanceName = "my managed instance name" $databaseName = "my source database name" $pointInTime = "2019-08-21T08:51:39.3882806Z" $targetDatabase = "name of the new database that will be created" $targetResourceGroupName = "resource group of instance pool" $targetInstanceName = "pool instance name" Restore-AzSqlInstanceDatabase -FromPointInTimeBackup ` -ResourceGroupName $resourceGroupName ` -InstanceName $managedInstanceName ` -Name $databaseName ` -PointInTime $pointInTime ` -TargetInstanceDatabaseName $targetDatabase ` -TargetResourceGroupName $targetResourceGroupName ` -TargetInstanceName $targetInstanceNamePeka ditt program till den nya instansen och återuppta dess arbetsbelastningar.
Om det finns flera databaser upprepar du processen för varje databas.
Nästa steg
- En lista över funktioner och jämförelser finns i SQL vanliga funktioner.
- Mer information om VNet-konfiguration finns i SQL VNet-konfiguration för hanterad instans.
- En snabbstart som skapar en hanterad instans och återställer en databas från en säkerhetskopia finns i Skapa en hanterad instans.
- En självstudie om hur du använder Azure Database Migration Service för migrering finns i SQL Migrering av hanterad instans med Database Migration Service.
- Avancerad övervakning av databasprestanda SQL hanterad instans med inbyggd felsökningsinformation finns i Övervaka Azure SQL Managed Instance med Azure SQL Analytics.
- Prisinformation finns i prissättningen SQL Managed Instance.
