Konfigurace služby SQL Managed Instance povolenou službou Azure Arc
Tento článek vysvětluje, jak nakonfigurovat spravovanou instanci SQL povolenou službou Azure Arc.
Konfigurace prostředků, jako jsou jádra a paměť
Konfigurace pomocí rozhraní příkazového řádku
Aktualizace konfigurace instance pomocí rozhraní příkazového řádku Spuštěním následujícího příkazu zobrazte možnosti konfigurace.
az sql mi-arc update --help
Aktualizace dostupné paměti a jader pro instanci:
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
Následující příklad nastaví požadavky a limity jader procesoru a paměti.
az sql mi-arc update --cores-limit 4 --cores-request 2 --memory-limit 4Gi --memory-request 2Gi -n sqlinstance1 --k8s-namespace arc --use-k8s
Pokud chcete zobrazit změny provedené v instanci, můžete k zobrazení konfiguračního souboru yaml použít následující příkazy:
az sql mi-arc show -n <NAME_OF_SQL_MI> --k8s-namespace <namespace> --use-k8s
Konfigurace čitelných sekundárních souborů
Když nasadíte službu SQL Managed Instance povolenou službou Azure Arc na BusinessCritical
úrovni služby s 2 nebo více replikami, ve výchozím nastavení se jedna sekundární replika automaticky nakonfiguruje jako readableSecondary
. Toto nastavení můžete změnit tak, že přidáte nebo odeberete čitelné sekundární soubory následujícím způsobem:
az sql mi-arc update --name <sqlmi name> --readable-secondaries <value> --k8s-namespace <namespace> --use-k8s
Například následující příklad resetuje čitelné sekundy na 0.
az sql mi-arc update --name sqlmi1 --readable-secondaries 0 --k8s-namespace mynamespace --use-k8s
Konfigurace replik
Můžete také vertikálně navýšit nebo snížit počet replik nasazených v BusinessCritical
úrovni služby následujícím způsobem:
az sql mi-arc update --name <sqlmi name> --replicas <value> --k8s-namespace <namespace> --use-k8s
Příklad:
Následující příklad vertikálně navyšuje počet replik z 3 na 2.
az sql mi-arc update --name sqlmi1 --replicas 2 --k8s-namespace mynamespace --use-k8s
Poznámka:
Pokud vertikálně navyšujete kapacitu z 2 replik na 1 repliku, může dojít ke konfliktu s předem nakonfigurovaným --readable--secondaries
nastavením. Před vertikálním snížením --readable--secondaries
kapacity replik můžete nejprve upravit.
Konfigurace možností serveru
Můžete nakonfigurovat určitá nastavení konfigurace serveru pro službu SQL Managed Instance povolenou službou Azure Arc buď během vytváření, nebo po jeho vytvoření. Tento článek popisuje, jak nakonfigurovat nastavení, jako je povolení ad hoc distribuovaných dotazů nebo výchozí komprese zálohování atd.
V současné době je možné nakonfigurovat následující možnosti serveru:
- Ad Hoc distribuované dotazy
- Výchozí povolené trasování
- Databázová pošta XPs
- Výchozí komprese zálohování
- Prahová hodnota nákladů pro paralelismus
- Optimalizace pro ad hoc úlohy
Poznámka:
V současné době je možné tyto možnosti zadat pouze prostřednictvím souboru YAML, a to buď během vytváření spravované instance SQL, nebo po nasazení.
Značka image spravované instance SQL musí být minimálně verze 1.19.x nebo vyšší.
Přidáním následujícího postupu do souboru YAML během nasazování nakonfigurujte některou z těchto možností.
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
Pokud už máte existující spravovanou instanci SQL povolenou službou Azure Arc, můžete do specifikace spustit kubectl edit sqlmi <sqlminame> -n <namespace>
a přidat výše uvedené možnosti.
Příklad souboru 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
Povolení agenta SQL Serveru
Agent SQL Serveru je zakázán během výchozího nasazení služby SQL Managed Instance, které služba Azure Arc povolila. Můžete ho povolit spuštěním následujícího příkazu:
az sql mi-arc update -n <NAME_OF_SQL_MI> --k8s-namespace <namespace> --use-k8s --agent-enabled true
Příklad:
az sql mi-arc update -n sqlinstance1 --k8s-namespace arc --use-k8s --agent-enabled true
Povolení příznaků trasování
Příznaky trasování je možné povolit následujícím způsobem:
az sql mi-arc update -n <NAME_OF_SQL_MI> --k8s-namespace <namespace> --use-k8s --trace-flags "3614,1234"