移植性に注目
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.
この記事の著者
関連記事
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
急増する「AIはこう言ってる」マン 判断を狂わせる「AI忖度」を防ぐには?
-
2
取手市がVDIと決別した理由 更改費用「4倍超」を約1.7倍に圧縮
-
3
「Excel至上主義」の終わらせ方 丸2日の手作業地獄から情シスと現場を救うには
-
4
221人調査で分かった「情シス最大のストレス」は?
-
5
「データストレージの活用方法」に関するアンケート
-
6
「AI時代の統合基盤・エンタープライズAI管理」に関するアンケート
-
7
自宅のWi-Fiが「遅い」「途切れる」本当の原因は? Dellが推奨する鉄則
-
8
本当に安いPCで十分か? “すぐ重くなる”を防ぐノートPC選びの絶対条件
-
9
100億円の「Linux更新」を回避 みずほ銀行が選んだ“おきて破り”のRHEL延命策
-
10
Claudeの不可視透かしに批判殺到 著作権消失や誤判定に潜む企業リスク
ホワイトペーパーランキング PR
-
1
年収2000万「クラウドセキュリティのプロ」になれる資格とは
-
2
セキュリティソフトをすり抜ける標的型攻撃メール、不審メールの見破り方とは?
-
3
Windows Updateの通信集中で回線が逼迫、ネットワーク刷新事例に学ぶ解決策
-
4
財務を戦略的組織へ進化させるAI活用術、4つの主要な障壁と解消方法
-
5
「NAS」「SAN」「DAS」は何が違う? いまさら聞けないストレージの基礎
-
6
“あのファイル転送”で暗躍するノーウェアランサム
-
7
標的型攻撃メールを見破るには? サンプル文面を例に傾向を解説
-
8
商用利用の安全性を確保し大量のコンテンツを高速で生成する、AI活用の秘訣
-
9
マンガで解説、1日で生成AI環境を構築できるワークショップの中身とは?
-
10
Dark AIが台頭する時代の新発想、「より高度なAIで対抗する」具体的方法とは?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー