移植性に注目
Windows Server 2016のコンテナ機能が災害復旧に有効な理由
Windowsコンテナは簡単に移植できることから、確実な災害復旧の機会を提供する。だが、まずはこれをいつ、どう利用すべきかの詳細について理解しておく必要がある。
「Windows Server 2016」で新たに搭載されたコンテナ機能が大きな注目を集めている。このコンテナは「Docker」をベースとしていてアプリケーション仮想化に利用でき、アプリケーションの移植を可能にするという付加価値もある。WindowsコンテナはデスクトップPCで作成し、データセンターのサーバで運用して、コードに特段手を加えることなくクラウドに移植できる。コンテナは移植性が高く、アプリケーションをパブリッククラウドや代替データセンターに簡単に移せることから災害復旧(DR)のための選択肢としても興味深い。
Windowsコンテナのコンポーネントと移植問題
コンテナは移植可能ではあるが、手当たり次第にコンテナを1つの環境から別の環境へと移植すればコンテナ化されたアプリケーションに問題を生じさせることもある。そうした問題は、コンテナの仕組みに直接的に起因する。
Windows Server 2016では、「Windows Serverコンテナ」と「Hyper-Vコンテナ」という異なる2種類のコンテナを作成できる。いずれの場合も、Windowsコンテナはコンテナホストによって実行される。ホストはコンテナが置かれる物理マシンまたは仮想マシンを指す。
コンテナホストは仮想ホストと同じようなものと考えがちだが、実は大きな違いがある。仮想マシン(VM)は完全な自己完結型で、自前のOSやハードウェア設定などを持つ。これに対してコンテナには自前のOSは内蔵されていない。
コンテナOSイメージはそれぞれのコンテナのOSとして機能し、一般的に、複数のコンテナが共通のコンテナOSイメージを共有する。このアプローチの利点として、一連のVMをホスティングしている仮想ホストのように、複数のサーバOSを実行することによってホストリソースを浪費せずに済む。コンテナOSイメージは複数のコンテナによって共有できるため、OSイメージは読み込みのみに対応する。
コンテナは主に、コンテナイメージとサンドボックスの2つのコンポーネントで構成される。イメージは一般的に、仮想化されたアプリケーションを保存する。例えば1つのコンテナにはアプリケーションのバイナリとレジストリキーなどが保存されている。イメージは読み込みしかできない。レジストリの更新など書き込み操作はコンテナのサンドボックスに対して行われる。
コンテナは移植を想定した設計になっているが、移植性に影響を及ぼす要素が幾つかある。その1つがコンテナOSイメージの依存関係だ。例えばWindows Server 2016をOSイメージのベースとするWindows Serverコンテナを作成したとする。災害が起きてそのWindowsコンテナを、クラウドベースコンテナホストでホスティングされたパブリッククラウドに移したとしても、恐らくLinuxホスト上でそのコンテナを機能させることはできない。WindowsとLinuxは両方ともDockerコンテナをサポートしているが、その根底にあるカーネルの違いはあまりに大きい。
クラウドベースのWindows Serverコンテナホストでコンテナを正しく実行するためには、そのコンテナのOSイメージのコピーなど、依存関係にあるイメージを必要とする。
幸いなことに、コンテナOSイメージは標準化が進む傾向にある。Windows Server 2016環境ではコンテナイメージパッケージプロバイダーをインストールし、それを使ってコンテナOSイメージを生成できる。Windows Server CoreベースのOSイメージを作成したい場合は、Dockerのインストールと設定が済んでいることを前提として、以下の3行のコマンドを入力する。
Install-PackageProvider ContainerImage -Force
Install-ContainerImage -Name WindowsServerCore
Restart-Service Docker
データを移行する際の注意点
コンテナの移植性に関する最大級の課題としてコンテナデータボリュームの移行が挙げられる。コンテナデータボリュームではコンテナデータディレクトリの作成や、既存のデータディレクトリの追加ができる。データボリュームを複数のコンテナ間で共有することも可能だ。
大切なのは、データボリュームはコンテナの外に存在するという認識だ。たとえそれを使っているコンテナを削除したとしても、データボリュームは残る。
コンテナが実行中または一時停止中であれば、移行するには一般的にDockerエクスポートコマンドを使う。もし実行していないコンテナであれば、Docker保存コマンドを利用する。両コマンドともコンテナをファイルに保存して、別のホストへ移植できる状態にする。問題は、データボリュームがコンテナの外にあることから、エクスポートされたファイルに含まれないという点だ。
現時点でデータボリュームを扱う最善の方法は、バックアップしておいて、コンテナを移行した後に復旧することだ。
Windowsコンテナは、コンテナ化されたアプリケーションをクラウドや代替ホストに移植できることから、災害復旧のための優れたツールになり得る。だが、依存関係が崩れることを防ぐため、あるいはデータボリュームを失うことを防ぐためには慎重さが求められる。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[株式会社うるる] 「入札市場」攻略ガイド:効率的に落札するためのポイントを徹底解説 -
製品資料
[株式会社うるる] 入札情報に特化した「販路拡大」「効率化」のためのサポートツールとは? -
市場調査・トレンド
[株式会社うるる] 公共入札に成功する企業と失敗する企業の「5つの違い」 -
製品資料
[日本ビジネスシステムズ株式会社] 専門家が教える、Microsoft 365の「テナント統合/分離」を成功に導く秘訣 -
製品資料
[rakumo株式会社] Microsoft 365での情報埋没を防ぐ、社内ナレッジを資産化する情報ポータル活用
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
2
半数がブルーカラー転向を視野に? ベテランエンジニアを追い込む“54歳の壁”
-
3
生成AIが普及しても「技術書」を手放せないエンジニアの本音
-
4
“アジャイルの壁”に挑むオリックス生命がIBMの開発管理ツールを選んだ理由
-
5
PHP脆弱性「PHP2Shell」で2260万件に影響 情シスの緊急チェックリスト
-
6
「テザリング依存」に潜む落とし穴 “遅いVPN”を解消するネット構築術
-
7
ライオンが挑む「守りのIT」脱却:Google Cloudで加速させるデータ駆動型経営
-
8
IT製品の導入に関するアンケート「セキュリティ」編
-
9
「Microsoft 365」が乗っ取られる MFAを破る“本物の画面”の恐怖
-
10
Claude利用8割のGMO、AI人材の評価軸が「トークン管理」に変わった
ホワイトペーパーランキング PR
-
1
AI駆動攻撃にどう対抗する? 超速の攻撃からエンドポイントを保護する方法
-
2
2026年のサイバーセキュリティには何が必要か? 最新データに学ぶ傾向と対策
-
3
経験豊富な即戦力人材に直接アプローチできる、「攻めの採用」への転換術
-
4
「IT史に名を残すシステム障害」8選
-
5
最速72分でデータが流出? 最新の脅威トレンドや侵入手法から分かった防衛策
-
6
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
7
AI駆動開発のスピードと安全性を両立 「品質・セキュリティ管理」の実践ガイド
-
8
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
-
9
「標的型攻撃メール」事例・サンプル集
-
10
Microsoft 365のメールセキュリティ、3つの“死角”と追加で検討すべき対策とは
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー