Hubungkan ke SQL Managed Instance yang diaktifkan oleh Azure Arc

Artikel ini menjelaskan cara menyambungkan ke SQL Managed Instance Anda yang diaktifkan oleh Azure Arc menggunakan alat klien SQL Server standar.

Menampilkan SQL Managed Instance yang diaktifkan oleh Azure Arc

Untuk melihat instans dan titik akhir eksternal, gunakan perintah berikut:

az sql mi-arc list --k8s-namespace <namespace> --use-k8s -o table

Output akan terlihat seperti ini:

Name       PrimaryEndpoint      Replicas    State
---------  -------------------  ----------  -------
sqldemo    10.240.0.107,1433    1/1         Ready

Jika Anda menggunakan AKS atau kubeadm atau OpenShift dll., Anda dapat menyalin IP eksternal dan nomor port dari sini dan menyambungkannya menggunakan alat favorit Anda untuk menyambungkan ke instans SQL Server/Azure SQL seperti SQL Server Management Studio (SSMS) atau sqlcmd. Namun, jika Anda menggunakan VM pemula cepat, silakan lihat di bawah untuk informasi khusus tentang cara menghubungkan ke VM tersebut dari luar Azure.

Catatan

Kebijakan perusahaan Anda dapat memblokir akses ke IP dan port, terutama jika dibuat di cloud publik.

Sambungkan

Menyambungkan dengan SQL Server Management Studio atau sqlcmd

Gunakan SQL Server Management Studio (SSMS) atau sqlcmd untuk menyambungkan ke instans Anda dengan alamat IP titik akhir eksternal dan nomor port di atas. Jika Anda menggunakan Azure VM, Anda akan memerlukan alamat IP publik , yang dapat diidentifikasi menggunakan Catatan khusus tentang penyebaran komputer virtual Azure.

Contohnya:

  • Server: 52.229.9.30,30913
  • Nama pengguna: sa
  • Kata sandi: kata sandi SQL yang Anda tentukan pada waktu provisi

Catatan

Untuk terhubung ke instans terkelola yang dibuat menggunakan manifes Kubernetes, nama pengguna dan kata sandi perlu disediakan untuk sqlcmd dalam formulir yang dikodekan base64.

Untuk terhubung menggunakan sqlcmd di Linux atau Windows, Anda dapat menggunakan perintah seperti ini. Masukkan kata sandi SQL saat diminta:

sqlcmd -S 52.229.9.30,30913 -U sa

Catatan khusus tentang penyebaran mesin virtual Azure

Saat Anda menggunakan komputer virtual Azure, alamat IP titik akhir tidak akan menampilkan alamat IP publik. Untuk menemukan alamat IP eksternal, gunakan perintah berikut:

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

Anda kemudian dapat menggabungkan alamat IP publik dengan port untuk membuat koneksi Anda.

Anda mungkin juga perlu mengekspos port instans sql melalui gateway keamanan jaringan (NSG). Untuk mengizinkan lalu lintas melalui (NSG), Anda harus menambahkan aturan menggunakan perintah berikut.

Untuk menetapkan aturan, Anda perlu mengetahui nama NSG yang dapat Anda ketahui menggunakan perintah di bawah:

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

Setelah memiliki nama NSG, Anda dapat menambahkan aturan firewall mengikuti perintah berikut. Contoh nilai di sini membuat aturan NSG untuk port 30913 dan memungkinkan koneksi dari alamat IP sumber apa pun . Ini bukan praktik terbaik keamanan! Anda dapat mengunci berbagai hal dengan lebih baik dengan menentukan nilai -source-address-prefixes yang khusus untuk alamat IP klien Anda atau rentang alamat IP yang mencakup alamat IP tim atau organisasi Anda.

Ganti nilai parameter --destination-port-ranges di bawah dengan nomor port yang Anda dapatkan dari perintah az sql mi-arc list di atas.

az network nsg rule create -n db_port --destination-port-ranges 30913 --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 '*'