ブログ

ソリューションからスタックへ: 組み立ての時代

ロリ・マクヴィッティ サムネイル
ロリ・マクヴィッティ
2020年4月6日公開

IT のこのコンポーネント化は、保護および配信を担うアプリケーションのコンポーネント化に似ています。 最近のアプリケーションの 80 ~ 90% はサードパーティ コンポーネントで構成されており、そのほとんどはオープン ソースであると推定されています。 そうすることで得られるメリットとしては、スピード、変化への対応力(俊敏性)、ソフトウェア作成コストの削減などが挙げられます。 結局のところ、誰かがすでに車輪のコードを書いているのなら、なぜそれを再発明するのでしょうか?

今日の IT がどの程度コンポーネント化されているかについては推定がありませんが、将来どの程度コンポーネント化されるかについての答えは明らかです。 とても。

当社はもはや独自の監視システムを構築していません。 私たちはプロメテウスのように、それを採用します。 当社では独自の検索エンジンを開発しておらず、Elastic Search や Lucerne と統合しています。 フォーメーションとインフラストラクチャ コントローラーを設計および開発する必要はありません。Helm と Terraform があります。 システムとの統合についてはもう問われません。エコシステムのサポートについて問われるのです。

当社では、各コンポーネントを自社で開発するのではなく、ソフトウェア スタックからシステムを構築します。

コンポーネント化の波及効果

このシステムレベルの考え方は開発に広く浸透しており、商用ソフトウェアやカスタムソフトウェアなど、あらゆるソフトウェアの開発方法に大きな影響を与え始めています。 これは、ネットワークを設計する方法にも大きな影響を与えています。

数年前、私はマイクロサービスがネットワークを分断していることに気づきました。 これは、DevOps の考え方に密接に関連した理由により、進行中の分割のままです。 つまり、DevOps は、特にクラウドの影響を受ける場合、コンポーネント化されたシステムの観点から考える可能性が高くなります。 DevOps が従来の NetOps と運用の領域に侵入し続けるにつれて、DevOps は独自の考え方を持ち込んできます。 つまり、ソリューションではなくスタックを意味します。

この視点から、DevOps が現在実行している運用モードと考え方により適した個別のapplicationサービスが自然に採用されることになります。 単一目的の機能重視のapplicationサービスは、データ パスを構成するために使用されます。

つまり、負荷分散は負荷分散です。 進入制御は進入制御です。 API ゲートウェイは API ゲートウェイです。 さまざまなapplicationサービスを使用して、運用担当者はコード (アプリ) から顧客 (クライアント) に至るデータ パスを構成 (アセンブル) します。 

波及効果

このことは、今年のapplicationサービスの現状レポートで確認された、API ゲートウェイ、イングレス制御、ボット防御などの対象サービスの驚異的な採用率からもわかります。

この変化は気づかれずに済んだわけではない。 デジタル トランスフォーメーションによってビジネスが自らを再定義し、API とapplications(デジタル機能) で表されるサービスに分解し続けるのと同様に、applicationサービスの設計、開発、提供の方法も劇的に変化します。

スタックを登る

IP ベースのルーティングは、常にデータ パスを設計する方法でした。 このトラフィックをここにルーティングし、このタイプのトラフィックをそこにルーティングし、ペイロード内に X に一致するものがあれば、トラフィックをそこにルーティングします。 これはネットワークに特化しているため、データ パスは展開先のネットワークに密接に結合されます。

これにより、パブリック クラウドなどの他の環境での複製が難しくなります。 ポリシーを再利用できる可能性はありますが、データ パスをネットワークにバインドする構成を活用することはできません。

コンテナとクラウドはどちらも、基本的にデータ パスをスタックの上に移動し、applicationサービスからapplication層で組み立てられるように強制します。 これは、ネットワークにバインドされていないホスト名やタグ、ラベルなどのメタデータを操作するため、環境間での移植性がはるかに高くなります。

最終的には、構成から、IP アドレスや環境に縛られることなくデータ パスを組み立てることができるポリシーに移行する必要があることを意味します。

私たちがソリューションからスタックへ、手動プロセスからパイプラインへと移行していることは間違いありません。 ビジネスと運用全体でデジタル機能を拡大するにつれて、データ パスの構成と制御の必要性はスタックの上層へと移行し、それを指示するアプリ サービスへの依存度が高まります。