Zum Inhalt springen

Erstellen und Verwalten von Instanzen

Unabhängig von der gewählten Methode zum Erstellen und Verwalten einer Instanz gibt es allgemeine Eigenschaften einer STACKIT PostgreSQL Flex Instanz.

Mit dem Instanztyp können Sie die horizontale Skalierung und Hochverfügbarkeit bestimmen. Horizontale Skalierung erhöht die Verfügbarkeit und die Leseleistung. Der Single-Instanztyp bietet keine horizontale Skalierung. Ein Replica Set bietet horizontale Skalierung und erreicht somit Hochverfügbarkeit.

AnwendungsfallInstanztyp
EntwicklungSingle (1 Knoten)
Produktion (Normal)Replica Set (3 Knoten)

Wählen Sie das Flavor aus, das zu Ihrem Workload passt. Es ist sicher, mit einem kleineren Flavor zu beginnen und später zu einem größeren zu wechseln. Abhängig vom gewählten Instanztyp sind einige Flavors nicht verfügbar. Sie können Flavors von Tiny bis X-Large wählen, wobei jede Größe über eine CPU- oder speicheroptimierte Version verfügt. Eine detaillierte Referenz der verfügbaren Flavors finden Sie unter Flavors und Leistungsklassen.

Mit der Leistungsklasse bestimmen Sie die Eigenschaften des zugrunde liegenden Speichers. Diese Einstellung ist völlig unabhängig vom Flavor. Letzteres beeinflusst nur CPU und RAM. Eine detaillierte Referenz der verfügbaren Leistungsklassen finden Sie unter Flavors und Leistungsklassen.

Mit der Festplattengröße bestimmen Sie die Anfangsgröße des zugrunde liegenden Speichers. Die Standardeinstellung ist 5 GB. Sie können diese Größe bedenkenlos übernehmen und die Festplatte später vergrößern.

Mit der Auswahl der PostgreSQL-Version legen Sie fest, welche PostgreSQL-Version zum Einsatz kommt. STACKIT aktualisiert die PostgreSQL-Hauptversion entsprechend den Releases von PostgreSQL mit einer angemessenen Verzögerung für die Implementierung. Lesen Sie regelmäßig die Release Notes für Abkündigungshinweise und Ankündigungen neuer Versionen. Aus Sicherheitsgründen wird STACKIT PostgreSQL-Versionen abkündigen, sobald sie ihren EOL-Status erreichen. Darüber hinaus spielt STACKIT aus Sicherheitsgründen Minor-Updates ein.

Das System erstellt automatisch einen täglichen Snapshot der Datenbank. Mit dieser Einstellung können Sie steuern, wann dieser Snapshot erstellt wird. Sie können dies jederzeit ändern.

Mit den ACL-Einträgen steuern Sie, welche Quell-IPs eine Verbindung zu Ihrer Instanz herstellen dürfen. Beachten Sie, dass dies eine zusätzliche Sicherheitsebene ist und nicht die Notwendigkeit einer ordnungsgemäßen Authentifizierung und bewährter Sicherheitspraktiken ersetzt. Es gibt zwei vordefinierte Einträge: 193.148.160.0/19 und 45.129.40.0/21. Diese stellen sicher, dass Sie von STACKIT Cloud-Services aus auf Ihre Instanz zugreifen können. Wenn Sie aus dem öffentlichen Netz auf Ihre Instanz zugreifen möchten, müssen Sie die IPv4-Adresse oder das Subnetz des Clients hinzufügen. Die Einträge folgen der CIDR-Notation. Wenn Sie eine einzelne IP-Adresse (z. B. einen einzelnen Host) zulassen möchten, setzen Sie 32 als Subnetzparameter. Um beispielsweise einen Host mit der Quell-IPv4-Adresse 93.229.84.137 zuzulassen, fügen Sie 93.229.84.137/32 als ACL-Eintrag hinzu. Derzeit können Sie keine IPv6-Adressen hinzufügen.

Um eine Instanz zu erstellen, müssen Sie sich zuerst im STACKIT Portal anmelden.

Bestimmen Sie zunächst, welches Flavor und welche Speicherklasse Sie benötigen. Die verfügbaren Speicherklassen hängen vom gewählten Flavor ab. Um eine Liste der verfügbaren Flavors zu erhalten, führen Sie stackit postgresflex options --flavors aus. Anschließend können Sie mit stackit postgresflex options --storages --flavor-id <flavor-id> eine Liste der verfügbaren Speicherklassen abrufen. Um die verfügbaren Speicherklassen für das Flavor 4.32 abzurufen, führen Sie aus:

Terminal-Fenster
stackit postgresflex options --storages --flavor-id 4.32
FlagOptionenStandardOptional
namemy-PostgreSQL-flex-instance
typeSingle, replica, shardedReplicax
flavor-idSiehe Flavors und Leistungsklassen
storage-classSiehe Flavors und Leistungsklassenpremium-perf2-PostgreSQLx
storage-sizeGanzzahl10x
version7.0, 8.08.0x
aclIPv4 und Netz in CIDR-Notation

Sie können auch einen Blick auf Flavors und Leistungsklassen werfen, um mehr über die verfügbaren Flavors und Leistungsklassen zu erfahren.

Um Ihre Instanz zu erstellen, führen Sie den folgenden Befehl aus:

Terminal-Fenster
stackit postgresflex instance create --name <name> --type <type> --flavor-id <flavor> --storage-class <storage-class> --storage-size <storage size> --version <version --acl <acl>

Bestätigen Sie nach dem Ausführen des Befehls mit y.

Wenn die Instanz erfolgreich erstellt wurde, gibt die CLI die Instanz-ID zurück:

Created instance for project "My-PostgreSQL-Project". Instance ID: 8db6a0f2-2b93-43f3-be54-464ee5a9fbed

Erstellen einer Instanz mit minimalen Flags:

Terminal-Fenster
stackit postgresflex instance create --name my-PostgreSQL-instance --acl 193.148.160.0/19 --flavor-id 4.32

Erstellen einer Instanz mit mehreren Einträgen in der ACL-Tabelle:

Terminal-Fenster
stackit postgresflex instance create --name my-PostgreSQL-instance --acl 193.148.160.0/19,45.129.40.0/21,93.229.84.137/32 --flavor-id 4.32

Um eine Instanz anzuzeigen, führen Sie den Befehl mit den folgenden Parametern aus:

ArgumentBeschreibung
INSTANCE_IDInstanz-ID der Instanz, die Sie abfragen möchten
Terminal-Fenster
stackit postgresflex instance describe <INSTANCE_ID>

Beispielhafte Ausgabe:

ID │ 8db6a0f2-2b93-43f3-be54-464ee5a9fbed
───────────────────────┼──────────────────────────────────────
NAME │ my-PostgreSQL-instance
───────────────────────┼──────────────────────────────────────
STATUS │ READY
───────────────────────┼──────────────────────────────────────
STORAGE SIZE (GB) │ 10
───────────────────────┼──────────────────────────────────────
VERSION │ 8.0
───────────────────────┼──────────────────────────────────────
ACL │ 93.229.84.137/32,93.229.85.0/24
───────────────────────┼──────────────────────────────────────
FLAVOR DESCRIPTION │ Medium, Memory optimized
───────────────────────┼──────────────────────────────────────
TYPE │ Replica
───────────────────────┼──────────────────────────────────────
REPLICAS │ 3
───────────────────────┼──────────────────────────────────────
CPU │ 4
───────────────────────┼──────────────────────────────────────
RAM (GB) │ 32
───────────────────────┼──────────────────────────────────────
BACKUP SCHEDULE (UTC) │ 0 0/6 * * *

Sie können die folgenden Eigenschaften einer Instanz bearbeiten: acl, backup-schedule, cpu, flavor-id, name, ram, storage-class, storage-size, type und version. Eine Referenz zu diesen Flags finden Sie unter Instanz erstellen.

Um ein tieferes Verständnis zum Backup-Zeitplan zu erhalten, lesen Sie Sichern und Klonen von PostgreSQL Flex

ArgumentBeschreibung
INSTANCE_IDInstanz-ID der Instanz, die Sie abfragen möchten
FlagsDatentypEinheit
aclArray von Strings
backup-scheduleString
CPUGanzzahlvirtueller Kern
flavor-idString-
nameString-
ramGanzzahlGigabyte
storage-classString-
storage-sizeGanzzahlGigabyte
typeString-
versionString-

Um die Instanz zu bearbeiten, führen Sie den folgenden Befehl aus:

Terminal-Fenster
stackit postgresflex instance update <INSTANCE_ID> --<Flag Name> <Flag Value>
Terminal-Fenster
stackit postgresflex instance update 8db6a0f2-2b93-43f3-be54-464ee5a9fbed --flavor-id 2.16

Sie können eine Instanz löschen, wenn sie sich im READY-Status befindet. Nach dem Ausführen dieses Befehls kann der Vorgang nicht rückgängig gemacht werden. Um eine Instanz zu löschen, führen Sie aus:

ArgumentBeschreibung
INSTANCE_IDInstanz-ID der Instanz, die Sie abfragen möchten
Terminal-Fenster
stackit postgresflex instance delete <INSTANCE_ID>

Sie erhalten die folgende Ausgabe:

Deleted instance "my-PostgreSQL-instance"