マイクロサービス | トレンド

マイクロサービスをサービス メッシュで接続する

関連資料

セキュア クラウド アーキテクチャ ›

妥協せずに加速し、適切なクラウド アーキテクチャを実現。

さらに詳しく ›

サービス メッシュを組み込むことでマイクロサービスを接続し、管理のオーバーヘッドを最小限に抑えられるようにKubernetesをスケーリングします。

アプリケーション デリバリで次に注目を集めているのがサービス メッシュです

サービス メッシュによって複数のマイクロサービスを接続することで、コンテナ化されたコンポーネントのセキュリティの確保やオーケストレーションが容易になり、クラウド アーキテクトの作業が簡素化されます。

最初に注目されたのがあらゆる場所のあらゆるもののアプリケーションであり、次がマイクロサービス(とそれを可能にするコンテナ技術)でした。アプリケーションを通じて優れたユーザー エクスペリエンスを提供するための次のイノベーションは何でしょうか?サービス メッシュです。

マイクロサービスのアプローチは、より大規模で複雑なアプリケーションを構築するために使用される、単一目的の小さなコンポーネントに依存しています。何でもマイクロサービスにすることができます。それぞれのマイクロサービスは単一の機能に特化しているので、比較的、簡単に開発することができます。ただし、必要な機能が増えるほど、マイクロサービスのコンポーネントを調整するのは複雑になります。

従来のアプリケーション(モノリス アプリケーションと呼ばれることもあります)は開発に時間がかかりますが、利点もあります。さまざまな個々の機能を1つのプログラムで実行するため、通常はコンポーネント間を調整する機能がシステムに組み込まれています。コードのソースが1つなので、従来のアプリケーションのトラブルシューティングやデバッグは比較的、容易です。

サービス メッシュとは

サービス メッシュは、マイクロサービス間の通信を容易にする、インフラストラクチャの透過レイヤーです。これにより、マイクロサービスを使用して構築されたアプリケーションは、レジリエンス、監視のしやすさ、セキュリティなど、従来のアプリケーションと同じ利点を得ることができます。

エンタープライズ サービス メッシュのビジネス ケース

モノリスからマイクロサービスへの移行を推し進めてきた主な要因は、アプリケーション チームがより俊敏かつ迅速に対応する必要性に迫られたことでした。大規模なアプリケーションを減らして多くの小さな要素にすることで、各チームが専門化され、モノリスのあらゆる側面に気を配らなければならなかったときと比べて、繰り返し行う作業のスピードも上がりました。

しかし、このスピードと俊敏性には、より複雑になるという代償を伴います。マイクロサービスは開発をシンプルにしますが、特に複数の一時的なコンポーネントのセキュリティの確保とオーケストレーションという面で新たな課題をもたらします。サービス メッシュは、開発者がマイクロサービス対応のアプリケーションをスケーリングする際の複雑さを軽減するための方法です。

サービス メッシュは、開発者がマイクロサービス対応のアプリケーションをスケーリングする際の複雑さを軽減するための方法です。

最近のポッドキャストで、Aspen Meshの共同設立者兼CTOであるAndrew Jenkins氏は、「サービス メッシュ環境において、最も大きな変化は、アプリケーション開発者が何をしなければならないかではなく、何をしなくて済むかにあります」と述べています。たとえば、サービス メッシュのセキュリティ コンポーネントは、認証を提供し、あるアプリケーションが別のアプリケーションを信頼するかどうかを管理します。リクエストが失敗した場合、プラットフォームの運営者には、マイクロサービスを再試行するか、諦めるかを定義するツールがあります。

この新しい環境で、開発者はサービス メッシュ レイヤーへのリクエストを取得することに専念できます。マイクロサービス間のすべての通信を監視するツールへのアクセス権を持つプラットフォーム運営者は、アプリケーション開発者にさまざまなデータやメトリクスを提供することができます。「サービス メッシュでは、壊れた部分を1か所修正するだけで、すべて修正されます。この同じ一貫性の話が何度も何度も出てきます」とJenkins氏は言っています。

サービス メッシュが適している場合とは

サービス メッシュを強力な新しいツールボックスと考えてください。このツールボックスのツールは、セキュリティ、トランザクション処理、暗号化、レコメンデーション エンジン、分散トレースなど、挙げればキリがありません。しかし、強力なツールは使い方を知らなければ何の役にも立ちません。サービス メッシュの早期導入に成功するには、強力なクラウド アーキテクチャの実践と、開発者向けのインフラストラクチャ サービスを定義した経験が豊富なプラットフォーム チームが必要です。

多くの組織では、Kubernetesやその他のコンテナ技術をサービス メッシュなしでうまく運用しています。標準的なKubernetesの実装は、組み込みの導入の問題に非常によく対処しています。しかし、規模が大きくなると、Kubernetesアプリケーションでは、暗号化、回路遮断、動的トラフィックのルーティングなどのランタイムの問題が発生し、同様にうまく対処することができません。NGINXのようなソリューションやその他のContainer Ingressソリューションは、アプリケーションに入ってくるネットワーク トラフィックをキャプチャし、形式を整え、制御し、可視化する手段を提供することで、このギャップの多くを埋めています。しかし、開発者がこれらのツールで実現できることの限界に達し始めたとき、サービス メッシュは、コンテナ化されたマイクロサービスでできることに新たな可能性をもたらします。

まとめ

現在、サービス メッシュは最先端の技術です。すでに完全にKubernetesに取り組んでいる組織や、Kubernetesでの開発を計画している組織は、サービス メッシュを後回しにするのではなく、早い段階で実装する方が簡単です。Kubernetesのスケーリングを行っていて、管理のオーバーヘッドを最小限に抑えたいのであれば、サービス メッシュが必要です。

複雑なセキュリティ ニーズのある組織や、マイクロサービス由来のアプリケーションに大きく依存している組織では、サービス メッシュが導入とメンテナンスを加速し、セキュリティを強化し、リソース消費を最適化するのに役立ちます。サービス メッシュ環境は可視性を高め、アプリケーションの最適化に使用できるマイクロ レベルとマクロ レベルのデータを提供します。

サービス メッシュは、マイクロサービスやコンテナ技術の進歩を次のレベルに引き上げます。適切な戦略があれば、強力なツールになります。

 

さらに詳しく

ソリューション

Aspen Mesh

最新のアプリケーションのためのエンタープライズグレードの安全なサービス メッシュについては、こちらをご覧ください。

ソリューション

NGINX

マイクロサービスの接続、セキュリティの確保、スケーリングを行う方法をご紹介します。

ポッドキャスト

What Lies Beneath(基本となるもの)

「What Lies Beneath(基本となるもの)」ポッドキャストでは、サービス メッシュとその代替案をご紹介します。