Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Cloud Controller Manager 超入門 / Cloud Controller...
Search
Kohei Ota
November 10, 2020
Technology
1.5k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Cloud Controller Manager 超入門 / Cloud Controller Manager 101
https://k8sinternal.connpass.com/event/194015/
Kohei Ota
November 10, 2020
More Decks by Kohei Ota
See All by Kohei Ota
CloudNative Meets WebAssembly: Exploring Wasm's Potential to Replace Containers
inductor
4
3.7k
The Cloud Native Chronicles: 10 Years of Community Growth Inside and Outside Japan
inductor
0
210
Cracking the KubeCon CfP
inductor
2
940
KubeCon Recap -Platform migration at Scale-
inductor
1
1.1k
コンテナビルド最新事情 2022年度版 / Container Build 2022
inductor
3
610
データベースとストレージのレプリケーション入門 / Intro-of-database-and-storage-replication
inductor
28
6.7k
KubeConのケーススタディから振り返る、Platform for Platforms のあり方と その実践 / Lessons from KubeCon case studies: Platform for Platforms and its practice
inductor
3
1.1k
オンラインの技術カンファレンスを安定稼働させるための取り組み / SRE activity for online conference platform
inductor
1
1.4k
Kubernetesネットワーキング初級者脱出ガイド / Kubernetes networking beginner's guide
inductor
23
8k
Other Decks in Technology
See All in Technology
Rustuna: Rustによる高速なOptuna実装
pfn
PRO
0
100
USB PDを使ってスマホを労わりたい
raspython3
0
160
実践! SRE × AI - ABEMA における AIOps -
tetsuya28
8
3k
LocalStack を使ったサーバーレスアプリケーション開発 / Serverless Development with LocalStack
kakakakakku
1
420
二歩目のフロントエンド・ウェブアクセシビリティ
camiha
2
430
パッチ更新でterraform initが落ちた日
grimoh
1
120
AIカンパニーへの転換を支えた、エンジニアの仕事の再定義
kworkdev
PRO
2
600
AIは「聞けば答える」から「任せると自分で進める」へ - JACTIMペナン地域部会・ペナン三水会講演
knishioka
0
100
OR学会2026年秋期大会_機械学習と数理最適化の融合による、配合レシピ最適化システム開発事例
brainpadpr
0
140
AI駆動開発の時代になったのでトヨタ生産方式から見直す
terurou
7
5.9k
使いこなすために知っておきたい Azure SRE Agent アンチパターン
torumakabe
2
480
会社説明資料
persolserverworks
0
9.7k
Featured
See All Featured
Music & Morning Musume
bryan
48
7.4k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
Tell your own story through comics
letsgokoyo
1
1.1k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.8k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
440
Code Reviewing Like a Champion
maltzj
529
40k
Between Models and Reality
mayunak
4
490
Crafting Experiences
bethany
1
380
The Curious Case for Waylosing
cassininazir
1
570
Building the Perfect Custom Keyboard
takai
2
900
The Cult of Friendly URLs
andyhume
79
7k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
320
Transcript
Cloud Controller Manager 超入門 Kohei Ota, CNCF Ambassador/HPE Solutions Architect
Kubernetes Internal #2
© 2020 Cloud Native Computing Foundation 2 Who am I
Kohei Ota (@inductor) •CNCF Ambassador •Cloud Native Solution Architect at HPE •Kubernetes SIG-Docs Japanese owner •Docker Meetup Tokyo Organizer •CloudNative Days Tokyo Organizer •Docker enthusiast
© 2020 Cloud Native Computing Foundation 3 Today’s goal Cloud
Controller Manager完全に理解した
小話: DockerとKubernetesの 生まれた時期と経緯
© 2020 Cloud Native Computing Foundation 5 Containers Cloud Native
Kubernetes (2015) •Googleが15年近く前から作っていたBorgという基盤 技術の思想がベース – インフラを抽象化して必要なリソースをアプリに提供す るためのプラットフォーム •Borgの思想をフルにOSSとして展開 Open Source IaaS PaaS Open Source PaaS Virtualiza- tion 2000 2001 2006 2009 2010 2011 Non- Virtualized Hardware 2013 2015 IaaS here!
© 2020 Cloud Native Computing Foundation 6 Marketing Committee Technical
Oversight Committee Governing Board End User Community Container Orchestration Distributed system Platform for Platforms • 複数の「ノード」を束ねる クラスタリング • 柔軟なジョブスケジューリング • Raftベースの分散KVS • 高速で簡単なスケーリング • ロードバランサーとの統合 • 柔軟で簡単なデプロイ手段 • インフラ基盤との強力な連携 • 拡張を前提に作られた APIやリソース • 大きなコミュニティとエコシステム Kubernetesの3つの顔
© 2020 Cloud Native Computing Foundation 7 Marketing Committee Technical
Oversight Committee Governing Board End User Community Container Orchestration Distributed system Platform for Platforms • 複数の「ノード」を束ねる クラスタリング • 柔軟なジョブスケジューリング • Raftベースの分散KVS • 高速で簡単なスケーリング • ロードバランサーとの統合 • 柔軟で簡単なデプロイ手段 • インフラ基盤との強力な連携 • 拡張を前提に作られた APIやリソース • 大きなコミュニティとエコシステム SIG Cloud Provider が各クラウド基盤と の連携部分を担って いる Kubernetesの3つの顔
© 2020 Cloud Native Computing Foundation 8 SIGってなに? • SIGs(Special
Interest Groups) ◦ ドキュメント管理やリリース管理から、各コンポーネントの実装 に至るまで、さまざまなSIGがある ▪ あらゆる決定は基本的にSIGによって行われる ◦ SIGごとに異なる組織からのチェア(代表)がいる • Kubernetesそのものがコンポーネントごとに分かれたマイクロ サービス ◦ 組織もまた必要に合わせ分割(SIG, WG) ◦ 各SIGがそれぞれの目的のために日々頑張っている
© 2020 Cloud Native Computing Foundation 9 SIGってなに? • SIGs(Special
Interest Groups) ◦ ドキュメント管理やリリース管理から、各コンポーネントの実装 に至るまで、さまざまなSIGがある ▪ あらゆる決定は基本的にSIGによって行われる ◦ SIGごとに異なる組織からのチェア(代表)がいる • Kubernetesそのものがコンポーネントごとに分かれたマイクロ サービス ◦ 組織もまた必要に合わせ分割(SIG, WG) ◦ 各SIGがそれぞれの目的のために日々頑張っている SIG Cloud Provider 各クラウド基盤とのAPIをよしなにする実装を考える人たちのあつ まり サブプロジェクトにはprovider-aws、provider-azure、provider-gcp などといった各主要クラウド基盤たちが名を連ね、標準化に勤しん でいる
© 2020 Cloud Native Computing Foundation 10 SIGってなに? • SIGs(Special
Interest Groups) ◦ ドキュメント管理やリリース管理から、各コンポーネントの実装 に至るまで、さまざまなSIGがある ▪ あらゆる決定は基本的にSIGによって行われる ◦ SIGごとに異なる組織からのチェア(代表)がいる • Kubernetesそのものがコンポーネントごとに分かれたマイクロ サービス ◦ 組織もまた必要に合わせ分割(SIG, WG) ◦ 各SIGがそれぞれの目的のために日々頑張っている SIG Cloud Provider 各クラウド基盤とのAPIをよしなにする実装を考える人たちのあつ まり サブプロジェクトにはprovider-aws、provider-azure、provider-gcp などといった各主要クラウド基盤たちが名を連ね、標準化に勤しん でいる
© 2020 Cloud Native Computing Foundation 11 SIGってなに? • SIGs(Special
Interest Groups) ◦ ドキュメント管理やリリース管理から、各コンポーネントの実装 に至るまで、さまざまなSIGがある ▪ あらゆる決定は基本的にSIGによって行われる ◦ SIGごとに異なる組織からのチェア(代表)がいる • Kubernetesそのものがコンポーネントごとに分かれたマイクロ サービス ◦ 組織もまた必要に合わせ分割(SIG, WG) ◦ 各SIGがそれぞれの目的のために日々頑張っている SIG Cloud Provider 各クラウド基盤とのAPIをよしなにする実装を考える人たちのあつ まり サブプロジェクトにはprovider-aws、provider-azure、provider-gcp などといった各主要クラウド基盤たちが名を連ね、標準化に勤しん でいる • CCM(Cloud Controller Manager) • CPI(Cloud Provider Interface) の2つが作られたことで、新たな基盤への依存 を外部注入できることができるように
CCM Design overview
© 2020 Cloud Native Computing Foundation 13 CCM Design overview
kube-api-server経由でリソース の差分をチェック 必要なリソースを作成するために Cloud Provider APIを呼ぶ
© 2020 Cloud Native Computing Foundation 14 CCMの責務範囲 • Node
Controller ◦ IaaSとNode Objectのつなぎ込み、メタデータの取得 • Route Controller ◦ ServiceをOverlay networkで使うために各クラウドのネット ワーク経路を制御 • Service Controller ◦ type: LoadBalancerの実体の管理、ターゲットのヘルス チェックなど、クラウドアプライアンスとService Objectのつな ぎ込み
CCMと併せて知っておきたい 他のプロジェクト
© 2020 Cloud Native Computing Foundation 16 CCMと他のエコシステム • Cluster
API ◦ Kindやkubeadmなどで使われる「クラスターを自動生成、管 理する」ためのAPI仕様 ◦ 今後さまざまなシーンでクラスターの自動化に使われていくこ とが予想され、クラウド基盤との連携も重要 • Cluster Autoscaler ◦ いわゆる「クラウドのオートスケーリング」をクラスターと連携さ せるための仕組み ◦ AWSやGCPなど主要クラウドのマネージドKubernetesで触 れる動的なスケーリングなどへの利用においてCCMと密接に 関わっている
© 2020 Cloud Native Computing Foundation 17 まとめ • CCMはクラウドでKubernetesを動かすための重要
な仕組み • type: LoadBalancerを使っている人はCCMのは たらきに感謝しましょう • bellさんのセッションに期待!
[email protected]
This presentation is available at: https://github.com/cncf/presentations Please follow up
with CNCF