Anzeigen der Konfiguration eines Azure Arc-fähigen PostgreSQL-Servers
In diesem Artikel wird erläutert, wie Sie die Konfiguration Ihres Servers anzeigen. Dies geschieht durch die Beantwortung einiger Fragen, die Sie sich möglicherweise bereits selbst gestellt haben. Manchmal gibt es mehrere gültige Antworten. In diesem Artikel werden die gängigsten oder nützlichsten Artikel erläutert. Diese Fragen werden nach Themen gruppiert:
- Aus Sicht von Kubernetes
- Aus Sicht eines Datendiensts mit Azure Arc-Unterstützung
Hinweis
Als Previewfunktion unterliegt die in diesem Artikel vorgestellte Technologie den zusätzlichen Nutzungsbedingungen für Microsoft Azure-Vorschauen.
Die neuesten Updates sind in den Versionshinweisenverfügbar.
Aus Sicht von Kubernetes
Welche Postgres-Server werden bereitgestellt und wie viele Pods verwenden sie?
Listen Sie die Kubernetes-Ressourcen vom Typ „Postgres“ auf. Führen Sie den folgenden Befehl aus:
kubectl get postgresqls -n <namespace>
In der Ausgabe dieses Befehls wird die Liste der erstellten Servergruppen angezeigt. Für jede Servergruppe wird die Anzahl der Pods angegeben. Beispiel:
NAME STATE READY-PODS PRIMARY-ENDPOINT AGE
postgres01 Ready 1/1 20.101.12.221:5432 12d
Dieses Beispiel zeigt, dass ein Server erstellt wird. Er wird auf einem Pod ausgeführt.
Welche Pods werden von PostgreSQL-Servern mit Azure Arc-Unterstützung verwendet?
Führen Sie Folgendes aus:
kubectl get pods -n <namespace>
Der Befehl gibt die Liste der Pods zurück. Die Pods, die von Ihren Servern verwendet werden, werden basierend auf den Namen angezeigt, die Sie diesen Servern gegeben haben. Beispiel:
NAME READY STATUS RESTARTS AGE
bootstrapper-4jrtl 1/1 Running 0 12d
control-kz8gh 2/2 Running 0 12d
controldb-0 2/2 Running 0 12d
logsdb-0 3/3 Running 0 12d
logsui-qjkgz 3/3 Running 0 12d
metricsdb-0 2/2 Running 0 12d
metricsdc-4jslw 2/2 Running 0 12d
metricsdc-4tl2g 2/2 Running 0 12d
metricsdc-fkxv2 2/2 Running 0 12d
metricsdc-hs4h5 2/2 Running 0 12d
metricsdc-tvz22 2/2 Running 0 12d
metricsui-7pcch 2/2 Running 0 12d
postgres01-0 3/3 Running 0 2d19h
Wie lautet der Status der Pods?
Führen Sie kubectl get pods -n <namespace>
aus, und sehen Sie sich die Spalte STATUS
an.
Welche persistenten Volumeansprüche (Persistent Volume Claims, PVCs) werden verwendet?
Um zu verstehen, welche PVCs allgemein und welche PVCs für Daten und Protokolle verwendet werden, führen Sie Folgendes aus:
kubectl get pvc -n <namespace>
Standardmäßig gibt das Präfix des Namens eines PVCs seine Verwendung an:
data-
...: ist ein für Datendateien verwendeter PVClogs-
...: ist ein für Transaktionsprotokolle/WAL-Dateien verwendeter PVC
Beispiel:
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
data-few7hh0k4npx9phsiobdc3hq-postgres01-0 Bound local-pv-3c1a8cc5 1938Gi RWO local-storage 6d6h
data-few7hh0k4npx9phsiobdc3hq-postgres01-1 Bound local-pv-8303ab19 1938Gi RWO local-storage 6d6h
data-few7hh0k4npx9phsiobdc3hq-postgres01-2 Bound local-pv-55572fe6 1938Gi RWO local-storage 6d6h
...
logs-few7hh0k4npx9phsiobdc3hq-postgres01-0 Bound local-pv-5e852b76 1938Gi RWO local-storage 6d6h
logs-few7hh0k4npx9phsiobdc3hq-postgres01-1 Bound local-pv-55d309a7 1938Gi RWO local-storage 6d6h
logs-few7hh0k4npx9phsiobdc3hq-postgres01-2 Bound local-pv-5ccd02e6 1938Gi RWO local-storage 6d6h
...
Wie viel Arbeitsspeicher und wie viele virtuelle Kerne werden von einem Server verwendet?
Verwenden Sie kubectl, um Postgres-Ressourcen zu beschreiben. Dazu benötigen Sie deren Art (Name der Kubernetes-Ressource (CRD) für Postgres in Azure Arc) sowie den Namen der Servergruppe.
Das allgemeine Format des Befehls lautet:
kubectl describe <CRD name>/<server name> -n <namespace>
Beispiel:
kubectl describe postgresql/postgres01 -n arc
Mit diesem Befehl wird die Konfiguration der Servergruppe angezeigt:
Name: postgres01
Namespace: arc
Labels: <none>
Annotations: <none>
API Version: arcdata.microsoft.com/v1beta2
Kind: PostgreSql
Metadata:
Creation Timestamp: 2021-10-13T01:09:25Z
Generation: 29
Managed Fields:
API Version: arcdata.microsoft.com/v1beta2
Fields Type: FieldsV1
fieldsV1:
f:spec:
.:
f:dev:
f:scheduling:
.:
f:default:
.:
f:resources:
.:
f:limits:
.:
f:cpu:
f:memory:
f:requests:
.:
f:cpu:
f:memory:
f:services:
.:
f:primary:
.:
f:port:
f:type:
f:storage:
.:
f:data:
.:
f:volumes:
f:logs:
.:
f:volumes:
Manager: OpenAPI-Generator
Operation: Update
Time: 2021-10-22T22:37:51Z
API Version: arcdata.microsoft.com/v1beta2
Fields Type: FieldsV1
fieldsV1:
f:IsValid:
f:status:
.:
f:lastUpdateTime:
f:logSearchDashboard:
f:metricsDashboard:
f:observedGeneration:
f:primaryEndpoint:
f:readyPods:
f:state:
Manager: unknown
Operation: Update
Time: 2021-10-22T22:37:53Z
Resource Version: 1541521
UID: 23565e53-2e7a-4cd6-8f80-3a79397e1d7a
Spec:
Dev: false
Scheduling:
Default:
Resources:
Limits:
Cpu: 2
Memory: 1Gi
Requests:
Cpu: 1
Memory: 256Mi
Services:
Primary:
Port: 5432
Type: LoadBalancer
Storage:
Data:
Volumes:
Class Name: managed-premium
Size: 5Gi
Logs:
Volumes:
Class Name: managed-premium
Size: 5Gi
Status:
Last Update Time: 2021-10-22T22:37:53.000000Z
Log Search Dashboard: https://12.235.78.99:5601/app/kibana#/discover?_a=(query:(language:kuery,query:'custom_resource_name:postgres01'))
Metrics Dashboard: https://12.346.578.99:3000/d/postgres-metrics?var-Namespace=arc&var-Name=postgres01
Observed Generation: 29
Primary Endpoint: 20.101.12.221:5432
Ready Pods: 1/1
State: Ready
Events: <none>
Interpretieren der Konfigurationsinformationen
Benennen wir einige bestimmte relevante Punkte in der Beschreibung der oben gezeigten server
. Welche Informationen erhalten wir zu diesem Server?
Sie wurde am 13. Oktober 2021 erstellt:
Metadata: Creation Timestamp: 2021-10-13T01:09:25Z
Ressourcenkonfiguration: In diesem Beispiel sind es garantiert 256 Mi Arbeitsspeicher. Der Server kann nicht mehr als 1 Gi an Arbeitsspeicher verwenden. Ihm ist ein virtueller Kern garantiert und er kann nicht mehr als zwei virtuelle Kerne nutzen.
Scheduling: Default: Resources: Limits: Cpu: 2 Memory: 1Gi Requests: Cpu: 1 Memory: 256Mi
Wie ist der Status des Servers? Ist sie für meine Anwendungen verfügbar?
Ja, die Pods sind bereit
Ready Pods: 1/1
Aus Sicht eines Datendiensts mit Azure Arc-Unterstützung
Verwenden Sie Az-CLI-Befehle.
Welche Postgres-Server wurden bereitgestellt?
Führen Sie den folgenden Befehl aus.
az postgres server-arc list --k8s-namespace <namespace> --use-k8s
Er listet die bereitgestellten Server auf.
[
{
"name": "postgres01",
"state": "Ready"
}
]
Wie viel Arbeitsspeicher und wie viele virtuelle Kerne werden verwendet?
Führen Sie einen der folgenden Befehlen aus.
az postgres server-arc show -n <server name> --k8s-namespace <namespace> --use-k8s
Beispiel:
az postgres server-arc show -n postgres01 --k8s-namespace arc --use-k8s
Gibt die Informationen in einem Format und als Inhalt zurück, die der von kubectl zurückgegebenen Ausgabe ähnlich sind. Verwenden Sie das Tool Ihrer Wahl, um mit dem System zu interagieren.
Zugehöriger Inhalt
- Informationen zum zentralen Hoch- oder Herunterskalieren einer Servergruppe (Erhöhen oder Verringern des Arbeitsspeichers und/oder der virtuellen Kerne)
- Informationen zur Speicherkonfiguration
- Informationen zum Überwachen einer Datenbankinstanz
- Konfigurieren der Sicherheit für Ihren PostgreSQL-Server mit Azure Arc-Unterstützung