Afficher la configuration d’un serveur PostgreSQL avec Azure Arc
Cet article explique comment afficher la configuration de votre serveur. Pour cela, il anticipe certaines questions que vous pourriez vous poser et y répond. Il peut parfois y avoir plusieurs réponses valides. Cet article présente les réponses les plus courantes ou les plus utiles. Il regroupe ces questions par thème :
- Du point de vue de Kubernetes
- Du point de vue des services de données activés pour Azure Arc
Remarque
En tant que fonctionnalité en préversion, la technologie présentée dans cet article est soumise aux conditions d’utilisation supplémentaires des préversions de Microsoft Azure.
Les dernières mises à jour sont disponibles dans les notes de publication.
Du point de vue de Kubernetes
Quels sont les serveurs Postgres déployés et combien de pods utilisent-ils ?
Listez les ressources Kubernetes de type Postgres. Exécutez la commande suivante :
kubectl get postgresqls -n <namespace>
La sortie de cette commande montre la liste des groupes de serveurs créés. Pour chacun, il indique le nombre de pods. Par exemple :
NAME STATE READY-PODS PRIMARY-ENDPOINT AGE
postgres01 Ready 1/1 20.101.12.221:5432 12d
Cet exemple montre qu’un serveur est créé. Il s’exécute sur un pod.
Combien de pods les serveurs PostgreSQL avec Azure Arc utilisent-ils ?
Run :
kubectl get pods -n <namespace>
La commande retourne la liste des pods. Vous voyez les pods utilisés par vos serveurs grâce aux noms que vous leur avez donnés. Par exemple :
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
Quel est l’état des pods ?
Exécutez kubectl get pods -n <namespace>
et examinez la colonne STATUS
.
Quelles revendications de volume persistant sont utilisées ?
Pour comprendre quelles revendications de volume persistant sont utilisées, et lesquelles sont utilisées spécifiquement pour les données et les journaux, exécutez :
kubectl get pvc -n <namespace>
Par défaut, le préfixe du nom d’une revendication de volume persistant indique son utilisation :
data-
... : est une revendication de volume persistant utilisée pour les fichiers de donnéeslogs-
... : est une revendication de volume persistant utilisée pour les journaux de transactions/les fichiers WAL
Par exemple :
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
...
Quelle quantité de mémoire et de vCores un serveur utilise-t-il ?
Utilisez kubectl pour décrire une ressource Postgres. Pour ce faire, vous avez besoin de son genre (nom de la ressource Kubernetes (CRD) pour Postgres dans Azure Arc) et du nom du groupe de serveurs.
Le format général de cette commande est le suivant :
kubectl describe <CRD name>/<server name> -n <namespace>
Par exemple :
kubectl describe postgresql/postgres01 -n arc
Cette commande montre la configuration du groupe de serveurs :
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>
Interpréter les informations de configuration
Détaillons quelques points d’intérêt spécifiques dans la description du server
présentée ci-dessus. Que nous dit-elle de ce serveur ?
Il a été créé le 13 octobre 2021 :
Metadata: Creation Timestamp: 2021-10-13T01:09:25Z
Configuration des ressources : dans cet exemple, 256 Mi de mémoire sont garantis. Le serveur ne peut pas utiliser plus de 1 Gi de mémoire. Un vCore est garanti et il ne peut pas en utiliser plus de deux.
Scheduling: Default: Resources: Limits: Cpu: 2 Memory: 1Gi Requests: Cpu: 1 Memory: 256Mi
Quel est l’état du serveur ? Est-il disponible pour mes applications ?
Oui, le pod est prêt
Ready Pods: 1/1
Du point de vue des services de données activés pour Azure Arc
Utilisez les commandes Az CLI.
Quels sont les serveurs Postgres déployés ?
Exécutez la commande suivante :
az postgres server-arc list --k8s-namespace <namespace> --use-k8s
Elle répertorie les serveurs déployés.
[
{
"name": "postgres01",
"state": "Ready"
}
]
Quelle est la quantité de mémoire et de vCores utilisée ?
Exécutez une des commandes suivantes.
az postgres server-arc show -n <server name> --k8s-namespace <namespace> --use-k8s
Par exemple :
az postgres server-arc show -n postgres01 --k8s-namespace arc --use-k8s
Retourne les informations dans un format et avec un contenu similaire à celui retourné par kubectl. Utilisez l’outil de votre choix pour interagir avec le système.