Kubeflow 控制器
(Control Plane)
Weiqiang Zhuang
wzhuang@us.ibm.com
IBM CODAIT
Github id: adrian555
Kubeflow control plane
• 安装,管理和监视(Deploy, manage
and monitor)Kubeflow
• 文档(Document)
• https://www.kubeflow.org/docs/started/getting-started/
• 多样环境运行(On various environments)
• GCP/AWS/IKS/OpenShift
• Other K8S
• On-prem Linux/MacOS/Windows
• minikube/miniKF
• 命令行或Operator安装(Deployed through
command line or operator)
• 部件和应用可配置(Configuration for the
collection of components/applications)
• Use one from manifests repo, or
• Create your own
• 源码仓库(Two repos)
• kfctl https://github.com/kubeflow/kfctl
• manifests https://github.com/kubeflow/manifests https://www.kubeflow.org/docs/images/kubeflow-getting-started-diagram.svg
kfctl
• kfctl 控制器(the control plane for deploying and managing Kubeflow)
• Run kfctl as a CLI with KfDef configurations for different Kubernetes flavors
• kubeflow/kfctl also incubates an operator to deploy and monitor Kubeflow
• KfDef 配置文件(configurations)
• are manifests specifying a set of applications to be deployed by their kustomization and resources by
kustomize
• resources of each application are organized in the layout for kustomize to process
• kubeflow/manifests is the repo for the collection of KfDef configurations
• kustomize 资源配置生成器
• customizes raw, template-free YAML files. It patches Kubernetes resources files with a kustomization
file and various overlays.
• kustomization is also a Kubernetes resource (kind: Kustomization). It contains the generators and
transformers to be applied on the resources.
KfDef
• KfDef
• yaml格式配置文件(Configuration
through yaml)
• 源码(Code)
https://github.com/kubeflow/kfctl/blob/master/pkg/ap
is/apps/kfdef/v1/application_types.go
• 应用(applications)are in kustomize
form
• starting from v1.1 supports kustomize v3 in
stacks form (a kubeflow-apps application is
required)
• Also support plugins for certain platforms
(ie. Aws, Gcp)
• 支持远程或本地资源配置文件仓库
(Manifest repo can be either remote
archive or local directory)
• The directory structure for manifests follows
kustomize requirement
• Eg. Argo
Configuration in yaml Directory structure
kfctl deployment flow
• kfctl
Kubeflow control plane
• kfctl
• 显示所有命令(List all commands)
• $> kfctl help
• 安装和删除命令(Command line to install/uninstall Kubeflow)
• $> kfctl build –V –f <config_uri>
• $> kfctl apply –V –f <config_uri>
• $> kfctl delete –V –f <config_uri>
• <config_uri> can be remote or local
• 基本工作流程(High-level flow)
• Downloads the manifests for applications (if remote) from the repo:uri defined in the configuration
file, and caches in the local disk
• Loops through all applications’ kustomization configuration and build/apply
• Runs platform special handling if the configuration contains plugins section
Kubeflow control plane
• Kubeflow 应用资源配置文件仓库( manifests repo)
• Maintains the manifests for Kubeflow’s common applications
• Argo, centraldashboard, admission-webhook, basic-auth, metadata, profiles and more
• Other applications
• Each application can be built with kustomize tool
• $> kustomize build
• $> kubectl apply -k
Kubeflow control plane
• Kubeflow Operator
• 定制资源定义+API(CRD+API)
• Configuration file is the custom resource (CR)
• 管理Kubeflow及各应用生命周期(Operator
helps deploy, monitor and manage the
lifecycle of applications deployed on
Kubernetes and OpenShift clusters)
• Built with operator-sdk
• Learn more about operators - link
• 共享apply程序源码(Shares the same apply
function with kfctl command)
• delete function diffs from kfctl command
• 文档(Document)
• https://github.com/kubeflow/kfctl/blob/master/op
erator.md
https://miro.medium.com/max/2116/1*GYLAUB7KGCysjPgwek-pPA.jpeg
Kubeflow control plane
• Kubeflow Operator
• 源码结构(Code structure)
• /deploy: Contains all the k8s resources for deploying the operator image and crd
• /build: Operator image build script
• /pkg/controller: main package for operator controller logic
• /cmd/manager: main.go file for the operator go program
• 监视相关资源(Kubeflow operator watches the KfDef and other related resources)
• 两步安装Kubeflow(Two steps to install Kubeflow)
• Deploy the Kubeflow operator, then
• Install the Kubeflow by creating the KfDef CR
• 监视和管理功能(Kubeflow operator continues to monitor and manage any KfDef
CR created)
Kubeflow control plane
• Kubeflow operator
• 安装 Kubeflow Operator
• Operator can be deployed by command line
• $> export OPERATOR_NAMESPACE=operators
• $> kubectl create ns ${OPERATOR_NAMESPACE}
• $> cd deploy/
• $> kustomize edit set namespace
${OPERATOR_NAMESPACE}
• $> kustomize build | kubectl apply -f -
• Operator is registered on operatorhub.io, can be installed through
OLM console
• OLM discovers the Kubeflow operator from its catalog source
• 安装Kubeflow(installed either by command lines or by
subscription)
• creating a KfDef CR from command line
• download the KfDef configuration file from
kubeflow/manifests
• add metadata.name
• $> kubectl apply –f <kfdef_configuration.yaml>
• creating a subscription to the operator from the OLM console
Thank you!
谢 谢
Backup
• More topics
• KfUpgrade
• other kfctl sub-commands
• kpt fn commands
• kustomize v3 support in the coming release 1.1
• code walkthrough
Backup
• KfUpgrade
• in alpha
Backup
• kfctl
Code walkthrough
• Directories

More Related Content

PDF
Kubeflow repos
PDF
KFServing and Kubeflow Pipelines
PDF
Kubeflow Pipelines (with Tekton)
PDF
KFServing and Feast
PDF
Machine Learning Exchange (MLX)
PDF
Kubeflow control plane
PPTX
End to-end example: consumer loan acceptance scoring using kubeflow
PDF
End to end Machine Learning using Kubeflow - Build, Train, Deploy and Manage
Kubeflow repos
KFServing and Kubeflow Pipelines
Kubeflow Pipelines (with Tekton)
KFServing and Feast
Machine Learning Exchange (MLX)
Kubeflow control plane
End to-end example: consumer loan acceptance scoring using kubeflow
End to end Machine Learning using Kubeflow - Build, Train, Deploy and Manage

What's hot (20)

PDF
KFServing - Serverless Model Inferencing
PDF
PR workflow
PDF
KFServing Payload Logging for Trusted AI
PPTX
Kubeflow on google kubernetes engine
PDF
K8s vs Cloud Foundry
PDF
Serving models using KFServing
PDF
Kubernetes Helm (Boulder Kubernetes Meetup, June 2016)
PDF
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
PDF
Helm – The package manager for Kubernetes
PDF
Kubernetes Application Deployment with Helm - A beginner Guide!
PDF
Flink Forward Berlin 2017: Dominik Bruhn - Deploying Flink Jobs as Docker Con...
PDF
Tableapp architecture migration story for GCPUG.TW
PDF
Future of Apache Flink Deployments: Containers, Kubernetes and More - Flink F...
PPTX
Fission: Serverless Functions for Kubernetes
PDF
Flink Forward Berlin 2017: Patrick Lucas - Flink in Containerland
PDF
Streaming your Lyft Ride Prices - Flink Forward SF 2019
PPTX
GW Tester
PPTX
Kubernetes fundamentals
PDF
Kubernetes deployment strategies - CNCF Webinar
PDF
Machine learning with Apache Spark on Kubernetes | DevNation Tech Talk
KFServing - Serverless Model Inferencing
PR workflow
KFServing Payload Logging for Trusted AI
Kubeflow on google kubernetes engine
K8s vs Cloud Foundry
Serving models using KFServing
Kubernetes Helm (Boulder Kubernetes Meetup, June 2016)
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
Helm – The package manager for Kubernetes
Kubernetes Application Deployment with Helm - A beginner Guide!
Flink Forward Berlin 2017: Dominik Bruhn - Deploying Flink Jobs as Docker Con...
Tableapp architecture migration story for GCPUG.TW
Future of Apache Flink Deployments: Containers, Kubernetes and More - Flink F...
Fission: Serverless Functions for Kubernetes
Flink Forward Berlin 2017: Patrick Lucas - Flink in Containerland
Streaming your Lyft Ride Prices - Flink Forward SF 2019
GW Tester
Kubernetes fundamentals
Kubernetes deployment strategies - CNCF Webinar
Machine learning with Apache Spark on Kubernetes | DevNation Tech Talk
Ad

Similar to Kubeflow Control Plane 中文 (20)

PDF
$ kubectl hacking @DevOpsCon Berlin 2019
PPTX
Kubernetes Internals
PPTX
Aws summit 2019 running kubernetes
PPTX
KuberneteSADASDSADASDASDASDASDASDAs Labs.pptx
PPTX
K8s in 3h - Kubernetes Fundamentals Training
PDF
Kubernetes Basis: Pods, Deployments, and Services
PDF
게임 고객사를 위한 ‘AWS 컨테이너 교육’ 자료 - 유재석 솔루션즈 아키텍트, AWS :: Gaming Immersion Day 201...
PDF
Run K8s on Local Environment
PDF
Cncf meetup kubespray
PDF
From Kubernetes to OpenStack in Sydney
PDF
[WSO2Con EU 2018] Deploying Applications in K8S and Docker
PDF
EKS Workshop
PPTX
Kubernetes 101
PDF
Handling Kubernetes Resources
PDF
CI/CD Across Multiple Environments
PDF
Kubernetes @ pixel
PDF
WP_The Beginners Guide to Kubernetes_2020.pdf
PDF
Amazon EKS - Aws community day bengaluru 2019
PDF
Metal-k8s presentation by Julien Girardin @ Paris Kubernetes Meetup
PDF
Kubernetes from a Box Mix
$ kubectl hacking @DevOpsCon Berlin 2019
Kubernetes Internals
Aws summit 2019 running kubernetes
KuberneteSADASDSADASDASDASDASDASDAs Labs.pptx
K8s in 3h - Kubernetes Fundamentals Training
Kubernetes Basis: Pods, Deployments, and Services
게임 고객사를 위한 ‘AWS 컨테이너 교육’ 자료 - 유재석 솔루션즈 아키텍트, AWS :: Gaming Immersion Day 201...
Run K8s on Local Environment
Cncf meetup kubespray
From Kubernetes to OpenStack in Sydney
[WSO2Con EU 2018] Deploying Applications in K8S and Docker
EKS Workshop
Kubernetes 101
Handling Kubernetes Resources
CI/CD Across Multiple Environments
Kubernetes @ pixel
WP_The Beginners Guide to Kubernetes_2020.pdf
Amazon EKS - Aws community day bengaluru 2019
Metal-k8s presentation by Julien Girardin @ Paris Kubernetes Meetup
Kubernetes from a Box Mix
Ad

Recently uploaded (20)

PPTX
Why 2025 Is the Best Year to Hire Software Developers in India
PDF
Workplace Software and Skills - OpenStax
PPTX
Human Computer Interaction lecture Chapter 2.pptx
PPT
3.Software Design for software engineering
PPTX
HackYourBrain__UtrechtJUG__11092025.pptx
PDF
Top 10 Project Management Software for Small Teams in 2025.pdf
PDF
Website Design & Development_ Professional Web Design Services.pdf
PPTX
Lecture 5 Software Requirement Engineering
PDF
Cloud Native Aachen Meetup - Aug 21, 2025
PDF
Engineering Document Management System (EDMS)
PDF
Building an Inclusive Web Accessibility Made Simple with Accessibility Analyzer
PPTX
Streamlining Project Management in the AV Industry with D-Tools for Zoho CRM ...
PDF
Mobile App Backend Development with WordPress REST API: The Complete eBook
PDF
Sun and Bloombase Spitfire StoreSafe End-to-end Storage Security Solution
PPTX
ERP Manufacturing Modules & Consulting Solutions : Contetra Pvt Ltd
PDF
SOFTWARE ENGINEERING Software Engineering (3rd Edition) by K.K. Aggarwal & Yo...
PPTX
Chapter_05_System Modeling for software engineering
PDF
IT Consulting Services to Secure Future Growth
PPTX
ROI from Efficient Content & Campaign Management in the Digital Media Industry
PDF
Internet Download Manager IDM Crack powerful download accelerator New Version...
Why 2025 Is the Best Year to Hire Software Developers in India
Workplace Software and Skills - OpenStax
Human Computer Interaction lecture Chapter 2.pptx
3.Software Design for software engineering
HackYourBrain__UtrechtJUG__11092025.pptx
Top 10 Project Management Software for Small Teams in 2025.pdf
Website Design & Development_ Professional Web Design Services.pdf
Lecture 5 Software Requirement Engineering
Cloud Native Aachen Meetup - Aug 21, 2025
Engineering Document Management System (EDMS)
Building an Inclusive Web Accessibility Made Simple with Accessibility Analyzer
Streamlining Project Management in the AV Industry with D-Tools for Zoho CRM ...
Mobile App Backend Development with WordPress REST API: The Complete eBook
Sun and Bloombase Spitfire StoreSafe End-to-end Storage Security Solution
ERP Manufacturing Modules & Consulting Solutions : Contetra Pvt Ltd
SOFTWARE ENGINEERING Software Engineering (3rd Edition) by K.K. Aggarwal & Yo...
Chapter_05_System Modeling for software engineering
IT Consulting Services to Secure Future Growth
ROI from Efficient Content & Campaign Management in the Digital Media Industry
Internet Download Manager IDM Crack powerful download accelerator New Version...

Kubeflow Control Plane 中文

  • 2. Kubeflow control plane • 安装,管理和监视(Deploy, manage and monitor)Kubeflow • 文档(Document) • https://www.kubeflow.org/docs/started/getting-started/ • 多样环境运行(On various environments) • GCP/AWS/IKS/OpenShift • Other K8S • On-prem Linux/MacOS/Windows • minikube/miniKF • 命令行或Operator安装(Deployed through command line or operator) • 部件和应用可配置(Configuration for the collection of components/applications) • Use one from manifests repo, or • Create your own • 源码仓库(Two repos) • kfctl https://github.com/kubeflow/kfctl • manifests https://github.com/kubeflow/manifests https://www.kubeflow.org/docs/images/kubeflow-getting-started-diagram.svg
  • 3. kfctl • kfctl 控制器(the control plane for deploying and managing Kubeflow) • Run kfctl as a CLI with KfDef configurations for different Kubernetes flavors • kubeflow/kfctl also incubates an operator to deploy and monitor Kubeflow • KfDef 配置文件(configurations) • are manifests specifying a set of applications to be deployed by their kustomization and resources by kustomize • resources of each application are organized in the layout for kustomize to process • kubeflow/manifests is the repo for the collection of KfDef configurations • kustomize 资源配置生成器 • customizes raw, template-free YAML files. It patches Kubernetes resources files with a kustomization file and various overlays. • kustomization is also a Kubernetes resource (kind: Kustomization). It contains the generators and transformers to be applied on the resources.
  • 4. KfDef • KfDef • yaml格式配置文件(Configuration through yaml) • 源码(Code) https://github.com/kubeflow/kfctl/blob/master/pkg/ap is/apps/kfdef/v1/application_types.go • 应用(applications)are in kustomize form • starting from v1.1 supports kustomize v3 in stacks form (a kubeflow-apps application is required) • Also support plugins for certain platforms (ie. Aws, Gcp) • 支持远程或本地资源配置文件仓库 (Manifest repo can be either remote archive or local directory) • The directory structure for manifests follows kustomize requirement • Eg. Argo Configuration in yaml Directory structure
  • 6. Kubeflow control plane • kfctl • 显示所有命令(List all commands) • $> kfctl help • 安装和删除命令(Command line to install/uninstall Kubeflow) • $> kfctl build –V –f <config_uri> • $> kfctl apply –V –f <config_uri> • $> kfctl delete –V –f <config_uri> • <config_uri> can be remote or local • 基本工作流程(High-level flow) • Downloads the manifests for applications (if remote) from the repo:uri defined in the configuration file, and caches in the local disk • Loops through all applications’ kustomization configuration and build/apply • Runs platform special handling if the configuration contains plugins section
  • 7. Kubeflow control plane • Kubeflow 应用资源配置文件仓库( manifests repo) • Maintains the manifests for Kubeflow’s common applications • Argo, centraldashboard, admission-webhook, basic-auth, metadata, profiles and more • Other applications • Each application can be built with kustomize tool • $> kustomize build • $> kubectl apply -k
  • 8. Kubeflow control plane • Kubeflow Operator • 定制资源定义+API(CRD+API) • Configuration file is the custom resource (CR) • 管理Kubeflow及各应用生命周期(Operator helps deploy, monitor and manage the lifecycle of applications deployed on Kubernetes and OpenShift clusters) • Built with operator-sdk • Learn more about operators - link • 共享apply程序源码(Shares the same apply function with kfctl command) • delete function diffs from kfctl command • 文档(Document) • https://github.com/kubeflow/kfctl/blob/master/op erator.md https://miro.medium.com/max/2116/1*GYLAUB7KGCysjPgwek-pPA.jpeg
  • 9. Kubeflow control plane • Kubeflow Operator • 源码结构(Code structure) • /deploy: Contains all the k8s resources for deploying the operator image and crd • /build: Operator image build script • /pkg/controller: main package for operator controller logic • /cmd/manager: main.go file for the operator go program • 监视相关资源(Kubeflow operator watches the KfDef and other related resources) • 两步安装Kubeflow(Two steps to install Kubeflow) • Deploy the Kubeflow operator, then • Install the Kubeflow by creating the KfDef CR • 监视和管理功能(Kubeflow operator continues to monitor and manage any KfDef CR created)
  • 10. Kubeflow control plane • Kubeflow operator • 安装 Kubeflow Operator • Operator can be deployed by command line • $> export OPERATOR_NAMESPACE=operators • $> kubectl create ns ${OPERATOR_NAMESPACE} • $> cd deploy/ • $> kustomize edit set namespace ${OPERATOR_NAMESPACE} • $> kustomize build | kubectl apply -f - • Operator is registered on operatorhub.io, can be installed through OLM console • OLM discovers the Kubeflow operator from its catalog source • 安装Kubeflow(installed either by command lines or by subscription) • creating a KfDef CR from command line • download the KfDef configuration file from kubeflow/manifests • add metadata.name • $> kubectl apply –f <kfdef_configuration.yaml> • creating a subscription to the operator from the OLM console
  • 12. Backup • More topics • KfUpgrade • other kfctl sub-commands • kpt fn commands • kustomize v3 support in the coming release 1.1 • code walkthrough