Konfigurowanie wystąpienia zarządzanego SQL włączonego przez usługę Azure Arc

W tym artykule wyjaśniono, jak skonfigurować usługę SQL Managed Instance włączoną przez usługę Azure Arc.

Konfigurowanie zasobów, takich jak rdzenie i pamięć

Konfigurowanie przy użyciu interfejsu wiersza polecenia

Aby zaktualizować konfigurację wystąpienia przy użyciu interfejsu wiersza polecenia. Uruchom następujące polecenie, aby wyświetlić opcje konfiguracji.

az sql mi-arc update --help

Aby zaktualizować dostępną pamięć i rdzenie dla wystąpienia, użyj:

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

W poniższym przykładzie ustawiane są żądania i limity procesora CPU i pamięci.

az sql mi-arc update --cores-limit 4 --cores-request 2 --memory-limit 4Gi --memory-request 2Gi -n sqlinstance1 --k8s-namespace arc --use-k8s

Aby wyświetlić zmiany wprowadzone w wystąpieniu, możesz użyć następujących poleceń, aby wyświetlić plik yaml konfiguracji:

az sql mi-arc show -n <NAME_OF_SQL_MI> --k8s-namespace <namespace> --use-k8s

Konfigurowanie czytelnych plików pomocniczych

Podczas wdrażania wystąpienia zarządzanego SQL włączonego przez usługę Azure Arc w BusinessCritical warstwie usługi z co najmniej 2 replikami domyślnie jedna replika pomocnicza jest automatycznie konfigurowana jako readableSecondary. To ustawienie można zmienić, aby dodać lub usunąć czytelne sekundy w następujący sposób:

az sql mi-arc update --name <sqlmi name>  --readable-secondaries <value> --k8s-namespace <namespace> --use-k8s

Na przykład poniższy przykład resetuje czytelne sekundy do wartości 0.

az sql mi-arc update --name sqlmi1 --readable-secondaries 0 --k8s-namespace mynamespace --use-k8s

Konfigurowanie replik

Można również skalować w górę lub w dół liczbę replik wdrożonych w warstwie BusinessCritical usługi w następujący sposób:

az sql mi-arc update --name <sqlmi name> --replicas <value> --k8s-namespace <namespace> --use-k8s

Na przykład:

W poniższym przykładzie liczba replik jest skalowana w dół z zakresu od 3 do 2.

az sql mi-arc update --name sqlmi1 --replicas 2 --k8s-namespace mynamespace --use-k8s

Uwaga

W przypadku skalowania w dół z 2 replik do 1 repliki może wystąpić konflikt ze wstępnie skonfigurowanym --readable--secondaries ustawieniem. Najpierw można edytować przed --readable--secondaries skalowaniem replik w dół.

Konfigurowanie opcji serwera

Niektóre ustawienia konfiguracji serwera dla usługi SQL Managed Instance włączone przez usługę Azure Arc można skonfigurować w czasie tworzenia lub po jego utworzeniu. W tym artykule opisano sposób konfigurowania ustawień, takich jak włączanie "Zapytań rozproszonych ad hoc" lub "domyślna kompresja kopii zapasowej" itp.

Obecnie można skonfigurować następujące opcje serwera:

  • Zapytania rozproszone ad hoc
  • Domyślne śledzenie włączone
  • Poczta bazy danych XPs
  • Domyślna kompresja kopii zapasowej
  • Próg kosztów dla równoległości
  • Optymalizowanie pod kątem obciążeń ad hoc

Uwaga

  • Obecnie te opcje można określić tylko za pośrednictwem pliku YAML podczas tworzenia usługi SQL Managed Instance lub po wdrożeniu.

  • Tag obrazu wystąpienia zarządzanego SQL musi mieć co najmniej wersję 1.19.x lub nowszą.

Dodaj następujący kod do pliku YAML podczas wdrażania, aby skonfigurować dowolną z tych opcji.

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

Jeśli masz już istniejące wystąpienie zarządzane SQL włączone przez usługę Azure Arc, możesz uruchomić kubectl edit sqlmi <sqlminame> -n <namespace> i dodać powyższe opcje do specyfikacji.

Przykładowy plik 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

Włączanie agenta programu SQL Server

Agent programu SQL Server jest wyłączony podczas domyślnego wdrażania usługi SQL Managed Instance włączonej przez usługę Azure Arc. Można ją włączyć, uruchamiając następujące polecenie:

az sql mi-arc update -n <NAME_OF_SQL_MI> --k8s-namespace <namespace> --use-k8s --agent-enabled true

Przykład:

az sql mi-arc update -n sqlinstance1 --k8s-namespace arc --use-k8s --agent-enabled true

Włączanie flag śledzenia

Flagi śledzenia można włączyć w następujący sposób:

az sql mi-arc update -n <NAME_OF_SQL_MI> --k8s-namespace <namespace> --use-k8s --trace-flags "3614,1234"