マイクロソフト、サービスメッシュの新たなオープンソース実装「Open Service Mesh」発表。Envoy採用、CNCFへ寄贈予定

2020年8月7日

マイクロソフトは、Kubernetes対応のサービスメッシュ(Service Mesh)をオープンソースで実装するプロジェクト「Open Service Mesh」を発表しました。

一般に、Kubernetes上で稼働するアプリケーションは多数の小さなサービスが連係することで構成されます。

このときサービス間のトラフィック管理やサービス間の認証やセキュアな通信、そして全体の可観測性などを実現することが望まれますが、この機能を個々のサービスに実装するのは手間もコストもかかります。

そこでサービス間の通信のプロキシなどとしてサービスに組み込まれるのがサービスメッシュです。そしてこのサービスメッシュが前述のトラフィック管理やサービス間の認証、ログなどを実現してくれることで、サービス自身は機能の実装に注力できるわけです。

すでに代表的なサービスメッシュの実装として、Googleが中心となってオープンソースで開発されている「Istio」や、HashiCorpの「Consul」などが挙げられます。

Service Mesh Interface(SMI)とEnvoyを採用

マイクロソフトは昨年5月にKubernetes上のサービスメッシュAPIを標準化することを目指してHashiCorpらと「Service Mesh Interface」(SMI)と呼ばれる標準仕様を発表。Red HatやRancher、VMware、Pivotal、Canonical、Dockerなどの賛同を受けました。

参考:マイクロソフトやHashiCorpらが「Service Mesh Interface」(SMI)を発表。Kubernetes上のサービスメッシュAPIが標準化へ

マイクロソフトはこのSMI対応のサービスメッシュを実装することを、Open Service Meshのデザインの1つとして挙げています。

下記は「Introducing Open Service Mesh」からOpen Service Meshの特徴についての説明を引用したものです。

First, OSM provides a control plane compatible with the SMI specification, to preserve user choice. Next, OSM uses Envoy for the data plane, due to strong community momentum around Envoy. And finally, the overriding philosophy behind OSM features a “no cliffs” design in order to make OSM flexible enough to handle both simple and complex scenarios using both SMI and programming Envoy xDS APIs directly.

第一に、OSMはSMI仕様と互換性のあるコントロールプレーンを提供することで、ユーザーによる選択を担保します。 第二に、OSMはデータプレーンにEnvoyを使用します。これはEnvoyに対するコミュニティの勢いのためです。
そして最後に、OSMの背後にある基本的な哲学とは、SMIおよびEnvoy xDS APIの直接的なプログラミングを行うことで、単純なシナリオと複雑なシナリオの両方に対応できる柔軟性を持たせる、「ゆるやかな」設計を特徴としています。

また、Open Service MeshはKubernetes Operatorを用いて簡単に導入、運用を行えるようにするとも説明されています。

マイクロソフトはまた、Open Service MeshをCloud Native Computing Foundationへ寄贈するための手続きを開始していることも明らかにしました。

Open Service MeshはIstioにどう対抗する?

サービスメッシュの普及度という点では、現在のところIstioが頭ひとつ抜け出ている感があります。しかしサービスメッシュ自体の普及はこれから本格化するところです。

IstioはすでにGoogleの主要なサービスであるAnthosに組み入れられており、GoogleとしてはIstioの開発を主導しつつAnthosとともに積極的な普及を目指しています。

一方のマイクロソフトは、Open Mesh Interfaceという業界標準の構築と、Cloud Native Computing Foundationへの寄贈による強力なエコシステムの後ろ盾を得ることで、Googleが主導するIstioではなく、よりオープンなサービスメッシュ実装としてOpen Service Meshを立ち上げ、その普及を後押しすることを選んだのだと見られます。

あわせて読みたい

Kubernetes コンテナ型仮想化 Istio Microsoft




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本