Slide 1

Slide 1 text

物語から入るCloud Nativeな 世界(CNCF Cloud Native Landscape編) 株式会社エーピーコミュニケーションズ プロフェッショナル職 藤原 善基

Slide 2

Slide 2 text

本日のメニュー 話すこと 𝥷自己紹介 𝥷Cloud Nativeとは? 𝥷Cloud Native Landscapeとは? 𝥷実は色々あるLandscape 𝥷CNCFの動きとトレンド 話さないこと 𝥷技術の詳細/実践的な内容 2

Slide 3

Slide 3 text

本日のメニュー このセッションの想定リスナー 𝥷Cloud Nativeな世界線に興味がある方 𝥷これからCloud Nativeな世界に入って来られる方 𝥷CNDOで視聴するセッション選びに迷われている方 このセッションのゴール 𝥷ご自身が興味を持っている領域とCNCFの活動をマッピングできる 𝥷Cloud Nativeな世界に親しみが持てるようになる 3

Slide 4

Slide 4 text

自己紹介 名前: 藤原 善基(ふじわら よしき) / Twitter: @antiberial 𝥷所属:株式会社エーピーコミュニケーションズ クラウド事業部 兼 エンジニアリングメンター室 𝥷経歴(IT業界前): 物理コンテナの営業 (国際貨物運送業)など 𝥷帰国子女: ギリシャ育ち(生後10ヶ月~7才) 𝥷自然言語/文化/雑学オタク 𝥷全国通訳案内士(英語)資格保有 →物事を調べたり、ガイドするのが好き 4

Slide 5

Slide 5 text

自己紹介 𝥷コミュニティー活動 (2021年) 𝥷Cloud Native Days Spring 2021 ONLINEの実行委員 𝥷July Tech Festa 2021winterのプログラム委員...など 𝥷SRE/ DevOps/Kubernetesに関する3つの英語のメルマガをまとめたブログを毎週執筆 𝥷はてなブログ(土-日) 𝥷英語ブログ(Medium)(月-水) 𝥷Clubhouseでふりかえり(月) 5

Slide 6

Slide 6 text

𝥷Cloud Native物語 ~話は遡る~ ・2014年、Googleは、コンテナのオーケストレーションに使用していた「 Borg」という内部プロジェクト をオープンソース化した。 ・プロジェクトを着地する場所がなかったため、 GoogleはThe Linux Foundationと提携してCloud Native Computing Foundation(CNCF)を世に送り出した。 ・これにより、Kubernetesやその他のCloud Native Solutionの開発とコラボレーションが促進され た。 ~プロローグ~ 6

Slide 7

Slide 7 text

𝥷Cloud Native物語 ~話は続く~ ・Borgの実装はGoで書き直され、Kubernetesに名前が変更され、始まりのプロジェクトとして CNCFに寄贈された。 ・Kubernetesはほんの始まりに過ぎず、新しいプロジェクトの群れが CNCFに加わり、Kubernetes の機能が拡張されることが早い段階で明らかになった。 (~The beginner’s guide to the CNCF landscape、The history of the CNCFより拙訳~) ~プロローグ~ 7

Slide 8

Slide 8 text

𝥷Cloud Native物語 ~話は続く~ ・Borgの実装はGoで書き直され、Kubernetesに名前が変更され、始まりのプロジェクトとして CNCFに寄贈された。 ・Kubernetesはほんの始まりに過ぎず、新しいプロジェクトの群れが CNCFに加わり、Kubernetes の機能が拡張されることが早い段階で明らかになった。 (~The beginner’s guide to the CNCF landscape、The history of the CNCFより拙訳~) ・こうして新たな時代が始まった。 ・世は正に「Cloud Native時代」!! ~プロローグ~ 8

Slide 9

Slide 9 text

𝥷Cloud Native物語 ~話は続く~ ・Borgの実装はGoで書き直され、Kubernetesに名前が変更され、始まりのプロジェクトとして CNCFに寄贈された。 ・Kubernetesはほんの始まりに過ぎず、新しいプロジェクトの群れが CNCFに加わり、Kubernetes の機能が拡張されることが早い段階で明らかになった。 (~The beginner’s guide to the CNCF landscape、The history of the CNCFより拙訳~) ・「Cloud Native時代」!!←って、言いたかっただけ。 巷でバズワードの様に扱われている「 Cloud Native」について、発端となった出来事を物語の形でプ ロローグとして取り扱いました。 ・以降、「Cloud Native」な世界について、今出てきた「CNCF」を軸に触れていきます。 ~プロローグ~ 9

Slide 10

Slide 10 text

𝥷~誰が定義しているのか?~ CNCFのTOC(Technical Oversight Committee)が 定義しています。 𝥷CNCFはThe Linux Foundation傘下のコミュニティー ・The Linux Foundationは複数のコミュニティーを運営しており、コミュニティーごとにホストしている プロジェクトがあり、本セッションでは複数のコミュニティーが登場します。 𝥷CNCF Overview 2021 ・これから私が説明する内容の大部分を見やすい資料で、まとめているのでオススメです。 「A Brief History of the Cloud」など、よく引用されている資料も含まれています。 Cloud Nativeとは? 10

Slide 11

Slide 11 text

𝥷~CNCFはどんな構成なのか?~ Cloud Nativeとは? 11 Governing Board Technical Oversight Committee End User Community Marketing Committee Special Interest Groups End User SIGs and User Groups • Mainly vendors • Fund the organization • Marketing and strategic direction • 11 to technical architects • Admit new projects • Acts as a resource to projects • Real end users of these technologies • Communicate back requirements • and good and bad experiences

Slide 12

Slide 12 text

𝥷〜TOCの役割とは?〜 ・CNCFの技術的ビジョンを定義および維持する ・理事会(GB/Governing Board)によって設定された CNCFの範囲内で新しいプロジェクトの承認 ・プロジェクトの概念アーキテクチャを作成し、プロジェクトを調整し、プロジェクトを削除またはアーカ イブする ・エンドユーザー理事会 (End User Board)からのフィードバックを受け入れ、プロジェクトにマップす る ・管理下のコンポーネントへのインターフェイスの調整 (標準化する前のコードリファレンス実装 )、お よびCNCFプロジェクト全体に実装される一般的なプラクティス (存在する場合)を定義する Cloud Nativeとは? 12

Slide 13

Slide 13 text

𝥷〜TOCの指針とは?〜 ・CNCF TOC Principles 𝥷TOC Operating Principles 𝥷We Are Project-Centric 𝥷Projects Are Self-Governing 𝥷What We're Looking For 𝥷No Kingmakers & One Size Does Not Fit All 𝥷Not a Standards Body 𝥷We Want a Comprehensive Toolchain 𝥷Above All We Want To Help Projects Cloud Nativeとは? 13

Slide 14

Slide 14 text

𝥷〜TOCの指針とは?〜 ・CNCF TOC Principles 𝥷No Kingmakers & One Size Does Not Fit All 「TOCは、広く使用される可能性のあるプロジェクトを選択するが、各カテゴリの勝者を選択するわけ ではない。類似または競合するプロジェクトは、重複の理由で除外されない。」 (一部抜粋した拙訳) →エンドユーザー側の多くの異なるサイズ、ユースケース、ニーズに応じた選択ができる様にする、 一つのサイズ(プロジェクト/プロダクト)に全てを当てはめない。 Cloud Nativeとは? 14

Slide 15

Slide 15 text

𝥷CNCF Cloud Native Definition v1.0日本語版(1/3) ・クラウドネイティブ技術は、パブリッククラウド、プライベートクラウド、ハイブリッドクラウドなどの近代 的でダイナミックな環境において、スケーラブルなアプリケーションを構築および実行するための能力 を組織にもたらします。 このアプローチの代表例に、コンテナ、サービスメッシュ、マイクロサービス、イミュータブルインフラ ストラクチャ、および宣言型 APIがあります。 Cloud Nativeとは? 15

Slide 16

Slide 16 text

𝥷CNCF Cloud Native Definition v1.0日本語版(2/3) ・(コンテナ、サービスメッシュ・・・) これらの手法により、回復性、管理力、および可観測性のある疎結合 システムが実現します。 これらを堅牢な自動化と組み合わせることで、エンジニアはインパクトのある変更を最小限の労力で 頻繁かつ予測どおりに行うことができます。 Cloud Nativeとは? 16

Slide 17

Slide 17 text

𝥷CNCF Cloud Native Definition v1.0日本語版(3/3) ・Cloud Native Computing Foundationは、オープンソースでベンダー中立プロジェクトのエコシ ステムを育成・維持して、このパラダイムの採用を促進したいと考えてます。 私たちは最先端のパターンを民主化し、これらのイノベーションを誰もが利用できるようにします。 Cloud Nativeとは? 17

Slide 18

Slide 18 text

この定義では、「疎結合」「回復力」「管理性」「可観測性」「自動化により、堅牢かつ期待通りに、最小 限の労力で更新できる」といった点が、クラウドネイティブの特性として挙げられています。 クラウドなどを使う際のベストプラクティスを文言化したものが、クラウドネイティブだと思います 。 あくまでも、ベストプラクティスとしての属性を表現したものです。それを達成するために、技術やコン セプト、考え方があります。これらについては、現在とは別のものが、今後新たに出てくる可能性があ ります。 「どうやってスケーラブルなアプリケーションを作れるようにしていくか」がテーマ なので、それを目指 していくことによって、クラウドの使い方のベストプラクティスとか、適切なアプリケーションの設計が できるようになっていくと私は信じています。 Cloud Nativeとは? 18 引用: 「クラウドネイティブ」はどう誤解されている か

Slide 19

Slide 19 text

𝥷どう捉えれば良いか? 「クラウドなどを使う際のベストプラクティスを文言化したもの 」 「どうやってスケーラブルなアプリケーションを作れるようにしていくか 」がテーマ ...と捉えることができる。 𝥷では、エンジニアとしてどう向き合っていくか? ・何から手を付ければ良い? ・キーワードが多く、アップデート情報を追うだけでも大変 ・「果ての無い旅に出ている」気持ちになる →CNCFが道標となる「Cloud Native Landscape」を用意している。 Cloud Nativeとは? 19

Slide 20

Slide 20 text

Cloud Native Landscapeとは? 𝥷Cloud Native Landscape ・CNCF Cloud Native Landscapeはこれまで未知の領域である Cloud Native Technologyを通過 する企業や開発者を支援するリソースマップとなることを意図している。 ・Cloud Nativeなアプリをデプロイするためには多くのルートがあり、ここでは CNCFプロジェクトと共 に特によく通過される道筋を表している。 Redpoint VenturesおよびAmplify Partnersと共同で作成 されている。 20

Slide 21

Slide 21 text

Cloud Native Landscapeとは? 𝥷Cloud Native Landscapeは以下の階層構造。 𝥷Trail Map 𝥷Interactive Version 𝥷New Entries 𝥷Logos 𝥷SVGs with Embedded Text 𝥷Corrections 𝥷External Data 𝥷Best Practices Badge 𝥷Non-Updated Items 𝥷License 𝥷Formats 𝥷Installation 𝥷Vulnerability reporting 𝥷Adjusting the Landscape View 21

Slide 22

Slide 22 text

Cloud Native Landscapeとは? 𝥷Trail Map Cloud Native Journeyを開始する企業に概 要/ステップを提供するもの。 22

Slide 23

Slide 23 text

Cloud Native Landscapeとは? 𝥷Interactive Version 「Cloud Native Landscape」と呼ぶ時には、 これを指す場合もあります。 InteractiveにCNCF Relation、Licenseなどのさ まざまな条件でプロジェクト をソートができます。 23

Slide 24

Slide 24 text

Cloud Native Landscapeとは? 𝥷画面操作にて案内(デモ) ソート条件例: 𝥷CNCF Relation 𝥷Not Open Source(グレーアウト) 𝥷CNCF Member Products/Projects 𝥷Non-CNCF Member Products/Projects 𝥷License 𝥷Not Open Source 𝥷Open Source 𝥷Apache License 2.0 𝥷...and more!! 24

Slide 25

Slide 25 text

Cloud Native Landscapeとは? 𝥷オススメ情報ソース(英語) The New Stack社のCNCF Landscapeの概観、各レイヤーを 紹介しているシリーズの記事。 An Introduction to the Cloud Native Landscape 𝥷The Application Definition and Development Layer  𝥷The Runtime Layer Explained 𝥷The Orchestration and Management Layer  𝥷The Provisioning Layer Explained 25

Slide 26

Slide 26 text

実は色々あるLandscape 𝥷デモで案内したもの 𝥷Serverless landscape(Interactive Landscapeのタブ操作、もしくは(png, pdf)) 𝥷Member landscape(Interactive Landscapeのタブ操作、もしくは (png, pdf) ) 𝥷LF AI & Data Foundation Interactive Landscape GitHubの「Landscapeapp」で先述のCNCF Cloud Native Interactive Landscapeと同じくWeb ページをサポートしている。 𝥷Continuous Delivery Landscape CNCF Cloud Native Interactive Landscapeをモデルにしていて、同じオープンソースコードに基づ いている。Continuous Delivery Landscapeを運営しているThe Continuous Delivery Foundation (CDF) はThe Linux Foundation傘下のコミュニティー。 26

Slide 27

Slide 27 text

𝥷~CNCFはどんな構成なのか?~(再掲) CNCFの動きとトレンド 27 Governing Board Technical Oversight Committee End User Community Marketing Committee Special Interest Groups End User SIGs and User Groups • Mainly vendors • Fund the organization • Marketing and strategic direction • 11 to technical architects • Admit new projects • Acts as a resource to projects • Real end users of these technologies • Communicate back requirements • and good and bad experiences

Slide 28

Slide 28 text

𝥷TOCのメンバーは2年任期。選挙制。 CNCFの記事: Welcome to our 5 new TOC members! 理事会(GB/ Governing Board)から任命された以下の 3名が選出 ・Erin Boyd, Apple (@erinaboyd) – Currently an Engineer at Apple. ・Cornelia Davis, Weaveworks (@cdavisafc) – As the CTO at Weaveworks ・Lei Zhang, Alibaba (@resouer) – Co-maintainer of Kubernetes community, and co-chair of CNCF App Delivery SIG. エンドユーザー理事会 (End User Board)から任命された以下の 2名が選出 ・Dave Zolotusky, Spotify (@dzolotusky) – Software engineer on Spotify’s Platform team in Stockholm, Sweden. ・Ricardo Rocha, CERN (@ahcorporto) – Computing engineer at CERN currently part of the CERN cloud team, focusing primarily on networking, containers, and more recently machine learning infrastructure. ・以下のメンバーが退任 Brendan Burns (@brendandburns), Matt Klein (@mattklein123) and Xiang Li (@xiangli0227) CNCFの動きとトレンド 28

Slide 29

Slide 29 text

CNCFの動きとトレンド 𝥷CNCF End User Technology Radarとは? ・一連の新しいテクノロジーへの独創的なガイド。 ・エンドユーザーがクラウドネイティブで使用するソリューションと推奨するソリューションを理解したい 技術者が対象。 ・ソリューションを次の 3つのレベル(Adopt/Trial/Assess)のいずれかに配置している。 過去取り上げているカテゴリーは以下 𝥷Secret management, January 2021 𝥷Database Storage, November 2020 𝥷Observability, September 2020 𝥷Continuous Delivery, June 2020 29

Slide 30

Slide 30 text

CNCFの動きとトレンド 𝥷KubeCon + CloudNativeCon NA 2020にて 𝥷TOC chairのLiz Rice氏より 𝥷2021年に注目する技術「5 technologies to watch in 2021」として紹介。 𝥷Chaos Engineering 𝥷Kubernetes Edge 𝥷Service Mesh 𝥷WASM and eBPF 𝥷Developer & Operator Experience ・5個目は技術と言うよりも、技術がフォーカスするポイント? ・KubeCon + CloudNativeCon EU 2021のCo-Located Eventsもほぼこれに沿っている。 30

Slide 31

Slide 31 text

~エピローグ~ 話したこと 𝥷Cloud Nativeとは? →TOCが定義している。 「クラウドなどを使う際のベストプラクティスを文言化したもの」と捉えることができる。 𝥷Cloud Native Landscapeとは? →Cloud Native Technologyを通過するためのリソースマップとして、企業や開発者を支援すること を意図としたもの。Trail Map、Interactive versionなどがある。 𝥷実は色々あるLandscape →LF AI & Data Foundation Interactive Landscape、Continuous Delivery Landscapeなど。 𝥷CNCFの動きとトレンド →TOCのメンバー入れ替え、CNCF End User Technology Radar、5 technologies to watch in 2021。 31

Slide 32

Slide 32 text

このセッションのゴール 𝥷ご自身が興味を持っている領域と CNCFの活動をマッピングできる 𝥷Cloud Nativeな世界に親しみが持てるようになる →こちらをゴールとして設定させて頂きましたが、いかがでしたでしょうか。 CNDOの他のセッション、CNCFの発信している情報に興味を持って頂けたら幸いです。 Before After ~エピローグ~ 32

Slide 33

Slide 33 text

今後のアクションについて 𝥷コミュニティーに参加していきましょう Slackのコミュニティーにこれから入られる方は、以下から登録が可能です。 ・Kubernetesはslack.kubernetes.ioから。 →Kubernetesのドキュメント翻訳に興味がある方は「 #kubernetes-docs-ja」チャンネルからご参 加ください(ドキュメントサイトのローカライズ (k/website)など)。 ・CNCFはslack.cncf.io/から。 ~エピローグ~ 33

Slide 34

Slide 34 text

今後のアクションについて 𝥷「英語は敷居が高い!」という方は Slackのコミュニティーなどは日本語での情報があり、教え合う文化があります。 安心してお入りください。Kubernetesであれば、#jp-events、#jp-usersチャンネルなど。 𝥷情報を発信している方や組織をフォローしましょう Twitter: CNCF/CNCFの各プロジェクト、各プロジェクトの Maintainerなど CNDOは日本語で発信されている方が集っているイベントなので絶好の場ですね! 𝥷私も週刊で情報をまとめています SRE/ DevOps/Kubernetesに関する3つの英語のメルマガをまとめたブログを毎週執筆 𝥷はてなブログ ~エピローグ~ 34

Slide 35

Slide 35 text

ご参加をお待ちしています! 𝥷CNCFとは?→「コミットする人達の集まり」「学ぶこともコミット」 Keynote: End to End: The Foundation of Doers - Priyanka Sharma, General Manager, CNCF ~エピローグ~ 35

Slide 36

Slide 36 text

36 ご静聴 ありがとうございました! See you soon!!