Special
» 2018年10月30日 10時00分 公開

一般的な企業がコンテナを「攻めのIT」のために活用する秘訣:「ビジネスを支えるIT」から「ビジネスを体現するIT」に変革するために、コンテナが必要な理由

およそ全てのビジネスをITが支え、「ITの力を使った体験価値」を提供、改善するスピードが最大の差別化要因となっている今、ビジネスを支えるITインフラにも新たな仕組みが求められている。では、ニーズの変化にいち早く対応するための「仕組み」とは具体的にどのようなものなのか? コスト削減策と誤解されがちな「コンテナ」の正しいビジネスメリットと、一般的な企業がコンテナを「攻めのIT」のために活用する秘訣を日本IBMに聞く。

[PR/@IT]
PR

ビジネス成功のカギは「スピード」と「柔軟性」

 ビジネスは「早いもの勝ち」だ。デジタルビジネスにおける先行企業の強さを見ても分かるようにマーケットへ一番乗りすることは、競合を圧倒して市場で強い存在感を発揮させるために不可欠と言っていい。

 ただ、どんな企業でもゼロからマーケットを作り出せるわけではなく、市場を圧倒できるようなイノベーションは簡単に産み出せるわけでもない。

 では多くの企業が採り得る現実的な選択肢は何か。その答えの一つがトライ&エラーの繰り返しによってマーケットを作り、ビジネスを洗練化させることだ。イノベーションは簡単には起こせないかもしれないが、市場は絶えず変化し続けており、そうした変化の継続の中で、マーケットのニーズを探り、イノベーションの芽にしていくわけだ。

日本IBM クラウド・テクニカル・セールス 部長 エグセクティブ・テクニカル・スペシャリスト クラウド・アーキテクト 樽澤広亨氏

 「このようなマーケットをリードする“スピード”とマーケットのニーズに応える“柔軟性”は、ビジネスで成功する大きなカギになっています。この2つは新規ビジネスに求められる要素だと考えられていますが、実際は違います。いまや既存のビジネスであっても、継続的な変革とは無縁ではないのです」と話すのは、日本IBM クラウド・テクニカル・セールス 部長 エグセクティブ・テクニカル・スペシャリスト クラウド・アーキテクトの樽澤広亨氏だ。

 樽澤氏によると、既存ビジネスでも継続的な変革が求められる例は枚挙にいとまがないという。モバイルやクラウドの進展でユーザー体験はかつてないほど洗練されてきた。例えば、銀行でも基幹系システムを継続的に変革し、スマートフォンアプリケーションなどを通じてユーザーに新しい体験価値を提供し続けることが求められている。変革を怠ると「ディスラプター」に業界を破壊されるリスクすらあるからだ。

 また既存ビジネスは、法令/規制への対応やセキュリティの面からも変革が迫られている。EUのGDPR(一般データ保護規則)のようにユーザーの個人情報を適切に管理し、事故が起こったときには速やかに対応することが世界的にも求められるようになった。また、サイバー攻撃の脅威が高まり、外部からの攻撃を防御し続けることが困難になった。法令対応やセキュリティ対策がビジネスに直結する経営課題になっているのだ。

 では、こうした変化に対応し、市場をリードしていくために必要な「スピード」と「柔軟性」を実現するITインフラとはいかなるものか。樽澤氏は、これに対する答えの一つが「クラウド」だと話す。

 「かつてITはビジネスを支えるものでしたが、現在はITがビジネスそのものを体現しています。例えば、FinTech、配車サービス、民泊サービスなどはITが提供するサービスそのものがビジネスです。当然、ビジネスに求められるスピードと柔軟性はITにも求められます。われわれは、そのカギがクラウドだと位置付けています」

クラウドネイティブコンピューティングの「真実」

 クラウドは、その草創期に、仮想化や自動化などの技術で基盤の構築作業を大幅に高速化し、大きな注目を集めた。実際、クラウドを採用したスタートアップ企業は事業を大きく成長させることができた。

 「仮想化され、自動化されていることでシステムリソースの追加や削除が容易になりました。基盤の変更、作り直しも容易で、ITがビジネスにスピーディー、かつ柔軟に追随できるようになりました。しかし一方で、クラウドに対する疑問も残ってしまいました。それは、肝心のアプリケーション開発と運用は果たして同じようにスピーディー、かつ柔軟になったのかという点です」

 仮に基盤が数十分で構築できたとしても、アプリケーションの開発や変更に数カ月も要するなら意味はない。「クラウドによってIT基盤構築は高速化、最新化したかもしれないが、アプリケーション開発と運用にはイノベーションが起こらなかった」ということもあり得る。

 そうした初期のクラウドに対する反省から生まれ広がってきたのが「クラウドネイティブコンピューティング」だ。

「IBMはCNCFの創設メンバーであり、クラウドネイティブコンピューティングにコミットしてきました。Kubernetes実行環境をいち早くサポートするだけではなく、データを海外に出せない企業に向けて、東京データセンターでのKubernetesのマネージドサービスも展開しています。またマイクロサービス管理フレームワークのIstioの開発もリードしています」

 「クラウドネイティブコンピューティングは本当の意味でスピードと柔軟性に応えることを目指しています。クラウドネイティブコンピューティングを構成するのは、クラウドプラットフォームとクラウドネイティブアプリケーションです。クラウドプラットフォームは仮想化と自動化によって基盤構築を高速化し、柔軟性を備えます。また、クラウドネイティブアプリケーションは、クラウドの文脈に沿ったアプリケーション開発/運用のイノベーションを目指します」

 クラウドネイティブアプリケーションのスピードと柔軟性を確保するために具体的に活用される手法とアーキテクチャが、アジャイル開発とマイクロサービスだ。アジャイル開発はアプリケーション開発運用を高速化する。マイクロサービスは、アプリケーションに変更に耐え得る柔軟な構造を与えるという。

 「クラウドネイティブコンピューティングを推進する団体がCloud Native Computing Foundation(CNCF)です。IBMは創立メンバーとしてCNCF立ち上げに貢献しました。CNCFには今では、MicrosoftやAmazon、Red Hatなど多くのベンダーが参加し、事実上のスタンダードになっています。CNCFは、コンテナオーケストレーションのKubernetesをはじめ、さまざまなオープンソースソフトウェア(OSS)を開発し、リリースすることで、クラウドネイティブコンピューティングの取り組みを支えてきました」

イノベーションに欠かせない「3つの技術要素」

 では、クラウドネイティブコンピューティングを使って、企業はどう既存ビジネスを「攻めのIT」に変革していけばいいのか。

 樽澤氏は、CNCFが推奨するクラウドネイティブコンピューティングを推進する3つの技術要素を挙げる。それは「コンテナ化」「動的なコンテナオーケストレーション」「マイクロサービス指向」の3つだ。具体的には、コンテナ化と動的なオーケストレーションによってクラウドプラットフォームを実装し、マイクロサービスアーキテクチャに基づいてアプリケーションを設計、実装、運用する役割分担になるという。

「速い」「小さい」「ポータブル」なコンテナ

 「コンテナのメリットは、超高速に基盤が構築できることです。従来のハイパーバイザーベースの仮想化では、基盤構築には数分から数十分必要でした。これに対しコンテナは数秒です。また、コンテナはポータビリティーを備えることも大きなメリットです。多様なプラットフォーム上でコンテナアプリケーションを稼働させることができます。これにより投資の保護につながります」

 とはいえ、こうした特長はPaaSも備えている。ではなぜPaaSではなくコンテナなのか。そのカギはカスタマイズ性にあるという。

 「PaaSは、ミドルウェア層以下がブラックボックスでカスタマイズができません。このため、開発者や運用者の視点では使い勝手が悪い場合があります。一方コンテナは、OSレベルまでカスタマイズが可能です。また、Dockerfileという設定ファイルを用いることでカスタマイズ内容をコード化できることも大きなポイントです」

PaaSとコンテナ型仮想化の違い

 端的に言えば、コンテナの魅力は、PaaSのシンプルさとIaaSの柔軟性のいいとこ取りをした「速い」「小さい」「ポータブル」なところにある。加えて、PaaSにはない「容易で柔軟なカスタマイズ性」がウリということだ。

KubernetesはクラウドのLinuxになりつつある

 2つ目の要素である動的なオーケストレーションは、Kubernetesのことを指している。Kubernetesは多くのクラウドベンダーが標準的にサポートしたことでコンテナオーケストレーションのデファクトスタンダードとなった。

 「コンテナのクラスタ管理がコンテナオーケストレーションの出発点です。コンテナは1つのサーバプロセスにすぎません。本番システムは複数のコンテナでクラスタを構成しますが、それらの管理を手作業で行うのは負担でミスも生じます。そこでクラスタ全体を簡単に管理できるツールとしてKubernetesが広がりました。その意味では、コンテナオーケストレーションは『クラウドのOS』といえるほど重要な基盤です。実際、KubernetesをOSになぞらえて『クラウドのLinuxになりつつある』と主張する方もいるほどです」

クラウドネイティブアプリケーション基盤機能を提供するKubernetes

アプリケーション設計、実装、運用を高速化するマイクロサービス

 3つ目のマイクロサービスは、アプリケーションを設計、実装、運用するための基になるアーキテクチャだ。柔軟性が乏しく変化に追随できないモノリシックなシステムから、業務ごとにサービスを分け、各サービスをAPIで連携させながら、システム全体でスピードと柔軟性を確保していく。

 特に、稼働実績が長い基幹系システムや、停止されることが許されないミッションクリティカルなシステムは、伝統的に堅牢さが重視されてきたことから、外部から見るとモノリシックな基盤に見えるケースは多い。

 「Webシステムなどと連携させ、ユーザーの体験価値を高めていこうとすると、こうしたシステムをマイクロサービス化していくことが必要です。どの業務や機能をどうマイクロサービス化していくかについては、業務知識やITのノウハウが求められます。高可用性、セキュリティ、コンプライアンスなどを考慮しつつ、状況に合わせて移行していかなければなりません」

基幹系システムのクラウドネイティブ化にIBMはどう貢献するのか

 既存ビジネスや既存の基幹系システムのクラウドネイティブ化に向けて、IBMは他社にない強みを持ったさまざまなソリューションを提供している。

 クラウドについては、パブリッククラウド上のマネージドサービス「IBM Cloud Kubernetes Service(IKS)」の他、プライベートクラウド環境で細かなニーズに応じたきめ細かな運用ができるセルフサービスの「IBM Cloud Private」がある。IBMが開発、提供するソフトウェアはほぼ全てがコンテナで稼働できるように改修されており、IBM Cloud Kubernetes ServiceとIBM Cloud Privateをまたがったハイブリッドな環境で、同じ仕組みで稼働させることが可能。すなわち、フロントエンドとなるアプリケーションはクラウドネイティブでありつつ、運用環境は既存と同様のものを実現できる。

 すでに「Db2」「WebSphere」「MQ」といったミドルウェア製品やサービスはもちろん、BPM、API、DevOpsなどのアプリケーションやソリューションもOSSを含めてコンテナに対応しており、すぐにクライドネイティブアプリケーションの開発に生かすことができる。IBM Cloud Privateであれば、IBM Cloudだけではなく、他社のIaaS上にこれらを展開することもできる。IBM Cloud Automation Manager(CAM)を活用すれば、マルチクラウド環境でも一元的に運用管理することが可能だ。

 「日本にも拠点を置く、世界規模のレンタル業のお客さまでは、グローバルな事業展開の中でアプリケーションをスピーディーに提供するために、デプロイプロセスを自動化しています。また、Kubernetes環境としてはIBM Cloud Kubernetes Serviceに加えて、他社IaaS上にIBM Cloud Privateを導入するというマルチクラウド構成を取って、高い可用性を可能とする安定したIT基盤を実現しています」

世界規模のレンタル業企業におけるマルチクラウド環境

 樽澤氏によると、IBM Cloudの特長は「オープンスタンダード準拠」「高可用性」「コンプライアンス」「セキュリティ」にある。CNCFへの取り組みにも表れているように、オープンスタンダード準拠は、IBMが歴史的に重要視してきた方針だ。積極的にOSSの開発に貢献するだけではなく、自社製品のアーキテクチャの根幹にOSSを採用している。このため、クラウドの利用が進展しても、ベンダーロックインが引き起こされないというメリットがある。

 高可用性、コンプライアンス、セキュリティにも、IBMがメインフレームやホスト時代から培ってきた技術やノウハウが生かされている。可用性については、リージョンを複数のデータセンターで構築するマルチゾーン対応が特長だ。またコンプライアンスでは、データを海外に出せない企業に向けて、東京データセンターでのKubernetes実行環境をいち早くサポートしたことと、シングルテナントモデルの提供がある。シングルテナントモデルは、仮想専有環境の他、高性能で高セキュリティなベアメタルサーバの2つのモデルを提供する。

 「IBM Cloudのメリットをうまく活用してほしいと思います。例えば、AIを活用した新しいサービスのPoCをパブリッククラウドで行う一方、基幹系システムのマイグレーションをプライベートクラウドで行うといった使い分けも簡単にできます。また、開発環境からテスト環境、本番環境までのデプロイも、コンテナを活用すればスピーディーに実施できます。ビジネス成功のカギは、スピードと柔軟性です。IBM Cloudはさまざまなソリューションで企業がそれを実現することを支援していきます」

「既存システムをクラウドネイティブ化するには、まずはコンテナ化が第一歩。既に実績のあるIBMのミドルウェア製品群は、そのための対応を既に済ませています。マイクロサービス化については、まずはUIやフロントエンド側だけでもマイクロサービスに対応する技術で作り換え、既存システムのバックエンドとAPIでつなぎ込むことで着手しやすくする例もあります。そうすれば、あとはモノリシックなバックエンドを段階的にマイクロサービス化することで、既存システム全体をマイクロサービス化しやすくなるはずです」

Copyright © ITmedia, Inc. All Rights Reserved.


提供:日本アイ・ビー・エム株式会社
アイティメディア営業企画/制作:@IT 編集部/掲載内容有効期限:2019年1月29日

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。