Microsoftは「SQL Server on Windows container」のBetaプログラムを当面の間、停止することを発表しました。コンテナベースのSQL Serverは今後、既に一般提供中の「SQL Server on Linux container」のみとなります。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
Microsoftは2017年、Windows Server Coreベースの「SQL Server 2016」と「SQL Server 2017」のコンテナイメージ「SQL Server on Windows container」を、Betaプログラムとして提供開始しました。Betaプログラムは、テストや開発目的でのみ、利用できることを意味しています。
その後もBetaプログラムのまま、Docker Hubを通じてイメージが提供されてきましたが、3年以上、更新されたイメージが提供されることはなく、次のメジャーリリースの「SQL Server 2019」のコンテナイメージが提供されることもありませんでした。
そして、2021年7月5日(米国時間)、現在のエコシステムの課題や使用状況を考慮し、Betaプログラムを当面の間、停止することを発表しました。状況の変化によっては、この決定を再検討することもあるとのことです。
SQL Server on Windows containerのBetaプログラム終了により、Docker Hubの以下のリポジトリで提供されているイメージとタグは、今後削除され、利用できなくなる予定です(2021年7月5日の発表時点では利用可能、画面1)。
SQL Server 2017以降、SQL ServerはWindowsだけでなく、Linuxにも正式に対応しています。Linux版SQL Serverは「SQL Server on Linux」とも呼ばれており、対応するLinuxディストリビューション向けのインストールパッケージ、およびLinuxベースのコンテナイメージとして提供されています。LinuxベースのコンテナイメージはSQL Server 2017リリース当初から一般提供されており、運用環境(Developerエディションを除く)で利用できます。
SQL Server on Linuxは当初から、イメージサイズはSQL Server on Windowsの10分の1以下と取り扱いが容易で、リソース使用量も少ない(最小2GB)という利点がありました。現在はUbuntuベースのSQL Server 2017とSQL Server 2019のコンテナイメージが提供されており、新たなセキュリティ修正プログラムや累積更新プログラム(CU)を含む更新イメージが提供されています。
SQL Server on Linuxは、LinuxベースのコンテナホストおよびKubernetesノードにデプロイして実行できます。Windows版およびMac版の「Docker Desktop Community」のLinuxコンテナ環境(Windows版はWSL2《Windows Subsystem for Linux 2》バックエンド)にイメージをデプロイし、テストや開発に利用することもできます(画面2)。
SQL Server on Linuxは、Windows Server 2019以降の「Mirantis Container Runtime(旧称、Docker Enterprise)」と、「Windows 10」版Docker Desktop Community(Hyper-Vバックエンド)の「LCOW(Linux Containers on Windows)」でも動作する可能性はありますが、筆者が試した限りでは終了コード「4294967295」を表示し、数秒で終了してしまいました。
LCOWはDocker Engineの「experimental(実験的)」な機能であるため、運用環境では利用できません。また、実はLCOWのサポートは正式版になることなく、2020年で開発終了となりました。LCOWのリポジトリは2020年3月にアーカイブとして残されています。Docker Desktop Communityについては、WSL2バックエンドの正式サポートと入れ替わる形で、Docker Engineバージョン20.10(2020年12月リリース)で廃止という扱いになっています(機能の削除はまだ行われていません)。
コンテナ技術で実現されている「Azure Cloud Shell」は当初、「Azure PowerShell」が「Windows Server Core」(Windows Server 2016)ベースのWindowsコンテナとして、Azure CLIがLinuxベースのコンテナとして登場し、その後、「.NET(旧称、.NET Core)」とクロスプラットフォームの「PowerShell(旧称、PowerShell Core)」が正式にリリースされ、Azure Cloud ShellはLinuxベースに一本化されました。Azureのその他のコンテナ対応もまた、Linuxベースのものが先行しています。Windowsコンテナは技術的には興味深いものの、実用的ではないということが実証されてしまった感じがします。
ただ、Windowsのコンテナ技術は、Windows標準のセキュリティ機能(仮想化ベースのセキュリティ《VBS》、Windows Defender Application Guard、Windows Sandbox、Windows Subsystem for Linux 2など)に大きく応用されているのも事実です。
岩手県花巻市在住。Microsoft MVP:Cloud and Datacenter Management(2020-2021)。SIer、IT出版社、中堅企業のシステム管理者を経て、フリーのテクニカルライターに。Microsoft製品、テクノロジーを中心に、IT雑誌、Webサイトへの記事の寄稿、ドキュメント作成、事例取材などを手掛ける。個人ブログは『山市良のえぬなんとかわーるど』。近著は『Windows版Docker&Windowsコンテナーテクノロジ入門』(日経BP社)、『ITプロフェッショナル向けWindowsトラブル解決 コマンド&テクニック集』(日経BP社)。
Copyright © ITmedia, Inc. All Rights Reserved.