Durchführen einer Offlinebereitstellung von Big Data-Clustern für SQL Server

Wichtig

Das Microsoft SQL Server 2019-Big Data-Cluster-Add-On wird eingestellt. Der Support für SQL Server 2019-Big Data-Clusters endet am 28. Februar 2025. Alle vorhandenen Benutzer*innen von SQL Server 2019 mit Software Assurance werden auf der Plattform vollständig unterstützt, und die Software wird bis zu diesem Zeitpunkt weiterhin über kumulative SQL Server-Updates verwaltet. Weitere Informationen finden Sie im Ankündigungsblogbeitrag und unter Big Data-Optionen auf der Microsoft SQL Server-Plattform.

In diesem Artikel wird beschrieben, wie Sie eine Offlinebereitstellung von SQL Server 2019: Big Data-Cluster durchführen. Big Data-Cluster müssen Zugriff auf ein Docker-Repository haben, aus dem Containerimages gepullt werden. Bei einer Offlineinstallation werden die erforderlichen Images in einem privaten Docker-Repository abgelegt. Dieses private Repository wird dann als Imagequelle für eine neue Bereitstellung verwendet.

Voraussetzungen

Warnung

Der Parameter imagePullPolicy muss in der Datei „control.json“ des Bereitstellungsprofils auf "Always" festgelegt werden.

Laden von Images in ein privates Repository

In den folgenden Schritten wird beschrieben, wie Sie die Containerimages des Big Data-Clusters aus dem Microsoft-Repository abrufen und anschließend in Ihr privates Repository pushen.

Tipp

Die folgenden Schritte erläutern den Prozess. Um die Aufgabe zu vereinfachen, können Sie jedoch das automatisierte Skript verwenden, anstatt diese Befehle manuell auszuführen.

  1. Pullen Sie die Big Data-Cluster-Containerimages, indem Sie den folgenden Befehl wiederholen. Ersetzen Sie <SOURCE_IMAGE_NAME> durch den jeweiligen Imagenamen. Ersetzen Sie <SOURCE_DOCKER_TAG> durch das Tag für das Release des Big Data-Clusters, z. B. 2019-CU12-ubuntu-20.04.

    docker pull mcr.microsoft.com/mssql/bdc/<SOURCE_IMAGE_NAME>:<SOURCE_DOCKER_TAG>
    
  2. Melden Sie sich bei der privaten Docker-Zielregistrierung an.

    docker login <TARGET_DOCKER_REGISTRY> -u <TARGET_DOCKER_USERNAME> -p <TARGET_DOCKER_PASSWORD>
    
  3. Markieren Sie die lokalen Images jeweils mit dem folgenden Befehl:

    docker tag mcr.microsoft.com/mssql/bdc/<SOURCE_IMAGE_NAME>:<SOURCE_DOCKER_TAG> <TARGET_DOCKER_REGISTRY>/<TARGET_DOCKER_REPOSITORY>/<SOURCE_IMAGE_NAME>:<TARGET_DOCKER_TAG>
    
  4. Pushen Sie die lokalen Images in das private Docker-Repository:

    docker push <TARGET_DOCKER_REGISTRY>/<TARGET_DOCKER_REPOSITORY>/<SOURCE_IMAGE_NAME>:<TARGET_DOCKER_TAG>
    

Warnung

Ändern Sie Big Data-Cluster-Images nicht mehr, sobald sie in Ihr privates Repository gepusht wurden. Die Durchführung einer Bereitstellung mit bearbeiteten Images würde zu einem nicht unterstützten Big Data-Cluster-Setup führen.

Big Data-Cluster-Containerimages

Die folgenden Big Data-Cluster-Containerimages sind für eine Offlineinstallation erforderlich:

  • mssql-app-service-proxy
  • mssql-control-watchdog
  • mssql-controller
  • mssql-dns
  • mssql-hadoop
  • mssql-mleap-serving-runtime
  • mssql-mlserver-py-runtime
  • mssql-mlserver-r-runtime
  • mssql-monitor-collectd
  • mssql-monitor-elasticsearch
  • mssql-monitor-fluentbit
  • mssql-monitor-grafana
  • mssql-monitor-influxdb
  • mssql-monitor-kibana
  • mssql-monitor-telegraf
  • mssql-security-knox
  • mssql-security-support
  • mssql-server-controller
  • mssql-server-data
  • mssql-ha-operator
  • mssql-ha-supervisor
  • mssql-service-proxy
  • mssql-ssis-app-runtime

Automatisiertes Skript

Sie können ein automatisiertes Python-Skript verwenden, das automatisch alle benötigten Containerimages pullt und sie in ein privates Repository überträgt.

Hinweis

Python ist eine Voraussetzung für die Verwendung des Skripts. Weitere Informationen über die Installation von Python finden Sie in der Python-Dokumentation.

  1. Laden Sie das Skript per Bash oder PowerShell mit curl herunter:

    curl -o push-bdc-images-to-custom-private-repo.py "https://raw.githubusercontent.com/Microsoft/sql-server-samples/master/samples/features/sql-big-data-cluster/deployment/offline/push-bdc-images-to-custom-private-repo.py"
    
  2. Führen Sie das Skript mit einem der folgenden Befehle aus:

    Windows:

    python push-bdc-images-to-custom-private-repo.py
    

    Linux:

    sudo python push-bdc-images-to-custom-private-repo.py
    
  3. Befolgen Sie die Anweisungen zum Eingeben des Microsoft-Repositorys und Ihrer privaten Repository-Informationen. Nach Abschluss des Skripts sollten sich alle erforderlichen Images in Ihrem privaten Repository befinden.

  4. Befolgen Sie diese Anweisungen, um zu erfahren, wie Sie die Konfigurationsdatei für die Bereitstellung von control.json anpassen können, um Ihre Containerregistrierung und Ihr Repository zu nutzen. Beachten Sie, dass Sie die Umgebungsvariablen DOCKER_USERNAME und DOCKER_PASSWORD vor der Bereitstellung festlegen müssen, damit Sie auf das private Repository zugreifen können.

Offlineinstallation von Tools

Bereitstellungen von Big Data-Clustern erfordern mehrere Tools, einschließlich Python, Azure Data CLI (azdata)und kubectl. Führen Sie die folgenden Schritte aus, um diese Tools auf einem Offlineserver zu installieren.

Offlineinstallation von Python

  1. Laden Sie auf einem Computer mit Internetzugriff eine der folgenden komprimierten Dateien herunter, die Python enthalten:

    Betriebssystem Download
    Windows https://go.microsoft.com/fwlink/?linkid=2074021
    Linux https://go.microsoft.com/fwlink/?linkid=2065975
    OSX https://go.microsoft.com/fwlink/?linkid=2065976
  2. Kopieren Sie die komprimierte Datei auf den Zielcomputer, und extrahieren Sie sie in einen Ordner Ihrer Wahl.

  3. Führen Sie installLocalPythonPackages.bat nur unter Windows in diesem Ordner aus, und übergeben Sie den vollständigen Pfad zu demselben Ordner als Parameter.

    installLocalPythonPackages.bat "C:\python-3.6.6-win-x64-0.0.1-offline\0.0.1"
    

Offlineinstallation von azdata

  1. Führen Sie auf einem Computer mit Internetzugriff und Python den folgenden Befehl aus, um alle Azure Data CLI (azdata)-Pakete in den aktuellen Ordner herunterzuladen.

    pip download -r https://aka.ms/azdata
    
  2. Kopieren Sie die heruntergeladenen Pakete und die Datei requirements.txt auf den Zielcomputer.

  3. Führen Sie den folgenden Befehl auf dem Zielcomputer aus, und geben Sie dabei den Ordner an, in den Sie die vorherigen Dateien kopiert haben.

    pip install --no-index --find-links <path-to-packages> -r <path-to-requirements.txt>
    

Offlineinstallation von kubectl

Führen Sie die folgenden Schritte aus, um kubectl auf einem Offlinecomputer zu installieren.

  1. Verwenden Sie curl, um kubectl in einen Ordner Ihrer Wahl herunterzuladen. Weitere Informationen finden Sie unter Install kubectl binary using curl (Installieren von kubectl mit curl).

  2. Kopieren Sie den Ordner auf den Zielcomputer.

Bereitstellen aus privatem Repository

Verwenden Sie zum Bereitstellen über das private Repository die im Bereitstellungshandbuch beschriebenen Schritte, und verwenden Sie unbedingt eine benutzerdefinierte Bereitstellungskonfigurationsdatei, die die Informationen zu Ihrem privaten Docker-Repository enthält. Die folgenden Azure Data CLI (azdata)-Befehle veranschaulichen, wie die Docker-Einstellungen in einer benutzerdefinierten Bereitstellungskonfigurationsdatei namens control.json geändert werden:

azdata bdc config replace --config-file custom/control.json --json-values "$.spec.docker.repository=<your-docker-repository>"
azdata bdc config replace --config-file custom/control.json --json-values "$.spec.docker.registry=<your-docker-registry>"
azdata bdc config replace --config-file custom/control.json --json-values "$.spec.docker.imageTag=<your-docker-image-tag>"

In der Bereitstellung werden Sie aufgefordert, den Docker-Benutzernamen und das Kennwort einzugeben. Alternativ können Sie sie in den Umgebungsvariablen DOCKER_USERNAME und DOCKER_PASSWORD angeben.

Nächste Schritte

Weitere Informationen zu Big Data-Cluster-Bereitstellungen finden Sie unter Vorgehensweise: Bereitstellen von Big Data-Cluster für SQL Server in Kubernetes.