第4回:仮想化環境の可用性 ~1~

インフラのプロが語る!仮想化のススメ

皆さま、こんにちは。
株式会社システムエグゼ インフラソリューション部の土谷と申します。
4月に入り、かなり暖かくなってきましたね。弊社では4月より今年も新入社員を迎え、会社の雰囲気も心なしか若返った感じがしている今日この頃です。

突然ですが、皆様はスマートフォンを利用されていますでしょうか。
ちょっとした調べ物をする時やGPS機能を使用した道案内、外出先でもメール確認などが手軽に利用できたりして、 便利な世の中になったものだと改めて気付かされます。


日経新聞の記事などを見ても、スマートフォンやタブレットに関する掲載記事が無い日はないって感じるくらい、急速に広まってきていますよね。
業界柄、専門としている部署(システムインフラ)柄かもしれませんが、弊社の中でのスマートフォン普及率もかなり高いと思います。
弊社の中での私の独自調査で、私の身近な範囲でのスマートフォン普及率は90%(10人中9人は保持)まで浸透しています。
(何を隠そう、周りで保持していない1人は私だけだったりして・・・)

私はいわゆる、ガラケーを何年も愛用していますが、全く壊れる気配もなく、健全そのものです。
部下からは私の携帯は「化石」のように扱われ、不当な差別を受けている現状ですが、先月、ようやく重い腰を上げ、 スマートフォンではないのですが、タブレット端末(iPad)を買ってみました。

タブレット端末を購入したのは、大きな目的があるわけではなく、単純に自宅でインターネットをする際、 パソコンのある部屋に行き、パソコンを立ち上げ、OSを起動しきるまで待ち、ブラウザを立ち上げるまでの時間が異常に長い・・・
というだけの単純な理由でした。

実際に使ってみたところ、インターネットの利用だけではなく、様々なアプリを入れることで、使用用途が格段に上がることが実感できました。
個人差はあると思いますが、我が家では3才の息子が「ひらがな」や「数字遊び」などを楽しく学んでいることもあったりして、 意外と使用用途は広いな・・・ってことが感じられています。今のところ、イイトコづくめです。

何かの情報サイトで見たことがあるのですが、「タブレットは「電子レンジ」のようなものだ」と表現されていたのですが、まさにその通りって思いましたね。
冷めたいものを温めるだけであれば、コンロと鍋があれば解決ですが、電子レンジがあればボタン一つで適切な温かさを提供できる・・・
っていうような手軽さ的な要素がタブレット端末にあるような気がします。

そんなわけで、結果的に我が家のインターネット環境は「パソコン」と「タブレット」の両方からアクセスすることができ、 どちらかが壊れてしまっても、インターネット閲覧は利用可能…という高可用性を確保できることになりました。
いつ息子に壊されても安心です。とはいえ、タブレットの方を壊されると・・・泣きますね。

前置きが必要以上に長くなってしまいましたが、今日は仮想環境の可用性についてお話したいと思います。

『可用性』ってなに?

あまり馴染みの薄い言葉かもしれませんが、「可用性」という言葉を皆様はご存知でしょうか。
システムを作り上げていく上でお客様の要件定義を行っていく際、 情報処理教科書的にはRASISに基づいた観点でシステム要件を盛り込めているか…
という点が要件定義フェーズの際のチェックポイントにあげられたりします。

RASISとは以下の略称を指します。

  • Reliability(信頼性)
  • Availabirity(可用性)
  • Serviceability(保守性)
  • Integrity(保全性)
  • Security(機密性/安全性)


「可用性」とは、システムをいつでも利用できる状況を実現できるか・・・
という指針であり、稼働率の高さや、 システム停止時間の短さに対する指標になります。

お客様の業務を支えるシステム自体が、いつでも利用できる環境を作れていなければ、 お客様の業務自体に支障を与えてしまうことにつながるため、システム規模の大きさに比例して、 「可用性」に対する要求レベルは高くなっていくことが一般的です。

以前もお話したことの繰り返しですが、仮想環境では複数のシステムを一つのサーバに統合して構成されている関係で、 当該サーバへのシステム集約率が高ければ高いほど、サーバの停止や損失が発生した場合の業務影響は甚大なものとなっていきます。
これは仮想化環境における最大のリスクであると言えます。

可用性を高めるための方策

それでは、こうしたリスクに備えるための方策として何があるかというと、最も簡単な解は「サーバの冗長化」です。
物理的に同等スペックのサーバ筺体をあらかじめ用意しておいて、一方の稼働系サーバに何らかの障害 (ネットワークアクセスができない、ハードウェア障害など)が発生した際に、こうした障害を自動的に検知し、 一方の待機系サーバに運用を切り替える・・・といった仕組みです。

これは、仮想化環境のみならず、一般的な物理サーバのシステム構成においても普及しているものであり、 これらの仕組みは、CLUSTERPRO、LifeKeeper、PRIMECLUSTERといった商用クラスターウェアやMicrosoftのMSFC、 オープンソースのHertbeatなどの製品群によって実現されています。
語るまでもなく、これらの技術は既に枯れた技術であり、可用性を高く求められるシステムでは、 何らかの仕組みで「サーバの冗長化」が取り入れられています。

また、これらのクラスターウェア製品を使用せずに、単純に物理的に同等スペックのサーバ筺体を用意し、同じようなシステム、 アプリケーション構成を作っておいて電源を落とし、有事の際には、サーバ管理者が手動で電源を起動し 業務サービスを継続させるといった、「コールドスタンバイ」と呼ばれる方式も、お金をかけずに可用性を高める為の有効な手段であると言えます。

仮想環境における可用性について

仮想環境においても、物理環境と同様の方式で「サーバの冗長化」を構成することが可能です。
VMware 製品では、「VMware HA」、Hyper-vでは「MSFC」との組み合わせによる冗長化が一般的です。
いずれも障害検知は製品側で行われ、有事の際には自動で系切り替えが発生します。
これらの仕組みを使用するためには、いくつかの構成やライセンス面での前提をクリアしておく必要はありますが、 仮想環境に搭載するシステムの業務停止を避ける意味で、仮想化システムを取り入れる際には、是非とも導入をご検討いただきたい内容と言えます。

次回はVMware HAについて、もう少し掘り下げてお話したいと思います。