システム運用の常識が大きく変わる。クラウドを前提にした全く新しい運用スタイル、「イミュータブルインフラストラクチャー」がそれだ。従来のように同じ本番環境を使い続けない。設定変更時には、丸ごと新規に環境を構築し、バトンタッチする。OSやミドルウエアを含むITインフラを使い捨てるわけだ。安定的な更新を可能にし、変化の速い新規事業などで威力を発揮。「Docker」の登場で実現が容易になった、新時代の知恵を紹介する。

 「秘伝のたれ」――。長年使われ続けているITインフラを例えてこう呼ぶことがある。料理に使う秘伝のたれとは異なり、ITインフラの形容詞としては悪い意味で使われる。

 うなぎや焼き鳥店などで数十年前の世代から“継ぎ足し”で受け継がれた「つけだれ」は、同じものを作ろうとしてもなかなか作れるものではない。同様にITインフラも「長い期間をかけて少しずつ変化した結果、誰もその中身を把握できず、同じ構成を再現できない状況になることがある。変更の内容は手順書や設計書に反映されておらず、開発環境では問題なかったのに、なぜか本番環境では動かない、といった事態が起こる」(NTTデータ 技術開発本部ALMソリューションセンタの佐藤聖規シニア・エキスパート)。

 ここで言うITインフラとは、サーバー、OS、ミドルウエア、アプリケーションのフレームワークなどを指す。通常、本番システムのITインフラは変更を余儀なくされる。サーバーであれば名称やアクセス権限などを変えたり、OSやミドルウエア、フレームワークであればバージョンアップしたりパッチを適用したりする。プログラミング言語のライブラリのバージョンを変更することもある。

「使い続ける」ことをやめる

 ITインフラの“秘伝のたれ化”を防ぐための、新しいシステム運用の考え方が登場した。「イミュータブルインフラストラクチャー」がそれだ。イミュータブルとは「不変」という意味で、ITインフラに変更を加えないことを意味する。もし、アプリケーションやミドルウエアに変更を加えたいときは、その変更が反映されたシステムをITインフラごと新規に構築。ロードバランサーなどで切り替えた後に旧システムを廃棄する。いわば、変更のたびにシステムを「使い捨て」にするのだ。ITインフラの変更状況をトレースする必要がなくなり、常にITインフラの状態を把握できる(図1)。

図1●従来の方法とイミュータブルインフラストラクチャーの違い
図1●従来の方法とイミュータブルインフラストラクチャーの違い
ITインフラごと捨てる
[画像のクリックで拡大表示]

 上記のように、システムを簡単に廃棄する考え方を「ディスポーザブルコンポーネント」と呼ぶ。ディスポーザブルは廃棄可能という意味で、イミュータブルインフラストラクチャーとセットで語られることが多い。あるいは両方の概念を包含して、イミュータブルインフラストラクチャーと呼ぶこともある。本記事では、単にイミュータブルインフラストラクチャーと記述した場合は両方の意味を包含するものとする。

この先は日経クロステック Active会員の登録が必要です

日経クロステック Activeは、IT/製造/建設各分野にかかわる企業向け製品・サービスについて、選択や導入を支援する情報サイトです。製品・サービス情報、導入事例などのコンテンツを多数掲載しています。初めてご覧になる際には、会員登録(無料)をお願いいたします。