Mengonfigurasi SQL Managed Instance yang diaktifkan oleh Azure Arc
Artikel ini menjelaskan cara mengonfigurasi SQL Managed Instance yang diaktifkan oleh Azure Arc.
Mengonfigurasi sumber daya seperti inti dan memori
Mengonfigurasi menggunakan CLI
Untuk memperbarui konfigurasi instans dengan CLI. Jalankan perintah berikut untuk melihat opsi konfigurasi.
az sql mi-arc update --help
Untuk memperbarui memori dan inti yang tersedia untuk penggunaan instans:
az sql mi-arc update --cores-limit 4 --cores-request 2 --memory-limit 4Gi --memory-request 2Gi -n <NAME_OF_SQL_MI> --k8s-namespace <namespace> --use-k8s
Contoh berikut menetapkan permintaan dan batasan inti cpu dan memori.
az sql mi-arc update --cores-limit 4 --cores-request 2 --memory-limit 4Gi --memory-request 2Gi -n sqlinstance1 --k8s-namespace arc --use-k8s
Untuk melihat perubahan yang dilakukan pada instans, Anda dapat menggunakan perintah berikut untuk melihat file yaml konfigurasi:
az sql mi-arc show -n <NAME_OF_SQL_MI> --k8s-namespace <namespace> --use-k8s
Mengonfigurasi sekunder yang dapat dibaca
Saat Anda menyebarkan SQL Managed Instance yang diaktifkan oleh Azure Arc di BusinessCritical
tingkat layanan dengan 2 replika atau lebih, secara default, satu replika sekunder secara otomatis dikonfigurasi sebagai readableSecondary
. Pengaturan ini dapat diubah, baik untuk menambahkan atau menghapus sekunder yang dapat dibaca sebagai berikut:
az sql mi-arc update --name <sqlmi name> --readable-secondaries <value> --k8s-namespace <namespace> --use-k8s
Misalnya, contoh berikut mengatur ulang sekunder yang dapat dibaca menjadi 0.
az sql mi-arc update --name sqlmi1 --readable-secondaries 0 --k8s-namespace mynamespace --use-k8s
Mengonfigurasi replika
Anda juga dapat meningkatkan atau menurunkan jumlah replika yang disebarkan di BusinessCritical
tingkat layanan sebagai berikut:
az sql mi-arc update --name <sqlmi name> --replicas <value> --k8s-namespace <namespace> --use-k8s
Contohnya:
Contoh berikut menurunkan skala jumlah replika dari 3 menjadi 2.
az sql mi-arc update --name sqlmi1 --replicas 2 --k8s-namespace mynamespace --use-k8s
Catatan
Jika Anda menurunkan skala dari 2 replika menjadi 1 replika, Anda mungkin mengalami konflik dengan pengaturan yang telah dikonfigurasi --readable--secondaries
sebelumnya. Anda dapat terlebih dahulu mengedit --readable--secondaries
sebelum menurunkan skala replika.
Mengonfigurasi opsi server
Anda dapat mengonfigurasi pengaturan konfigurasi server tertentu untuk SQL Managed Instance yang diaktifkan oleh Azure Arc baik selama atau setelah waktu pembuatan. Artikel ini menjelaskan cara mengonfigurasi pengaturan seperti mengaktifkan "Kueri Terdistribusi Ad Hoc" atau "default kompresi cadangan" dll.
Saat ini opsi server berikut dapat dikonfigurasi:
- Kueri Terdistribusi Ad Hoc
- Pelacakan Default Diaktifkan
- XP Email Database
- Default kompresi cadangan
- Ambang biaya untuk paralelisme
- Optimalkan untuk beban kerja ad hoc
Catatan
Saat ini opsi ini hanya dapat ditentukan melalui file YAML, baik selama pembuatan SQL Managed Instance atau pasca penyebaran.
Tag gambar instans terkelola SQL harus setidaknya versi v1.19.x atau lebih tinggi.
Tambahkan yang berikut ini ke file YAML Anda selama penyebaran untuk mengonfigurasi salah satu opsi ini.
spec:
serverConfigurations:
- name: "Ad Hoc Distributed Queries"
value: 1
- name: "Default Trace Enabled"
value: 0
- name: "Database Mail XPs"
value: 1
- name: "backup compression default"
value: 1
- name: "cost threshold for parallelism"
value: 50
- name: "optimize for ad hoc workloads"
value: 1
Jika Anda sudah memiliki instans terkelola SQL yang sudah ada yang diaktifkan oleh Azure Arc, Anda dapat menjalankan kubectl edit sqlmi <sqlminame> -n <namespace>
dan menambahkan opsi di atas ke dalam spesifikasi.
Contoh file YAML:
apiVersion: sql.arcdata.microsoft.com/v13
kind: SqlManagedInstance
metadata:
name: sql1
annotations:
exampleannotation1: exampleannotationvalue1
exampleannotation2: exampleannotationvalue2
labels:
examplelabel1: examplelabelvalue1
examplelabel2: examplelabelvalue2
spec:
dev: true #options: [true, false]
licenseType: LicenseIncluded #options: [LicenseIncluded, BasePrice]. BasePrice is used for Azure Hybrid Benefits.
tier: GeneralPurpose #options: [GeneralPurpose, BusinessCritical]
serverConfigurations:
- name: "Ad Hoc Distributed Queries"
value: 1
- name: "Default Trace Enabled"
value: 0
- name: "Database Mail XPs"
value: 1
- name: "backup compression default"
value: 1
- name: "cost threshold for parallelism"
value: 50
- name: "optimize for ad hoc workloads"
value: 1
security:
adminLoginSecret: sql1-login-secret
scheduling:
default:
resources:
limits:
cpu: "2"
memory: 4Gi
requests:
cpu: "1"
memory: 2Gi
services:
primary:
type: LoadBalancer
storage:
backups:
volumes:
- className: azurefile # Backup volumes require a ReadWriteMany (RWX) capable storage class
size: 5Gi
data:
volumes:
- className: default # Use default configured storage class or modify storage class based on your Kubernetes environment
size: 5Gi
datalogs:
volumes:
- className: default # Use default configured storage class or modify storage class based on your Kubernetes environment
size: 5Gi
logs:
volumes:
- className: default # Use default configured storage class or modify storage class based on your Kubernetes environment
size: 5Gi
Mengaktifkan SQL Server Agent
Agen SQL Server dinonaktifkan selama penyebaran default SQL Managed Instance yang diaktifkan oleh Azure Arc. Ini dapat diaktifkan dengan menjalankan perintah berikut:
az sql mi-arc update -n <NAME_OF_SQL_MI> --k8s-namespace <namespace> --use-k8s --agent-enabled true
Sebagai contoh:
az sql mi-arc update -n sqlinstance1 --k8s-namespace arc --use-k8s --agent-enabled true
Mengaktifkan bendera pelacakan
Bendera pelacakan dapat diaktifkan sebagai berikut:
az sql mi-arc update -n <NAME_OF_SQL_MI> --k8s-namespace <namespace> --use-k8s --trace-flags "3614,1234"