CLı 'dan Azure Arc özellikli bir PostgreSQL hiper ölçek sunucu grubu oluşturma
Bu belgede, Azure Arc üzerinde bir PostgreSQL hiper ölçek sunucu grubu oluşturma ve buna bağlanma adımları açıklanır.
Önkoşullar
Bu makaledeki görevlere devam edebilmeniz için, şunları yapmanız gerekir:
-
araçlar Azure Data Studio ve Azure clı içerir.
Azure Data Studio için, Azure Arc ve postgresql için uzantıları yükleme (veri hizmetlerine bağlı olarak)
Azure CLı için uzantıyı yüklemelisiniz
arcdata.
Not
Önizleme özelliği olarak, bu makalede sunulan teknoloji Microsoft Azure önizlemeleri Için ek kullanım koşulları'na tabidir.
Sürüm notlarındaen son güncelleştirmeler mevcuttur.
Geçerli güncelleştirme için doğrudan bağlantı modundaki Arc veri denetleyicisi dağıtımı yalnızca Azure portal desteklenir.
Başlarken
Aşağıdaki konularda zaten bilgi sahibiyseniz bu paragrafı atlayabilirsiniz. Oluşturmaya devam etmeden önce, okumak isteyebileceğiniz önemli konular vardır:
- Azure Arc etkin veri Hizmetleri 'ne genel bakış
- Bağlantı modları ve gereksinimler
- yapılandırma ve kubernetes depolama kavramlarını Depolama
- Kubernetes kaynak modeli
Tam bir ortamı sağlamadan şeyleri denemeyi tercih ediyorsanız Azure Kubernetes Service (AKS), AWS elastik Kubernetes Service (EKS), Google Cloud Kubernetes Engine (GKE) veya bir Azure VM 'de Azure Arc atlamalı ile hızlı bir şekilde çalışmaya başlayabilirsiniz.
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. Varsayılan dışında bir projede PostgreSQL hiper ölçek sunucu grubunu Red Hat OpenShift 'e dağıtmak için, güvenlik kısıtlamalarını güncelleştirmek üzere kümenizde aşağıdaki komutları yürütmeniz gerekir. Bu komut, PostgreSQL hiper ölçek sunucu grubunuzu ç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 denetleyicisi 'ni dağıtırken eklediğiniz bir.
oc adm policy add-scc-to-user arc-data-scc -z <server-group-name> -n <namespace name>
Sunucu-grup adı, bir sonraki adımda oluşturacağınız sunucu grubunun adıdır.
OpenShift 'teki SCCs hakkında daha fazla ayrıntı için OpenShift belgelerinebakın. Sonraki adıma geçin.
Azure Arc özellikli bir PostgreSQL hiper ölçek sunucu grubu oluşturma
Arc veri denetleyicinizde Azure Arc özellikli bir PostgreSQL hiper ölçek sunucu grubu oluşturmak için, az postgres arc-server create çeşitli parametreleri geçireceği komutu kullanacaksınız.
Oluşturma zamanında ayarlayabileceğiniz tüm parametrelere ilişkin ayrıntılar için, komutun çıkışını gözden geçirin:
az postgres arc-server create --help
Ana parametreler şunları göz önünde bulundurmalıdır:
dağıtmak istediğiniz sunucu grubunun adı .
--name-nUzunluğunun 11 karakteri aşmaması gereken bir ad veya arkasından bir ad belirtin.dağıtmak istediğiniz PostgreSQL altyapısının sürümü : varsayılan olarak 12. sürümüdür. Sürüm 12 ' yi dağıtmak için bu parametreyi atlayabilirsiniz veya şu parametrelerden birini geçirebilirsiniz:
--engine-version 12ya da-ev 12. Sürüm 11 ' i dağıtmak için--engine-version 11veya belirtin-ev 11.genişletmek için dağıtmak istediğiniz çalışan düğümlerinin sayısı ve daha iyi performansa ulaşın. Buraya geçmeden önce Postgres Hyperscale kavramlarınıokuyun. Dağıtılacak çalışan düğümlerinin sayısını göstermek için parametresini
--workersveya-warkasından bir tamsayı kullanın. Aşağıdaki tabloda, desteklenen değerlerin aralığı ve onlarla hangi Postgres dağıtımının hangi şekilde alınacağı gösterilir. Örneğin, iki çalışan düğümü olan bir sunucu grubu dağıtmak istiyorsanız,--workers 2veya belirtin-w 2. Bu, biri Koordinatör düğümü/örneği ve iki çalışan düğümleri/örnekleri (çalışanların her biri için) için olmak üzere üç pods oluşturur.
| İhtiyacın var | Dağıtacaksınız sunucu grubunun şekli | -w kullanılacak parametre |
Not |
|---|---|---|---|
| Uygulamalarınızın ölçeklenebilirlik ihtiyaçlarını karşılamak için bir grup Postgres biçimi. | Üç veya daha fazla Postgres örneği, biri Koordinatör, n >= 2 olan çalışanlardır. | -w nN>= 2 ile kullanın. |
Hiper ölçek özelliğini sağlayan Citus uzantısı yüklenir. |
| Uygulamanızın en düşük maliyette işlevsel doğrulanmasını yapmanız için bir Postgres Hyperscale temel formu. Performans ve ölçeklenebilirlik doğrulaması için geçerli değildir. Bunun için yukarıda açıklanan dağıtım türlerini kullanmanız gerekir. | Hem Koordinatör hem de çalışan olan bir Postgres örneği. | -w 0Citus uzantısını kullanın ve yükleyin. Komut satırından dağıtım yapıyorsanız şu parametreleri kullanın: -w 0 --Extensions Citus. |
Hiper ölçek özelliğini sağlayan Citus uzantısı yüklenir. |
| Bir Postgres örneği, ihtiyacınız olduğunda ölçeklendirmeye hazır olan basit bir örneğidir. | Tek bir Postgres örneği. Henüz Koordinatör ve çalışan için anlam açısından farkında değildir. Dağıtımdan sonra ölçeği ölçeklendirmek için yapılandırmayı düzenleyin, çalışan düğümlerinin sayısını artırın ve verileri dağıtın. | Öğesini kullanın -w 0 veya belirtmeyin -w . |
Hiper ölçek özelliğini sağlayan Citus uzantısı dağıtımınızda mevcuttur, ancak henüz yüklenmemiştir. |
Çalışmalar kullanılırken -w 1 , bunu kullanmanızı önermiyoruz. Bu dağıtım size size çok değer sağlamacaktır. Bununla birlikte, iki Postgres: bir düzenleyici ve bir Worker örneği alacaksınız. Bu kurulumla, tek bir çalışanı dağıtmasından bu yana aslında verileri ölçeklendirmeyin. Bu nedenle, daha yüksek performans ve ölçeklenebilirlik düzeyi görmezsiniz. Bu dağıtımın desteğini gelecekteki bir sürümde kaldıracağız.
Sunucu grubunuzun kullanmasını istediğiniz Depolama sınıfları . Bu ayar dağıttıktan sonra değiştirilenemez, depolama sınıfını bir sunucu grubunu dağıtırken doğrudan ayarlamanız önemlidir. 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ılacaktır.
- Verilerin depolama sınıfını ayarlamak için, parametresini
--storage-class-dataveya-scdardından depolama sınıfının adını belirtin. - Günlükler için depolama sınıfını ayarlamak üzere, parametresini
--storage-class-logsveya-sclardından depolama sınıfının adını belirtin. - Yedekleme/geri yükleme işlevlerini, tasarımları ve deneyimleri sonuçlarımız için geçici olarak kaldırdığımız için, yedeklemeler için depolama sınıflarını ayarlama desteği geçici olarak kaldırılmıştır.
Önemli
Dağıtımdan sonra depolama sınıfını değiştirmeniz gerekiyorsa, verileri ayıklayın, sunucu grubunuzu silin, yeni bir sunucu grubu oluşturun ve verileri içeri aktarın.
- Verilerin depolama sınıfını ayarlamak için, parametresini
Oluştur komutunu çalıştırdığınızda, varsayılan yönetici kullanıcının parolasını girmeniz istenir postgres . Bu önizlemede bu kullanıcının adı değiştirilemez. AZDATA_PASSWORDCreate komutunu çalıştırmadan önce oturum ortam değişkenini ayarlayarak etkileşimli istemi atlayabilirsiniz.
Örnekler
Veri denetleyicisi ile aynı depolama sınıflarını kullanan iki çalışan düğümü ile, Postgres sürüm 12 adlı postgres01 adlı bir sunucu grubunu dağıtmak için aşağıdaki komutu çalıştırın:
az postgres arc-server create -n postgres01 --workers 2 --k8s-namespace <namespace> --use-k8s
Not
- Veri denetleyicisini
AZDATA_USERNAMEveAZDATA_PASSWORDoturum ortam değişkenlerini aynı Terminal oturumunda dağıttıysanız,AZDATA_PASSWORDBu değerler PostgreSQL hiper ölçek sunucu grubunu da dağıtmak için kullanılacaktır. Başka bir parola kullanmayı tercih ediyorsanız, (1) veya değerini güncelleştirin ya da (AZDATA_PASSWORD2)AZDATA_PASSWORDortam değişkenini silin veya (3) bir sunucu grubu oluştururken etkileşimli olarak parola girmesi istenir değerini silin. - PostgreSQL hiper ölçek sunucu grubu oluşturma, kaynakları hemen Azure 'da kaydetmez. Kaynak envanteri veya kullanım verilerini Azure 'a yükleme işleminin bir parçası olarak, kaynaklar azure 'da oluşturulur ve Azure Portal kaynaklarınızı görebileceksiniz.
Arc veri denetleyicinizde dağıtılan PostgreSQL hiper ölçek sunucu gruplarını listeleyin
Arc veri denetleyicinizde dağıtılan PostgreSQL hiper ölçek sunucu gruplarını listelemek için aşağıdaki komutu çalıştırın:
az postgres arc-server list --k8s-namespace <namespace> --use-k8s
{
"name": "postgres01",
"replicas": 1,
"state": "Ready",
"workers": 2
}
Azure Arc özellikli PostgreSQL hiper ölçek sunucu gruplarına bağlanmak için uç noktaları alın
Bir PostgreSQL sunucu grubunun uç noktalarını görüntülemek için aşağıdaki komutu çalıştırın:
az postgres arc-server endpoint list -n <server group name> --k8s-namespace <namespace> --use-k8s
Örnek:
{
"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"
}
postgresql örnek uç noktasını, en sevdiğiniz araçtan postgresql hiper ölçek sunucu grubuna bağlanmak için kullanabilirsiniz: Azure Data Studio, pgclı psql, pgadmin, vb. Bunu yaptığınızda, dağıtılmış tablolar oluşturduysanız, sorguyu uygun çalışan düğümlerine/örneklerine yönlendirmenizi sağlayan düzenleyici düğümüne/örneğine bağlanırsınız. Daha fazla ayrıntı için, Azure Arc özellikli PostgreSQL hiper ölçek kavramlarınıokuyun.
Şu anda, Azure Data Studio Insiders derlemesinikullanın.
Azure sanal makine dağıtımları hakkında özel bilgi
Bir 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ı kurmak için genel IP adresini bağlantı noktasıyla birleştirebilirsiniz.
Ayrıca, PostgreSQL hiper ölçek sunucu grubunun bağlantı noktasını ağ güvenlik ağ geçidi (NSG) üzerinden kullanıma sunabilirsiniz. (NSG) üzerinden trafiğe izin vermek için bir kural ayarlayın. Bir kural ayarlamak için NSG 'nizin adını bilmeniz gerekir. Aşağıdaki komutu kullanarak NSG 'yi 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. Burada ö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 vermek için bir kural ayarlamamız önerilmez. -source-address-prefixesISTEMCI IP adresine özgü bir değer belirterek ya da takımınızın veya kuruluşun IP adreslerini içeren BIR IP adresi aralığı belirterek, şeyleri daha iyi bir şekilde kilitleyebilir.
--destination-port-rangesAşağıdaki parametrenin değerini yukarıdaki komuttan aldığınız bağlantı noktası numarasıyla değiştirin az postgres arc-server list .
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 açın ve yukarıdaki dış uç nokta ıp adresini ve bağlantı noktası numarasını ve örneği oluşturduğunuz sırada belirttiğiniz parolayı kullanarak örneğinizle bağlantı yapın. Bağlantı türü açılan listesinde PostgreSQL yoksa, Uzantılar sekmesinde PostgreSQL ' ı arayarak PostgreSQL uzantısını yükleyebilirsiniz.
Not
Bağlantı masasındaki [Gelişmiş] düğmesine tıklayarak bağlantı noktası numarasını girmeniz gerekir.
Azure VM kullanıyorsanız, şu 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 hiper ölçek sunucu grubunuza erişmek için, yukarıda aldığınız PostgreSQL hiper ölçek sunucu grubunun dış uç noktasını geçirin:
Artık psql 'e bağlanabilirsiniz:
psql postgresql://postgres:<EnterYourPassword>@10.0.0.4:30655
Sonraki adımlar
Azure Arc etkin postgresql hiper ölçeklendirmenize Bağlan: bağlantı noktalarını al ve bağlantı dizelerini oku
PostgreSQL için Azure veritabanı 'nın, verileri birden çok PostgreSQL hiper ölçek düğümüne dağıtmak ve daha iyi performansaldan yararlanmak için nasıl yapılır kılavuzlarını okuyun:
- Düğümler ve tablolar
- Uygulama türünü belirleme
- Dağıtım sütunu seçme
- Tablo birlikte bulundurma
- Tabloları dağıtma ve değiştirme
- Çok kiracılı bir veritabanı tasarlama*
- Gerçek zamanlı analiz panosu tasarlama*
* Yukarıdaki belgelerde, Azure Portal oturum açma bölümünü atlayın, & PostgreSQL Için Azure veritabanı oluşturun-hiper ölçek (Citus). Azure Arc dağıtımınızda kalan adımları uygulayın. Bu bölümler, Azure bulutunda PaaS hizmeti olarak sunulan PostgreSQL için Azure veritabanı 'na (Citus) özgüdür, ancak belgelerin diğer kısımları Azure Arc özellikli PostgreSQL hiper ölçeklendirmenize doğrudan uygulanabilir.
PostgreSQL hiper ölçek sunucu grubu için Azure Arc özellikli ölçeği genişletme