Important
Microsoft SQL Server 2019 ビッグ データ クラスターは廃止されました。 SQL Server 2019 ビッグ データ クラスターのサポートは、2025 年 2 月 28 日の時点で終了しました。 詳細については、Microsoft SQL Server プラットフォーム の発表ブログ投稿 と ビッグ データ オプションを参照してください。
この記事では、SQL Server 2019 ビッグ データ クラスターのオフライン展開を実行する方法について説明します。 ビッグ データ クラスターは、コンテナー イメージのプル元となる Docker リポジトリにアクセスできる必要があります。 オフライン インストールは、必要なイメージがプライベート Docker リポジトリに配置される場所です。 そのプライベート リポジトリは、新しいデプロイのイメージ ソースとして使用されます。
Prerequisites
- サポートされている Linux ディストリビューションまたは Docker for Mac/Windows 上の Docker エンジン。 SQL Server ビッグ データ クラスターのリリース ノートで、テスト済みの構成に対してエンジンのバージョンを検証します。詳細については、「Docker のインストール」を参照してください。
Warning
展開プロファイルの control.json ファイルで、パラメーター imagePullPolicy
を "Always"
に設定する必要があります。
プライベート リポジトリにイメージを読み込む
次の手順では、Microsoft リポジトリからビッグ データ クラスター コンテナー イメージをプルし、プライベート リポジトリにプッシュする方法について説明します。
Tip
次の手順でプロセスを説明します。 ただし、タスクを簡略化するために、これらのコマンドを手動で実行する代わりに 、自動化されたスクリプト を使用できます。
次のコマンドを繰り返して、ビッグ データ クラスター コンテナー イメージをプルします。
<SOURCE_IMAGE_NAME>
を各イメージ名に置き換えます。<SOURCE_DOCKER_TAG>
をビッグ データ クラスター リリースのタグ (2019-CU12-ubuntu-20.04 など) に置き換えます。docker pull mcr.microsoft.com/mssql/bdc/<SOURCE_IMAGE_NAME>:<SOURCE_DOCKER_TAG>
ターゲットプライベート Docker レジストリにログインします。
docker login <TARGET_DOCKER_REGISTRY> -u <TARGET_DOCKER_USERNAME> -p <TARGET_DOCKER_PASSWORD>
各イメージに対して次のコマンドを使用して、ローカル イメージにタグを付けます。
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>
ローカル イメージをプライベート Docker リポジトリにプッシュします。
docker push <TARGET_DOCKER_REGISTRY>/<TARGET_DOCKER_REPOSITORY>/<SOURCE_IMAGE_NAME>:<TARGET_DOCKER_TAG>
Warning
ビッグ データ クラスター イメージは、プライベート リポジトリにプッシュされた後は変更しないでください。 イメージを変更してデプロイを実行すると、サポートされていないビッグ データ クラスターのセットアップが行われます。
ビッグ データ クラスター コンテナー イメージ
オフライン インストールには、次のビッグ データ クラスター コンテナー イメージが必要です。
- 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
Automated script
必要なすべてのコンテナー イメージを自動的にプルし、プライベート リポジトリにプッシュする自動化された Python スクリプトを使用できます。
Note
Python は、スクリプトを使用するための前提条件です。 Python をインストールする方法の詳細については、Python の ドキュメントを参照してください。
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"
次に、次のいずれかのコマンドを使用してスクリプトを実行します。
Windows:
python push-bdc-images-to-custom-private-repo.py
Linux:
sudo python push-bdc-images-to-custom-private-repo.py
Microsoft リポジトリとプライベート リポジトリ情報を入力するためのプロンプトに従います。 スクリプトが完了したら、必要なすべてのイメージをプライベート リポジトリに配置する必要があります。
コンテナー レジストリとリポジトリを使用するようにデプロイ構成ファイルをカスタマイズする方法については、
control.json
手順に従ってください。 プライベート リポジトリへのアクセスを有効にするには、デプロイ前にDOCKER_USERNAME
とDOCKER_PASSWORD
環境変数を設定する必要があることに注意してください。
ツールをオフラインでインストールする
ビッグ データ クラスターのデプロイには、 Python、Azure Data CLI (azdata
)、 kubectl など、いくつかのツールが必要です。 これらのツールをオフライン サーバーにインストールするには、次の手順に従います。
Python をオフラインでインストールする
インターネットにアクセスできるコンピューターで、Python が含まれる次のいずれかの圧縮ファイルをダウンロードします。
Operating system 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 圧縮されたファイルをターゲット コンピューターにコピーし、任意のフォルダーに抽出します。
Windows の場合にのみ、そのフォルダーから
installLocalPythonPackages.bat
を実行して、パラメーターと同じフォルダーへの完全なパスを渡します。installLocalPythonPackages.bat "C:\python-3.6.6-win-x64-0.0.1-offline\0.0.1"
azdata をオフラインでインストールする
インターネット にアクセスできるコンピューターと Python で、次のコマンドを実行して、Azure Data CLI (
azdata
) パッケージをすべて現在のフォルダーにダウンロードします。pip download -r https://aka.ms/azdata
ダウンロードしたパッケージと
requirements.txt
ファイルをターゲット コンピューターにコピーします。前のファイルをコピーしたフォルダーを指定して、ターゲット コンピューターで次のコマンドを実行します。
pip install --no-index --find-links <path-to-packages> -r <path-to-requirements.txt>
kubectl をオフラインでインストールする
kubectl をオフライン コンピューターにインストールするには、次の手順に従います。
curl を使用して、選択したフォルダーに kubectl をダウンロードします。 詳細については、「curl を 使用して kubectl バイナリをインストールする」を参照してください。
フォルダーをターゲット コンピューターにコピーします。
プライベート リポジトリからのデプロイ
プライベート リポジトリからデプロイするには、 デプロイ ガイドで説明されている手順を使用しますが、プライベート 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
環境変数で指定できます。
Next steps
ビッグ データ クラスターのデプロイの詳細については、「 Kubernetes に SQL Server ビッグ データ クラスターをデプロイする方法」を参照してください。