適用対象:Linux 上の SQL Server
Kubernetes でSQL Server インスタンスをネイティブに作成して管理します。
SQL ServerをKubernetesで管理されるDockerコンテナにデプロイしてください。 Kubernetes では、クラスター ノードで障害が発生した場合に、SQL Server インスタンスを持つコンテナーが自動的に回復する可能性があります。
SQL Server 2017はKubernetesにデプロイ可能なDockerイメージを導入しました。 画像はKubernetes永続ボリュームクレーム(PVC)で設定できます。 Kubernetes は、コンテナー内のSQL Server プロセスを監視します。 プロセス、ポッド、コンテナ、ノードが故障した場合、Kubernetesは自動的に別のインスタンスをブートストラップし、ストレージに再接続します。
Kubernetes 上の SQL Server インスタンスを含むコンテナー
Kubernetes 1.6以降はストレージクラス、永続ボリュームクレーム、Azureディスクボリュームタイプをサポートしています。
この構成では、Kubernetes はコンテナー オーケストレーターの役割を果たします。
上の図で、mssql-server は "ポッド" 内の SQL Server インスタンス (コンテナー) です。
レプリカ セットによって、ノード障害が発生した後でポッドが自動的に復旧されます。 アプリケーションがサービスに接続します。 このケースでは、サービスは、mssql-server の障害後も変化しない IP アドレスがホストされているロード バランサーを表します。
Kubernetes により、クラスター内のリソースが調整されます。 SQL Server インスタンス コンテナーをホストしているノードで障害が発生すると、SQL Server インスタンスを含む新しいコンテナーがブートストラップされ、同じ永続ストレージにアタッチされます。
SQL Server on Linuxは、Kubernetes、OpenShift、DH2i DxEnterpriseのコンテナをサポートしています。
関連するコンテンツ
- SQL Server Linux コンテナーをデプロイして接続する
クイックスタート: Azure または Red Hat OpenShift で SQL Server コンテナー クラスターをデプロイする方法 - チュートリアル: DH2i DxEnterprise を使用して 3 ノード Always On 可用性グループを設定する