tom_wile_main.jpg

米The Walt Disney Companyのインフラ部門の責任者であるジェフ・ワイル(Jeff Wile)氏

 「DevOps(デブオプス)」という言葉をご存知だろうか。ここ数年、IT業界でしばしば話題になるキーワードで、Dev=Development(開発)とOps=Operations(運用)が互いに協力しあい、ビジネス側の要求に対して柔軟かつスピーディに応じていくことを目指す考え方のことだ。

 言葉で言うと簡単だが、これを実際に組織に適用しようとすると本当に難しい。なぜなら本来、開発と運用は与えられている役割が違うからだ。モノを作る開発とモノを動かす運用、求められるスキルセットも違えば、守るべきポリシーも違う。ビジネス側から見ればIT部門とひとくくりにしたくなるところだが、開発と運用の間にある溝は意外と深い。そしてその溝は埋めようとしないかぎり埋まることはない。

IT部門内の開発と運用の対立は企業にマイナス?

 ビジネスの世界でもセクショナリズムの弊害はよく語られるが、IT部門内のセクショナリズムである開発と運用の対立はより問題となる。ビジネスに対するITの重要度が数年前とは比較にならないほど高まっているからだ。

 配車サービスを手掛けるUberや、空き部屋の貸し借りを仲介するAirbnbの例を引くまでもなく、クラウドやモバイル、ビッグデータ、ソーシャル、IoTといった最先端のITを駆使し、ユーザーのニーズにスピーディに応えられる企業は、驚くほど速く、劇的な成長を遂げている。逆に言えば、IT部門内で開発と運用がいつまでも頑なに自分の主張を譲らず、対立している状態であれば、そうした成長は望めない。それどころか最悪、市場からの撤退すら余儀なくされてしまうかもしれないのだ。

 DevOpsはそうした開発と運用の衝突を回避するために編み出された手法である。ただし「これがDevOpsだ!」と言えるような明確な定義は存在しない。そのため、多くの企業がDevOpsに取り組んでいるものの、そのアプローチはまちまちで、具体的な成果は見えにくい。中には「Chef」や「Puppet」など、いわゆる"DevOpsツール"を導入することをDevOpsそのものだと捉えている企業も少なくない。

ビジネスの要求にIT部門がついていけない?!

 DevOpsで成功するとはどういうことなのか、そしてそれは組織にどんなメリットをもたらすのか。本稿では2015年11月、米サンフランシスコで開催されたクラウドイベント「Gigaom Structure 2015」に登壇した米The Walt Disney Company(以下Disney)のジェフ・ワイル(Jeff Wile)氏のセッションをもとに、DisneyがDevOpsによってどう変わったのかを紹介したい。

 ワイル氏の肩書はDisneyのホスティング&エンジニアリングサービス部門のバイスプレジデント、つまりDisneyの社内ITにおけるインフラ部門の責任者だ。2008年にDisneyにジョインしたワイル氏だが、当時のIT部門は典型的なサイロ状態にあったという。

 世界中の人々を夢中にさせるコンテンツを作り続けているDisneyという企業の開発インフラの実態は「開発と運用の間にまったく交流はなく、つねに互いに背中を向けて仕事をしていた。開発はできたアプリをポイっと壁越しに放るように運用に投げつけ、運用は黙って受け取り黙ってデプロイする」という、信じられないくらいコミュニケーションもコラボレーションもない環境だった。

 そんな現場にDevOpsの波がやってきたのは、エンジニアたちがある日突然コミュニケーションに目覚めたから・・・ではもちろんない。ビジネスの要求にIT部門がリアルについていけなくなったからである。

 ESPN、ABC、ディズニーランド、スタジオビジネス・・・など、世界最大級の知的財産を抱えるDisneyの各ビジネスユニットが必要とするアプリケーションの数は、コンテンツのデジタル化に比例して劇的に増加していた。数だけではなくリリースまでのスピードもどんどん短くなっていく。

 「4000を超えるアプリケーションのメンテナンスと運用、それに加えて新しいアプリケーションが毎週のように追加される。『来週から新しいゲームのキャンペーンが始まるから300台くらいサーバーの調達よろしく』みたいな感じで要求がどんどんヒートアップしていった。できあがったアプリを十分に試してからビジネスユニットに渡していては間に合わない。開発/運用の両サイドが"継続的な改善(continuous improvement)"ができる体制へと変更する必要に迫られた」とワイル氏は振り返っている。

意識を根底から変える、Pythonを覚えるところから始めた

 過酷になる一方のビジネスユニットのリクエストに応えるためには、開発も運用も意識を根底から変えなくてはならない。当時、ワイル氏の運用部門には60名ほどのスタッフがいたが、ワイル氏が取ったアプローチは「まず自分たちが変わること」だった。「我々にはアドミニストレータ(運用担当者)としてのスキルはある。しかしコードが分かる人間はひとりもいなかった。アプリケーションに対する理解が圧倒的に足りなかった。だからまずPythonコードを覚えるところから始めた」(ワイル氏)

 運用が開発を理解しようという姿勢に転じたことで、開発の態度もおのずと変わってきた。ほとんど会話することがなかった両者が、しだいに「共通の言葉」(ワイル氏)を使ってコミュニケーションを取るようになってきたのだ。距離が縮まると、今度は運用から開発に「レジリエンスとはどういうことか」「アプリケーションを動かすとシステムにどんな影響が出るか」といったオペレーションの基本を伝授する機会も増えていった。そして「Chef」や「Puppet」などの優秀なツールの存在もDisneyのDevOpsを推進するのに役立ったという。

 現在ではすっかりDevOpsな環境で業務が回っているDisneyのインフラだが、DevOpsの導入で得たものについてワイル氏は「デプロイメントのアプローチが変わり、ビジネスユニットの要求に迅速に応えられるようになった。だがそれ以上に共有する(シェアする)という文化を組織に根付かせることができた点が大きい」と語る。

 バックグラウンドが違う者どうしが同じ組織に配属されると対立や衝突が起こりやすい。だが、ビジネスは喧嘩が終わるまで待ってはくれない。どんなにイヤでも両者で新しいイノベーションを生み出していかなければ、ビジネスのスピードに追いつけないのだ。DevOpsを採用したことによりDisneyの開発と運用の間には、同じ言葉を使い、同じ知識を学び、同じツールを使うという習慣、「共有する文化」がもたらされた。

 「DevOpsはツールに焦点が当たることが多いが、キーになるのはツールではなくヒトだ」と強調するワイル氏。そしてその極意はIT部門以外の組織にも適用できる部分は少なくないはずだ。