Erstellen eines Instanzenpools (Vorschau) - Azure SQL Managed Instance
Gilt für: Azure SQL Managed Instance
In diesem Artikel erfahren Sie, wie Sie einen Instanzpool für Azure SQL Managed Instance mithilfe des Azure-Portals, der PowerShell oder der Azure-CLI erstellen und wie Sie Instances mithilfe der PowerShell oder der Azure-CLI in den und aus dem Pool verschieben können.
Instanzpools ermöglichen es, mehrere Instanzen mit gemeinsam genutzten Ressourcen auf einem einzelnen virtuellen Computer bereitzustellen, was eine bequeme und kostengünstige Infrastruktur zum Migrieren mehrerer SQL Server-Instanzen bietet, ohne kleinere und weniger rechenintensive Workloads auf einer größeren SQL-verwalteten Instanz konsolidieren zu müssen.
Hinweis
Instance-Pools für Azure SQL Managed Instance befinden sich derzeit in der Vorschau.
Voraussetzungen
Zum Erstellen eines Instanzpools sollten Sie über Folgendes verfügen:
- Ein vorhandenes virtuelles Netzwerk mit einem entsprechend großen Subnetzbereich.
- Das neueste Az.SQL-Modul für die aktuelle Version von PowerShell oder die neueste Version der Azure CLI.
- Überprüfte Instanz- und Pooleigenschaften.
Überlegungen zur Subnetzgröße
Planen Sie sorgfältig die Größe Ihres Subnetzes, wenn Sie einen Instanzpool verwenden. Weitere Informationen finden Sie unter Ermitteln der erforderlichen Subnetzgröße und des erforderlichen Bereichs für die Subnetzgrößenrichtlinien.
Verwenden Sie die folgende Formel, wenn Sie die Anzahl der IP-Adressen berechnen, die von einem Instanzpool erforderlich sind, der mehrere Universell-Instanzen enthält:
2 * (5 + (3 * # of MIs)) + 5
# of MIs
bezieht sich auf die maximale potenzielle Anzahl von Instanzen, die Sie bereitstellen möchten. Die maximal mögliche Anzahl von Instanzen im Pool beträgt 40.
Instanzenpool erstellen
Sie können ein Instanzpool mithilfe des Azure-Portals, der PowerShell oder der Azure-CLI. Beachten Sie Folgendes:
- Derzeit ist nur die Dienstebene „Universell“ auf Hardware der Standardserien (Gen5) oder Premium-Serie verfügbar.
- Der Poolname darf nur Kleinbuchstaben, Ziffern und Bindestriche enthalten, und er darf nicht mit einem Bindestrich beginnen.
- Der Azure-Hybridvorteil wird er auf Ebene des Instanzpools angewandt. Sie können den Lizenztyp festlegen, wenn Sie den Pool erstellen, und den Lizenztyp aktualisieren, nachdem der Pool erstellt wurde.
Wichtig
Das Bereitstellen eines Instanzenpools ist ein zeitintensiver Vorgang, der bis zu 4,5 Stunden dauern kann.
Führen Sie die folgenden Schritte aus, um einen Pool im Azure-Portal zu erstellen:
Suchen Sie im Azure-Portal nach Instanzenpools, und wählen Sie den Instanzpooldienst aus, um die Seite Instanzenpools zu öffnen:
Wählen Sie auf der Seite Instanzpools + Erstellen, um die Seite Azure SQL Managed Instance Pool erstellen zu öffnen:
Auf der Seite Azure SQL Managed Instance Pool erstellen:
- Geben Sie auf der Registerkarte Grundlagen Projekt- und Instanzdetails an.
- Verwenden Sie Instanzpool konfigurieren unter Compute + Storage, um die Seite Compute + Storage zu öffnen, und wählen Sie die Dienstebene, die Hardware und die SQL Server-Lizenz aus, die der Pool verwenden soll. Verwenden Sie Übernehmen, um Ihre Computeeinstellungen zu speichern und zur Seite Azure SQL Managed Instance Pool erstellen zurückzukehren.
- Wählen Sie ein vorhandenes virtuelles Netzwerk aus, oder konfigurieren Sie ein neues virtuelles Netzwerk auf der Registerkarte Netzwerk.
- (Optional) Konfigurieren Sie ein nicht standardmäßiges Standard Stufenfenster für den Pool auf der Registerkarte Zusätzliche Einstellungen.
- Überprüfen Sie Ihre Konfiguration auf der Registerkarte Überprüfen + Erstellen und wählen Sie dann Erstellen aus, um Ihren Instanzpool zu erstellen.
Sie können die Poolbereitstellung über Benachrichtigungen überwachen.
Nachdem Ihr Instanzpool erstellt wurde, können Sie über das Azure-Portal eine neue Instanz in dem Pool erstellen, oder mithilfe der PowerShell oder der Azure-CLI eine vorhandene Instanz in den Pool verschieben.
Erstellen einer neuen Instanz im Pool
Nachdem Ihr Pool erstellt wurde, können Sie eine neue Instanz innerhalb des Pools mithilfe von der Azure-Portal, der PowerShell oder der Azure CLI erstellen.
Beachten Sie Folgendes:
- Sie müssen den Lizenztyp für die neue Instanz angeben und mit dem Lizenztyp des Pools übereinstimmen.
Um eine neue Instanz innerhalb eines Pools über das Azure-Portal zu erstellen, gehen Sie wie folgt vor:
Wechseln Sie im Azure-Portal zur Seite Azure SQL.
Wählen Sie auf der Seite Azure SQL + Erstellen, um die Option SQL-Bereitstellung auswählen zu öffnen.
Wählen Sie auf der Kachel SQL Managed Instances den Ressourcentyp Single Instance und wählen Sie dann Erstellen, um die Seite Azure SQL Managed Instance erstellen zu öffnen.
Auf der Registerkarte Grundlagen auf der Seite Azure SQL Managed Instance erstellen:
- Wählen Sie die Ressourcengruppe aus, die Ihren vorhandenen Instanzpool enthält.
- Wählen Sie Ja bei Gehört zu einem Instanzpool? unter Details zur verwalteten Instanz, um Ihre neue Instanz innerhalb eines Instanzpools zu erstellen.
- Wählen Sie einen Pool aus der Instanzpool-Dropdownliste aus.
Füllen Sie die restlichen Details auf der Seite Azure SQL Managed Instance erstellen aus, um Ihre Instanz innerhalb des Pools zu erstellen. Weitere Informationen finden Sie unter Azure SQL Managed Instance erstellen.
Wählen Sie Überprüfen + Erstellen aus, um die Einstellungen für Ihre neue Instanz zu überprüfen, und verwenden Sie dann Erstellen, um Ihre Instanz im ausgewählten Pool bereitzustellen.
Bewegen einer vorhandenen Instanz
Sie können eine vorhandene Instanz mithilfe von PowerShell oder der Azure CLI in einen Pool verschieben, wenn:
- Sie sich in derselben Ressourcengruppe wie der Pool befindet.
- Sie sich im selben virtuellen Netzwerk und Subnetz wie der Pool befindet.
- Sie zu den Ressourcengrenzwerten für den Instanzpool passt.
Wenn eine vorhandene Instanz in einen Pool verschoben wird, haben Einstellungen auf Poolebene Vorrang vor Einstellungen auf Instanzenebene. Beispielsweise erbt die Instanz den Lizenztyp und die Einstellung des Wartungsfensters auf Poolebene. Wenn eine Instanz aus dem Pool verschoben wird, behält sie die vom Pool geerbten Einstellungen bei. Die einzige Ausnahme ist der Lizenztyp, der standardmäßig auf "LicenseIncluded" zurückgeht, wenn eine Instanz aus dem Instanzpool entfernt wird. Der Azure-Hybridvorteil und Hybrid-Failover-Rechte müssen manuell konfiguriert werden, nachdem eine Instanz aus einem Pool verschoben wurde.
Das Verschieben einer vorhandenen Instanz innerhalb eines Pools über das Azure-Portal wird derzeit nicht unterstützt.
Um eine Instanz mithilfe von PowerShell in einen Pool zu verschieben, geben Sie den Poolnamen an, wenn Sie Set-AzSqlInstance verwenden:
$instance01 | Set-AzSqlInstance -InstancePoolName $instancePoolName
Um eine Instanz aus einem Pool zu verschieben, geben Sie einen leeren Poolnamen an:
$instance01 | Set-AzSqlInstance -InstancePoolName ''
Herstellen einer Verbindung mit einer Instanz in einem Pool
Sie können eine Verbindung mit einer Instanz in einem Pool mit einem privaten Endpunkt oder einem öffentlichen Endpunkt herstellen. Um einen privaten Endpunkt zu verwenden, müssen Sie Azure Private Link verwenden.
Um eine Verbindung zu einer Instanz in einem Pool mit einem öffentlichen Endpunkt herzustellen, müssen Sie den Endpunkt aktivieren und dann den öffentlichen Endpunktverkehr in der Netzwerksicherheitsgruppe zulassen.
Erstellen einer Datenbank
Das Erstellen einer Datenbank für eine Instanz innerhalb eines Pools entspricht dem Erstellen einer Datenbank für eine einzelne Instanz. Sie können eine neue Datenbank über das Azure-Portal, die PowerShell oder die Azure CLI erstellen.
Um eine neue Datenbank für eine vorhandene SQL-verwaltete Instanz mithilfe des Azure-Portals zu erstellen, gehen Sie wie folgt vor:
- Navigieren Sie im Azure-Portal zu Ihrer Instanz von SQL Managed Instance.
- Wählen Sie im Übersichtsbereich in der Befehlsleiste + Neue Datenbank, um die Seite Azure SQL Managed Database erstellen zu öffnen.
- Geben Sie Details für die neue Datenbank an.
- Wählen Sie Überprüfen + Erstellen aus, um die neue Datenbankkonfiguration zu überprüfen und dann Erstellen zum Bereitstellen der Datenbank zu verwenden.
Abrufen der Poolnutzung
Sie können PowerShell verwenden, um zu festzulegen, wie Ressourcen in einem Pool verwendet werden.
Verwenden Sie Get-AzSqlInstance, um eine Liste von Instanzen innerhalb eines Pools abzurufen:
$instancePool | Get-AzSqlInstance
Verwenden Sie Get-AzSqlInstancePoolUsage, um die Ressourcennutzung des Pools abzurufen:
$instancePool| Get-AzSqlInstancePoolUsage
Sie können den Parameter "-ExpandChildren" hinzufügen, um einen detaillierten Überblick über den Pool und die darin enthaltenen Instanzen zu erhalten:
$instancePool | Get-AzSqlInstancePoolUsage –ExpandChildren
Verwenden Sie Get-AzSqlInstanceDatabase, um die Datenbanken in einer Instanz aufzulisten:
$databaseParams = @{
InstanceName = $instance01Name
ResourceGroupName = $resourceGroupName
}
$databases = Get-AzSqlInstanceDatabase @databaseParams
Hinweis
Überprüfen Sie die Ressourcenbeschränkungen, um die in einem Pool bereitgestellten Instanzen und Datenbanken pro Instanzpool zu überprüfen.
Aktualisieren eines Instanzenpools
Sie können die Einstellungen für einen vorhandenen Instanzpool mithilfe der PowerShell oder der Azure CLI aktualisieren.
Sie können PowerShell verwenden, um Änderungen an den Instanzenpoolgrenzwerten vorzunehmen.
Das folgende Beispielskript ändert den Lizenztyp, die Größe der virtuellen Kerne und den Hardwaretyp:
Ändern des Lizenztyps:
$instancePoolParams = @{
LicenseType = "BasePrice"
VCores = 16
ComputeGeneration = "Gen8"
}
$instancePool | Set-AzSqlInstancePool @instancePoolParams
Sie können auch die verfügbaren Wartungsfensterzeitpläne festlegen:
$parameters = @{
Location = $location
MaintenanceScope = "SQLManagedInstance"
}
$configurations = Get-AzMaintenancePublicConfiguration @parameters
$maintenanceWindowOptions = $configurations | Where-Object { $_.Location -eq $location -and $_.MaintenanceScope -eq "SQLManagedInstance" }
Anschließend können Sie das Wartungsfenster ändern, indem Sie eine Fensteroption angeben, z. B.:
$instancePoolParams = @{
MaintenanceConfigurationId = $maintenanceWindowOptions[1].Id
}
$instancePool | Set-AzSqlInstancePool @instancePoolParams
Aktualisieren eine gepoolten Instanz
Wenn die Grenzwerte für Poolressourcen nicht überschritten wurden, können Sie Ressourcenkonfigurationen für eine Instanz innerhalb eines Pools mithilfe von PowerShell oder der Azure CLI ändern.
Verwenden Sie Set-AzSqlInstance, um Ressourcenparameter für eine Instanz innerhalb eines Pools zu ändern.
Das folgende Beispiel aktualisiert die virtuellen Kerne auf 8 und ändert die Speichergröße für Instance1 auf 512 GB:
$instancePoolParams = @{
VCore = 8
StorageSizeInGB = 512
InstancePoolName = $instancePoolName
}
$instance1name | Set-AzSqlInstance @instancePoolParams
Löschen eines Instanzpools
Sie können einen Instanzpool mithilfe von PowerShell oder der Azure CLI löschen, sobald alle Instanzen im Pool gelöscht oder aus dem Pool verschoben wurden.
Verwenden Sie Remove-AzSqlInstancePool, um einen Instanzpool zu löschen.
Das folgende Beispielskript löscht einen leeren Instanzpool:
$params = @{
ResourceGroupName = "<resource group name>"
Name = "<instance pool name>"
}
Remove-AzSqlInstancePool @params
Vorgänge für Instanzenpools
Die folgende Tabelle zeigt die verfügbaren Instanzpool-Operationen:
Get-Help | Azure-Portal | PowerShell | Azure CLI |
---|---|---|---|
Erstellen eines Instanzenpools | Ja | Ja | Ja |
Aktualisieren von Pooleigenschaften | No | Ja | Ja |
Überprüfen der Verwendung und der Eigenschaften eines Pools | Ja | Ja | Ja |
Löschen eines Instanzpools | Ja | Ja | Ja |
Erstellen einer neuen verwalteten Instanz innerhalb eines Pools | Ja | Ja | Ja |
Verschieben einer verwalteten Instanz in einen Pool | No | Ja | Ja |
Löschen einer verwalteten Instanz aus einem Pool | Ja | Ja | Ja |
Verschieben einer verwalteten Instanz aus einem Pool | No | Ja | Ja |
Erstellen einer Datenbank in einer Instanz innerhalb eines Pools | Ja | Ja | Ja |
Löschen einer Datenbank aus SQL Managed Instance | Ja | Ja | Ja |
Zur Verwendung von PowerShell installieren Sie die neueste Version von PowerShell Core, und befolgen Sie die Anweisungen zum Installieren des Azure PowerShell-Moduls.
Verfügbare PowerShell-Befehle:
Cmdlet | BESCHREIBUNG |
---|---|
New-AzSqlInstancePool | Erstellt einen Instanzenpool. |
Get-AzSqlInstancePool | Gibt Informationen über einen Instanzpool zurück. |
Set-AzSqlInstancePool | Legt Eigenschaften für einen Instanzenpool fest. |
Remove-AzSqlInstancePool | Entfernt einen Instanzenpool. |
Get-AzSqlInstancePoolUsage | Gibt Informationen zur Verwendung von Instanzenpools zurück. |
Verwenden Sie für Vorgänge für Instanzen innerhalb von Pools sowie für Einzelinstanzen die Standardbefehle für verwaltete Instanzen. Wenn diese Befehle für eine Instanz in einem Pool verwendet werden, muss allerdings der Name des Instanzenpools angegeben werden.
Begrenzungen
Während der öffentlichen Vorschau haben Instanzen in einem Pool die folgenden Einschränkungen:
- Der Poolname darf nur Kleinbuchstaben, Ziffern und Bindestriche enthalten, und er darf nicht mit einem Bindestrich beginnen.
- Alle Instanzen im Pool verwenden dasselbe Lizenzierungsmodell. Wenn Sie ein Lizenzmodell für eine Instanz angeben, die sich vom Lizenzmodell für den Pool unterscheidet, wird das Poollizenzmodell verwendet. Wenn die Instanz aus dem Pool verschoben wird, wechselt sie automatisch zu einer vollständig bezahlten Lizenz (
LicenseType
= 'LicenseIncluded'). Aktivieren Sie den Azure-Hybridvorteil oder die Hybrid-Failover-Rechte manuell, um das Lizenzierungsmodell zu ändern. - Poolinstanzen müssen derselben Subnetz- und Ressourcengruppe angehören. Das Bewegen einer Instanz in und aus dem Pool ist nur innerhalb des Subnetzes des Pools und derselben Ressourcengruppe möglich.
- Nur die Dienstebene Universell ist auf Hardware der Standardserie (Gen5) oder der Premium-Serie verfügbar. Die Dienstebene Universell der nächsten Generation, Unternehmenskritisch und die speicheroptimierte Hardware der Premium-Serie sind nicht verfügbar.
- Die maximal mögliche Anzahl von Instanzen im Pool beträgt 40.
- Ein Instanzpool kann nur gelöscht werden, nachdem alle Instanzen im Pool entweder gelöscht oder aus dem Pool verschoben wurden.
- Sie können das Azure-Portal nicht nutzen für:
- Die Konfiguration des Instanzenpools. Verwenden Sie stattdessen PowerShell oder das Azure CLI.
- Das Bewegen von Instanzen in und aus dem Pool. Verwenden Sie stattdessen PowerShell oder das Azure CLI.
- Die folgenden Features von SQL Managed Instance werden nicht unterstützt, wenn sich Instanzen in einem Pool befinden:
- Failover-Gruppen. Failover-Rechte sind für Instanzen in einem Pool nicht verfügbar.
- Starten/Beenden.
- Zonenredundanz.
- Preise für reservierte Kapazität-Instanzen sind nicht verfügbar.
Supportanfragen
Sie können Supportanfragen für Instanzenpools im Azure-Portal erstellen und verwalten.
Um eine neue Supportanfrage im Azure-Portal zu erstellen, gehen Sie wie folgt vor:
Öffnen Sie die Seite Neue Supportanfrage im Azure-Portal.
Geben Sie die folgenden Informationen in der neuen Supportanfrage an:
- Wählen Sie als Ausgabentyp
Technical
. - Wählen Sie in der Dropdownliste das entsprechende Abonnement aus.
- Wählen Sie für den Diensttyp
SQL Managed Instance
aus. - Geben Sie für Ressource den Namen ihrer SQL-verwaltete Instanz an, falls vorhanden, oder wählen Sie Allgemein aus, wenn Sie Ihre Instanz nicht innerhalb des Pools bereitstellen können.
- Geben Sie für die Zusammenfassung
instance pools
ein. - Wählen Sie für Problemtyp
Create, Scale, Stop, Start, or Delete Resources
aus. - Wählen Sie für Problem-Subtyp
Instance Pools
aus.
- Wählen Sie als Ausgabentyp
Wählen Sie Weiter auf den nachfolgenden Seiten aus, bis Sie Ihre Supportanfrage erstellen können.
Zur Erstellung größerer SQL Managed Instance-Bereitstellungen (mit oder ohne Instanzenpools) benötigen Sie möglicherweise ein größeres regionales Kontingent. Weitere Informationen finden Sie unter Anfordern von Kontingenterhöhungen für Azure SQL-Datenbank. Die Bereitstellungslogik für Instanzenpools vergleicht den Gesamtverbrauch von virtuellen Kernen auf Poolebene mit Ihrem Kontingent, um zu ermitteln, ob Sie ohne Kontingenterhöhung neue Ressourcen erstellen können.
Zugehöriger Inhalt
- Allgemeine SQL-Features
- Virtuelle Netzwerkkonfiguration für SQL Managed Instance
- Erstellen eines Schnellstarts einer verwalteten Instanz
- Migration von SQL Managed Instance mithilfe des Database Migration Service
- Überwachen von Azure SQL Managed Instance mit dem Datenbank-Watcher
- Preise für SQL Managed Instance