SQL Server ビッグ データ クラスターのオフライン展開を実行する

重要

Microsoft SQL Server 2019 ビッグ データ クラスターのアドオンは廃止されます。 SQL Server 2019 ビッグ データ クラスターのサポートは、2025 年 2 月 28 日に終了します。 ソフトウェア アシュアランス付きの SQL Server 2019 を使用する既存の全ユーザーはプラットフォームで完全にサポートされ、ソフトウェアはその時点まで SQL Server の累積更新プログラムによって引き続きメンテナンスされます。 詳細については、お知らせのブログ記事と「Microsoft SQL Server プラットフォームのビッグ データ オプション」を参照してください。

この記事では、SQL Server 2019 ビッグ データ クラスターのオフライン展開を実行する方法について説明します。 ビッグ データ クラスターには、コンテナー イメージをプルする Docker リポジトリへのアクセス権が必要です。 オフライン インストールでは、必要なイメージがプライベート Docker リポジトリに配置されています。 そのプライベート リポジトリはその後、新しい展開のイメージ ソースとして使用されます。

前提条件

警告

展開プロファイルの control.json ファイルで、パラメーター imagePullPolicy"Always" に設定する必要があります。

プライベート リポジトリにイメージを読み込む

次の手順では、ビッグ データ クラスター コンテナー イメージを Microsoft リポジトリからプルし、プライベート リポジトリにプッシュする方法について説明します。

ヒント

次の手順では、このプロセスについて説明します。 ただし、タスクを簡略化するために、これらのコマンドを手動で実行する代わりに、自動スクリプトを使用できます。

  1. 次のコマンドを繰り返して、ビッグ データ クラスター コンテナー イメージをプルします。 <SOURCE_IMAGE_NAME> をそれぞれのイメージ名で置き換えます。 <SOURCE_DOCKER_TAG> は、ビッグ データ クラスター リリースのタグ (2019-CU12-ubuntu-20.04 など) に置き換えます。

    docker pull mcr.microsoft.com/mssql/bdc/<SOURCE_IMAGE_NAME>:<SOURCE_DOCKER_TAG>
    
  2. ターゲット プライベート Docker レジストリにログインします。

    docker login <TARGET_DOCKER_REGISTRY> -u <TARGET_DOCKER_USERNAME> -p <TARGET_DOCKER_PASSWORD>
    
  3. ローカル イメージごとに次のコマンドを使用して、イメージにタグを付けます。

    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. ローカル イメージをプライベート Docker リポジトリにプッシュします。

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

警告

プライベート リポジトリにプッシュ後、ビッグ データ クラスター イメージは変更しないでください。 イメージを変更して展開すると、サポートされていないビック データ クラスターがセットアップされます。

ビッグ データ クラスター コンテナー イメージ

オフライン インストールには、次のビッグ データ クラスター コンテナー イメージが必要です。

  • 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

自動スクリプト

自動的にすべての必要なコンテナー イメージをプルし、それらをプライベート リポジトリにプッシュする、自動化された Python スクリプトを使用できます。

Note

Python は、スクリプトを使用するための前提条件です。 Python のインストール方法の詳細については、Python のドキュメントを参照してください。

  1. Bash または PowerShell から、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"
    
  2. その後、次のいずれかのコマンドを使用してスクリプトを実行します。

    Windows:

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

    Linux:

    sudo python push-bdc-images-to-custom-private-repo.py
    
  3. 画面の指示に従って、Microsoft リポジトリとご自分のプライベート リポジトリの情報を入力します。 スクリプトを完了すると、必要なすべてのイメージがプライベート リポジトリに配置されているはずです。

  4. この手順に従って、コンテナー レジストリとリポジトリを利用するように control.json 展開構成ファイルをカスタマイズする方法を学習します。 プライベート リポジトリへのアクセスを有効にするには、展開の前に DOCKER_USERNAME および DOCKER_PASSWORD 環境変数を設定する必要があることに注意してください。

ツールをオフラインでインストールする

ビッグ データ クラスターの展開には、Python、Azure Data CLI (azdata)、および kubectl など、いくつかのツールが必要です。 これらのツールをオフライン サーバーにインストールするには、次の手順に従います。

Python をオフラインでインストールする

  1. インターネットにアクセスできるコンピューターで、Python が含まれる次のいずれかの圧縮ファイルをダウンロードします。

    オペレーティング システム ダウンロード
    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. 圧縮されたファイルをターゲット コンピューターにコピーし、任意のフォルダーに抽出します。

  3. Windows の場合にのみ、そのフォルダーから installLocalPythonPackages.bat を実行して、パラメーターと同じフォルダーへの完全なパスを渡します。

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

azdata をオフラインでインストールする

  1. インターネットにアクセスでき、Python があるコンピューターで、次のコマンドを実行し、すべての Azure Data CLI (azdata) パッケージを現在のフォルダーにダウンロードします。

    pip download -r https://aka.ms/azdata
    
  2. ダウンロードされたパッケージと requirements.txt ファイルをターゲット コンピューターにコピーします。

  3. ターゲット コンピューターで、前のファイルをコピーしたフォルダーを指定して次のコマンドを実行します。

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

kubectl をオフラインでインストールする

オフライン コンピューターに kubectl をインストールするには、次の手順を実行します。

  1. curl を使用して、選択したフォルダーに kubectl をダウンロードします。 詳細については、curl を使用した kubectl バイナリのインストールに関するページを参照してください。

  2. フォルダーをターゲット コンピューターにコピーします。

プライベート リポジトリから展開する

プライベート リポジトリから展開するには、展開ガイドに記載されている手順を使用しますが、プライベート Docker リポジトリ情報を指定するカスタムの展開構成ファイルを使用します。 次の Azure Data CLI (azdata) コマンドは、control.json という名前のカスタム展開構成ファイルの Docker 設定を変更する方法を示しています。

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>"

展開により、docker のユーザー名とパスワードの入力が求められます。DOCKER_USERNAME および DOCKER_PASSWORD 環境変数でこれらを指定することもできます。

次のステップ

ビッグ データ クラスターの展開の詳細については、「Kubernetes に SQL Server ビッグ データ クラスターを展開する方法」を参照してください。