Aracılığıyla paylaş


PostgreSQL için Azure Veritabanı esnek sunucu örneği oluşturma ve Azure CLI kullanarak sanal ağ kuralı yapılandırma

Bu örnek CLI betiği, PostgreSQL için Azure Veritabanı esnek bir sunucu örneği oluşturur ve bir sanal ağ kuralı yapılandırılır.

Azure hesabınız yoksa, başlamadan önce ücretsiz hesap oluşturun.

Önkoşullar

Örnek senaryo

Azure Cloud Shell'i başlatma

Azure Cloud Shell, bu makaledeki adımları çalıştırmak için kullanabileceğiniz ücretsiz bir etkileşimli shell'dir. Sık kullanılan Azure araçları önceden yüklenmiş ve hesabınızla kullanılacak şekilde yapılandırılmıştır.

Cloud Shell'i açmak için, bir kod bloğunun sağ üst köşesindeki Deneyin seçeneğini seçin. Cloud Shell'i ayrı bir tarayıcı sekmesinde başlatmak için https://shell.azure.com adresine gidebilirsiniz.

Cloud Shell açıldığında ortamınız için Bash'in seçili olduğunu doğrulayın. Gelecek oturumlar, Azure CLI'yi bir Bash ortamında kullanacaktır. Kod bloklarını kopyalamak için Kopyala seçeneğine tıklayın, Cloud Shell'e yapıştırın ve çalıştırmak için Enter tuşuna basın.

Azure'a Giriş Yap

Cloud Shell'de oturum açılan ilk hesapta otomatik olarak kimlik doğrulaması yapılır. Farklı bir abonelik kullanarak oturum açmak için aşağıdaki betiği kullanın ve subscriptionId kısmını Azure abonelik kimliğinizle değiştirin.

Azure hesabınız yoksa, başlamadan önce ücretsiz hesap oluşturun.

subscription="subscriptionId" # Set Azure subscription ID here

az account set -s $subscription # ...or use 'az login'

Daha fazla bilgi için etkin abonelik ayarlama veya etkileşimli oturum açma konularına bakın.

Script'i çalıştırın

# Create a PostgreSQL server and configure a vNet rule

# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-postgresql-rg-$randomIdentifier"
tag="create-postgresql-server"
server="msdocs-postgresql-server-$randomIdentifier"
sku="GP_Gen5_2"
vNet="vNet-$randomIdentifier"
vNetAddressPrefix="10.0.0.0/16"
subnet="subnet-$randomIdentifier"
subnetAddressPrefix="10.0.1.0/24"
rule="rule-$randomIdentifier"
login="azureuser"
password="Pa$$w0rD-$randomIdentifier"

echo "Using resource group $resourceGroup with login: $login, password: $password..."

# Create a resource group
echo "Creating $resourceGroup in $location..."
az group create --name $resourceGroup --location "$location" --tags $tag

# Create a PostgreSQL server in the resource group
# Name of a server maps to DNS name and is thus required to be globally unique in Azure.
echo "Creating $server in $location..."
az postgres server create --name $server --resource-group $resourceGroup --location "$location" --admin-user $login --admin-password $password --sku-name $sku

# Get available service endpoints for Azure region output is JSON
echo "List of available service endpoints for $location"
az network vnet list-endpoint-services --location "$location"

# Add Azure SQL service endpoint to a subnet while creating the virtual network
echo "Adding service endpoint to $subnet in $vNet"
az network vnet create --resource-group $resourceGroup --name $vNet --address-prefixes $vNetAddressPrefix --location "$location"

# Creates the service endpoint
echo "Creating a service endpoint to $subnet in $vNet"
az network vnet subnet create --resource-group $resourceGroup --name $subnet --vnet-name $vNet --address-prefix $subnetAddressPrefix --service-endpoints Microsoft.SQL

# View service endpoints configured on a subnet
echo "Viewing the service endpoint to $subnet in $vNet"
az network vnet subnet show --resource-group $resourceGroup --name $subnet --vnet-name $vNet

# Create a VNet rule on the server to secure it to the subnet
# Note: resource group (-g) parameter is where the database exists.
# VNet resource group if different should be specified using subnet id (URI) instead of subnet, VNet pair.
echo "Creating a VNet rule on $server to secure it to $subnet in $vNet"
az postgres server vnet-rule create --name $rule --resource-group $resourceGroup --server $server --vnet-name $vNet --subnet $subnet

Kaynakları temizle

Bu kaynaklara sürekli ihtiyaç duymadığınız sürece az group delete komutunu kullanarak kaynak grubunu ve onunla ilişkili tüm kaynakları kaldırmak için aşağıdaki komutu kullanın. Bu kaynaklardan bazılarının oluşturulması ve silinmesi biraz zaman alabilir.

az group delete --name $resourceGroup

Örnek referans

Bu betik, aşağıdaki tabloda ana hatları verilen komutları kullanır:

Command Notlar
az group create komutu bir grup oluşturmak için kullanılır. Tüm kaynakların depolandığı bir kaynak grubu oluşturur.
az postgresql sunucusu oluştur Veritabanlarını barındıran PostgreSQL için Azure Veritabanı esnek bir sunucu örneği oluşturur.
az network virtual network list-endpoint-services Belirli bir bölgede sanal ağ hizmeti tüneli oluşturmayı destekleyen hizmetleri listeler.
az network sanal ağ oluştur Sanal ağ oluşturur.
az network sanal ağ alt ağı oluştur (Bu komut, yeni bir sanal ağ alt ağı oluşturur) Bir alt ağ oluşturur ve mevcut bir NSG ile yol tablosunu ilişkilendirir.
az network virtual network subnet show Alt ağın ayrıntılarını gösterir.
az postgresql server vnet-rule oluştur PostgreSQL için Azure Veritabanı esnek sunucu örneğine erişime izin vermek için bir sanal ağ kuralı oluşturur.
az grubunu sil Bir kaynak grubunu, içindeki tüm yerleşik kaynaklarla birlikte siler.