CLI'dan Azure Arc özellikli bir PostgreSQL sunucusu oluşturma

Bu belgede, Azure Arc'ta PostgreSQL sunucusu oluşturma ve sunucuya bağlanma adımları açıklanmaktadır.

Önkoşullar

Bu makaledeki görevlere devam etmeden önce gerekli araçlara sahip olmanız gerekir. Tüm dağıtımlar için aşağıdaki araçlar gerekir:

  • Azure Data Studio

  • Azure Data Studio için Azure Arc uzantısı

  • Azure CLI (az)

  • arcdata Azure CLI uzantısı

  • kubectl

    Ortamınıza bağlı olarak ek istemci araçları. Daha kapsamlı bir liste için bkz . İstemci araçları.

Gerekli araçlara ek olarak, görevleri tamamlamak için bir Azure Arc veri denetleyicisine ihtiyacınız vardır.

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.

Başlarken

Aşağıdaki konuları zaten biliyorsanız, bu paragrafı atlayabilirsiniz. Oluşturma işlemine devam etmeden önce okumak isteyebileceğiniz önemli konular vardır:

Tam bir ortam sağlamadan iş yapmayı tercih ediyorsanız Azure Kubernetes Service (AKS), AWS Elastic Kubernetes Service (EKS), Google Cloud Kubernetes Engine (GKE) veya bir Azure VM'de Azure Arc Jumpstart ile hızlı bir şekilde çalışmaya başlayın.

Yalnızca OpenShift kullanıcıları için ön ve geçici adım

Sonraki adıma geçmeden önce bu adımı uygulayın. PostgreSQL sunucusunu varsayılan dışındaki bir projede Red Hat OpenShift'e dağıtmak için, güvenlik kısıtlamalarını güncelleştirmek için kümenizde aşağıdaki komutları yürütmeniz gerekir. Bu komut, PostgreSQL sunucunuzu çalıştıracak hizmet hesaplarına gerekli ayrıcalıkları verir. Güvenlik bağlamı kısıtlaması (SCC) arc-data-scc, Azure Arc veri denetleyicisini dağıttığınızda eklediğiniz kısıtlamadır.

oc adm policy add-scc-to-user arc-data-scc -z <server-name> -n <namespace-name>

Sunucu adı, sonraki adımda oluşturacağınız sunucunun adıdır.

OpenShift'teki SCC'ler hakkında daha fazla bilgi için OpenShift belgelerine bakın. Sonraki adıma geçin.

Azure Arc özellikli postgreSQL sunucusu oluşturma

Arc veri denetleyicinizde Azure Arc özellikli bir PostgreSQL sunucusu oluşturmak için, birkaç parametre geçireceğiniz komutu az postgres server-arc create kullanacaksınız.

Oluşturma zamanında ayarlayabileceğiniz tüm parametreler hakkında ayrıntılı bilgi için komutun çıkışını gözden geçirin:

az postgres server-arc create --help

Dikkate alınması gereken ana parametreler şunlardır:

  • dağıtmak istediğiniz sunucunun adı. --name Uzunluğu 11 karakteri aşmaması gereken bir ad belirtin veya -n bunu takip edin.

  • Sunucunuzun kullanmasını istediğiniz depolama sınıfları . Sunucu dağıttığınızda depolama sınıfını doğru ayarlamanız önemlidir, bu ayar dağıtıldıktan sonra değiştirilemez. Veriler, günlükler ve yedeklemeler için kullanılacak depolama sınıflarını belirtebilirsiniz. Varsayılan olarak, depolama sınıflarını belirtmezseniz, veri denetleyicisinin depolama sınıfları kullanılır.

    • Yedeklemeler için depolama sınıfını ayarlamak için parametresini --storage-class-backups ve ardından depolama sınıfının adını belirtin. Bu parametrenin dışlanması otomatik yedeklemeleri devre dışı bırakır
    • Verilerin depolama sınıfını ayarlamak için parametresini --storage-class-data ve ardından depolama sınıfının adını belirtin.
    • Günlüklerin depolama sınıfını ayarlamak için parametresini --storage-class-logs ve ardından depolama sınıfının adını belirtin.

    Önemli

    Dağıtımdan sonra depolama sınıfını değiştirmeniz gerekiyorsa verileri ayıklayın, sunucunuzu silin, yeni bir sunucu oluşturun ve verileri içeri aktarın.

Create komutunu yürütürken, yönetici kullanıcının kullanıcı adını ve parolasını girmeniz istenir. create komutunu çalıştırmadan önce ve AZDATA_PASSWORD oturum ortamı değişkenlerini ayarlayarak AZDATA_USERNAME etkileşimli istemi atlayabilirsiniz.

Örnekler

Veri denetleyicisiyle aynı depolama sınıflarını kullanan postgres01 adlı bir PostgreSQL sunucusu dağıtmak için aşağıdaki komutu çalıştırın:

az postgres server-arc create -n postgres01 --k8s-namespace <namespace> --use-k8s

Dekont

  • Veri denetleyicisini aynı terminal oturumunda ve AZDATA_PASSWORD oturum ortamı değişkenlerini kullanarak AZDATA_USERNAME dağıttıysanız, için değerleri AZDATA_PASSWORD de PostgreSQL sunucusunu dağıtmak için kullanılır. Başka bir parola kullanmayı tercih ediyorsanız, (1) ve değerlerini AZDATA_USERNAME güncelleştirin veya (2) ve AZDATA_PASSWORD ortam değişkenlerini silin AZDATA_USERNAME veya (3) sunucu oluşturduğunuzda etkileşimli olarak kullanıcı adı ve parola girmeniz istenecek değerlerini AZDATA_PASSWORD silin.
  • PostgreSQL sunucusu oluşturmak, kaynakları Azure'a hemen kaydetmez. Kaynak envanterini veya kullanım verilerini Azure'a yükleme işleminin bir parçası olarak, kaynaklar Azure'da oluşturulur ve kaynaklarınızı Azure portalında görebilirsiniz.

Arc veri denetleyicinizde dağıtılan PostgreSQL sunucularını listeleme

Arc veri denetleyicinizde dağıtılan PostgreSQL sunucularını listelemek için aşağıdaki komutu çalıştırın:

az postgres server-arc list --k8s-namespace <namespace> --use-k8s
  {
    "name": "postgres01",
    "state": "Ready"
  }

Azure Arc özellikli PostgreSQL sunucularınıza bağlanmak için uç noktaları alma

PostgreSQL sunucusunun uç noktalarını görüntülemek için aşağıdaki komutu çalıştırın:

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

Örneğin:

{
  "instances": [
    {
      "endpoints": [
        {
          "description": "PostgreSQL Instance",
          "endpoint": "postgresql://postgres:<replace with password>@123.456.78.912:5432"
        },
        {
          "description": "Log Search Dashboard",
        },
        {
          "description": "Metrics Dashboard",
          "endpoint": "https://98.765.432.11:3000/d/postgres-metrics?var-Namespace=arc&var-Name=postgres01"
        }
      ],
      "engine": "PostgreSql",
      "name": "postgres01"
    }
  ],
  "namespace": "arc"
}

Sık kullandığınız araçtan PostgreSQL sunucusuna bağlanmak için PostgreSQL Örneği uç noktasını kullanabilirsiniz: Azure Data Studio, pgcli psql, pg Yönetici vb.

Şu anda Azure Data Studio'nun insider derlemesini kullanın.

Azure sanal makine dağıtımları hakkında özel not

Azure sanal makinesi kullanırken uç nokta IP adresi genel IP adresini göstermez. Genel IP adresini bulmak için aşağıdaki komutu kullanın:

az network public-ip list -g azurearcvm-rg --query "[].{PublicIP:ipAddress}" -o table

Daha sonra bağlantınızı oluşturmak için genel IP adresini bağlantı noktasıyla birleştirebilirsiniz.

PostgreSQL sunucusunun bağlantı noktasını ağ güvenlik ağ geçidi (NSG) aracılığıyla da kullanıma sunmanız gerekebilir. (NSG) üzerinden trafiğe izin vermek için bir kural ayarlayın. Kural ayarlamak için NSG'nizin adını bilmeniz gerekir. NSG'yi aşağıdaki komutu kullanarak belirlersiniz:

az network nsg list -g azurearcvm-rg --query "[].{NSGName:name}" -o table

NSG'nin adını aldıktan sonra aşağıdaki komutu kullanarak bir güvenlik duvarı kuralı ekleyebilirsiniz. Buradaki örnek değerler 30655 numaralı bağlantı noktası için bir NSG kuralı oluşturur ve herhangi bir kaynak IP adresinden bağlantıya izin verir.

Uyarı

Herhangi bir kaynak IP adresinden bağlantıya izin verecek bir kural ayarlamanızı önermeyiz. İstemci IP adresinize özgü bir -source-address-prefixes değer veya ekibinizin veya kuruluşunuzun IP adreslerini kapsayan bir IP adresi aralığı belirterek işleri daha iyi kilitleyebilirsiniz.

Aşağıdaki parametrenin --destination-port-ranges değerini yukarıdaki komuttan az postgres server-arc list edindiğiniz bağlantı noktası numarasıyla değiştirin.

az network nsg rule create -n db_port --destination-port-ranges 30655 --source-address-prefixes '*' --nsg-name azurearcvmNSG --priority 500 -g azurearcvm-rg --access Allow --description 'Allow port through for db access' --destination-address-prefixes '*' --direction Inbound --protocol Tcp --source-port-ranges '*'

Azure Data Studio ile bağlanma

Azure Data Studio'yu açın ve yukarıdaki dış uç nokta IP adresi ve bağlantı noktası numarası ile örneğinizi oluştururken belirttiğiniz parolayla örneğinize bağlanın. Bağlan ion türü açılan listesinde PostgreSQL yoksa uzantılar sekmesinde PostgreSQL araması yaparak PostgreSQL uzantısını yükleyebilirsiniz.

Dekont

Bağlantı noktası numarasını girmek için bağlantı panelindeki [Gelişmiş] düğmesine tıklamanız gerekir.

Bir Azure VM kullanıyorsanız aşağıdaki komutla erişilebilen genel IP adresine ihtiyacınız olacağını unutmayın:

az network public-ip list -g azurearcvm-rg --query "[].{PublicIP:ipAddress}" -o table

psql ile Bağlan

PostgreSQL sunucunuza erişmek için yukarıdan aldığınız PostgreSQL sunucusunun dış uç noktasını geçirin:

Artık iki psql'den birini bağlayabilirsiniz:

psql postgresql://postgres:<EnterYourPassword>@10.0.0.4:30655