IBM i のウンチクを語ろう
~ その59:雲をつかむようなクラウドの話
皆さん、こんにちは。いつかは取り上げたいと思いながらも、どう料理したものか私の頭の中で考えがなかなかまとまらなかったテーマがクラウドです。IT全てがクラウド化の方向に向かう、といった論調も世間にあれば、オンプレミスとクラウドとを連携させたハイブリッド型が理想、さらにクラウドも単一ではなく複数のものを組み合わせて利用する時代が来ている、に至るまで、訴求の内容は各社各様です。時流に乗り遅れまいと、クラウド事業者の中にはポリシーはさておきクラウドあります的な看板の掲げ方も少なくありません。何か特定のケースが理想形だと言えるのか、用途に応じて選定するべきなのだとしたらその基準は何なのか、わかり易い一般的な指針は見あたらないので、実際にはケースバイケースと考えるべきなのでしょう。
一見混沌としてはいますが、上記それぞれの根本的な相違は、アプリケーション稼働環境をどこにどのように配置するべきか、という点にあります。現在想定されているバリエーションは、社内外のどちらに保持するのか、そして一ヶ所に集約するのか複数箇所に分散するのか、程度のものしかありません。ここで複数箇所分散方式は大規模・複雑、さらにはコスト高になりそうなので、中堅・中小の企業が選択肢として検討するケースにはなかなか遭遇しません。既存オンプレミスのシステムをそのまま継続するのか、クラウドに置換えるのか、結局は二者択一になるようです。
集約か分散かと問われたら、インフラは集約しておいた方が運用負荷の観点から有利になる事は否定しようがないと思うのですが、歴史的にはITのトレンドは両者の間を揺れ動いていました。1940年代のコンピュータ黎明期以降数十年の間は、ネットワーク整備も進んでおらず複雑な事は実現できなかったので、集約しか選択肢がありませんでした。その後1990年代になってバブル崩壊などITコスト削減圧力が強まる中で、オープン系と呼ばれる性能的には物足りないけれども廉価なサーバーが登場します。汎用機やオフコンなどといった旧来機一台を、初期導入コスト削減のためにダウンサイジングしながら、複数台のサーバーに置換える分散化が新たなトレンドになりました。2000年代になってオープン系サーバーの性能が向上しインターネットも整備されるようになると、仮想化テクノロジーを活用した集約化の方向に再度向かっています。ハードウェアやソフトウェアは年々価格性能比が向上するのに対して、システムを管理するための人件費の大きさが目立つようになったため、TCO(総所有コスト)の観点から「軽量化」を狙ったわけです。
冒頭に述べたようにクラウドには集約と分散のどちらの実装方法もあり得ます。より優れた多様性あるアプリケーションを実現するためには、単一のシステムないしクラウドでは十分に要件を満たせないという主張が現代の分散型の背景にあります。スケールアウト、すなわち並列度を高める事による拡張性や、機能単位にモジュール化されていることによるアプリケーション保守の容易性を追求するケースも考えられます。歴史的に見てもSOA(サービス指向アーキテクチャ)、Webサービス、APIエコノミー、マイクロ・サービスなど様々な言葉遣いで分散型アプリケーションの利便性・優位性が主張されており、その発想がクラウドにも適用されているわけです。もちろんバラバラのままでは運用は面倒です。結局のところ、アプリケーションの多様性や保守の容易性と、これらに対する運用性のどちらを取るべきか、そのバランス感覚は企業によって異なる点が、先に述べた一般的な指針不在の理由なのだと思います。
アプリケーションを分散させる方を選択する場合であっても、運用性をできるだけ損なわないための手段が必要になります。例えば2000年代以降におけるサーバー統合と運用性向上のために、PowerVMとかVMwareのようなハイパーバイザと呼ばれる製品が採用されました。それまでバラバラに存在していたマシンをソフトウェアの形で実装することで、一台の物理的なマシン上で実質的に複数台のマシン(仮想マシン)を同時稼働させる事を可能にしたものです。さらにシステム資源や運用を統合管理するための各種機能を付加することで、利便性を追求しました。クラウド環境において管理の単位になるのはアプリケーション稼働環境であるコンテナです。仮想マシンと似たような位置付けにあると言えますが、中にOSを含まないために軽量化されており、迅速に多数展開できるという相違点・メリットがあります。そして複数の分散されたコンテナを統合管理するために、オープンソースのKubernetesないしその製品版であるOpenShiftが利用されています。アプリケーションの多様性に対する必要性がより強いためか、まずは大手企業による採用例が増えつつあるようです。
さて、複雑・面倒な事は極力避けたい企業の立場に立って考えてみたいと思います。かつて汎用機やオフコンから分散型のオープンサーバーへと舵を切ることは、一台体制からダウンサイジングを前提とする複数台体制へ、すなわちより複雑なシステム構成・ネットワーク構成へと移行する事を意味していました。社内にノウハウが無ければ外部に委託するしか方法がありません。それを請け負っていたのが1990年代に雨後のタケノコのように生まれたシステムインテグレータ(SIer)と呼ばれる企業群であり、日本における新たな産業を形成しました。ITを本業とはしない多くの企業のシステム構築においては、社内向けにITコストを投じるのではなく、外注化によるITコスト削減がトレンドであると同時にあるべき姿とされるようになります。1991年に日本経済のバブルが崩壊し、各企業におけるコスト削減圧力がより一層強まったことは、このトレンドに対して拍車をかけることになりました。当時IBM i のビジネスを推進する立場にあった私にとっては、ダウンサイジングは暴風のような逆風でした。
全てとは言いませんが、どうにかすると「外注」は安易な「丸投げ」になってしまいがちです。ユーザー企業は自社アプリケーションであるにもかかわらずその中身がわからない、システムインテグレータに保守費を支払いながら実は自ら積極的にブラックボックス化を後押ししてしまっていた、という皮肉な結果に気付き始めたのが昨今です。ブラックボックスを解消しDXを推進しないと競争力が失われるという危機感を共有する今日だからこそ、初めて言える事なのかもしれませんが。いずれにせよ、トレンドはあまりアテにならない、歴史がいずれ成否を判断する、という経験則はITにおいても当てはまるようです。
このままDXとクラウドの時代へと進んだらどうなるのでしょう。DXとはモダナイゼーション、すなわちIT刷新の事であるとする誤解が見られると経産省の「DXレポート2」は指摘しています。DX推進という旗印の元でクラウド化を推進する、そして現実的に期待される効果はコスト削減、という発想はありがちなのかもしれません。コスト削減自体は良いのですが、これを最終ゴールにしない事が重要なのだと思います。もし現行システムがブラックボックス化しつつあるのだとしたら、インフラを見直す機会に旧来のアプリケーションにメスを入れることもあわせて検討いただきたいところです。現状に蓋をしたままクラウド化しただけでは、レガシー企業文化の変革というDX本来の目的に目を背けながら、ブラックボックス化のさらなる進行を放置することになってしまうかもしれません。
ではどうすれば良いのか、当コラム「DXレポート2を読んでみた」のパート1と2がヒントになれば幸いです。そしてクラウド事業者選定においては、月額料金のみで比較するのではなく、状況に応じて様々な角度から検討されることをお勧めします。特にブラックボックス解決のための支援を得られる事は、必須と言っても過言ではないのではないでしょうか。他にも、現行のオンプレミスからクラウドへの移行はスムーズか、クラウド環境の運用体制はしっかりしているか、窓口は利用し易いか、などといったところでしょうか。
ではまた。