SlideShare a Scribd company logo
1 of 41
Download to read offline
Building a Global Supercomputer
with Virtual Kubelet
Dmitry Mishin, University of California San Diego & Adrien Trouillaud, Admiralty
Shingo Omura, Preferred Networks, Inc.
2020/12/22(Tue) Kubernetes Meetup Tokyo #37
KubeCon + CloudNativeCon North America 2020 Recap
自己紹介 - 大村伸吾 (Shingo Omura)
● エンジニア, Preferred Networks, Inc.
○ 社内向けGPUクラスタの開発運用
○ 主にkubernetes sig-scheduling で活動中
● @everpeace (twitter)
● shingo.omura (facebook)
2
PFN における機械学習クラスタ関連の最近のスライド
3
Cloud Native Days Tokyo 2020
SlideShare, Video
4KubeCon + CloudNativeCon North America 2020 Virtual: Building a Global Supercomputer with Virtual Kubelet
5
Overview of this session
● University of California San Diego (UCSD) の
Pacific Research Platform (PRP) で作っている
Nautilus という Global Hyper Cluster (with Kubernetes) を構築中
● Admiralty (admiralty.io) という"decentralized" multi-cluster schedulerを
使ってFederated Schedulingをどう実現しているを解説
(OSS & 商用版あり)
6
なぜこの講演をRecapするのか
この講演をRecapする理由
● 抱える課題/ユースケースがPFNの機械学習クラスタと似ている
○ 複数 Kubernetes Cluster で Federated Scheduling 出来る
Super Computerを構築したい
● Virtual Kubelet + Scheduling Framework を活用した
Federated Scheduling の実装である (kubefedと大きく違う)
○ このアーキテクチャと共にAdmiralty (admiralty.io) の可能性を
以前から検討しており、今回事例として出てきたので注目
● この講演を通してFederated Scheduling 実現の難しさも
併せて見えてくる
7
PFN における Kubernetes環境
8
Icon pack by Icons8 - https://icons8.com
多くの研究者
オンプレ GPU Clusters
Cluster on AWS
(Burst用)
計算Cluster を
選ぶ必要がある
Federated Schedulingの必要性
9
Icon pack by Icons8 - https://icons8.com
多くの研究者
オンプレ GPU Clusters
Cluster on AWS
(Burst用)
いい感じにどっかでやっ
てほしい
魅力的な
タイトル!!
KubeCon + CloudNativeCon North America 2020 Virtual: Building a Global Supercomputer with Virtual Kubelet
11
(再) Overview of this session
● University of California San Diego (UCSD) の
Pacific Research Platform (PRP) で作っている
Nautilus という Global Hyper Cluster (with Kubernetes) を構築中
● Admiralty (admiralty.io) という"decentralized" multi-cluster schedulerを
使ってFederated Schedulingをどう実現しているを解説
(OSS & 商用版あり)
KubeCon + CloudNativeCon North America 2020 Virtual: Building a Global Supercomputer with Virtual Kubelet
Nautilus (global hyper cluster) の概要
アメリカ
だけじゃなく
Europe & APAC
にも広がっている
Transoceanic
Nodesなんてのも
見える
KubeCon + CloudNativeCon North America 2020 Virtual: Building a Global Supercomputer with Virtual Kubelet
Nautilus (global hyper cluster) の概要
Pacific Research
Platformの
Nautilusの規模
UCSDのExpanse
というスパコンも
Federate予定
最終的には
200,000 cores
になるらしい
Cloudによる
Burstingも
行っている
Nautilus における Federation への要求
各拠点はそれぞれ運用組織が違うので
独立に制御したい
ルールやポリシーも
独立に運用・強制したい
namespaceレベルで
federationを利用させたい
(admin作業はできるだけ少なく )
KubeCon + CloudNativeCon North America 2020 Virtual: Building a Global Supercomputer with Virtual Kubelet
KubeCon + CloudNativeCon North America 2020 Virtual: Building a Global Supercomputer with Virtual Kubelet
Admiralty: decentralized multi-cluster control plane
https://github.com/admiraltyio/admiralty
Virtual Kubelet (virtual-kubelet.io) とは
16
● 仮想 Node が作れるライブラリ
● Providerインターフェース を介して好
きなものをNodeとして
振る舞わせることが可能
● 既存 Providers
○ Alibaba Cloud Elastic Container
Instance
○ Azure Container Instances
○ Huawei Cloud Container
Instance
○ Hashicorp Nomad
○ Admiralty, 他
Virtual Kubelet (virtual-kubelet.io) とは
17
● 仮想 Node が作れるライブラリ
● Providerインターフェース を介して好
きなものをNodeとして
振る舞わせることが可能
● 既存 Providers
○ Alibaba Cloud Elastic Container
Instance
○ Azure Container Instances
○ Huawei Cloud Container
Instance
○ Hashicorp Nomad
○ Admiralty, 他
AdmiraltyではFederation先の
クラスタ毎にvirtual-kubeletが
起動する
18
Admiraltyの
動作概要
Admiralty の 動作概要
19
サンプルシナリオ
- “CD” クラスタでJobを作成すると
- “US”, “EU” 実際で実行される
admiralty.io/docs
Admiralty の 動作概要
20
① target cluster 毎に
virtual kubelet が起動して
仮想Nodeが出来る
admiralty.io/docs
Admiralty の 動作概要
21
② pod に multi cluster annotation
付けるとwebhookでproxy podに変換
されて(注: CRDではない)
admiralty.io/docs
③ virtual node に bindされる
Admiralty の 動作概要
22
③ target cluster 側に delegate pod
が自動的に作成されて
(注: CRDではない)
admiralty.io/docs
④ 実 Node に bindされる
Admiralty Internals
● Virtual Kubelet Implementation
● "Look-Ahead" multi-cluster scheduling
23
24
Virtual Kubelet Implementation
AdmiraltyにおけるVirtual Kubeletの実装
KubeCon + CloudNativeCon North America 2020 Virtual: Building a Global Supercomputer with Virtual Kubelet
Virtual Kubeletの責務 Admiraltyでの実装
Admiralty で実現可能な Cluster Topology
26admiralty.io/docs
namespace毎に柔軟なFederation Topologyが張れる
Target C
Target B
Cluster B
Target A
Cluster C
Target A
Target B
28
“Look-Ahead”
multi-cluster scheduling
Kubernetes Scheduling Framework のおさらい
29Scheduling Framework | Kubernetes
Schedule可能な
Node(複数)に絞る
一つのNodeに決める
(最高Scoreを決める)
各podに対する
Binding Cycleは並行に
動作する
pod一個ずつ直列に実行
Admiralty “Look-Ahead”
multi-cluster scheduling の登場人物
30admiralty.io/docs
PodStatusを転送する &
Source Clusterへ付与する権限抑制
ために導入されたCRD
(Source側はPodShaperonしか更新しない)
Source/Target Clusterにそれぞれ
役割の違うschedulerがいる
Source/Target Clusterにそれぞれ
役割の違うschedulerがいる
Admiralty “Look-Ahead” multi-cluster scheduling
31admiralty.io/docs
①
②
③
④
⑤
Admiralty “Look-Ahead” multi-cluster scheduling
32admiralty.io/docs
① Source Pod から Proxy Pod に変換
● ユーザが multicluster.admiralty.io/elect="" annotation 付き
のPodを作る
● Mutating Webhook が spec.schedulerName 等を書き換える
(Proxy Pod と呼ばれる)
①
Admiralty “Look-Ahead” multi-cluster scheduling
33admiralty.io/docs
② Filter: Schedule 可能な Target Cluster Node (virtual node) を探す
● Proxy Scheduler の Filter phase で Target Cluster上に PodShaperon を作成
● PodShaperon controller が Pod を作る (Candidate Podと呼ぶ)
● Candidate Scheduler の Filter & Score phase が実際に行われ
● Schedule先Nodeが決まったら、PodShaperonに Reserved とannotate
● Candidate Pod は Candidate Scheduler の PreBind phaseで Bind を待機
● Source側のFilter は Candidate Pod が Reserved になったのを観測したら成功
②
Admiralty “Look-Ahead” multi-cluster scheduling
admiralty.io/docs
③ Score: Proxy Pod の Schedule先を決定する
● Proxy Scheduler の Score phaseを経て Bind 先が Target Cluster に決まったら
● Proxy Scheduler の Reserve phase で Candidate Pod に Allow とannotateする
(Allow された Candidate Pod は Delegate Pod と呼ばれる)
④ Bind: Proxy Pod を Bind する
● Candidate Scheduler は PreBind phase を抜けて実際のNodeにBind
● Proxy Scheduler は PreBind で待機して Delegate Pod が Scheduled になったら
● Target Cluster(virtual node) に Bind処理
③
④
Admiralty “Look-Ahead” multi-cluster scheduling
35admiralty.io/docs
⑤ 余分なCandidate Pod を Clean Up
● Proxy Scheduler の PostBind phase で
● Bind されなかった Target Cluster上の Candidate Pod を消す
○ Bind された Target Cluster には Delegate Pod が残り
● Source Cluster上の Target Cluster Node (Virtual Kubelet) が Proxy Pod Statusを
更新し続ける
⑤
Admiralty “Look-Ahead” multi-cluster scheduling
36admiralty.io/docs
①
②
③
④
⑤
Admiralty は商用で色々な機能を提供している
● Multi-Cluster Ingress / Global Server Load Balancing (GSLB)
● Cluster Registry
● Cluster Identity Federation
● kubectl Single Sign-On (SSO)
● Tunnels for private clusters
● Centralized kubernetes audit logs
● etc.
37admiralty.io/docs
感想: 現時点ではまだまだ課題は多い印象
● Data Locality 問題
○ 機械学習だとデータ規模が大きいのでTarget ClusterからSource Clusterに
アクセスするのは現実的でない場合が多い
● Target Cluster 依存の設定が書けない (admiraltyio/admiralty#96)
○ Node Selector, Resource要求を変えたい
○ Target Cluster依存のストレージのエンドポイントを指定したい、等
● Persistent Volumeは扱えなさそう(未検証)
● 既存のCustom Scheduler Pluginとの相互運用性が低い
○ Admiralty以外のScheduler Pluginとの合成は非常に難しい(documentに明記あり)
● 不必要な Preemption が多発する (admiraltyio/admiralty#97)
○ Pod Preemption は Scheduling Cycle で発生するので
○ Candidate Pod を作ると Preemption は発生する可能性が常にある
(Candidate Podは最終的にBindされないかもしれない)
38
Kubernetes Federation (kubefed) との現時点での違い
39
kubefed (v0.6.0) Admiralty (v0.13.2)
トポロジ
Host Cluster/Member Cluster
(ツリーのみ)
Flexible/Multiplex
(Target CRDでnamespace毎に設定可)
フォーカス
複数クラスタを効率的に管理
(CRDでresource propagationを管理)
Podを透過的に遠隔クラスタで起動
Network/
DNS
Multi-Cluster Service DNS
X
(一部商用版でサポートあり)
スタイル Centralized / Aggregated Decentralized / Federated
Admiraltyのほうが
Jobクラスタに向いてそう
まとめ
● UCSD & Admiralty の事例は Federated Scheduling の実現例として
興味深かった(事例的にもアーキテクチャ的にも)
● 実用に向けてはまだまだ課題は多く今後の発展に期待
● PFNでも継続的にWatchして行きたい
(使えそうなら積極的にContributeしたい)
40
41

More Related Content

What's hot

ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43Preferred Networks
 
Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...
Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...
Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...Masaya Aoyama
 
Google Container Engine (GKE) & Kubernetes のアーキテクチャ解説
Google Container Engine (GKE) & Kubernetes のアーキテクチャ解説Google Container Engine (GKE) & Kubernetes のアーキテクチャ解説
Google Container Engine (GKE) & Kubernetes のアーキテクチャ解説Samir Hammoudi
 
Kubernetesと閉域網
Kubernetesと閉域網Kubernetesと閉域網
Kubernetesと閉域網Han Li
 
Kuberneteの運用を支えるGitOps
Kuberneteの運用を支えるGitOpsKuberneteの運用を支えるGitOps
Kuberneteの運用を支えるGitOpsshunki fujiwara
 
Spanner から GKE、Spinnaker、そして SRE まで、コロプラが今挑戦していること[Google Cloud INSIDE Games ...
Spanner から GKE、Spinnaker、そして SRE まで、コロプラが今挑戦していること[Google Cloud INSIDE Games ...Spanner から GKE、Spinnaker、そして SRE まで、コロプラが今挑戦していること[Google Cloud INSIDE Games ...
Spanner から GKE、Spinnaker、そして SRE まで、コロプラが今挑戦していること[Google Cloud INSIDE Games ...Google Cloud Platform - Japan
 
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜Masaya Aoyama
 
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料VirtualTech Japan Inc.
 
Dartでサーバレスサービス
DartでサーバレスサービスDartでサーバレスサービス
Dartでサーバレスサービスcch-robo
 
Kubernetes で実践するクラウドネイティブ DevOps "監視とオブザーバビリティ"編 / Cloud Native DevOps with K...
Kubernetes で実践するクラウドネイティブ DevOps "監視とオブザーバビリティ"編 / Cloud Native DevOps with K...Kubernetes で実践するクラウドネイティブ DevOps "監視とオブザーバビリティ"編 / Cloud Native DevOps with K...
Kubernetes で実践するクラウドネイティブ DevOps "監視とオブザーバビリティ"編 / Cloud Native DevOps with K...Preferred Networks
 
Certified XXX まわりのはなし Kubernetes Invitational Meetup #2
Certified XXX まわりのはなし Kubernetes Invitational Meetup #2Certified XXX まわりのはなし Kubernetes Invitational Meetup #2
Certified XXX まわりのはなし Kubernetes Invitational Meetup #2Masaya Aoyama
 
新しいOpenShiftのしくみを調べてみた
新しいOpenShiftのしくみを調べてみた新しいOpenShiftのしくみを調べてみた
新しいOpenShiftのしくみを調べてみたKazuto Kusama
 
Githubを使って簡単に helm repoを公開してみよう
Githubを使って簡単に helm repoを公開してみようGithubを使って簡単に helm repoを公開してみよう
Githubを使って簡単に helm repoを公開してみようShingo Omura
 
Infra: Kubernetes and GKE, Network
Infra: Kubernetes and GKE, NetworkInfra: Kubernetes and GKE, Network
Infra: Kubernetes and GKE, NetworkKuma Arakawa
 
Anthos を使ったエンタープライズ向けクラスタの設計とアップグレード戦略のススメ(CloudNative Days Tokyo 2021 発表資料)
Anthos を使ったエンタープライズ向けクラスタの設計とアップグレード戦略のススメ(CloudNative Days Tokyo 2021 発表資料)Anthos を使ったエンタープライズ向けクラスタの設計とアップグレード戦略のススメ(CloudNative Days Tokyo 2021 発表資料)
Anthos を使ったエンタープライズ向けクラスタの設計とアップグレード戦略のススメ(CloudNative Days Tokyo 2021 発表資料)NTT DATA Technology & Innovation
 
コンテナセキュリティにおける権限制御(OCHaCafe5 #3 Kubernetes のセキュリティ 発表資料)
コンテナセキュリティにおける権限制御(OCHaCafe5 #3 Kubernetes のセキュリティ 発表資料)コンテナセキュリティにおける権限制御(OCHaCafe5 #3 Kubernetes のセキュリティ 発表資料)
コンテナセキュリティにおける権限制御(OCHaCafe5 #3 Kubernetes のセキュリティ 発表資料)NTT DATA Technology & Innovation
 
Datadog による Container の監視について
Datadog による Container の監視についてDatadog による Container の監視について
Datadog による Container の監視についてMasaya Aoyama
 
DockerCon '17 Feedback -User Stories- at Docker Meetup Tokyo
DockerCon '17 Feedback -User Stories- at Docker Meetup TokyoDockerCon '17 Feedback -User Stories- at Docker Meetup Tokyo
DockerCon '17 Feedback -User Stories- at Docker Meetup TokyoGo Chiba
 

What's hot (20)

ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
 
Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...
Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...
Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...
 
Google Container Engine (GKE) & Kubernetes のアーキテクチャ解説
Google Container Engine (GKE) & Kubernetes のアーキテクチャ解説Google Container Engine (GKE) & Kubernetes のアーキテクチャ解説
Google Container Engine (GKE) & Kubernetes のアーキテクチャ解説
 
Kubernetesと閉域網
Kubernetesと閉域網Kubernetesと閉域網
Kubernetesと閉域網
 
Kuberneteの運用を支えるGitOps
Kuberneteの運用を支えるGitOpsKuberneteの運用を支えるGitOps
Kuberneteの運用を支えるGitOps
 
Spanner から GKE、Spinnaker、そして SRE まで、コロプラが今挑戦していること[Google Cloud INSIDE Games ...
Spanner から GKE、Spinnaker、そして SRE まで、コロプラが今挑戦していること[Google Cloud INSIDE Games ...Spanner から GKE、Spinnaker、そして SRE まで、コロプラが今挑戦していること[Google Cloud INSIDE Games ...
Spanner から GKE、Spinnaker、そして SRE まで、コロプラが今挑戦していること[Google Cloud INSIDE Games ...
 
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
 
最近のJuju/MAAS について
最近のJuju/MAAS について最近のJuju/MAAS について
最近のJuju/MAAS について
 
Juju/MAASで作る Kubernetes + GPU
Juju/MAASで作る Kubernetes + GPUJuju/MAASで作る Kubernetes + GPU
Juju/MAASで作る Kubernetes + GPU
 
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料
 
Dartでサーバレスサービス
DartでサーバレスサービスDartでサーバレスサービス
Dartでサーバレスサービス
 
Kubernetes で実践するクラウドネイティブ DevOps "監視とオブザーバビリティ"編 / Cloud Native DevOps with K...
Kubernetes で実践するクラウドネイティブ DevOps "監視とオブザーバビリティ"編 / Cloud Native DevOps with K...Kubernetes で実践するクラウドネイティブ DevOps "監視とオブザーバビリティ"編 / Cloud Native DevOps with K...
Kubernetes で実践するクラウドネイティブ DevOps "監視とオブザーバビリティ"編 / Cloud Native DevOps with K...
 
Certified XXX まわりのはなし Kubernetes Invitational Meetup #2
Certified XXX まわりのはなし Kubernetes Invitational Meetup #2Certified XXX まわりのはなし Kubernetes Invitational Meetup #2
Certified XXX まわりのはなし Kubernetes Invitational Meetup #2
 
新しいOpenShiftのしくみを調べてみた
新しいOpenShiftのしくみを調べてみた新しいOpenShiftのしくみを調べてみた
新しいOpenShiftのしくみを調べてみた
 
Githubを使って簡単に helm repoを公開してみよう
Githubを使って簡単に helm repoを公開してみようGithubを使って簡単に helm repoを公開してみよう
Githubを使って簡単に helm repoを公開してみよう
 
Infra: Kubernetes and GKE, Network
Infra: Kubernetes and GKE, NetworkInfra: Kubernetes and GKE, Network
Infra: Kubernetes and GKE, Network
 
Anthos を使ったエンタープライズ向けクラスタの設計とアップグレード戦略のススメ(CloudNative Days Tokyo 2021 発表資料)
Anthos を使ったエンタープライズ向けクラスタの設計とアップグレード戦略のススメ(CloudNative Days Tokyo 2021 発表資料)Anthos を使ったエンタープライズ向けクラスタの設計とアップグレード戦略のススメ(CloudNative Days Tokyo 2021 発表資料)
Anthos を使ったエンタープライズ向けクラスタの設計とアップグレード戦略のススメ(CloudNative Days Tokyo 2021 発表資料)
 
コンテナセキュリティにおける権限制御(OCHaCafe5 #3 Kubernetes のセキュリティ 発表資料)
コンテナセキュリティにおける権限制御(OCHaCafe5 #3 Kubernetes のセキュリティ 発表資料)コンテナセキュリティにおける権限制御(OCHaCafe5 #3 Kubernetes のセキュリティ 発表資料)
コンテナセキュリティにおける権限制御(OCHaCafe5 #3 Kubernetes のセキュリティ 発表資料)
 
Datadog による Container の監視について
Datadog による Container の監視についてDatadog による Container の監視について
Datadog による Container の監視について
 
DockerCon '17 Feedback -User Stories- at Docker Meetup Tokyo
DockerCon '17 Feedback -User Stories- at Docker Meetup TokyoDockerCon '17 Feedback -User Stories- at Docker Meetup Tokyo
DockerCon '17 Feedback -User Stories- at Docker Meetup Tokyo
 

Similar to KueCon 2020 NA Recap - Building a Global Supercomputer with Virtual Kubelet / Kubernetes Meetup Tokyo #37 / #k8sjp

Kubernetes Meetup Tokyo #8 Self-hosted Kubernetes を調べてみた
Kubernetes Meetup Tokyo #8 Self-hosted Kubernetes を調べてみたKubernetes Meetup Tokyo #8 Self-hosted Kubernetes を調べてみた
Kubernetes Meetup Tokyo #8 Self-hosted Kubernetes を調べてみたAkihito Inoh
 
BuildKitの概要と最近の機能
BuildKitの概要と最近の機能BuildKitの概要と最近の機能
BuildKitの概要と最近の機能Kohei Tokunaga
 
[Cloud OnAir] 【Google Kubernetes Engine 演習】解説を聞きながら GKE を体験しよう 2020年10月29日 放送
[Cloud OnAir] 【Google Kubernetes Engine 演習】解説を聞きながら GKE を体験しよう 2020年10月29日 放送[Cloud OnAir] 【Google Kubernetes Engine 演習】解説を聞きながら GKE を体験しよう 2020年10月29日 放送
[Cloud OnAir] 【Google Kubernetes Engine 演習】解説を聞きながら GKE を体験しよう 2020年10月29日 放送Google Cloud Platform - Japan
 
OpenContrailのソースコードを探検しよう!
OpenContrailのソースコードを探検しよう!OpenContrailのソースコードを探検しよう!
OpenContrailのソースコードを探検しよう!Takashi Sogabe
 
エンプラに Kubernetes を 導入してみて分かった 4つの Lessons Learned
エンプラに Kubernetes を 導入してみて分かった 4つの Lessons Learnedエンプラに Kubernetes を 導入してみて分かった 4つの Lessons Learned
エンプラに Kubernetes を 導入してみて分かった 4つの Lessons LearnedDaiki Kawanuma
 
いまからでも遅くない Docker事始め&愉快な仲間達
いまからでも遅くない Docker事始め&愉快な仲間達いまからでも遅くない Docker事始め&愉快な仲間達
いまからでも遅くない Docker事始め&愉快な仲間達softlayerjp
 
Webrtc bootcamp handson
Webrtc bootcamp handsonWebrtc bootcamp handson
Webrtc bootcamp handsonmganeko
 
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとはKoto Shigeru
 
ざっくり始めるCloud Native開発
ざっくり始めるCloud Native開発ざっくり始めるCloud Native開発
ざっくり始めるCloud Native開発YASUKAZU NAGATOMI
 
SpringOne Platform Replay -Pivotal Cloud Foundry-
SpringOne Platform Replay -Pivotal Cloud Foundry-SpringOne Platform Replay -Pivotal Cloud Foundry-
SpringOne Platform Replay -Pivotal Cloud Foundry-CASAREAL, Inc.
 
Introduction to Magnum (JP)
Introduction to Magnum (JP)Introduction to Magnum (JP)
Introduction to Magnum (JP)Motohiro OTSUKA
 
[DockerConハイライト] OpenPubKeyによるイメージの署名と検証.pdf
[DockerConハイライト] OpenPubKeyによるイメージの署名と検証.pdf[DockerConハイライト] OpenPubKeyによるイメージの署名と検証.pdf
[DockerConハイライト] OpenPubKeyによるイメージの署名と検証.pdfAkihiro Suda
 
CyberAgentのインフラについて メディア事業編 #catechchallenge
CyberAgentのインフラについて メディア事業編 #catechchallengeCyberAgentのインフラについて メディア事業編 #catechchallenge
CyberAgentのインフラについて メディア事業編 #catechchallengewhywaita
 
Kubernetes meetup-tokyo-13-customizing-kubernetes-for-ml-cluster
Kubernetes meetup-tokyo-13-customizing-kubernetes-for-ml-clusterKubernetes meetup-tokyo-13-customizing-kubernetes-for-ml-cluster
Kubernetes meetup-tokyo-13-customizing-kubernetes-for-ml-clusterPreferred Networks
 
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Masahito Zembutsu
 
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...NTT DATA Technology & Innovation
 
GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話
GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話
GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話R S
 
コンテナ運用基盤 with OpenShift
コンテナ運用基盤 with OpenShiftコンテナ運用基盤 with OpenShift
コンテナ運用基盤 with OpenShiftY K
 

Similar to KueCon 2020 NA Recap - Building a Global Supercomputer with Virtual Kubelet / Kubernetes Meetup Tokyo #37 / #k8sjp (20)

Kubernetes Meetup Tokyo #8 Self-hosted Kubernetes を調べてみた
Kubernetes Meetup Tokyo #8 Self-hosted Kubernetes を調べてみたKubernetes Meetup Tokyo #8 Self-hosted Kubernetes を調べてみた
Kubernetes Meetup Tokyo #8 Self-hosted Kubernetes を調べてみた
 
BuildKitの概要と最近の機能
BuildKitの概要と最近の機能BuildKitの概要と最近の機能
BuildKitの概要と最近の機能
 
[Cloud OnAir] 【Google Kubernetes Engine 演習】解説を聞きながら GKE を体験しよう 2020年10月29日 放送
[Cloud OnAir] 【Google Kubernetes Engine 演習】解説を聞きながら GKE を体験しよう 2020年10月29日 放送[Cloud OnAir] 【Google Kubernetes Engine 演習】解説を聞きながら GKE を体験しよう 2020年10月29日 放送
[Cloud OnAir] 【Google Kubernetes Engine 演習】解説を聞きながら GKE を体験しよう 2020年10月29日 放送
 
Odl intro20141029
Odl intro20141029Odl intro20141029
Odl intro20141029
 
OpenContrailのソースコードを探検しよう!
OpenContrailのソースコードを探検しよう!OpenContrailのソースコードを探検しよう!
OpenContrailのソースコードを探検しよう!
 
エンプラに Kubernetes を 導入してみて分かった 4つの Lessons Learned
エンプラに Kubernetes を 導入してみて分かった 4つの Lessons Learnedエンプラに Kubernetes を 導入してみて分かった 4つの Lessons Learned
エンプラに Kubernetes を 導入してみて分かった 4つの Lessons Learned
 
いまからでも遅くない Docker事始め&愉快な仲間達
いまからでも遅くない Docker事始め&愉快な仲間達いまからでも遅くない Docker事始め&愉快な仲間達
いまからでも遅くない Docker事始め&愉快な仲間達
 
Webrtc bootcamp handson
Webrtc bootcamp handsonWebrtc bootcamp handson
Webrtc bootcamp handson
 
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
 
ざっくり始めるCloud Native開発
ざっくり始めるCloud Native開発ざっくり始めるCloud Native開発
ざっくり始めるCloud Native開発
 
SpringOne Platform Replay -Pivotal Cloud Foundry-
SpringOne Platform Replay -Pivotal Cloud Foundry-SpringOne Platform Replay -Pivotal Cloud Foundry-
SpringOne Platform Replay -Pivotal Cloud Foundry-
 
ProjectAtomic-and-geard
ProjectAtomic-and-geardProjectAtomic-and-geard
ProjectAtomic-and-geard
 
Introduction to Magnum (JP)
Introduction to Magnum (JP)Introduction to Magnum (JP)
Introduction to Magnum (JP)
 
[DockerConハイライト] OpenPubKeyによるイメージの署名と検証.pdf
[DockerConハイライト] OpenPubKeyによるイメージの署名と検証.pdf[DockerConハイライト] OpenPubKeyによるイメージの署名と検証.pdf
[DockerConハイライト] OpenPubKeyによるイメージの署名と検証.pdf
 
CyberAgentのインフラについて メディア事業編 #catechchallenge
CyberAgentのインフラについて メディア事業編 #catechchallengeCyberAgentのインフラについて メディア事業編 #catechchallenge
CyberAgentのインフラについて メディア事業編 #catechchallenge
 
Kubernetes meetup-tokyo-13-customizing-kubernetes-for-ml-cluster
Kubernetes meetup-tokyo-13-customizing-kubernetes-for-ml-clusterKubernetes meetup-tokyo-13-customizing-kubernetes-for-ml-cluster
Kubernetes meetup-tokyo-13-customizing-kubernetes-for-ml-cluster
 
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
 
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
 
GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話
GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話
GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話
 
コンテナ運用基盤 with OpenShift
コンテナ運用基盤 with OpenShiftコンテナ運用基盤 with OpenShift
コンテナ運用基盤 with OpenShift
 

More from Preferred Networks

PodSecurityPolicy からGatekeeper に移行しました / Kubernetes Meetup Tokyo #57
PodSecurityPolicy からGatekeeper に移行しました / Kubernetes Meetup Tokyo #57PodSecurityPolicy からGatekeeper に移行しました / Kubernetes Meetup Tokyo #57
PodSecurityPolicy からGatekeeper に移行しました / Kubernetes Meetup Tokyo #57Preferred Networks
 
Optunaを使ったHuman-in-the-loop最適化の紹介 - 2023/04/27 W&B 東京ミートアップ #3
Optunaを使ったHuman-in-the-loop最適化の紹介 - 2023/04/27 W&B 東京ミートアップ #3Optunaを使ったHuman-in-the-loop最適化の紹介 - 2023/04/27 W&B 東京ミートアップ #3
Optunaを使ったHuman-in-the-loop最適化の紹介 - 2023/04/27 W&B 東京ミートアップ #3Preferred Networks
 
Kubernetes + containerd で cgroup v2 に移行したら "failed to create fsnotify watcher...
Kubernetes + containerd で cgroup v2 に移行したら "failed to create fsnotify watcher...Kubernetes + containerd で cgroup v2 に移行したら "failed to create fsnotify watcher...
Kubernetes + containerd で cgroup v2 に移行したら "failed to create fsnotify watcher...Preferred Networks
 
深層学習の新しい応用と、 それを支える計算機の進化 - Preferred Networks CEO 西川徹 (SEMICON Japan 2022 Ke...
深層学習の新しい応用と、 それを支える計算機の進化 - Preferred Networks CEO 西川徹 (SEMICON Japan 2022 Ke...深層学習の新しい応用と、 それを支える計算機の進化 - Preferred Networks CEO 西川徹 (SEMICON Japan 2022 Ke...
深層学習の新しい応用と、 それを支える計算機の進化 - Preferred Networks CEO 西川徹 (SEMICON Japan 2022 Ke...Preferred Networks
 
Kubernetes ControllerをScale-Outさせる方法 / Kubernetes Meetup Tokyo #55
Kubernetes ControllerをScale-Outさせる方法 / Kubernetes Meetup Tokyo #55Kubernetes ControllerをScale-Outさせる方法 / Kubernetes Meetup Tokyo #55
Kubernetes ControllerをScale-Outさせる方法 / Kubernetes Meetup Tokyo #55Preferred Networks
 
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2Preferred Networks
 
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2Preferred Networks
 
Optuna Dashboardの紹介と設計解説 - 2022/12/10 Optuna Meetup #2
Optuna Dashboardの紹介と設計解説 - 2022/12/10 Optuna Meetup #2Optuna Dashboardの紹介と設計解説 - 2022/12/10 Optuna Meetup #2
Optuna Dashboardの紹介と設計解説 - 2022/12/10 Optuna Meetup #2Preferred Networks
 
スタートアップが提案する2030年の材料開発 - 2022/11/11 QPARC講演
スタートアップが提案する2030年の材料開発 - 2022/11/11 QPARC講演スタートアップが提案する2030年の材料開発 - 2022/11/11 QPARC講演
スタートアップが提案する2030年の材料開発 - 2022/11/11 QPARC講演Preferred Networks
 
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)Preferred Networks
 
PFNにおける研究開発(2022/10/19 東大大学院「融合情報学特別講義Ⅲ」)
PFNにおける研究開発(2022/10/19 東大大学院「融合情報学特別講義Ⅲ」)PFNにおける研究開発(2022/10/19 東大大学院「融合情報学特別講義Ⅲ」)
PFNにおける研究開発(2022/10/19 東大大学院「融合情報学特別講義Ⅲ」)Preferred Networks
 
自然言語処理を 役立てるのはなぜ難しいのか(2022/10/25東大大学院「自然言語処理応用」)
自然言語処理を 役立てるのはなぜ難しいのか(2022/10/25東大大学院「自然言語処理応用」)自然言語処理を 役立てるのはなぜ難しいのか(2022/10/25東大大学院「自然言語処理応用」)
自然言語処理を 役立てるのはなぜ難しいのか(2022/10/25東大大学院「自然言語処理応用」)Preferred Networks
 
Kubernetes にこれから入るかもしれない注目機能!(2022年11月版) / TechFeed Experts Night #7 〜 コンテナ技術を語る
Kubernetes にこれから入るかもしれない注目機能!(2022年11月版) / TechFeed Experts Night #7 〜 コンテナ技術を語るKubernetes にこれから入るかもしれない注目機能!(2022年11月版) / TechFeed Experts Night #7 〜 コンテナ技術を語る
Kubernetes にこれから入るかもしれない注目機能!(2022年11月版) / TechFeed Experts Night #7 〜 コンテナ技術を語るPreferred Networks
 
Matlantis™のニューラルネットワークポテンシャルPFPの適用範囲拡張
Matlantis™のニューラルネットワークポテンシャルPFPの適用範囲拡張Matlantis™のニューラルネットワークポテンシャルPFPの適用範囲拡張
Matlantis™のニューラルネットワークポテンシャルPFPの適用範囲拡張Preferred Networks
 
PFNのオンプレ計算機クラスタの取り組み_第55回情報科学若手の会
PFNのオンプレ計算機クラスタの取り組み_第55回情報科学若手の会PFNのオンプレ計算機クラスタの取り組み_第55回情報科学若手の会
PFNのオンプレ計算機クラスタの取り組み_第55回情報科学若手の会Preferred Networks
 
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2Preferred Networks
 
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...Preferred Networks
 
KubeCon + CloudNativeCon Europe 2022 Recap / Kubernetes Meetup Tokyo #51 / #k...
KubeCon + CloudNativeCon Europe 2022 Recap / Kubernetes Meetup Tokyo #51 / #k...KubeCon + CloudNativeCon Europe 2022 Recap / Kubernetes Meetup Tokyo #51 / #k...
KubeCon + CloudNativeCon Europe 2022 Recap / Kubernetes Meetup Tokyo #51 / #k...Preferred Networks
 
KubeCon + CloudNativeCon Europe 2022 Recap - Batch/HPCの潮流とScheduler拡張事例 / Kub...
KubeCon + CloudNativeCon Europe 2022 Recap - Batch/HPCの潮流とScheduler拡張事例 / Kub...KubeCon + CloudNativeCon Europe 2022 Recap - Batch/HPCの潮流とScheduler拡張事例 / Kub...
KubeCon + CloudNativeCon Europe 2022 Recap - Batch/HPCの潮流とScheduler拡張事例 / Kub...Preferred Networks
 
独断と偏見で選んだ Kubernetes 1.24 の注目機能と今後! / Kubernetes Meetup Tokyo 50
独断と偏見で選んだ Kubernetes 1.24 の注目機能と今後! / Kubernetes Meetup Tokyo 50独断と偏見で選んだ Kubernetes 1.24 の注目機能と今後! / Kubernetes Meetup Tokyo 50
独断と偏見で選んだ Kubernetes 1.24 の注目機能と今後! / Kubernetes Meetup Tokyo 50Preferred Networks
 

More from Preferred Networks (20)

PodSecurityPolicy からGatekeeper に移行しました / Kubernetes Meetup Tokyo #57
PodSecurityPolicy からGatekeeper に移行しました / Kubernetes Meetup Tokyo #57PodSecurityPolicy からGatekeeper に移行しました / Kubernetes Meetup Tokyo #57
PodSecurityPolicy からGatekeeper に移行しました / Kubernetes Meetup Tokyo #57
 
Optunaを使ったHuman-in-the-loop最適化の紹介 - 2023/04/27 W&B 東京ミートアップ #3
Optunaを使ったHuman-in-the-loop最適化の紹介 - 2023/04/27 W&B 東京ミートアップ #3Optunaを使ったHuman-in-the-loop最適化の紹介 - 2023/04/27 W&B 東京ミートアップ #3
Optunaを使ったHuman-in-the-loop最適化の紹介 - 2023/04/27 W&B 東京ミートアップ #3
 
Kubernetes + containerd で cgroup v2 に移行したら "failed to create fsnotify watcher...
Kubernetes + containerd で cgroup v2 に移行したら "failed to create fsnotify watcher...Kubernetes + containerd で cgroup v2 に移行したら "failed to create fsnotify watcher...
Kubernetes + containerd で cgroup v2 に移行したら "failed to create fsnotify watcher...
 
深層学習の新しい応用と、 それを支える計算機の進化 - Preferred Networks CEO 西川徹 (SEMICON Japan 2022 Ke...
深層学習の新しい応用と、 それを支える計算機の進化 - Preferred Networks CEO 西川徹 (SEMICON Japan 2022 Ke...深層学習の新しい応用と、 それを支える計算機の進化 - Preferred Networks CEO 西川徹 (SEMICON Japan 2022 Ke...
深層学習の新しい応用と、 それを支える計算機の進化 - Preferred Networks CEO 西川徹 (SEMICON Japan 2022 Ke...
 
Kubernetes ControllerをScale-Outさせる方法 / Kubernetes Meetup Tokyo #55
Kubernetes ControllerをScale-Outさせる方法 / Kubernetes Meetup Tokyo #55Kubernetes ControllerをScale-Outさせる方法 / Kubernetes Meetup Tokyo #55
Kubernetes ControllerをScale-Outさせる方法 / Kubernetes Meetup Tokyo #55
 
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
 
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
 
Optuna Dashboardの紹介と設計解説 - 2022/12/10 Optuna Meetup #2
Optuna Dashboardの紹介と設計解説 - 2022/12/10 Optuna Meetup #2Optuna Dashboardの紹介と設計解説 - 2022/12/10 Optuna Meetup #2
Optuna Dashboardの紹介と設計解説 - 2022/12/10 Optuna Meetup #2
 
スタートアップが提案する2030年の材料開発 - 2022/11/11 QPARC講演
スタートアップが提案する2030年の材料開発 - 2022/11/11 QPARC講演スタートアップが提案する2030年の材料開発 - 2022/11/11 QPARC講演
スタートアップが提案する2030年の材料開発 - 2022/11/11 QPARC講演
 
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
 
PFNにおける研究開発(2022/10/19 東大大学院「融合情報学特別講義Ⅲ」)
PFNにおける研究開発(2022/10/19 東大大学院「融合情報学特別講義Ⅲ」)PFNにおける研究開発(2022/10/19 東大大学院「融合情報学特別講義Ⅲ」)
PFNにおける研究開発(2022/10/19 東大大学院「融合情報学特別講義Ⅲ」)
 
自然言語処理を 役立てるのはなぜ難しいのか(2022/10/25東大大学院「自然言語処理応用」)
自然言語処理を 役立てるのはなぜ難しいのか(2022/10/25東大大学院「自然言語処理応用」)自然言語処理を 役立てるのはなぜ難しいのか(2022/10/25東大大学院「自然言語処理応用」)
自然言語処理を 役立てるのはなぜ難しいのか(2022/10/25東大大学院「自然言語処理応用」)
 
Kubernetes にこれから入るかもしれない注目機能!(2022年11月版) / TechFeed Experts Night #7 〜 コンテナ技術を語る
Kubernetes にこれから入るかもしれない注目機能!(2022年11月版) / TechFeed Experts Night #7 〜 コンテナ技術を語るKubernetes にこれから入るかもしれない注目機能!(2022年11月版) / TechFeed Experts Night #7 〜 コンテナ技術を語る
Kubernetes にこれから入るかもしれない注目機能!(2022年11月版) / TechFeed Experts Night #7 〜 コンテナ技術を語る
 
Matlantis™のニューラルネットワークポテンシャルPFPの適用範囲拡張
Matlantis™のニューラルネットワークポテンシャルPFPの適用範囲拡張Matlantis™のニューラルネットワークポテンシャルPFPの適用範囲拡張
Matlantis™のニューラルネットワークポテンシャルPFPの適用範囲拡張
 
PFNのオンプレ計算機クラスタの取り組み_第55回情報科学若手の会
PFNのオンプレ計算機クラスタの取り組み_第55回情報科学若手の会PFNのオンプレ計算機クラスタの取り組み_第55回情報科学若手の会
PFNのオンプレ計算機クラスタの取り組み_第55回情報科学若手の会
 
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
 
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
 
KubeCon + CloudNativeCon Europe 2022 Recap / Kubernetes Meetup Tokyo #51 / #k...
KubeCon + CloudNativeCon Europe 2022 Recap / Kubernetes Meetup Tokyo #51 / #k...KubeCon + CloudNativeCon Europe 2022 Recap / Kubernetes Meetup Tokyo #51 / #k...
KubeCon + CloudNativeCon Europe 2022 Recap / Kubernetes Meetup Tokyo #51 / #k...
 
KubeCon + CloudNativeCon Europe 2022 Recap - Batch/HPCの潮流とScheduler拡張事例 / Kub...
KubeCon + CloudNativeCon Europe 2022 Recap - Batch/HPCの潮流とScheduler拡張事例 / Kub...KubeCon + CloudNativeCon Europe 2022 Recap - Batch/HPCの潮流とScheduler拡張事例 / Kub...
KubeCon + CloudNativeCon Europe 2022 Recap - Batch/HPCの潮流とScheduler拡張事例 / Kub...
 
独断と偏見で選んだ Kubernetes 1.24 の注目機能と今後! / Kubernetes Meetup Tokyo 50
独断と偏見で選んだ Kubernetes 1.24 の注目機能と今後! / Kubernetes Meetup Tokyo 50独断と偏見で選んだ Kubernetes 1.24 の注目機能と今後! / Kubernetes Meetup Tokyo 50
独断と偏見で選んだ Kubernetes 1.24 の注目機能と今後! / Kubernetes Meetup Tokyo 50
 

KueCon 2020 NA Recap - Building a Global Supercomputer with Virtual Kubelet / Kubernetes Meetup Tokyo #37 / #k8sjp

  • 1. Building a Global Supercomputer with Virtual Kubelet Dmitry Mishin, University of California San Diego & Adrien Trouillaud, Admiralty Shingo Omura, Preferred Networks, Inc. 2020/12/22(Tue) Kubernetes Meetup Tokyo #37 KubeCon + CloudNativeCon North America 2020 Recap
  • 2. 自己紹介 - 大村伸吾 (Shingo Omura) ● エンジニア, Preferred Networks, Inc. ○ 社内向けGPUクラスタの開発運用 ○ 主にkubernetes sig-scheduling で活動中 ● @everpeace (twitter) ● shingo.omura (facebook) 2
  • 4. 4KubeCon + CloudNativeCon North America 2020 Virtual: Building a Global Supercomputer with Virtual Kubelet
  • 5. 5 Overview of this session ● University of California San Diego (UCSD) の Pacific Research Platform (PRP) で作っている Nautilus という Global Hyper Cluster (with Kubernetes) を構築中 ● Admiralty (admiralty.io) という"decentralized" multi-cluster schedulerを 使ってFederated Schedulingをどう実現しているを解説 (OSS & 商用版あり)
  • 7. この講演をRecapする理由 ● 抱える課題/ユースケースがPFNの機械学習クラスタと似ている ○ 複数 Kubernetes Cluster で Federated Scheduling 出来る Super Computerを構築したい ● Virtual Kubelet + Scheduling Framework を活用した Federated Scheduling の実装である (kubefedと大きく違う) ○ このアーキテクチャと共にAdmiralty (admiralty.io) の可能性を 以前から検討しており、今回事例として出てきたので注目 ● この講演を通してFederated Scheduling 実現の難しさも 併せて見えてくる 7
  • 8. PFN における Kubernetes環境 8 Icon pack by Icons8 - https://icons8.com 多くの研究者 オンプレ GPU Clusters Cluster on AWS (Burst用) 計算Cluster を 選ぶ必要がある
  • 9. Federated Schedulingの必要性 9 Icon pack by Icons8 - https://icons8.com 多くの研究者 オンプレ GPU Clusters Cluster on AWS (Burst用) いい感じにどっかでやっ てほしい
  • 10. 魅力的な タイトル!! KubeCon + CloudNativeCon North America 2020 Virtual: Building a Global Supercomputer with Virtual Kubelet
  • 11. 11 (再) Overview of this session ● University of California San Diego (UCSD) の Pacific Research Platform (PRP) で作っている Nautilus という Global Hyper Cluster (with Kubernetes) を構築中 ● Admiralty (admiralty.io) という"decentralized" multi-cluster schedulerを 使ってFederated Schedulingをどう実現しているを解説 (OSS & 商用版あり)
  • 12. KubeCon + CloudNativeCon North America 2020 Virtual: Building a Global Supercomputer with Virtual Kubelet Nautilus (global hyper cluster) の概要 アメリカ だけじゃなく Europe & APAC にも広がっている Transoceanic Nodesなんてのも 見える
  • 13. KubeCon + CloudNativeCon North America 2020 Virtual: Building a Global Supercomputer with Virtual Kubelet Nautilus (global hyper cluster) の概要 Pacific Research Platformの Nautilusの規模 UCSDのExpanse というスパコンも Federate予定 最終的には 200,000 cores になるらしい Cloudによる Burstingも 行っている
  • 14. Nautilus における Federation への要求 各拠点はそれぞれ運用組織が違うので 独立に制御したい ルールやポリシーも 独立に運用・強制したい namespaceレベルで federationを利用させたい (admin作業はできるだけ少なく ) KubeCon + CloudNativeCon North America 2020 Virtual: Building a Global Supercomputer with Virtual Kubelet
  • 15. KubeCon + CloudNativeCon North America 2020 Virtual: Building a Global Supercomputer with Virtual Kubelet Admiralty: decentralized multi-cluster control plane https://github.com/admiraltyio/admiralty
  • 16. Virtual Kubelet (virtual-kubelet.io) とは 16 ● 仮想 Node が作れるライブラリ ● Providerインターフェース を介して好 きなものをNodeとして 振る舞わせることが可能 ● 既存 Providers ○ Alibaba Cloud Elastic Container Instance ○ Azure Container Instances ○ Huawei Cloud Container Instance ○ Hashicorp Nomad ○ Admiralty, 他
  • 17. Virtual Kubelet (virtual-kubelet.io) とは 17 ● 仮想 Node が作れるライブラリ ● Providerインターフェース を介して好 きなものをNodeとして 振る舞わせることが可能 ● 既存 Providers ○ Alibaba Cloud Elastic Container Instance ○ Azure Container Instances ○ Huawei Cloud Container Instance ○ Hashicorp Nomad ○ Admiralty, 他 AdmiraltyではFederation先の クラスタ毎にvirtual-kubeletが 起動する
  • 19. Admiralty の 動作概要 19 サンプルシナリオ - “CD” クラスタでJobを作成すると - “US”, “EU” 実際で実行される admiralty.io/docs
  • 20. Admiralty の 動作概要 20 ① target cluster 毎に virtual kubelet が起動して 仮想Nodeが出来る admiralty.io/docs
  • 21. Admiralty の 動作概要 21 ② pod に multi cluster annotation 付けるとwebhookでproxy podに変換 されて(注: CRDではない) admiralty.io/docs ③ virtual node に bindされる
  • 22. Admiralty の 動作概要 22 ③ target cluster 側に delegate pod が自動的に作成されて (注: CRDではない) admiralty.io/docs ④ 実 Node に bindされる
  • 23. Admiralty Internals ● Virtual Kubelet Implementation ● "Look-Ahead" multi-cluster scheduling 23
  • 25. AdmiraltyにおけるVirtual Kubeletの実装 KubeCon + CloudNativeCon North America 2020 Virtual: Building a Global Supercomputer with Virtual Kubelet Virtual Kubeletの責務 Admiraltyでの実装
  • 26. Admiralty で実現可能な Cluster Topology 26admiralty.io/docs
  • 27. namespace毎に柔軟なFederation Topologyが張れる Target C Target B Cluster B Target A Cluster C Target A Target B
  • 29. Kubernetes Scheduling Framework のおさらい 29Scheduling Framework | Kubernetes Schedule可能な Node(複数)に絞る 一つのNodeに決める (最高Scoreを決める) 各podに対する Binding Cycleは並行に 動作する pod一個ずつ直列に実行
  • 30. Admiralty “Look-Ahead” multi-cluster scheduling の登場人物 30admiralty.io/docs PodStatusを転送する & Source Clusterへ付与する権限抑制 ために導入されたCRD (Source側はPodShaperonしか更新しない) Source/Target Clusterにそれぞれ 役割の違うschedulerがいる Source/Target Clusterにそれぞれ 役割の違うschedulerがいる
  • 31. Admiralty “Look-Ahead” multi-cluster scheduling 31admiralty.io/docs ① ② ③ ④ ⑤
  • 32. Admiralty “Look-Ahead” multi-cluster scheduling 32admiralty.io/docs ① Source Pod から Proxy Pod に変換 ● ユーザが multicluster.admiralty.io/elect="" annotation 付き のPodを作る ● Mutating Webhook が spec.schedulerName 等を書き換える (Proxy Pod と呼ばれる) ①
  • 33. Admiralty “Look-Ahead” multi-cluster scheduling 33admiralty.io/docs ② Filter: Schedule 可能な Target Cluster Node (virtual node) を探す ● Proxy Scheduler の Filter phase で Target Cluster上に PodShaperon を作成 ● PodShaperon controller が Pod を作る (Candidate Podと呼ぶ) ● Candidate Scheduler の Filter & Score phase が実際に行われ ● Schedule先Nodeが決まったら、PodShaperonに Reserved とannotate ● Candidate Pod は Candidate Scheduler の PreBind phaseで Bind を待機 ● Source側のFilter は Candidate Pod が Reserved になったのを観測したら成功 ②
  • 34. Admiralty “Look-Ahead” multi-cluster scheduling admiralty.io/docs ③ Score: Proxy Pod の Schedule先を決定する ● Proxy Scheduler の Score phaseを経て Bind 先が Target Cluster に決まったら ● Proxy Scheduler の Reserve phase で Candidate Pod に Allow とannotateする (Allow された Candidate Pod は Delegate Pod と呼ばれる) ④ Bind: Proxy Pod を Bind する ● Candidate Scheduler は PreBind phase を抜けて実際のNodeにBind ● Proxy Scheduler は PreBind で待機して Delegate Pod が Scheduled になったら ● Target Cluster(virtual node) に Bind処理 ③ ④
  • 35. Admiralty “Look-Ahead” multi-cluster scheduling 35admiralty.io/docs ⑤ 余分なCandidate Pod を Clean Up ● Proxy Scheduler の PostBind phase で ● Bind されなかった Target Cluster上の Candidate Pod を消す ○ Bind された Target Cluster には Delegate Pod が残り ● Source Cluster上の Target Cluster Node (Virtual Kubelet) が Proxy Pod Statusを 更新し続ける ⑤
  • 36. Admiralty “Look-Ahead” multi-cluster scheduling 36admiralty.io/docs ① ② ③ ④ ⑤
  • 37. Admiralty は商用で色々な機能を提供している ● Multi-Cluster Ingress / Global Server Load Balancing (GSLB) ● Cluster Registry ● Cluster Identity Federation ● kubectl Single Sign-On (SSO) ● Tunnels for private clusters ● Centralized kubernetes audit logs ● etc. 37admiralty.io/docs
  • 38. 感想: 現時点ではまだまだ課題は多い印象 ● Data Locality 問題 ○ 機械学習だとデータ規模が大きいのでTarget ClusterからSource Clusterに アクセスするのは現実的でない場合が多い ● Target Cluster 依存の設定が書けない (admiraltyio/admiralty#96) ○ Node Selector, Resource要求を変えたい ○ Target Cluster依存のストレージのエンドポイントを指定したい、等 ● Persistent Volumeは扱えなさそう(未検証) ● 既存のCustom Scheduler Pluginとの相互運用性が低い ○ Admiralty以外のScheduler Pluginとの合成は非常に難しい(documentに明記あり) ● 不必要な Preemption が多発する (admiraltyio/admiralty#97) ○ Pod Preemption は Scheduling Cycle で発生するので ○ Candidate Pod を作ると Preemption は発生する可能性が常にある (Candidate Podは最終的にBindされないかもしれない) 38
  • 39. Kubernetes Federation (kubefed) との現時点での違い 39 kubefed (v0.6.0) Admiralty (v0.13.2) トポロジ Host Cluster/Member Cluster (ツリーのみ) Flexible/Multiplex (Target CRDでnamespace毎に設定可) フォーカス 複数クラスタを効率的に管理 (CRDでresource propagationを管理) Podを透過的に遠隔クラスタで起動 Network/ DNS Multi-Cluster Service DNS X (一部商用版でサポートあり) スタイル Centralized / Aggregated Decentralized / Federated Admiraltyのほうが Jobクラスタに向いてそう
  • 40. まとめ ● UCSD & Admiralty の事例は Federated Scheduling の実現例として 興味深かった(事例的にもアーキテクチャ的にも) ● 実用に向けてはまだまだ課題は多く今後の発展に期待 ● PFNでも継続的にWatchして行きたい (使えそうなら積極的にContributeしたい) 40
  • 41. 41