Membuat dan mengelola titik akhir layanan VNet Azure Database for MySQL menggunakan Azure CLI

BERLAKU UNTUKAzure Database for MySQL - Server Tunggal

Penting

Server tunggal Azure Database for MySQL berada di jalur penghentian. Kami sangat menyarankan Agar Anda meningkatkan ke server fleksibel Azure Database for MySQL. Untuk informasi selengkapnya tentang migrasi ke server fleksibel Azure Database for MySQL, lihat Apa yang terjadi pada Server Tunggal Azure Database for MySQL?

Aturan dan titik akhir layanan Virtual Network (VNet) memperluas ruang alamat pribadi Virtual Network ke server Azure Database for MySQL Anda. Menggunakan perintah Azure CLI yang nyaman, Anda dapat membuat, memperbarui, menghapus, membuat daftar, dan menunjukkan titik akhir dan aturan layanan VNet untuk mengelola server Anda. Untuk ringkasan titik akhir layanan VNet Azure Database for MySQL, termasuk batasan, lihat Titik akhir layanan VNet Server Azure Database for MySQL. Titik akhir layanan VNet tersedia di semua wilayah yang didukung untuk Azure Database for MySQL.

Jika Anda tidak memiliki Langganan Azure, buat Akun gratis Azure sebelum memulai.

Prasyarat

Catatan

Dukungan untuk titik akhir layanan VNet hanya untuk server Tujuan Umum dan Memori yang Dioptimalkan. Dalam kasus serekan VNet, jika lalu lintas mengalir melalui VNet Gateway umum dengan titik akhir layanan dan seharusnya mengalir ke serekan, harap membuat aturan ACL/VNet untuk mengizinkan Azure Virtual Machines di Gateway VNet mengakses server Azure Database for MySQL.

Mengonfigurasi titik akhir layanan Vnet untuk Azure Database for MySQL

Perintah az network vnet digunakan untuk mengonfigurasi Virtual Networks.

Jika Anda memiliki beberapa langganan, pilih langganan yang sesuai dengan sumber daya yang harus ditagih. Akun harus memiliki izin yang diperlukan untuk membuat jaringan virtual dan titik akhir layanan. Titik akhir layanan dapat dikonfigurasi pada jaringan virtual secara independen, oleh pengguna dengan akses tulis ke jaringan virtual.

Untuk mengamankan sumber daya layanan Azure ke VNet, pengguna harus memiliki izin ke "Microsoft.Network/virtualNetworks/subnets/joinViaServiceEndpoint/" atas subnet yang ditambahkan. Izin ini disertakan dalam peran administrator layanan bawaan, secara default dan dapat diubah dengan membuat peran kustom.

Pelajari selengkapnya tentang peran bawaan dan menetapkan izin tertentu untuk peran kustom.

Sumber daya layanan VNet dan Azure dapat berada di langganan yang sama atau berbeda. Jika sumber daya layanan VNet dan Azure berada dalam langganan yang berbeda, sumber daya harus berada pada penyewa Direktori Aktif (AD) yang sama. Pastikan bahwa kedua langganan memiliki penyedia sumber Microsoft.Sql dan Microsoft.DBforMySQL yang terdaftar. Untuk mengetahui informasi selengkapnya, lihat panduan pendaftaran-manajer-sumber daya

Penting

Sangat disarankan untuk membaca artikel ini tentang konfigurasi dan pertimbangan titik akhir layanan sebelum menjalankan skrip sampel di bawah ini, atau mengonfigurasi titik akhir layanan. Titik akhir layanan Virtual Network:Titik akhir layanan Microsoft Azure Virtual Network adalah subnet yang nilai propertinya menyertakan satu atau beberapa nama jenis layanan Azure formal. Titik akhir layanan VNet menggunakan nama jenis layanan Microsoft.Sql, yang mengacu pada layanan Azure bernama SQL Database. Tag layanan ini juga berlaku untuk layanan Azure SQL Database, Azure Database for PostgreSQL dan MySQL. Hal ini penting untuk diketahui bahwa ketika menerapkan tag layanan Microsoft.Sql ke titik akhir layanan VNet, ini mengonfigurasi lalu lintas titik akhir layanan untuk semua layanan Azure Database, termasuk Azure SQL Database, Azure Database for PostgreSQL, dan server Azure Database for MySQL pada subnet.

Sampel skrip

Meluncurkan Azure Cloud Shell

Azure Cloud Shell adalah shell interaktif gratis yang dapat Anda gunakan untuk menjalankan langkah-langkah dalam artikel ini. Shell ini memiliki alat Azure umum yang telah dipasang sebelumnya dan dikonfigurasi untuk digunakan dengan akun Anda.

Untuk membuka Cloud Shell, cukup pilih Cobalah dari sudut kanan atas blok kode. Anda juga dapat meluncurkan Cloud Shell di tab browser terpisah dengan membuka https://shell.azure.com.

Saat Cloud Shell terbuka, verifikasi bahwa Bash dipilih untuk lingkungan Anda. Sesi berikutnya akan menggunakan Azure CLI dalam lingkungan Bash, Pilih Salin untuk menyalin blok kode, tempelkan ke Cloud Shell, lalu tekan Enter untuk menjalankannya.

Masuk ke Azure

Cloud Shell diautentikasi secara otomatis dengan akun awal yang digunakan untuk masuk. Gunakan skrip berikut untuk masuk menggunakan langganan yang berbeda, menggantikan <Subscription ID> dengan ID Langganan Azure Anda. Jika Anda tidak memiliki Langganan Azure, buat Akun gratis Azure sebelum memulai.

subscription="<subscriptionId>" # add subscription here

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

Untuk informasi selengkapnya, lihat mengatur langganan aktif atau masuk secara interaktif

Jalankan skrip

# Create and manage Azure Database for MySQL VNet service endpoints

# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-mysql-rg-$randomIdentifier"
tag="create-mysql-server"
server="msdocs-mysql-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 MySQL 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 mysql 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 in JSON
echo "List of available service endpoints for $location"
az network vnet list-endpoint-services --location "$location"

# Create the virtual network
echo "Creating $vNet"
az network vnet create --resource-group $resourceGroup --name $vNet --address-prefixes $vNetAddressPrefix --location "$location"

# Creates the subnet
echo "Creating $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 mysql server vnet-rule create --name $rule --resource-group $resourceGroup --server $server --vnet-name $vNet --subnet $subnet

Membersihkan sumber daya

Gunakan perintah berikut untuk menghapus grup sumber daya dan semua sumber daya yang terkait dengannya menggunakan perintah az group delete - kecuali Anda masih memiliki kebutuhan untuk sumber daya ini. Beberapa sumber daya ini mungkin membutuhkan beberapa waktu untuk dibuat dan dihapus.

az group delete --name $resourceGroup