ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43Preferred Networks
Preferred Networksでは新物質開発や材料探索を加速する汎用原子レベルシミュレータを利用できるクラウドサービスを開発しています。 顧客毎に独立した環境にユーザがJupyter Notebookを立ち上げ、自社PyPIパッケージによりAPI経由で弊社独自技術を簡単に利用できます。Kubernetesの機能を駆使してマルチテナント環境を構築しており、各顧客に独立したAPIサーバを提供し、その負荷状況によりAPIサーバをスケーリングさせたり、顧客毎にNotebookに対する通信制限や配置Nodeの制御などを実現しています。
本発表ではKubernetesによるマルチテナントJupyter as a Serviceの実現方法を紹介します。
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43Preferred Networks
Preferred Networksでは新物質開発や材料探索を加速する汎用原子レベルシミュレータを利用できるクラウドサービスを開発しています。 顧客毎に独立した環境にユーザがJupyter Notebookを立ち上げ、自社PyPIパッケージによりAPI経由で弊社独自技術を簡単に利用できます。Kubernetesの機能を駆使してマルチテナント環境を構築しており、各顧客に独立したAPIサーバを提供し、その負荷状況によりAPIサーバをスケーリングさせたり、顧客毎にNotebookに対する通信制限や配置Nodeの制御などを実現しています。
本発表ではKubernetesによるマルチテナントJupyter as a Serviceの実現方法を紹介します。
OpenStack Days Tokyo 2017で登壇した資料です。
■自動化を支えるCI/CDパイプラインの世界
http://openstackdays.com/program-detail/#d1p5s9
自動化を行うためのCI/CDパイプライン環境を構築し運営する上で、どこに注意すべきなのかをInfrastructure as Codeの視点で紹介します。
In the first half, we give an introduction to modern serialization systems, Protocol Buffers, Apache Thrift and Apache Avro. Which one does meet your needs?
In the second half, we show an example of data ingestion system architecture using Apache Avro.
OpenStack Days Tokyo 2017で登壇した資料です。
■自動化を支えるCI/CDパイプラインの世界
http://openstackdays.com/program-detail/#d1p5s9
自動化を行うためのCI/CDパイプライン環境を構築し運営する上で、どこに注意すべきなのかをInfrastructure as Codeの視点で紹介します。
In the first half, we give an introduction to modern serialization systems, Protocol Buffers, Apache Thrift and Apache Avro. Which one does meet your needs?
In the second half, we show an example of data ingestion system architecture using Apache Avro.
4. Inspired by Google Vizier(A Service for Black-Box Optimization)
[D. Golovin, B. Solnik et al. 2017]
● Googleが社内のBorg(Kubernetesの前身)前提に作ったシステムを参考
● 様々なタスクのハイパーパラメータチューニングを共通化
Katib
10. How to use
Katib ManagerClient
Call GRPC APIs
• Create Study
• GetSuggestions
• RunTrials
• GetMetrics
K8s API Server
ハイパーパラメータを埋め込んだ学
習用のPodを生成
Get Logs
12. サポートされているアルゴリズム
• Suggestion
• Random
• Grid
• HyperBand [L. Li, K. Jamieson et al.]
• Bayesian Optimization [E. Brochu, V. Cora et al.]
• EarlyStopping
• MedianStopping [D. Golovin, B. Solnik et al.]
16. Katib Manager
Suggestion
Service
EarlyStopping
Service
Katib DB
MySQL
Create/Get Resources
• Study
• Trial
• Worker
• ServiceParameter
K8S API Server
GetSuggestions
GetShouldStopWorkers
Run/Stop Worker
Get Metrics
ModelDB
Save/Get Model
Get/Create/Run Resouces
• Study
• Trial
• Worker
• ServiceParameter
APIs
Katib API: Interface for clients
Internal API: Interface for Internal service