KubeCon Europe開幕、初日のキーノートではLinkerd、OpenTelemetryに注目
CNCFが主催するKubeCon+CloudNativeCon Europeが、5月21日から23日の日程でバルセロナで開催された。約7700名という参加者を集めた非常に活気のあるカンファレンスとなった。キーノートのスタートは、CNCFのエグゼクティブディレクターDan Korn氏が登壇し、これまでの道のりを振り返る内容から始まった。
Kubernetesが支持を集める理由
Korn氏はGoogleトレンドを例に、2016年から急速にKubernetesが注目を集め始めていることを紹介したのち、その理由として以下の3つのポイントを挙げて解説した。
- Kubernetesが期待した通りの結果を出していること
- ベンダーニュートラルであること
- コミュニティの質と量
CNCFの見地としては、Kubernetesが支持されたのは、この3つの条件が揃ったからということになる。
特にベンダーニュートラルという部分に関して言えば、Google、Microsoft、AWSの3大パブリッククラウドプロバイダーが、揃ってKubernetesのマネージドサービスを提供していることが非常に大きいと思われる。つまりオンプレミスの環境とパブリッククラウドの両方で同じ運用が可能であるという部分は、OpenStackがパブリッククラウドと競合する形で存在することとは対照的と言えるだろう。
Korn氏に続いて登壇したのは、今回、初登場となるエコシステム担当ディレクターであるCheryl Hung氏だ。Hung氏は元Googleで、現在はCNCFでエコシステムを拡大するためのディレクターというタイトルを持ち、今回はKubernetesのエコシステムについて説明を行った。
Hung氏は「2.66 Million」というタイトルのスライドを使ってプレゼンテーションを始めた。まずCNCFのメンバーが400社以上に拡大していることなどを解説。タイトルの2.66 Millionは266万のコミットが行われたという部分の数値である。エコシステムの拡大に関しては様々な指標があるが、ここ数回のKubeConに参加している個人的な感覚からすれば、参加者やショーケースのベンダーブースを見ても他のIT系カンファレンスを圧倒する熱気があることを考えれば至極当然という感想である。
次にVMwareのシニアスタッフエンジニアBryan Liles氏が登壇し、CNCFのプロジェクトのアップデートを行った。特にここでは、CRI-OとLinkerd、そしてFluentdについてそれぞれプロジェクトのコミッターが登壇し、解説を実施した。
Project Updateの動画:Keynote: CNCF Project Update - Bryan Liles, Senior Staff Engineer, VMware Bryan Liles
Linkerd
最初に紹介されたのはOpenEBSだが、より注目されたのは軽量ProxyであるLinkerdだ。Linkerdは、元TwitterのエンジニアだったWilliam Morgan氏(CEO)とOliver Gould氏(CTO)が創業したBuoyantが開発するオープンソースソフトウェアだ。Linkerdは、サービスメッシュとして利用されるコンテナにサイドカーの形で実装され、複数のコンテナ間の通信を代替することでPod間通信の暗号化やカナリアリリースなどの機能を実現するものだ。サービスメッシュについては今回のKubeConでもかなり注目されており、IBM、Red Hat、Google、Ciscoが強力にプッシュするIstio、HashiCorpが開発するConsul Connectなどが代表的なプロジェクトとなる。
参考記事:サービスメッシュを実現するLinkerdの将来を、開発元のBuoyantが語る
Gould氏は「キーノートにはデモが必要だよね?」といかにもオタクらしい早口で語りながら、Linkerd 2.3で実装されたZero-Config mutual TLSについてデモを交えた説明を行った。
Linkerdは「シンプルなこと」「デベロッパーに余計な負担をさせないこと」をゴールに開発を行っているということは、前回の本社訪問の際にも語られていた。そしてここでも、何も構成変更を行わなくてもデフォルトで暗号化がONになっていることを紹介した。
Gould氏が行ったデモは、以下のYouTubeのリンクで見ることができる。これはコマンドラインからLinkerdを追加するだけでmTLSが設定可能になるというもので、非常に簡潔ながら実際に暗号化が行われていることが見てとれる。
Linkerd 2.3のmTLS設定のデモ:Zero-touch mTLS for Kubernetes with Linkerd
このデモの最後に使われたスライドに出てくる「No Packets were harmed in the making of this video」というのは、アメリカ映画で最後のクレジットに出てくる「No Pets were harmed in the making of this film」(この映画を制作する際に動物に痛みを与えるようなことはしていない)のパロディで、通信パケットには何も変更を加えずにデモを行っているという意味のジョークである。
Helm
次にLiles氏は、KubernetesのパッケージマネージャーであるHelmを紹介した。3.0ではTillerが排除され、クライアント側のモジュールだけでパッケージの管理が行えるようになった。Tillerはサーバー側のモジュールでKubernetesのAPI Serverと重複するために運用が複雑になるというコミュニティからのフィードバックを元に、Tillerをなくすという機能変更を行ったのだ。
Harbor
次に紹介したのは、Liles氏が所属するVMwareが推進するコンテナレジストリーであるHarborだ。これはVMware Chinaが開発を推進し、昨年のKubeCon上海では華々しくLaunch Partyを行った。CNCFにとっては、初めての中国発のプロジェクトとなる。
CRI-O
その後、Rookを紹介した後に、Red HatのUrvashi Mohnani氏が登壇し、CRI-Oについて解説を行った。CRI-OはKubernetesにおけるランタイムの標準として定められているCRIに準拠したコンテナランタイムとして、すでにOpenShiftではデフォルトとして採用されている。またSUSEからの支持も取り付けており、乱立するコンテナランタイムの中から一歩抜け出したという印象となった。CRI-OはDockerの開発するContainerdを置き換えるもので、CNCFのインキュベーションプロジェクト同士で競合が起こっていることを示している。
「Kubernetesだけをサポート」という部分で特徴的なのは、バージョンナンバーがKubernetesと同期していることだろう。つまりKubernetesと同じバージョンであれば、テスト済みで問題がないことを保証されているということになる。
OpenShift 4.1ではCRI-Oだけがサポートされるランタイムであるというのは、エンタープライズにとっては意外と重要なステートメントではないだろうか。
OpenTracingとOpenCensusがマージされてOpenTelemetryに
この次にLiles氏が紹介したのは、トレーシングのプロジェクトのアップデートとしてOpenTracingとOpenCensusがマージされた後継プロジェクトとなるOpenTelemetryである。
これはほぼ同じ機能を果たすソフトウェアについて別プロジェクトとして開発を進めるのではなく、マージすることで混乱を避け、開発リソースも効率的に使おうという発想だ。同様の経緯でマージされたプロジェクトとしては、コンテナランタイムのKata Containersが挙げられる。Kata ContainersはIntelが開発をリードしていたClear Containersと、中国のHyper.shが開発していたrunVという仮想マシンの特徴を備えたコンテナランタイムとをマージしたものだ。
OpenTracingはすでにCNCFのサンドボックスとして採用されており、もう一方のOpenCensusもGoogleやMicrosoftなどが支援するプロジェクトだ。それぞれが400名弱のコントリビューターと多くの導入事例を持ちながらも、若干の特性の違いがあることが明らかになっており、結果的にCNCFのTOC(Technical Oversight Committee)での議論を経てマージされ、OpenTelemetryとしてCNCFのサンドボックスプロジェクトとなった。
CNCFはどちらかを選ぶという方法ではなく、お互いの互換性を保ちながら、2年程度の時間を掛けて既存のユーザーをOpenTelemetryに移行させるという、既存のユーザーを最優先する方法を選ぶこととなった。
ジェネラルセッションではあまり詳しくは語られなかったが、同日に開催されたプレス/アナリスト向けのブリーフィングで、ジェネラルセッションにも登壇し説明を行ったLightStepのCEO、Ben Sigelman氏に「この後、OpenTelemetryはアプリケーション性能管理(APM)などの方向に拡張するのでは?」という質問を投げてみたところ、「OpenTelemetryはあくまでもテレメトリーのコアの機能だけを提供する。グラフィカルなユーザーインターフェースやAPMなどの機能は、サード・パーティが用意することになるだろう」と語った。
Fluentd
次に登壇したのは、ARMのEduardo Silva氏だ。
トレジャーデータは日本人エンジニアが起業したベンチャーで、ログアグリゲーターのFluentdの開発をリードしているが、2018年の英国ARMによる買収以降はARMという看板の元でオープンソースのカンファレンスなどでも活発に発言を行っている。ここではFluentdの歴史や最新バージョンの概要などが解説された。
失敗だった? Ciscoの戦略
ここまででCNCFのプロジェクトアップデートは終了、次に登壇したのはCiscoのVijoy Pandey氏だ。IBMに勤めていたPandey氏は、その後Googleで分散システムのエンジニアリングのトップであった人物で、Ciscoに移ってからはCiscoのクラウド戦略を担当する人物になる。CiscoといえばLew Tucker氏がOpenStack SummitでもKubeConでもCiscoの語り部として起用されていたが、今年からはPandey氏に交代した形になった。
Pandey氏はCiscoの製品がソフトウェアとハードウェアを組み合わせたハコモノとしてスタートしたという経緯を紹介したが、驚きなのは「それが失敗だった」と語ったことだろう。
これはルーター、スイッチ、ブリッジなどの製品を、それぞれの役割ごとにハードウェアとソフトウェアをモノリシックに固めて提供していたCiscoの手法の否定と言えるものだ。そして仮想マシンへの移行に際しても同じ過ちを犯してしまったという反省を込めて、次からは機能を分解して素早く変更が可能なアーキテクチャーに移行するという宣言となった。
そこでCiscoが新たに提案するのが「Network Service Mesh」という新しいプロジェクトだ。これはCNCFのサンドボックスプロジェクトとして正式に発足したもので、CiscoやVMwareが推進している。
Network Service Meshについては、公式のGitHubのページから辿れるこのスライドが分かりやすいだろう。
Network Service Mesh:GitHubページ
L2/L3ネットワークの部分を抽象化してKubernetesのお作法に従って通信機能を実現するというもので、Ciscoがこれを全面的に採用することになるのかについては、まだ不透明だ。だが、少なくともこれまでのプロプライエタリなネットワークアプライアンスを、クラウドネイティブな世界に誘導する流れになることは確かだろう。
KubeCon Europe初日のジェネラルセッションでは、やはりCNCFのプロジェクトアップデート、特にLinkerd、CRI-O、OpenTelemetryなどのKubernetes以外の最新情報がポイントだったと言える。実はこの日の午後にはSMI(Service Mesh Interface)という大きな発表があったのだが、午前中のセッションが終わった時点では、エコシステムの堅実な拡大ということを実感したジェネラルセッションとなった。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- KubeCon Europeでサービスメッシュの標準化を目指すSMIを発表。Istioの動向にも注目
- KubeCon Europeに参加した日本人エンジニアとの座談会で見えてきたKubernetesの次の方向性とは
- Linkerdを開発するBuoyantがサービスメッシュの始まりと未来を語る
- KubeCon NA 2021からサービスメッシュの2セッションを紹介
- KubeCon China注目の初日キーノートはプロジェクトアップデート
- 写真で見る「KubeCon NA 2022」活気が戻ったショーケースを紹介
- KubeCon North Americaサンディエゴで開催。12,000人と過去最大の規模に
- 「KubeCon NA 2022」から、サイドカーレスを実装したサービスメッシュのIstioのセッションを紹介
- Intelが中国のベンチャーHyperと共同で開発を進める新しいコンテナランタイムKataを公開
- サービスメッシュのLinkerd 2.9を紹介。EWMA実装のロードバランサー機能とは