POSTGRESQL IÇIN AZURE VERITABANı için Özel Bağlantı oluşturma ve yönetme - CLI kullanarak tek sunucu
ŞUNLAR IÇIN GEÇERLIDIR: PostgreSQL için Azure Veritabanı - Tek Sunucu
Önemli
PostgreSQL için Azure Veritabanı - Tek Sunucu kullanımdan kaldırma yolundadır. PostgreSQL için Azure Veritabanı - Esnek Sunucu'ya yükseltmenizi kesinlikle öneririz. PostgreSQL için Azure Veritabanı - Esnek Sunucu'ya geçiş hakkında daha fazla bilgi için bkz. PostgreSQL için Azure Veritabanı Tek Sunucuya ne oluyor?.
Özel Uç Nokta, Azure'da özel bağlantı için temel yapı taşıdır. Sanal Makineler (VM) gibi Azure kaynaklarının özel bağlantı kaynaklarıyla özel olarak iletişim kurmasını sağlar. Bu makalede, Azure CLI kullanarak Azure Sanal Ağ ve Azure özel uç noktası olan bir PostgreSQL için Azure Veritabanı Tek sunucusunda VM oluşturmayı öğreneceksiniz.
Not
Özel bağlantı özelliği yalnızca Genel Amaçlı veya Bellek için İyileştirilmiş fiyatlandırma katmanlarındaki PostgreSQL için Azure Veritabanı sunucularda kullanılabilir. Veritabanı sunucusunun bu fiyatlandırma katmanlarından birinde olduğundan emin olun.
Önkoşullar
Bu nasıl yapılır kılavuzunda adım adım ilerleyebilmek için şunları yapmanız gerekir:
Azure Cloud Shell
Azure, tarayıcınız aracılığıyla kullanabileceğiniz etkileşimli bir kabuk ortamı olan Azure Cloud Shell'i barındırıyor. Azure hizmetleriyle çalışmak için Cloud Shell ile Bash veya PowerShell kullanabilirsiniz. Yerel ortamınıza herhangi bir şey yüklemek zorunda kalmadan bu makaledeki kodu çalıştırmak için Cloud Shell önceden yüklenmiş komutlarını kullanabilirsiniz.
Azure Cloud Shell'i başlatmak için:
Seçenek | Örnek/Bağlantı |
---|---|
Kodun veya komut bloğunun sağ üst köşesindeki Deneyin'i seçin. Deneyin seçildiğinde kod veya komut otomatik olarak Cloud Shell'e kopyalanmaz. | |
https://shell.azure.comadresine gidin veya Cloud Shell'i tarayıcınızda açmak için Cloud Shell'i Başlat düğmesini seçin. | |
Azure portalının sağ üst kısmındaki menü çubuğunda Cloud Shell düğmesini seçin. |
Azure Cloud Shell'i kullanmak için:
Cloud Shell'i başlatın.
Kodu veya komutu kopyalamak için kod bloğundaki (veya komut bloğundaki) Kopyala düğmesini seçin.
Windows ve Linux'ta Ctrl+Shift V'yi seçerek veya macOS üzerinde Cmd+Shift++V'yi seçerek kodu veya komutu Cloud Shell oturumuna yapıştırın.
Kodu veya komutu çalıştırmak için Enter'ı seçin.
Bunun yerine Azure CLI'yi yerel olarak yükleyip kullanmaya karar verirseniz, bu hızlı başlangıç için Azure CLI sürüm 2.0.28 veya üzerini kullanmanız gerekir. Yüklü sürümünüzü bulmak için komutunu çalıştırın az --version
. Yükleme veya yükseltme bilgileri için bkz . Azure CLI yükleme.
Kaynak grubu oluşturma
Herhangi bir kaynak oluşturabilmeniz için önce Sanal Ağ barındırmak için bir kaynak grubu oluşturmanız gerekir. az group create ile bir kaynak grubu oluşturun. Bu örnek westeurope konumunda myResourceGroupadlı bir kaynak grubu oluşturur:
az group create --name myResourceGroup --location westeurope
Sanal Ağ Oluşturma
az network vnet create ile bir Sanal Ağ oluşturun. Bu örnek, mySubnet adlı bir alt ağ ile myVirtualNetwork adlı bir varsayılan Sanal Ağ oluşturur:
az network vnet create \
--name myVirtualNetwork \
--resource-group myResourceGroup \
--subnet-name mySubnet
Alt ağ özel uç nokta ilkelerini devre dışı bırakma
Azure, kaynakları sanal ağ içindeki bir alt ağa dağıtır, bu nedenle özel uç nokta ağ ilkelerini devre dışı bırakmak için alt ağı oluşturmanız veya güncelleştirmeniz gerekir. az network vnet subnet update ile mySubnet adlı bir alt ağ yapılandırmasını güncelleştirin:
az network vnet subnet update \
--name mySubnet \
--resource-group myResourceGroup \
--vnet-name myVirtualNetwork \
--disable-private-endpoint-network-policies true
Sanal makineyi oluşturma
az vm create ile bir VM oluşturun. İstendiğinde, VM'nin oturum açma kimlik bilgileri olarak kullanılacak bir parola girin. Bu örnek myVm adlı bir VM oluşturur:
az vm create \
--resource-group myResourceGroup \
--name myVm \
--image Win2019Datacenter
VM'nin genel IP adresini not edin. Sonraki adımda sanal makineye İnternet'ten bağlanmak için bu adresi kullanacaksınız.
PostgreSQL için Azure Veritabanı oluşturma - Tek sunucu
az postgres server create komutuyla bir PostgreSQL için Azure Veritabanı oluşturun. PostgreSQL Sunucunuzun adının Azure genelinde benzersiz olması gerektiğini unutmayın; bu nedenle yer tutucu değerini yukarıda kullandığınız kendi benzersiz değerlerinizle değiştirin:
# Create a server in the resource group
[!INCLUDE [applies-to-postgresql-single-server](../includes/applies-to-postgresql-single-server.md)]
[!INCLUDE [azure-database-for-postgresql-single-server-deprecation](../includes/azure-database-for-postgresql-single-server-deprecation.md)]
az postgres server create \
--name mydemoserver \
--resource-group myresourcegroup \
--location westeurope \
--admin-user mylogin \
--admin-password <server_admin_password> \
--sku-name GP_Gen5_2
Özel Uç Nokta oluşturma
Sanal Ağ PostgreSQL sunucusu için özel bir uç nokta oluşturun:
az network private-endpoint create \
--name myPrivateEndpoint \
--resource-group myResourceGroup \
--vnet-name myVirtualNetwork \
--subnet mySubnet \
--private-connection-resource-id $(az resource show -g myResourcegroup -n mydemoserver --resource-type "Microsoft.DBforPostgreSQL/servers" --query "id" -o tsv) \
--group-id postgresqlServer \
--connection-name myConnection
Özel DNS Bölgesini Yapılandırma
PostgreSQL sunucu etki alanı için bir Özel DNS Bölgesi oluşturun ve Sanal Ağ ile bir ilişkilendirme bağlantısı oluşturun.
az network private-dns zone create --resource-group myResourceGroup \
--name "privatelink.postgres.database.azure.com"
az network private-dns link vnet create --resource-group myResourceGroup \
--zone-name "privatelink.postgres.database.azure.com"\
--name MyDNSLink \
--virtual-network myVirtualNetwork \
--registration-enabled false
#Query for the network interface ID
networkInterfaceId=$(az network private-endpoint show --name myPrivateEndpoint --resource-group myResourceGroup --query 'networkInterfaces[0].id' -o tsv)
az resource show --ids $networkInterfaceId --api-version 2019-04-01 -o json
# Copy the content for privateIPAddress and FQDN matching the Azure database for PostgreSQL name
[!INCLUDE [applies-to-postgresql-single-server](../includes/applies-to-postgresql-single-server.md)]
[!INCLUDE [azure-database-for-postgresql-single-server-deprecation](../includes/azure-database-for-postgresql-single-server-deprecation.md)]
#Create DNS records
az network private-dns record-set a create --name myserver --zone-name privatelink.postgres.database.azure.com --resource-group myResourceGroup
az network private-dns record-set a add-record --record-set-name myserver --zone-name privatelink.postgres.database.azure.com --resource-group myResourceGroup -a <Private IP Address>
Not
Müşterinin DNS ayarındaki FQDN, yapılandırılmış özel IP'ye çözümlenmiyor. Yapılandırılan FQDN için burada gösterildiği gibi bir DNS bölgesi ayarlamanız gerekir.
Not
Bazı durumlarda PostgreSQL için Azure Veritabanı ve sanal ağ alt ağı farklı aboneliklerdedir. Bu durumlarda aşağıdaki yapılandırmalardan emin olmanız gerekir:
İnternet'ten bir sanal makineye bağlanma
İnternet'ten myVm vm'sine aşağıdaki gibi Bağlan:
Portalın arama çubuğuna myVm yazın.
Bağlan düğmesini seçin. Bağlan düğmesini seçtikten sonra sanal makineye Bağlan açılır.
RDP Dosyasını İndir’i seçin. Azure bir Uzak Masaüstü Protokolü (.rdp) dosyası oluşturur ve dosyayı bilgisayarınıza indirir.
İndirilen.rdp dosyasını açın.
İstendiğinde Bağlan’ı seçin.
VM'yi oluştururken belirttiğiniz kullanıcı adını ve parolayı girin.
Not
VM'yi oluştururken girdiğiniz kimlik bilgilerini belirtmek için Diğer seçenekler>Farklı bir hesap kullan'ı seçmeniz gerekebilir.
Tamam'ı seçin.
Oturum açma işlemi sırasında bir sertifika uyarısı alabilirsiniz. Sertifika uyarısı alırsanız Evet veya Devam'ı seçin.
VM masaüstü göründüğünde, yerel masaüstünüze geri dönmek için simge durumuna küçültün.
Vm'den PostgreSQL sunucusuna özel olarak erişme
myVM'nin Uzak Masaüstü'nde PowerShell'i açın.
nslookup mydemopostgresserver.privatelink.postgres.database.azure.com
girin.Şuna benzer bir ileti alırsınız:
Server: UnKnown Address: 168.63.129.16 Non-authoritative answer: Name: mydemopostgresserver.privatelink.postgres.database.azure.com Address: 10.1.3.4
Kullanılabilir herhangi bir istemciyi kullanarak PostgreSQL sunucusu için özel bağlantı bağlantısını test edin. Aşağıdaki örnek, işlemi gerçekleştirmek için Azure Data Studio'yu kullanır.
Yeni bağlantı'da şu bilgileri girin veya seçin:
Ayar Value Sunucu türü PostgreSQL'i seçin. Sunucu adı mydemopostgresserver.privatelink.postgres.database.azure.com seçin User name PostgreSQL sunucusu oluşturma sırasında sağlanan kullanıcı adını username@servername olarak girin. Parola PostgreSQL sunucusu oluşturma sırasında sağlanan parolayı girin. SSL Gerekli'yi seçin. Bağlan'ı seçin.
Sol menüden veritabanlarına göz atın.
(İsteğe bağlı olarak) postgreSQL sunucusundan bilgi oluşturma veya sorgulama.
myVm ile uzak masaüstü bağlantısını kapatın.
Kaynakları temizleme
Artık gerekli olmadığında az group delete komutunu kullanarak kaynak grubunu ve sahip olduğu tüm kaynakları kaldırabilirsiniz:
az group delete --name myResourceGroup --yes
Sonraki adımlar
- Azure özel uç noktası nedir? hakkında daha fazla bilgi edinin