Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Instanzen konsolidieren
Dieser Abschnitt konzentriert sich auf die Technik zur Kostenoptimierung, bei der mehrere SQL Serverinstanzen auf demselben Server kombiniert werden, um die Lizenzkosten zu minimieren und die Ressourcennutzung zu maximieren.
Übersicht
Das Erstellen einer Instanz ist Teil des Installationsprozesses der SQL Server Database Engine. Die SQL Serverinstanz ist eine vollständige Installation, die ihre eigenen Serverdateien, Sicherheitsanmeldungen und Systemdatenbanken (Master, Model, msdb und tempdb) enthält. Da eine Instanz über alle eigenen Dateien und Dienste verfügt, können Sie mehrere SQL Serverinstanzen auf demselben Betriebssystem installieren, ohne dass sich die Instanzen gegenseitig stören. Da die Instanzen jedoch alle auf demselben Server installiert sind, nutzen sie alle dieselben Hardwareressourcen wie Rechenleistung, Arbeitsspeicher und Netzwerk.
In Produktionsumgebungen ist es üblich, nur eine einzige SQL Serverinstanz pro Server zu verwenden, damit eine „ausgelastete“ Instanz die gemeinsam genutzten Hardwareressourcen nicht überbeansprucht. Jeder SQL Serverinstanz ein eigenes Betriebssystem mit eigenen Ressourcen zuzuweisen, ist eine bessere Grenze, als sich auf die Ressourcenverwaltung zu verlassen. Dies gilt insbesondere für leistungsstarke SQL Server-Workloads, die große Mengen RAM und CPU Ressourcen erfordern.
Allerdings verbrauchen nicht alle SQL Serverworkloads eine große Menge an Ressourcen. Einige Unternehmen weisen beispielsweise jedem ihrer Kunden aus Compliance- oder Sicherheitsgründen eine eigene SQL Serverinstanz zu. Für kleinere Clients oder Clients, die normalerweise nicht aktiv sind, bedeutet das, dass die SQL Serverinstanzen mit minimalen Ressourcen ausgeführt werden.
Wie im Microsoft SQL Server 2019: Licensing Guide
Szenario zur Kostenoptimierung
In diesem Abschnitt wird ein Beispielszenario untersucht, in dem der Unterschied zwischen dem Betrieb von vier Windows Server-Servern mit jeweils einer einzigen SQL Serverinstanz und einem einzelnen größeren Windows Server-Server, auf dem mehrere SQL Serverinstanzen gleichzeitig ausgeführt werden, verglichen wird.
Wenn jede SQL Serverinstanz nur zwei vCPUs und 8 GB benötigtRAM, belaufen sich die Gesamtkosten pro Server auf 7.890 USD für die SQL Serverlizenz, zusätzlich zu den stündlichen Rechenkosten von 0,096 USD.
EC2Instanz | vCPUs | RAM | Preis | vCPUs zu lizenzieren | Gesamtkosten für SQL Serverlizenzen |
---|---|---|---|---|---|
m6i.large | 2 | 8 | 0,096 | 4 | 7.890$ |
Bei einer Erweiterung auf vier Server belaufen sich die Gesamtkosten für die SQL Serverlizenz auf 31.560 USD bei stündlichen Rechenkosten von 0,384 USD.
EC2Instanz | vCPUs | RAM | Preis | vCPUs zu lizenzieren | Gesamtkosten für SQL Serverlizenzen |
---|---|---|---|---|---|
4 x 6 Mio. groß | 2 | 32 | 0,384 | 16 | 31.560$ |
Wenn Sie alle vier SQL Serverinstanzen zu einer einzigen EC2 Instanz kombinieren, bleibt die Gesamtmenge an Rechenressourcen und Rechenleistung gleich. Durch den Wegfall unnötiger SQL Serverlizenzkosten können Sie jedoch die Gesamtkosten für die Ausführung des Workloads um 15.780$ reduzieren.
EC2Instanz | vCPUs | RAM | Preis | vCPUs zu lizenzieren | Gesamtkosten für SQL Serverlizenzen |
---|---|---|---|---|---|
m6i.2xlarge | 8 | 32 | 0,384 | 8 | 15.780$ |
Anmerkung
In den obigen Tabellen zeigen die Rechenkosten stündliche On-Demand-Preise für EC2 Amazon-Server, auf denen Windows Server in der us-east-1
Region ausgeführt wird. Die Lizenzkosten für die SQL Server Standard Edition beziehen sich auf die Preise für öffentliche SQL Server von Microsoft
Empfehlungen zur Kostenoptimierung
Wenn Sie erwägen, SQL Serverinstanzen zu konsolidieren, ist das größte Problem der Ressourcenverbrauch für jede der Instanzen, die Sie konsolidieren möchten. Es ist wichtig, Leistungsmetriken über lange Zeiträume zu erfassen, um ein besseres Verständnis der Arbeitslastmuster auf jedem Server zu erhalten. Einige gängige Tools zur Überwachung des Ressourcenverbrauchs sind Amazon CloudWatch, Windows Performance Monitor
Wir empfehlen Ihnen, die folgenden Fragen zu berücksichtigen, wenn Sie analysieren, ob Ihre SQL Server-Workloads kombiniert werden könnten, um dieselben Serverressourcen zu nutzen, ohne dass sie sich gegenseitig stören:
-
Welche Ressourcen (CPUArbeitsspeicher und Netzwerkbandbreite) werden während Ihres stabilen Zustands verbraucht?
-
Welche Ressourcen (CPUArbeitsspeicher und Netzwerkbandbreite) werden bei Spitzenbelastungen verbraucht?
-
Wie oft treten Spitzen auf? Sind die Spitzen konsistent?
-
Stimmen die Ressourcenspitzen eines Servers mit den Ressourcenspitzen eines anderen Servers überein?
-
Welchen Speicherplatz IOPSund welchen Durchsatz verwendet der Server? SQL
Wenn Sie mit einem Plan zur Kombination von SQL Server-Instances fortfahren möchten, lesen Sie den Beitrag Mehrere SQL Serverinstanzen auf einer EC2 Amazon-Instanz ausführen
-
Die SQL Standardserverdatenbankinstanz ist benannt
MSSQLSERVER
und verwendet Port 1433. -
Jede weitere Instanz, die auf demselben Server installiert ist, ist eine „benannte“ Datenbankinstanz.
-
Jede benannte Instanz hat einen eindeutigen Instanznamen und einen eindeutigen Port.
-
Der SQLServerbrowser
muss ausgeführt werden, um den Verkehr zu den benannten Instanzen zu koordinieren. -
Jede Instanz kann separate Speicherorte für Datenbankdatendateien und separate Logins verwenden.
-
Die Einstellungen für maximalen SQL Serverspeicher
müssen entsprechend den Leistungsanforderungen der einzelnen Instanzen konfiguriert werden, sodass insgesamt auch genügend Arbeitsspeicher für das zugrunde liegende Betriebssystem übrig bleibt. -
Sie können die systemeigenen Sicherungs- und Wiederherstellungsfunktionen
des SQL Servers oder AWS DMS für die Migration oder Konsolidierung verwenden.