Aracılığıyla paylaş


Azure Arc özellikli postgreSQL sunucusunun yapılandırmasını gösterme

Bu makalede sunucunuzun yapılandırmasını görüntüleme açıklanmaktadır. Bunu kendinize sorabileceğiniz bazı soruları tahmin ederek yapar ve yanıtlar. Bazen, birkaç geçerli yanıt olabilir. Bu makale en yaygın veya yararlı olanları gösterir. Bu soruları temaya göre gruplandırma:

  • Kubernetes açısından
  • Azure Arc özellikli veri hizmetleri açısından

Dekont

Önizleme özelliği olarak, bu makalede sunulan teknoloji Microsoft Azure Önizlemeleri için Ek Kullanım Koşulları'na tabidir.

En son güncelleştirmeler sürüm notlarında bulunur.

Kubernetes açısından

Dağıtılan Postgres sunucuları nelerdir ve kaç pod kullanıyorlar?

Postgres türünde Kubernetes kaynaklarını listeleyin. Komutu çalıştırın.

kubectl get postgresqls -n <namespace>

Bu komutun çıktısı, oluşturulan sunucu gruplarının listesini gösterir. Her biri için pod sayısını gösterir. Örneğin:

NAME         STATE   READY-PODS   PRIMARY-ENDPOINT     AGE
postgres01   Ready   1/1          20.101.12.221:5432   12d

Bu örnekte bir sunucunun oluşturulduğu gösterilmektedir. Tek bir pod üzerinde çalışır.

Azure Arc özellikli PostgreSQL sunucuları hangi podları kullanır?

Çalıştır:

kubectl get pods -n <namespace>

komutu pod listesini döndürür. Bu sunuculara vermiş olduğunuz adlara göre sunucularınız tarafından kullanılan podları görürsünüz. Örneğin:

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

Podların durumu nedir?

Komutunu çalıştırın kubectl get pods -n <namespace> ve sütuna bakın STATUS

Hangi kalıcı birim talepleri (PVC) kullanılıyor?

Hangi PVC'lerin kullanıldığını, hangilerinin veri ve günlükler için kullanıldığını anlamak için şunu çalıştırın:

kubectl get pvc -n <namespace>

Varsayılan olarak, pvc adının ön eki kullanımını gösterir:

  • data-...: veri dosyaları için kullanılan PVC
  • logs-...: işlem günlükleri/WAL dosyaları için kullanılan bir PVC'dir

Örneğin:

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
...

Sunucu tarafından ne kadar bellek ve sanal çekirdek kullanılıyor?

Postgres kaynaklarını açıklamak için kubectl kullanın. Bunu yapmak için türünün (Azure Arc'ta Postgres için Kubernetes kaynağının (CRD) adı) ve sunucu grubunun adı gerekir.

Bu komutun genel biçimi:

kubectl describe <CRD name>/<server name> -n <namespace>

Örneğin:

kubectl describe postgresql/postgres01 -n arc

Bu komut, sunucu grubunun yapılandırmasını gösterir:

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>

Yapılandırma bilgilerini yorumlama

Yukarıda gösterilen açıklamanın server belirli ilgi çekici noktalarına göz atalım. Bu sunucu hakkında bize ne söylüyor?

  • 13 Ekim 2021 tarihinde oluşturuldu:

       Metadata:
       Creation Timestamp:  2021-10-13T01:09:25Z
    
  • Kaynak yapılandırması: Bu örnekte garantili 256Mi bellek. Sunucu daha fazla 1Gi bellek kullanamaz. Bir sanal çekirdek garanti edilir ve ikiden fazla sanal çekirdek tüketemez.

          Scheduling:
         Default:
           Resources:
              Limits:
                Cpu:     2
                Memory:  1Gi
              Requests:
                Cpu:     1
                Memory:  256Mi
    
  • Sunucunun durumu nedir? Uygulamalarım için kullanılabilir mi?

    Evet, podlar hazır

    Ready Pods:                1/1
    

Azure Arc özellikli veri hizmetleri açısından

Az CLI komutlarını kullanın.

Dağıtılan Postgres sunucuları nelerdir?

Aşağıdaki komutu çalıştırın.

az postgres server-arc list --k8s-namespace <namespace> --use-k8s

Dağıtılan sunucuları listeler.

[
  {
    "name": "postgres01",
    "state": "Ready"
  }
]

Ne kadar bellek ve sanal çekirdek kullanılıyor?

Aşağıdaki komutlardan birini çalıştırın

az postgres server-arc show -n <server name>  --k8s-namespace <namespace> --use-k8s

Örneğin:

az postgres server-arc show -n postgres01 --k8s-namespace arc --use-k8s

Bilgileri kubectl tarafından döndürülene benzer bir biçimde ve içerikte döndürür. Sistemle etkileşime geçmek için seçtiğiniz aracı kullanın.