熟練のDevOpsエンジニアにもコラボレーションが必要

F5エコシステム | 2016年6月06日
レゴのマスタービルダーたち

お子さんがいる方なら(いなくても、もちろん気にする必要はありません)、おそらく『LEGO ムービー』を見せられたことがあるでしょう。それも、きっと一度ではありません。

DevOpsの導入を検討している企業にとって、この映画は必見と言ってもよいでしょう。

本当にそう思います。

というのも、得られた(数多くの)教訓の1つは、それぞれの分野のエキスパートであるマスタービルダーでさえ、世界を救うため――ではなく、アプリケーションを望ましいデプロイ済みの状態に移行するためには、他の人々との連携が必要だということです。つまり、手作業という恐ろしいテクノロジー版「Kragle」によって、本番環境で身動きが取れなくなる事態を避ける必要があります。

マスタービルダーは一人ひとり、自分が作りたいものだけでなく、それを作るために必要なすべての構成要素まで思い描くことができます。映画では、叩き壊し、空を飛び、疾走し、銃を撃って窮地を救う完成品を瞬く間に作り上げ、その能力をたびたび見事に発揮します。しかし、「より大きな」全体像に基づいて行動し、個々の作品を作るだけでなく、一連の出来事をオーケストレーションして(うまい表現でしょう?)、悪者の企みを阻止しようとしたとき、彼らにはそれができませんでした。全員を同じ方向へ動かすために必要な手順を記したチェックリストを携え、説明書を確認するのが好きな人物が必要だったのです。

私たちの場合、その目指す先は本番環境です。

継続的デプロイが現実味を帯び、DevOpsが開発部門と「その他のIT部門」の間にある壁を越えるうえでの最終目標となるにつれ、個々のサービスやシステムを構築する各分野の中核担当者が孤立して作業することのないよう、4つの運用領域(セキュリティ、ストレージ、コンピューティング、ネットワーク)すべてにわたる連携が不可欠になります。

「コードをローカルに保ち、他のサービスから独立させる」というマイクロサービスの考え方を採用する開発者でさえ、この考え方とアプローチが機能するには、他のサービスが通信に使用できる、明確に定義され文書化されたインターフェース(API)が必要であることを理解しています。こうしたインターフェースは、他のサービスからどのように呼び出されるかを理解しないまま、独立して開発されるものではありません(また、そうすべきでもありません)。

このことは、壁を隔てた本番環境側にも当てはまります。継続的デプロイを実現するには、運用上の4つの領域すべてが、いずれかの時点で連携する必要があります。個々のサービスや一連のサービスをどのように構築するかという詳細にかかわらず、従うべき一連の手順、すなわち全体計画が存在します。これらは最終的に、本番パイプラインの端から端までデプロイを進める包括的なプロセスとしてオーケストレーションする必要があります。

各ドメインの中心的な担い手は、互いに完全に独立して作業することはできません。連携・協力し、それぞれが担う要素を、今日のビジネスを支える(アプリ)世界を守るための全体計画にどう組み込むかを検討する必要があります。

その取り組みを始める方法の1つは、影響範囲を図式化することです。最近、コードの結合度に関する記事「プログラム結合の80%ルール」をセキュリティの観点から読んだ際、この方法を思い出しました。この記事はコードに重点を置き、主に開発者向けの依存関係グラフを構築する内容です。しかし、これをより上位のレベルに抽象化し、関数、プロシージャ、メソッドを本番環境のシステムとして捉えると、その有用性が見えてきます。アプリケーションのデプロイが特定のサービスにどの程度依存しているかを把握することで(まずはドメインレベルでも構いません)、目標達成に向けてグループ間でどの程度の調整が必要になるかを理解し、そのための計画を策定するうえで役立つ知見が得られます。

その最たる例は、ほぼすべてがコアネットワークサービスの先行導入に依存していることです。これは、アプリケーションとその依存コンポーネントだけでなく、アプリケーションを提供するセキュリティサービスや上位レイヤーの(アプリケーション)サービスにも当てはまります。ロードバランシング、Webアプリケーションセキュリティ、さらにはファイアウォールも、機能するためにネットワーク属性に依存しています。IT部門内の異なるグループ(サイロ)が管理するシステムとサービス間のこうした依存関係(結合度)を把握することは、継続的デプロイに少しでも近づくために必要なコミュニケーションと連携を促進するうえで、大いに役立ちます。

熟練したビルダーであっても、自らが作り上げたものが全体像の中でどのように位置付けられるかを理解する必要があります。IT全体で運用の自動化とコード化が進む中、開発の手法やツールを運用に適用することで、継続的デプロイという大規模な構築作業に自らの担当部分を組み込むために必要なインターフェースを、より適切に構築できるようになります。

共有
タグ: DevOps, 2016

著者について

Lori Mac Vittie
Lori Mac Vittie特別技術者兼チーフエバンジェリスト | F5

Lori MacVittieは、F5のOffice of the CTOに所属するDistinguished Engineer兼Chief Evangelistであり、アプリケーションデリバリ、自動化戦略、インフラストラクチャに関する深い専門知識を有しています。AIエージェントのガードレール策定、脆弱なマルチクラウドアーキテクチャの分析、スケーラブルなシステムの限界の検証など、複雑な事柄を明快にすることで知られています。アプリケーション開発、ITアーキテクチャ、ネットワークおよびシステム運用の分野で、30年以上にわたる業界経験を有しています。F5入社前は、受賞歴のあるテクノロジー編集者として活躍していました。 MacVittieはコンピューターサイエンスの修士号を取得しており、セキュリティ、クラウド、エンタープライズアーキテクチャにわたる分野で多数の著作を発表しています。また、テーブルトークゲームとビデオゲームをこよなく愛し、チーズについては遠慮なく強いこだわりを語ります。

Lori Mac Vittieのその他のブログ記事

関連するブログ記事

F5 Application Study Tool:OpenTelemetryによるF5 BIG-IP環境の監視
F5エコシステム | 2025/04/15

F5 Application Study Tool:OpenTelemetryによるF5 BIG-IP環境の監視

F5の新しいオープンソースツールは、BIG-IP環境を詳細に可視化し、データを追跡するとともに、強力でカスタマイズ可能なインサイトを得るための基盤を提供します。

F5 BIG-IPでAI防御を実現
F5エコシステム | 2024/11/13

F5 BIG-IPでAI防御を実現

F5 BIG-IP Advanced WAF、BIG-IP APM、BIG-IP SSL Orchestratorが、生成AIアプリ向けに包括的なセキュリティソリューションを提供する仕組みをご覧ください。

F5 Advanced WAFによるGraphQL APIの保護
F5エコシステム | 2021/08/31

F5 Advanced WAFによるGraphQL APIの保護

ここ数年、多くの組織がデジタルトランスフォーメーションを進めており、COVID-19のパンデミックによってその動きは加速しています。

アプリケーションサービスの現状 通信業界版:リーダーとしての台頭
F5エコシステム | 2019/02/19

アプリケーションサービスの現状 通信業界版:リーダーとしての台頭

通信ネットワークが進化し、さまざまな業界の幅広いユースケースに対応するなか、通信業界の回答者がテクノロジーリーダーとしての存在感を高めていることがわかります。

デジタルトランスフォーメーションは、単なるペーパーレス化ではない
F5エコシステム | 2017/07/10

デジタルトランスフォーメーションは、単なるペーパーレス化ではない

デジタルトランスフォーメーションは、単なるペーパーレス化ではありません。真のモダナイゼーションにアプリケーションアーキテクチャとセキュリティの再構築が必要な理由を、F5ブログでご覧ください。

やめましょう。もう本当にやめましょう。HTTPSはHTTPより高速ではありません。
F5エコシステム | 2016/09/19

やめましょう。もう本当にやめましょう。HTTPSはHTTPより高速ではありません。

もうやめましょう。HTTPSはHTTPより高速ではありません。プロトコルのパフォーマンスに関する微妙な違いと、暗号化トラフィックを適切に最適化する方法については、F5ブログをご覧ください。