Cloud Native Landscapeとは

藤原善基氏(以下、藤原):では「Cloud Native Landscapeとは?」です。CNCFのCloud Native Landscapeは、これまで未知の領域であるCloud Native Technologyを通過する、目的地に至る道として、通過する企業や開発者を支援するリソースマップとなることを意図しています。

Cloud Nativeなアプリをデプロイするためには多くのルートがあり、ここではCNCFプロジェクトとともに、よく通過される道筋を表しています。この“よく通過される道筋”とは、原文では“Well traveled pass”となっていいて、前項に記載のとおり、多くのルートはありますが、人がよく通っていて踏み慣らされている共通項となって使えるようなルートを案内していくと。

もちろん別の獣道と言いますか、ほかの人は通っていないとか、それぞれの組織独自の要件によって別の道を通っていくのもぜんぜんアリです。ただ、そういった通りやすい道を、CNCFがこれらの組織とともに共同で作成しているものになります。

Cloud Native Landscapeの階層構造

このCloud Native Landscapeは階層構造で、GitHub上で公開されています。今回のセッションでは、Trail MapとInteractive Versionの2つを取り上げます。

まず1つ目、Trail Mapです。これはCloud Native Journeyを開始する企業に、概要、ステップを提供するものです。10のステップが記載されています。特にこのとおりにやる必要があるものではなく、よく通られる道をガイドのために出しているものです。

コンテナライゼーションというステップや、CI/CDが2番目にあることなど、順番で流れていく中で、CNCFでホストしているプロジェクト、プロダクトを横に添えて、Cloud Native Technologyを採用していく、進めていくのが、よく通られている道筋だということで案内しています。

続いて、Interactive Versionです。これはLandscapeをインタラクティブにソートできるものです。便利なので、Cloud Native Landscapeと呼ぶときに、このUIを指す方もいるかなぁという印象です。非常に使いやすいUIですが、これは動きを見ないとなかなかイメージが湧かないと思うので、画面操作で案内しようと思います。

Cloud Native Interactive Landscapeの画面操作

(画面操作開始)

Cloud Native Interactive Landscapeです。画面左側にソートできる条件があります。「CNCF Relation」「License」「Organization」「Headquarters Location」の4つが有効です。CNCFとのRelation です。そのなかのCNCFのホストしているProjectであれば、「CNCF Projects」をチェックすると抜粋されます。

広く採用されているものと、今採用が始まっているようなものと、あとはまだサンドボックスの実験段階と言うか、試しているレベル感と捉えているもの。それぞれのCNCFとの成熟度が定義されています。

それとは別に、CNCFのメンバーがホストしているプロジェクトがあります。またCNCFのメンバーではないプロジェクトやプロダクトもありますが、このLandscapeにふさわしいと思われるものは入っています。

そして特徴的なのがライセンス、Not Open Sourceです。これを押すとグレーアウトされて、オープンソースではなく、商品、プロダクトとして販売されているもの、使われているものが抽出されます。

例えばKubernetesとホストしているサービスであれば、AWSのEKSや、AzureのAKS、グーグルのGKEなどです。そういったプロダクトもグレーアウトの、Not Open SourceのカテゴリーでCloud Native Landscapeに入っています。

ほかにはOpen Sourceです。Apache License 2.0と、それ以外のさまざまなライセンス。興味があったら、この条件でソートしてもらえればと思います。

そしてほかにもOrganizationで、こちらが 各プロジェクトが所属している組織や、「Headquarters Location」でそのプロダクト、プロジェクトのヘッドクオーターがあるロケーションで、地域性なども確認できます。

Landscapeではこうやって広く見ていくものと、Card Modeというものがあります。こちらではCNCFのGraduated Projectなど、Maturity Levelに応じてバーっと見られるようになっています。例えば代表的なKubernetesだと、Webサイトやスター、LinkedInのページやレポジトリがいくつついているかなど、さまざまなものが見られます。

Kubernetes.ioのページには、英語のサイトがありますが、有志で日本語の翻訳もされています。最後にまた案内します。

あとは、ServerlessとMembersという項目が別になっています。Serverlessのプロダクトを見たい場合はServerlessをクリックすると見れるようになっています。

そしてMembersです。プラチナメンバー、ゴールドメンバー、シルバーメンバー、そしてエンドユーザーサポーターとノンプロフィット、アカデミックなど。このように、さまざまなCNCFに関わっているプロジェクト、プロダクト、メンバーが見れるようになっています。

(画面操作終わり)

Cloud Native Landscapeは切り口が非常に多い

Landscapeも見ているとキリがないと言うか、切り口が非常に多いので、おすすめの情報ソースとして1つ挙げました。英語になってしまいますが、The New Stack社でLandscapeの見方、外観や各レイヤーを紹介しているシリーズがあります。

こちらを見れば、この4つのレイヤーと、あとはレイヤーを横断しているプラットフォームや、Observability & analysisもイントロの中に含まれているので、見てもらえればと思います。

実はLandscape、いろいろなものがあります。私がちょっと調べた中では、あと2つありました。

(画面操作開始)

1つがCNCFではなく、Linux FoundationとAI & Data Foundation Interactive Landscapeです。もしAI、Dataに関連するものに興味がある方は、こちらを見るといいかなと思います。

作りは同じですが、違いとしてはサンドボックスがないようです。GraduatedとIncubatingというMaturity Levelで記載があり、それぞれ見れるようになっています。

あとはContinuous Delivery Landscapeというものです。こちらはContinuous Delivery Foundation、CDFというFoundationがあります。CNCFと横並び、The Linux Foundationの傘下のコミュニティです。CI/CD周りのプロダクトもあるし、クラウドネイティブという括りもあります。

あとは、ここにTerraformとかいろいろなプロダクトが入っています。私もここのFoundationは馴染みが少なくチェックしていませんでした。この発表のときに改めて見て、いろいろ入っているなぁと思いました。

(画面操作終わり)

スライドの図は再掲です。TOCと、End User Communityと、Governing Boardという存在があります。次のページでこの3つの主体が出てくるので、改めて出しました。

TOCは選挙制

TOCは、冒頭でもちょこっと触れましたが選挙制で、任期が2年で交代するようになっています。直近でその交代があって、新たな5人のメンバーが選出されたので取り上げました。

(スライドの)左側にあった理事会から3名が選出され、右側のEnd Userで2名選出され、計5名が選ばれています。Apple、Weaveworks、community、そしてSpotify、CERNなどです。

一方で3名の方、Kubernetesの生みの親の1人と言われているBrendan Burnsさん、Matt Kleinさん、Xiang Liさんは離れられたということです。感謝の言葉は、このCNCFの記事の中に書かれています。

CNCFのEnd User Technology Radar

あと簡単に取り上げたいのは、CNCFのEnd User Technology Radarです。こちらはEnd User Communityがまとめているもので、実際にエンドユーザーがクラウドネイティブで使用するソリューションと推奨するソリューションを理解したい技術者が対象として作られています。

ソリューションが、このレーダー型の中からADOPT、TRIAL、ASSESSの3つのレベル感で配置されています。これについては今のところ、Secret management、Database Storage、Observability、Continuous Deliveryの4つがすでに出ています。

それぞれリンクつけてあります。VP EcosystemのCheryl Hungさんを中心として解説されているので、ぜひ動画を見てもらえればと思います。

このレーダーを作った背景として、それぞれ各社で使っているツールなので、あまり情報を外に出せないところはありますが、匿名性を維持して、ある程度のツールの使用状況などをエンドユーザーから集めて、コミュニティにフィードバックしているというような狙いや経緯などを、動画の中では話していました。

CNCFが注目している5つの技術

もう1つトレンドとして、CNCFが2021年に注目している5つの技術です。こちらが、2020年のKubeCon + CloudNativeCon North America 2020にて、TOCのchairを務めているLiz Riceさんが発表しているものです。

Chaos Engineering、Kubernetes Edge、Service Mesh、WASM and eBPF、そしてDeveloper & Operator Experienceです。5個目は技術というよりも、技術がフォーカスするポイントかなと思っています。

先ほどNorth Americaは“2020年の”と言いましたが、EUのCo-Located Eventsが2021年の5月、ゴールデンウィークの後半に開催されて、その前段でイベントが開催されるんです。だいたいこの流れに沿ったものが含まれています。ほかにはAIなどが入っていたと思います。

エピローグ

では、ここでまとめ、エピローグに入ります。まず話したことです。Cloud Nativeとは、CNCFのTOCが定義しています。“クラウドなどを扱う際のベストプラクティスを文言化したもの”という捉え方を、少なくとも私はしています。

あとは、Cloud Native Landscapeを中心に紹介しました。Trail Map、Interactive Versionなどがあります。

Landscapeは実はいろいろあって、Linux FoundationのAI & Data Foundation Interactive Landscapeと、Continuous Delivery Landscapeというものもあります。興味に合わせて、いろいろなものができるというところです。

最近のCNCFの動き、トレンドとして、テックリードをしているTOCメンバーの入れ替えと、CNCFのEnd User Technology Radar、そして5 technologies to watch in 2021を取り上げました。

このセッションのゴールとしては、自身が興味をもっている領域と、CNCFの活動をマッピングできること。それと、Cloud Nativeな世界に親しみがもてるようになるところでしたが、いかがだったでしょうか? 

興味の領域とマッチするような情報であったり、「調べるとおもしろそう」というものが見つかっていれば幸いです。それを通してCNDOのほかのセッションや、CNCFの発信している情報に興味を持ってもらえたらうれしいです。

このセッションの前では、Beforeとして果ての無い旅に出たり、いろいろな情報に囲まれて五里霧中になっている状態から、Afterではこういったリソースマップ、ガイドになるものを手にして自らどこかに進もうとしたり、ほかの人と地図を見ながらなにかしゃべったり、ワイワイしていくような状態になっていればうれしいです。

今後のアクションのおすすめ

今後のアクションについて、私からのおすすめです。ぜひコミュニティに参加してもらえればと思います。

もしKubernetesのドキュメント翻訳に興味がある方がいらっしゃったら、なかなか参加できていない私が言うのもあれですが、人手は足りていないので参加してもらえれば。気軽にみんな助け合いながらやっているので、よろしくお願いします。

一方で、コミュニティに入るにも、英語のハードルが高いという方もいると思います。Slackのコミュニティなどは英語だけではなく日本語での情報があり、教え合う文化があります。安心して入ってもらえればと思います。

Kubernetesであれば、#jp-eventsや#jp-usersチャンネルなどがあるので、これらに加わってもらえればと思っています。

また情報を発信している方や、組織をフォローするとよいと思います。私も、もろもろフォローしてます。CNCFや各プロジェクトのそれぞれのツイートや、Maintainerのツイートなどを見るとよいのかなと思っています。

このCNDOというイベントでは、日本語で発信、自身で触っている方が集まっているイベントなので絶好の場だなと思って、改めてのリマインドでした。

手前味噌なので2回言うのもあれですが、私もそういった情報をまとめています。

CNCFはコミットする人たちの集まりである

「最後にCNCFとは?」です。General managerを務められているPriyanka Sharmaさんの以前のセッションをよかったら見てもらいたいですが、「CNCFとはコミットする人たちの集まりである」というけっこうエモい話をしていて。私もこのセッションを聞いて、いいなぁと思ったので最後に取り上げました。

CNCFとはA Foundation of Doers,Builders, Architects, Enablersということで、自ら行うもの、組み立てるもの、設計するもの。そして、人になにかを可能にさせるものの集まりである。非常にポジティブな団体であって、いろいろなコミットの仕方があると。

もちろんプログラムを書くというものもありますが、ドキュメントを書いたり、あとはStudentやLearnerとして学んでいくのもコミットです、とGMの方も言っていたので、ぜひこのコミュニティに入ってコミットをしてもらえればと思っています。

私からの発表は以上です。ご清聴ありがとうございました。