Effectuer un déploiement hors connexion d’un cluster Big Data SQL Server
Important
Le module complémentaire Clusters Big Data Microsoft SQL Server 2019 sera mis hors service. La prise en charge de la plateforme Clusters Big Data Microsoft SQL Server 2019 se terminera le 28 février 2025. Tous les utilisateurs existants de SQL Server 2019 avec Software Assurance seront entièrement pris en charge sur la plateforme, et le logiciel continuera à être maintenu par les mises à jour cumulatives SQL Server jusqu’à ce moment-là. Pour plus d’informations, consultez le billet de blog d’annonce et les Options Big Data sur la plateforme Microsoft SQL Server.
Cet article explique comment déployer hors connexion un Clusters de Big Data SQL Server 2019. Les clusters Big Data doivent avoir accès à un référentiel Docker à partir duquel tirer (pull) des images conteneur. Lors d’une installation hors connexion, les images nécessaires sont placées dans un référentiel Docker privé. Ce référentiel privé est ensuite utilisé comme source des images d’un nouveau déploiement.
Conditions préalables requises
- Moteur Docker sur n’importe quelle distribution Linux prise en charge ou Docker pour Mac/Windows. Validez la version du moteur par rapport aux configurations testées indiquées dans les Notes de publication sur Clusters Big Data SQL Server. Pour plus d’informations, consultez Installer Docker.
Avertissement
Le paramètre imagePullPolicy
doit être défini comme "Always"
dans le fichier du profil de déploiement control.json.
Charger des images dans un référentiel privé
Les étapes suivantes expliquent comment tirer (pull) les images conteneur du cluster Big Data à partir du référentiel Microsoft, puis comment les pousser (push) vers votre référentiel privé.
Conseil
Ce processus est expliqué ci-dessous. Toutefois, pour simplifier cette tâche, vous pouvez utiliser le script automatisé au lieu d’exécuter manuellement ces commandes.
Tirez (pull) les images conteneur du cluster Big Data en répétant la commande suivante. Remplacez
<SOURCE_IMAGE_NAME>
par chaque nom d’image. Remplacez<SOURCE_DOCKER_TAG>
par l’étiquette de la version du cluster Big Data, par exemple 2019-CU12-ubuntu-20.04.docker pull mcr.microsoft.com/mssql/bdc/<SOURCE_IMAGE_NAME>:<SOURCE_DOCKER_TAG>
Connectez-vous au registre Docker privé cible.
docker login <TARGET_DOCKER_REGISTRY> -u <TARGET_DOCKER_USERNAME> -p <TARGET_DOCKER_PASSWORD>
Étiquetez chacune des images locales à l’aide de la commande suivante :
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>
Poussez (push) les images locales vers le référentiel Docker privé :
docker push <TARGET_DOCKER_REGISTRY>/<TARGET_DOCKER_REPOSITORY>/<SOURCE_IMAGE_NAME>:<TARGET_DOCKER_TAG>
Avertissement
Ne modifiez pas les images du cluster Big Data une fois qu’elles sont transmises à votre dépôt privé. L’exécution d’un déploiement avec des images modifiées entraîne une configuration de cluster Big Data non prise en charge.
Images conteneur de cluster Big Data
Les images conteneur de cluster Big Data suivantes sont nécessaires pour une installation hors connexion :
- 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
Script automatisé
Vous pouvez utiliser un script Python automatisé qui tire (pull) automatiquement toutes les images conteneur nécessaires, puis les pousse (push) vers un référentiel privé.
Notes
Python est un prérequis à l’utilisation du script. Pour plus d’informations sur l’installation de Python, consultez la documentation Python.
À partir de Bash ou de PowerShell, téléchargez le script avec curl :
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"
Ensuite, exécutez le script avec l’une des commandes suivantes :
Windows :
python push-bdc-images-to-custom-private-repo.py
Linux :
sudo python push-bdc-images-to-custom-private-repo.py
Suivez les invites pour entrer le référentiel Microsoft, ainsi que les informations de votre référentiel privé. Une fois l’exécution du script terminée, toutes les images nécessaires doivent se trouver dans le référentiel privé.
Suivez les instructions fournies ici pour découvrir comment personnaliser le fichier de configuration de déploiement
control.json
afin d’utiliser votre référentiel et votre registre de conteneurs. Notez que vous devez définir les variables d’environnementDOCKER_USERNAME
etDOCKER_PASSWORD
avant le déploiement pour permettre l’accès à votre référentiel privé.
Installer des outils hors connexion
Les déploiements de clusters Big Data nécessitent plusieurs outils, tels que Python, Azure Data CLI (azdata
) et kubectl. Suivez les étapes suivantes pour installer ces outils sur un serveur hors connexion.
Installer Python hors connexion
Sur une machine disposant d’un accès à Internet, téléchargez l’un des fichiers compressés suivants contenant Python :
Système d’exploitation Téléchargement Windows https://go.microsoft.com/fwlink/?linkid=2074021 Linux https://go.microsoft.com/fwlink/?linkid=2065975 OSX https://go.microsoft.com/fwlink/?linkid=2065976 Copiez le fichier compressé sur la machine cible et extrayez-le dans un dossier de votre choix.
Pour Windows uniquement, exécutez
installLocalPythonPackages.bat
à partir de ce dossier en indiquant comme paramètre le chemin complet au dossier.installLocalPythonPackages.bat "C:\python-3.6.6-win-x64-0.0.1-offline\0.0.1"
Installer azdata hors connexion
Sur une machine disposant d’un accès à Internet et de Python, exécutez la commande suivante pour télécharger tous les packages Azure Data CLI (
azdata
) dans le dossier actif.pip download -r https://aka.ms/azdata
Copiez les packages téléchargés et le fichier
requirements.txt
sur la machine cible.Exécutez la commande suivante sur la machine cible, en spécifiant le dossier dans lequel vous avez copié les fichiers précédents.
pip install --no-index --find-links <path-to-packages> -r <path-to-requirements.txt>
Installer kubectl hors connexion
Pour installer kubectl sur une machine hors connexion, utilisez les étapes suivantes.
Utilisez curl pour télécharger kubectl dans le dossier de votre choix. Pour plus d’informations, consultez Installer le fichier binaire kubectl avec curl.
Copiez le dossier sur la machine cible.
Effectuer le déploiement à partir d’un référentiel privé
Pour effectuer un déploiement à partir du référentiel privé, utilisez les étapes décrites dans le guide de déploiement, mais utilisez un fichier de configuration de déploiement personnalisé spécifiant les informations de votre référentiel Docker privé. Les commandes Azure Data CLI (azdata
) suivantes montrent comment modifier les paramètres Docker dans un fichier de configuration de déploiement personnalisé nommé control.json
:
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>"
Le déploiement vous invite à entrer le nom d’utilisateur et le mot de passe Docker. Vous pouvez également les spécifier dans les variables d’environnement DOCKER_USERNAME
et DOCKER_PASSWORD
.
Étapes suivantes
Pour plus d’informations sur le déploiement des clusters Big Data, consultez Guide pratique pour déployer des Clusters Big Data SQL Server sur Kubernetes.