ミッションクリティカルLinuxとオープンソース
2000年頃から、公共やサービスプロバイダー以外にも、大規模な基幹業務、金融、通信、流通、軍用システム等に、オープンソースソフトウェアとLinuxが次々と採用されました。これらのシステムに採用されているOSは、一般の消費者が使用するOS環境(WindowsパソコンやMac OSなど)とは大きく異なり、業務用で使われる「サーバーOS」です。
そのため、一般的に「エンタープライズLinux」と呼ばれています。エンタープライズLinuxは、その名のとおり、企業向けの利用を想定したLinuxであるため、不具合の調査、修正プログラムの提供などのベンダーの保守サポートが受けられるのが特徴です。
2000年初頭のLinuxサーバーは、企業内の非常に小規模な部門でのWebサーバーやファイルサーバーなどでの利用が多かったのですが、最近は、「ミッションクリティカルLinux」と呼ばれる停止が許されない基幹業務(ビジネスクリティカルやミッションクリティカルという言葉で表現されることが一般的です)などにおいても、Linuxの採用も見られるようになりました。
ミッションクリティカルLinuxは、非常に高性能で頑健なハードウェア基盤(ミッションクリティカルサーバー)等で稼働することを前提とし、その上で稼働するLinux OSは、通常のLinux OSと変わりはありませんが、ベンダーによるミッションクリティカル業務向けの手厚い保守サポートを受けることが可能です。
ミッションクリティカルLinuxにおいては、業務をできるだけ停止させないように、災害対策(Disaster Recovery、通称DR)用のミドルウェアや、障害が発生しても別のサーバーにアプリを再起動させる仕組みを提供するHigh Availabilityクラスタ(通称HAクラスタ)を構成するのが一般的です。
HAクラスターを構成したミッションクリティカルLinuxシステムでは、主に、基幹業務向けの商用のクローズドソースのデータベースソフトウェアを稼働させることが一般的ですが、最近では、オープンソースのデータベースソフトウェア(通称OSS-DB)をミッションクリティカルサーバー上で稼働させることも検討されるようになりました。
近年、ミッションクリティカルサーバー領域のデータベースにもオープンソースの波が押し寄せているのです。ハードウェアは、頑健なミッションクリティカルサーバーなどを使用しながらも、データベースをオープンソースに切り替えられないかという試みが、実は、日本においても盛んに行われています。
代表的なオープンソースのデータベースソフトウェアとしては、PostgreSQL(ポストグレス)などがあげられます。PostgreSQLは、世界的にみても日本で盛んに動作確認や性能検証などが行われており、技術者コミュニティでも議論が精力的に行われています。
ちなみに、PostgreSQLについては、日本ヒューレット・パッカードのテクノロジーコンサルティング部隊に所属する篠田典良(しのだのりよし)が執筆を手掛ける通称「篠田の虎の巻」が公開されており、ミッションクリティカルシステムに携わるクローズドソースのデータベース技術者や、OSS-DB技術者の間で広く知られています。筆者のHewlett Packard Enterpriseの公式ブログでも情報を公開していますのでぜひご覧ください。
PostgreSQLの技術者に愛読されている「篠田の虎の巻」に関する情報:
無停止型サーバーとオープンソース
障害が発生し、停止すると新聞やニュースに掲載されてしまう「絶対にデータ消失や停止が許されないミッションクリティカル領域」には、無料で入手できるLinux OSではなく、無停止型のOSである「Nonstop OS」や、UNIXと高可用性ソフトウェアの組み合わせなどが採用される傾向にあります。
絶対に停止が許されないシステムとしては、例えば、顧客の決済処理システム、金融システムなどがあげられます。無停止型サーバーで稼働するNonstop OSは、システムの無停止稼働を想定したハードウェアの機構と協調して動作し、OS自体も無停止を想定した仕様になっているのです。
それらの絶対に停止しては困るシステムには、通常、商用のデータベースソフトが導入され、「バックエンドシステム」と呼ばれます。インターネットやLANなどを経由して、顧客が操作するクライアント端末の操作側から見ると、奥にある「バックエンド」、すなわち、後方に位置づけられるサーバーシステムです。
このバックエンドシステムは、データベースソフトウェアが稼働することが一般的ですが、データベースに格納される顧客データ、決済データ、座席の予約状況などは、データの不整合が起こるとユーザー側(現場)で大混乱が発生し、金銭的な損失だけでなく、企業の信用・信頼失墜を招き、企業活動の存続に関わります。
そこでは、おもにオープンソースではなく、商用のデータベースエンジンが利用されており、データベース手掛けるベンダーの手厚いサポートが得られます。そもそも、無停止型の専用ハードウェアで稼働する非オープンソースのデータベースソフトウェアは、そのような無停止システム用に最適化されており、ハードウェア、OSと連携し、データの不整合が発生しない仕組みなどの機能が盛り込まれています。
近年では、このNonstop OSの上で、Javaを稼働させる「無停止型Javaプラットフォーム」が実現できるようになり、無停止型サーバーとオープンソースとの親和性が高くなってきています。Javaというと、Webブラウザの機能と思われるかもしれませんが、Javaをサーバー側で稼働させるJavaアプリケーションサーバー(通称APサーバー)などを無停止型サーバーで稼働させることができます。
このJavaアプリケーションとしては、JBoss(ジェイボス)が有名で、Linuxだけでなく、Nonstop OS上でも稼働できるのです。また、JBossと連携して、様々なオープンソースが稼働できます。例えば、あまり聞きなれないかもしれませんが、Apache MyFacesとよばれるユーザーインタフェースを提供するソフトウェアや、Java開発者向けのフレームワークを提供する「Spring Framework」などのオープンソースが無停止型サーバーで稼働できるようになっています。
UNIXサーバーとオープンソース
無停止型サーバーと肩を並べるのが、従来からミッションクリティカル領域において定評のあるUNIXサーバーです。無停止型サーバーで稼働するNonstop OSなどとは異なり、UNIXサーバーでは、先述のミッションクリティカルLinuxサーバーと同様に、HAクラスターを構成するのが一般的です。
このようなUNIXシステムでは、主に非OSSのクローズドソースのデータベースソフトウェアなどを稼働させることが一般的ですが、機能面、性能面において、非常に頑健で安定したシステムを実現することが可能です。UNIXシステムにおいて、データベースなどは、クローズドソースのものが利用されるのが一般的ですが、開発環境向けのコンパイラやスクリプト言語、Webサーバーソフトウェア、管理者が普段使うクライアント用のアプリケーションなどは、UNIX OS対応のオープンソースが存在します。
ちなみに、筆者が学生時代だった1990年代、研究室でUNIXとLinuxが混在していたのですが、ワークステーションで稼働するUNIXシステムにおいては、便利なソフトウェアがオープンソースで次々と登場していた時代であり、いかに魅力的なオープンソースソフトウェアを個人のUNIXワークステーションで稼働させるかが流行した時代でした。
また、商用のUNIXでは、各社ベンダーがUNIX向けの定番オープンソースをパッケージ化してユーザーに提供している場合が少なくありません。例えば、ヒューレット・パッカード・エンタープライズが提供するHP-UXと呼ばれる商用UNIX OSでは、「HP-UX Internet Express」と呼ばれるオープンソースソフトウェアコレクションが提供されています。
しかも、これらの定番のオープンソースソフトウェアは、UNIX上のコマンドラインだけでなく、WebminとよばれるGUIを使って管理ができるようになっています。巷では、「オープンソースが稼働するOS = Linux」というイメージがどうしても先行しがちですが、UNIXは、Linuxと同様に、オープンソースソフトウェアの発展に大きく寄与し、ともに歩んだ長い歴史があるのです。
Webmin on HP-UXに関する情報:
https://www.webmin.com/hpux.html
以上のことから、ITシステムに求められる業務要件によってサーバーハードウェア自体が異なり、さらにその上で稼働するOSの種類やオープンソースも異なることがわかります。ミッションクリティカルLinuxのように、「オープンソース = Linux」というイメージがありますが、Nonstop OSなどの非Linux環境においても、オープンソースソフトウェアが適材適所で使われることを知っておく必要があります。
以上で、ミッションクリティカル領域におけるサーバーシステムとオープンソースの関係をざっくりとご紹介しました。次回は、より様々なサーバー用Linux OSとIT基盤についてご紹介します。お楽しみに。
【筆者プロフィール】
古賀政純(こが・まさずみ)
日本ヒューレット・パッカード株式会社
オープンソース・Linuxテクノロジーエバンジェリスト
兵庫県伊丹市出身。1996年頃からオープンソースに携わる。2000年よりUNIXサーバーのSE及びスーパーコンピューターの並列計算プログラミング講師、SIを経験。2006年、米国ヒューレット・パッカードからLinux技術の伝道師として「OpenSource and Linux Ambassador Hall of Fame」を2年連続受賞。プリセールスMVPを4度受賞。
現在は、日本ヒューレット・パッカードにて、Hadoop、Spark、Docker、OpenStack、Linux、FreeBSDなどのサーバー基盤のプリセールスSE、文書執筆を担当。日本ヒューレット・パッカードが認定するオープンソース・Linuxテクノロジーエバンジェリストとして、メディアでの連載記事執筆、講演活動なども行っている。Red Hat Certified Virtualization Administrator, Novell Certified Linux Professional, Red Hat Certified System Administrator in Red Hat OpenStack, Cloudera Certified Administrator for Apache Hadoopなどの技術者認定資格を保有。著書に「Mesos実践ガイド」「Docker 実践ガイド」「CentOS 7実践ガイド」「OpenStack 実践ガイド」「Ubuntu Server実践入門」などがある。趣味はレーシングカートとビリヤード。