This document discusses using GitOps and multi-tenancy to provide an enterprise data science experience on Kubeflow. It describes how to deploy and manage Kubeflow using GitOps to simplify operations and accelerate time to production. GitOps allows storing all configuration in Git for versioning, rollbacks, and collaboration. Kustomize is used to manage configurations and integrate changes from upstream Kubeflow repositories while allowing customizations. This provides reproducibility, isolation of tenants, and easy upgrades in a production-ready Kubeflow cluster.
Introducing Kubeflow (w. Special Guests Tensorflow and Apache Spark)DataWorks Summit
Data Science, Machine Learning, and Artificial Intelligence has exploded in popularity in the last five years, but the nagging question remains, “How to put models into production?” Engineers are typically tasked to build one-off systems to serve predictions which must be maintained amid a quickly evolving back-end serving space which has evolved from single-machine, to custom clusters, to “serverless”, to Docker, to Kubernetes. In this talk, we present KubeFlow- an open source project which makes it easy for users to move models from laptop to ML Rig to training cluster to deployment. In this talk we will discuss, “What is KubeFlow?”, “why scalability is so critical for training and model deployment?”, and other topics.
Users can deploy models written in Python’s skearn, R, Tensorflow, Spark, and many more. The magic of Kubernetes allows data scientists to write models on their laptop, deploy to an ML-Rig, and then devOps can move that model into production with all of the bells and whistles such as monitoring, A/B tests, multi-arm bandits, and security.
This is a presentation about how to use Kubeflow for "AI pipeline optimization" - we show the "traditional" pipeline and why it should be optimized to have it available to a wider audience. Services are getting more and more important nowadays - thats why we call it "Data Science as a service".
Kubeflow at Spotify (For the Kubeflow Summit)Josh Baer
A lightning talk discussing some important challenges facing ML engineers and how the introduction of Kubeflow Pipelines will help.
Full slides w/ speaker notes here: https://docs.google.com/presentation/d/12dwhS_x4568G6XQjI9SEUacD-n4hFQczBcRBLdbHNEM/edit
Hydrosphere.io for ODSC: Webinar on KubeflowRustem Zakiev
Webinar video: https://www.youtube.com/watch?v=Y3_fcJBgpMw
Kubeflow and Beyond: Automation of Model Training, Deployment, Testing, Monitoring, and Retraining
Speakers:
Stepan Pushkarev, CTO, Hydrosphere.io and Ilnur Garifullin is an ML Engineer, Hydrosphere.io
Abstract: Very often a workflow of training models and delivering them to the production environment contains loads of manual work. Those could be either building a Docker image and deploying it to the Kubernetes cluster or packing the model to the Python package and installing it to your Python application. Or even changing your Java classes with the defined weights and re-compiling the whole project. Not to mention that all of this should be followed by testing your model's performance. It hardly could be named "continuous delivery" if you do it all manually. Imagine you could run the whole process of assembling/training/deploying/testing/running model via a single command in your terminal. In this webinar, we will present a way to build the whole workflow of data gathering/model training/model deployment/model testing into a single flow and run it with a single command.
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and IstioAnimesh Singh
Model Inferencing use cases are becoming a requirement for models moving into the next phase of production deployments. More and more users are now encountering use cases around canary deployments, scale-to-zero or serverless characteristics. And then there are also advanced use cases coming around model explainability, including A/B tests, ensemble models, multi-armed bandits, etc.
In this talk, the speakers are going to detail how to handle these use cases using Kubeflow Serving and the native Kubernetes stack which is Istio and Knative. Knative and Istio help with autoscaling, scale-to-zero, canary deployments to be implemented, and scenarios where traffic is optimized to the best performing models. This can be combined with KNative eventing, Istio observability stack, KFServing Transformer to handle pre/post-processing and payload logging which consequentially can enable drift and outlier detection to be deployed. We will demonstrate where currently KFServing is, and where it's heading towards.
Video: https://youtu.be/T0L0JxDaPkc
RSVP Here: https://www.eventbrite.com/e/full-day-workshop-kubeflow-kerastensorflow-20-tf-extended-tfx-kubernetes-pytorch-xgboost-airflow-tickets-63362929227
Description
In this workshop, we build real-world machine learning pipelines using TensorFlow Extended (TFX), KubeFlow, Airflow, and MLflow.
Described in the 2017 paper, TFX is used internally by thousands of Google data scientists and engineers across every major product line within Google.
KubeFlow is a modern, end-to-end pipeline orchestration framework that embraces the latest AI best practices including hyper-parameter tuning, distributed model training, and model tracking.
Airflow is the most-widely used pipeline orchestration framework in machine learning and data engineering.
MLflow is a lightweight experiment-tracking system recently open-sourced by Databricks, the creators of Apache Spark. MLflow supports Python, Java/Scala, and R - and offers native support for TensorFlow, Keras, and Scikit-Learn.
Pre-requisites
Modern browser - and that's it!
Every attendee will receive a cloud instance
Nothing will be installed on your local laptop
Everything can be downloaded at the end of the workshop
Location
Online Workshop
The link will be sent a few hours before the start of the workshop.
Only registered users will receive the link.
If you do not receive the link a few hours before the start of the workshop, please send your Eventbrite registration confirmation to support@pipeline.ai for help.
Agenda
1. Create a Kubernetes cluster
2. Install KubeFlow, Airflow, TFX, and Jupyter
3. Setup ML Training Pipelines with KubeFlow and Airflow
4. Transform Data with TFX Transform
5. Validate Training Data with TFX Data Validation
6. Train Models with Jupyter, Keras/TensorFlow 2.0, PyTorch, XGBoost, and KubeFlow
7. Run a Notebook Directly on Kubernetes Cluster with KubeFlow
8. Analyze Models using TFX Model Analysis and Jupyter
9. Perform Hyper-Parameter Tuning with KubeFlow
10. Select the Best Model using KubeFlow Experiment Tracking
11. Run Multiple Experiments with MLflow Experiment Tracking
12. Reproduce Model Training with TFX Metadata Store
13. Deploy the Model to Production with TensorFlow Serving and Istio
14. Save and Download your Workspace
Key Takeaways
Attendees will gain experience training, analyzing, and serving real-world Keras/TensorFlow 2.0 models in production using model frameworks and open-source tools.
RSVP Here: https://www.eventbrite.com/e/full-day-workshop-kubeflow-kerastensorflow-20-tf-extended-tfx-kubernetes-pytorch-xgboost-airflow-tickets-63362929227
https://youtu.be/T0L0JxDaPkc
Introducing Kubeflow (w. Special Guests Tensorflow and Apache Spark)DataWorks Summit
Data Science, Machine Learning, and Artificial Intelligence has exploded in popularity in the last five years, but the nagging question remains, “How to put models into production?” Engineers are typically tasked to build one-off systems to serve predictions which must be maintained amid a quickly evolving back-end serving space which has evolved from single-machine, to custom clusters, to “serverless”, to Docker, to Kubernetes. In this talk, we present KubeFlow- an open source project which makes it easy for users to move models from laptop to ML Rig to training cluster to deployment. In this talk we will discuss, “What is KubeFlow?”, “why scalability is so critical for training and model deployment?”, and other topics.
Users can deploy models written in Python’s skearn, R, Tensorflow, Spark, and many more. The magic of Kubernetes allows data scientists to write models on their laptop, deploy to an ML-Rig, and then devOps can move that model into production with all of the bells and whistles such as monitoring, A/B tests, multi-arm bandits, and security.
This is a presentation about how to use Kubeflow for "AI pipeline optimization" - we show the "traditional" pipeline and why it should be optimized to have it available to a wider audience. Services are getting more and more important nowadays - thats why we call it "Data Science as a service".
Kubeflow at Spotify (For the Kubeflow Summit)Josh Baer
A lightning talk discussing some important challenges facing ML engineers and how the introduction of Kubeflow Pipelines will help.
Full slides w/ speaker notes here: https://docs.google.com/presentation/d/12dwhS_x4568G6XQjI9SEUacD-n4hFQczBcRBLdbHNEM/edit
Hydrosphere.io for ODSC: Webinar on KubeflowRustem Zakiev
Webinar video: https://www.youtube.com/watch?v=Y3_fcJBgpMw
Kubeflow and Beyond: Automation of Model Training, Deployment, Testing, Monitoring, and Retraining
Speakers:
Stepan Pushkarev, CTO, Hydrosphere.io and Ilnur Garifullin is an ML Engineer, Hydrosphere.io
Abstract: Very often a workflow of training models and delivering them to the production environment contains loads of manual work. Those could be either building a Docker image and deploying it to the Kubernetes cluster or packing the model to the Python package and installing it to your Python application. Or even changing your Java classes with the defined weights and re-compiling the whole project. Not to mention that all of this should be followed by testing your model's performance. It hardly could be named "continuous delivery" if you do it all manually. Imagine you could run the whole process of assembling/training/deploying/testing/running model via a single command in your terminal. In this webinar, we will present a way to build the whole workflow of data gathering/model training/model deployment/model testing into a single flow and run it with a single command.
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and IstioAnimesh Singh
Model Inferencing use cases are becoming a requirement for models moving into the next phase of production deployments. More and more users are now encountering use cases around canary deployments, scale-to-zero or serverless characteristics. And then there are also advanced use cases coming around model explainability, including A/B tests, ensemble models, multi-armed bandits, etc.
In this talk, the speakers are going to detail how to handle these use cases using Kubeflow Serving and the native Kubernetes stack which is Istio and Knative. Knative and Istio help with autoscaling, scale-to-zero, canary deployments to be implemented, and scenarios where traffic is optimized to the best performing models. This can be combined with KNative eventing, Istio observability stack, KFServing Transformer to handle pre/post-processing and payload logging which consequentially can enable drift and outlier detection to be deployed. We will demonstrate where currently KFServing is, and where it's heading towards.
Video: https://youtu.be/T0L0JxDaPkc
RSVP Here: https://www.eventbrite.com/e/full-day-workshop-kubeflow-kerastensorflow-20-tf-extended-tfx-kubernetes-pytorch-xgboost-airflow-tickets-63362929227
Description
In this workshop, we build real-world machine learning pipelines using TensorFlow Extended (TFX), KubeFlow, Airflow, and MLflow.
Described in the 2017 paper, TFX is used internally by thousands of Google data scientists and engineers across every major product line within Google.
KubeFlow is a modern, end-to-end pipeline orchestration framework that embraces the latest AI best practices including hyper-parameter tuning, distributed model training, and model tracking.
Airflow is the most-widely used pipeline orchestration framework in machine learning and data engineering.
MLflow is a lightweight experiment-tracking system recently open-sourced by Databricks, the creators of Apache Spark. MLflow supports Python, Java/Scala, and R - and offers native support for TensorFlow, Keras, and Scikit-Learn.
Pre-requisites
Modern browser - and that's it!
Every attendee will receive a cloud instance
Nothing will be installed on your local laptop
Everything can be downloaded at the end of the workshop
Location
Online Workshop
The link will be sent a few hours before the start of the workshop.
Only registered users will receive the link.
If you do not receive the link a few hours before the start of the workshop, please send your Eventbrite registration confirmation to support@pipeline.ai for help.
Agenda
1. Create a Kubernetes cluster
2. Install KubeFlow, Airflow, TFX, and Jupyter
3. Setup ML Training Pipelines with KubeFlow and Airflow
4. Transform Data with TFX Transform
5. Validate Training Data with TFX Data Validation
6. Train Models with Jupyter, Keras/TensorFlow 2.0, PyTorch, XGBoost, and KubeFlow
7. Run a Notebook Directly on Kubernetes Cluster with KubeFlow
8. Analyze Models using TFX Model Analysis and Jupyter
9. Perform Hyper-Parameter Tuning with KubeFlow
10. Select the Best Model using KubeFlow Experiment Tracking
11. Run Multiple Experiments with MLflow Experiment Tracking
12. Reproduce Model Training with TFX Metadata Store
13. Deploy the Model to Production with TensorFlow Serving and Istio
14. Save and Download your Workspace
Key Takeaways
Attendees will gain experience training, analyzing, and serving real-world Keras/TensorFlow 2.0 models in production using model frameworks and open-source tools.
RSVP Here: https://www.eventbrite.com/e/full-day-workshop-kubeflow-kerastensorflow-20-tf-extended-tfx-kubernetes-pytorch-xgboost-airflow-tickets-63362929227
https://youtu.be/T0L0JxDaPkc
This presentation is to reflect on the amazing advancement of the open source community in the field of Cloud Computing and how does it now allow us to build reliable software components quickly within truly agile infrastructure.
Jordi Mon Companys presents an overview of Weave GitOps Core for the Free GitOps Workshop on August 19, 2021.
Weave GitOps Core is a continuous delivery product to run apps in any Kubernetes. It is free and open source, and you can get started today!
https://www.weave.works/product/gitops-core/
Chat with us on our Slack channel! #weave-gitops http://bit.ly/WeaveGitOpsSlack
If you need to invite yourself to the Slack, visit https://slack.weave.works/
Hybrid Cloud, Kubeflow and Tensorflow Extended [TFX]Animesh Singh
Kubeflow Pipelines and TensorFlow Extended (TFX) together is end-to-end platform for deploying production ML pipelines. It provides a configuration framework and shared libraries to integrate common components needed to define, launch, and monitor your machine learning system. In this talk we describe how how to run TFX in hybrid cloud environments.
Machine learning in the physical world by Kip Larson from AWS IoTBill Liu
Presented at AI NEXTCon Seattle 1/17-20, 2018
http://aisea18.xnextcon.com
join our free online AI group with 50,000+ tech engineers to learn and practice AI technology, including: latest AI news, tech articles/blogs, tech talks, tutorial videos, and hands-on workshop/codelabs, on machine learning, deep learning, data science, etc..
How to deploy machine learning models in the CloudAlex Casalboni
Developing and experimenting with machine learning models in Python is easy and well supported by robust and agile libraries such as scikit-learn, although efficiently deploying multi-model systems at scale is still a challenge in the data science field.
This talk will focus on the main issues related to deploying machine learning models and how to make scikit-learn production-ready with minimal operational efforts, by means of Cloud Computing services, in particular Amazon Web Services.
Prerequisites: basic Machine Learning understanding (modeling and training), minimal knowledge about scikit-learn and Python utilities such as Pandas and boto.
Flink Forward San Francisco 2018 keynote: Anand Iyer - "Apache Flink + Apach...Flink Forward
Over the past few months, the Apache Flink and Apache Beam communities have been busy developing an industry leading solution to author batch and streaming pipelines with Python. This was made possible by a significant effort to revamp Beam’s portability framework, build the corresponding Flink Runner, and simplify Flink’s artifact distribution & deployment mechanisms.
What is the “killer big-data app” enabled by this integration: production TensorFlow pipelines. Building production machine learning pipelines that process large distributed data sets can get complex. In this talk, we will describe a set of open source libraries developed at Google, that simplify and unify pre and post processing stages for a production TensorFlow pipeline. These libraries are authored on Beam’s python SDK, and can be run on Apache Flink at scale.
Last, but not least, we will describe how Beam & Flink aim to bring the power of big-data to newer audiences, in particular, developers of the Go programming language.
Curated "Cloud Design Patterns" for Call Center PlatformsAlejandro Rios Peña
As presented at Opensips Summit May 1st 2018, Amsterdam.
When designing cloud-based contact center solutions there are many challenges to overcome, and many roads to success. Most cloud-architects have encountered these problems before, and have used common solutions to remedy them. If you encounter these problems, why recreate a solution when you can use an already proven answer? Cloud Design Patterns (CDP) are solutions and design ideas for using cloud technology to solve common platform design problems.
Cloud Workflows What's new in serverless orchestration and automationMárton Kodok
understand how Cloud Workflows resolves challenges in connecting services, HTTP based service orchestration and automation. We are going to dive deep how serverless HTTP service automation works to automate step engines. Based on practical examples we will demonstrate the newest features that lets you automate the cloud and integration with any Google Cloud product without worrying about authentication
Apache Flink is an open-source stream-processing framework and represents the next generation of big data computing engines. To achieve elastic scalability, it is typically deployed in clustered environments, and increasingly on top of container orchestration platforms like Kubernetes
This slide helps to gain insight into our best practices for running Flink on Kubernetes, which includes concepts like
~ When to use sidecar containers,
~ How to the checkpoint to external storage, and integration with cloud security models.
~ Pros and Cons of running Flink on Kubernetes
~ and many more…
You will leave with knowledge of how to apply these techniques to your own applications.
Hardening Your CI/CD Pipelines with GitOps and Continuous SecurityWeaveworks
Join us for a webinar on how to secure your CI/CD pipeline for Kubernetes with GitOps best practices and continuous runtime protection. As modern developers and DevOps teams are embarking on a quest for speed and reliability through automated CI/CD pipelines for Kubernetes, enterprises still need to ensure security and regulatory compliance.
Together with Deepfence, the Weaveworks team will explain and demonstrate how GitOps continuous delivery pipelines, combined with continuous security observability, improves the overall security of your development workflow - from Git to production.
In this webinar we will demonstrate:
Deepfence container scanning
Git-to-Kubernetes using FluxCD
Deepfence continuous runtime security
You Might Just be a Functional Programmer Nowcornelia davis
The declarative programming model of Kubernetes is markedly different from what most developers are used to. That the API is a set of resources rather than a list of methods on objects is a bit mind bending. But this programming model is not entirely new – rather, it smacks quite heavily of functional programming.
Functional programming had mostly been relegated to academic endeavors until recently. What’s changed that is that our apps are now distributed systems and are simply too complex for us to reason about without help. Kubernetes helps.
In order to effectively use Kubernetes to deploy and manage your workloads you need to understand some of the principles of functional programming and how they surface in K8s. In this session I will cover these underlying principles of the K8s programming model so that you can up the robustness and manageability of your application deployments.
Presented at KubeCon Barcelona, May 2019
Free GitOps Workshop (with Intro to Kubernetes & GitOps)Weaveworks
View this video on Youtube here: https://youtu.be/tK4S8y3j5TA
In this info-packed and hands-on workshop we covered:
Introduction to Kubernetes & GitOps talk:
We covered the most popular path that has brought success to many users already - GitOps as a natural evolution of Kubernetes. We'll give an overview of how you can benefit from Kubernetes and GitOps: greater security, reliability, velocity and more. Importantly, we cover definitions and principles standardized by the CNCF's OpenGitOps group and what it means for you.
Get Started with GitOps:
You'll have GitOps up and running in about 30 mins using our free and open source tools! We'll give a brief vision of where you want to be with those security, reliability, and velocity benefits, and then we'll support you while go through the getting started steps. During the workshop, you'll also experience in action and see demos for:
- an opinionated repo structure to minimize decision fatigue
- disaster recovery using GitOps
- Helm charts example
- Multi-cluster example
- all with free and open source tools mostly in the CNCF (eg. Flux and Helm).
If you have questions before or after the workshop, talk to us at #weave-gitops http://bit.ly/WeaveGitOpsSlack (If you need to invite yourself to the Slack, visit https://slack.weave.works/)
This presentation is to reflect on the amazing advancement of the open source community in the field of Cloud Computing and how does it now allow us to build reliable software components quickly within truly agile infrastructure.
Jordi Mon Companys presents an overview of Weave GitOps Core for the Free GitOps Workshop on August 19, 2021.
Weave GitOps Core is a continuous delivery product to run apps in any Kubernetes. It is free and open source, and you can get started today!
https://www.weave.works/product/gitops-core/
Chat with us on our Slack channel! #weave-gitops http://bit.ly/WeaveGitOpsSlack
If you need to invite yourself to the Slack, visit https://slack.weave.works/
Hybrid Cloud, Kubeflow and Tensorflow Extended [TFX]Animesh Singh
Kubeflow Pipelines and TensorFlow Extended (TFX) together is end-to-end platform for deploying production ML pipelines. It provides a configuration framework and shared libraries to integrate common components needed to define, launch, and monitor your machine learning system. In this talk we describe how how to run TFX in hybrid cloud environments.
Machine learning in the physical world by Kip Larson from AWS IoTBill Liu
Presented at AI NEXTCon Seattle 1/17-20, 2018
http://aisea18.xnextcon.com
join our free online AI group with 50,000+ tech engineers to learn and practice AI technology, including: latest AI news, tech articles/blogs, tech talks, tutorial videos, and hands-on workshop/codelabs, on machine learning, deep learning, data science, etc..
How to deploy machine learning models in the CloudAlex Casalboni
Developing and experimenting with machine learning models in Python is easy and well supported by robust and agile libraries such as scikit-learn, although efficiently deploying multi-model systems at scale is still a challenge in the data science field.
This talk will focus on the main issues related to deploying machine learning models and how to make scikit-learn production-ready with minimal operational efforts, by means of Cloud Computing services, in particular Amazon Web Services.
Prerequisites: basic Machine Learning understanding (modeling and training), minimal knowledge about scikit-learn and Python utilities such as Pandas and boto.
Flink Forward San Francisco 2018 keynote: Anand Iyer - "Apache Flink + Apach...Flink Forward
Over the past few months, the Apache Flink and Apache Beam communities have been busy developing an industry leading solution to author batch and streaming pipelines with Python. This was made possible by a significant effort to revamp Beam’s portability framework, build the corresponding Flink Runner, and simplify Flink’s artifact distribution & deployment mechanisms.
What is the “killer big-data app” enabled by this integration: production TensorFlow pipelines. Building production machine learning pipelines that process large distributed data sets can get complex. In this talk, we will describe a set of open source libraries developed at Google, that simplify and unify pre and post processing stages for a production TensorFlow pipeline. These libraries are authored on Beam’s python SDK, and can be run on Apache Flink at scale.
Last, but not least, we will describe how Beam & Flink aim to bring the power of big-data to newer audiences, in particular, developers of the Go programming language.
Curated "Cloud Design Patterns" for Call Center PlatformsAlejandro Rios Peña
As presented at Opensips Summit May 1st 2018, Amsterdam.
When designing cloud-based contact center solutions there are many challenges to overcome, and many roads to success. Most cloud-architects have encountered these problems before, and have used common solutions to remedy them. If you encounter these problems, why recreate a solution when you can use an already proven answer? Cloud Design Patterns (CDP) are solutions and design ideas for using cloud technology to solve common platform design problems.
Cloud Workflows What's new in serverless orchestration and automationMárton Kodok
understand how Cloud Workflows resolves challenges in connecting services, HTTP based service orchestration and automation. We are going to dive deep how serverless HTTP service automation works to automate step engines. Based on practical examples we will demonstrate the newest features that lets you automate the cloud and integration with any Google Cloud product without worrying about authentication
Apache Flink is an open-source stream-processing framework and represents the next generation of big data computing engines. To achieve elastic scalability, it is typically deployed in clustered environments, and increasingly on top of container orchestration platforms like Kubernetes
This slide helps to gain insight into our best practices for running Flink on Kubernetes, which includes concepts like
~ When to use sidecar containers,
~ How to the checkpoint to external storage, and integration with cloud security models.
~ Pros and Cons of running Flink on Kubernetes
~ and many more…
You will leave with knowledge of how to apply these techniques to your own applications.
Hardening Your CI/CD Pipelines with GitOps and Continuous SecurityWeaveworks
Join us for a webinar on how to secure your CI/CD pipeline for Kubernetes with GitOps best practices and continuous runtime protection. As modern developers and DevOps teams are embarking on a quest for speed and reliability through automated CI/CD pipelines for Kubernetes, enterprises still need to ensure security and regulatory compliance.
Together with Deepfence, the Weaveworks team will explain and demonstrate how GitOps continuous delivery pipelines, combined with continuous security observability, improves the overall security of your development workflow - from Git to production.
In this webinar we will demonstrate:
Deepfence container scanning
Git-to-Kubernetes using FluxCD
Deepfence continuous runtime security
You Might Just be a Functional Programmer Nowcornelia davis
The declarative programming model of Kubernetes is markedly different from what most developers are used to. That the API is a set of resources rather than a list of methods on objects is a bit mind bending. But this programming model is not entirely new – rather, it smacks quite heavily of functional programming.
Functional programming had mostly been relegated to academic endeavors until recently. What’s changed that is that our apps are now distributed systems and are simply too complex for us to reason about without help. Kubernetes helps.
In order to effectively use Kubernetes to deploy and manage your workloads you need to understand some of the principles of functional programming and how they surface in K8s. In this session I will cover these underlying principles of the K8s programming model so that you can up the robustness and manageability of your application deployments.
Presented at KubeCon Barcelona, May 2019
Free GitOps Workshop (with Intro to Kubernetes & GitOps)Weaveworks
View this video on Youtube here: https://youtu.be/tK4S8y3j5TA
In this info-packed and hands-on workshop we covered:
Introduction to Kubernetes & GitOps talk:
We covered the most popular path that has brought success to many users already - GitOps as a natural evolution of Kubernetes. We'll give an overview of how you can benefit from Kubernetes and GitOps: greater security, reliability, velocity and more. Importantly, we cover definitions and principles standardized by the CNCF's OpenGitOps group and what it means for you.
Get Started with GitOps:
You'll have GitOps up and running in about 30 mins using our free and open source tools! We'll give a brief vision of where you want to be with those security, reliability, and velocity benefits, and then we'll support you while go through the getting started steps. During the workshop, you'll also experience in action and see demos for:
- an opinionated repo structure to minimize decision fatigue
- disaster recovery using GitOps
- Helm charts example
- Multi-cluster example
- all with free and open source tools mostly in the CNCF (eg. Flux and Helm).
If you have questions before or after the workshop, talk to us at #weave-gitops http://bit.ly/WeaveGitOpsSlack (If you need to invite yourself to the Slack, visit https://slack.weave.works/)
Join this info-packed and hands-on workshop where we will cover:
Introduction to Kubernetes & GitOps talk:
We'll cover the most popular path that has brought success to many users already - GitOps as a natural evolution of Kubernetes. We'll give an overview of how you can benefit from Kubernetes and GitOps: greater security, reliability, velocity and more. Importantly, we cover definitions and principles standardized by the CNCF's OpenGitOps group and what it means for you.
Get Started with GitOps:
You'll have GitOps up and running in about 30 mins using our free and open source tools! We'll give a brief vision of where you want to be with those security, reliability, and velocity benefits, and then we'll support you while go through the getting started steps. During the workshop, you'll also experience in action and see demos for:
* an opinionated repo structure to minimize decision fatigue
* disaster recovery using GitOps
* Helm charts example
* Multi-cluster example
* all with free and open source tools mostly in the CNCF (eg. Flux and Helm).
If you have questions before or after the workshop, talk to us at #weave-gitops http://bit.ly/WeaveGitOpsSlack (If you need to invite yourself to the Slack, visit https://slack.weave.works/)
Continuous Lifecycle London 2018 Event KeynoteWeaveworks
Today it’s all about delivering velocity without compromising on quality, yet it’s becoming increasingly difficult for organisations to keep up with the challenges of current release management and traditional operations. The demand for developers to own the end-to-end delivery, including operational ownership, is increasing. A “you build it, you own it” development process requires tools that developers know and understand. So I’d like to introduce “GitOps”- an agile software lifecycle for modern applications.
In this session, I will discuss these industry challenges, including current CICD trends and how they’re converging with operations and monitoring. I’ll also illustrate the GitOps model, identify best practices and tools to use, and explain how you can benefit from adopting this methodology inherited from best practices going back 10-15 years.
GCP Meetup #3 - Approaches to Cloud Native Architecturesnine
Talk by Daniel Leahy and Nic Gibson, given at the Google Cloud Meetup on March 3, 2020, hosted by Nine Internet Solutions AG - Your Swiss Managed Cloud Service Provider.
For this info-packed and hands-on workshop we cover:
📍 Introduction to Kubernetes & GitOps talk:
We cover the most popular path that has brought success to many users already - GitOps as a natural evolution of Kubernetes. We'll give an overview of how you can benefit from Kubernetes and GitOps: greater security, reliability, velocity and more. Importantly, we cover definitions and principles standardized by the CNCF's OpenGitOps group and what it means for you.
📍 Get Started with GitOps:
You'll have GitOps up and running in about 30 mins using our free and open source tools! We'll give a brief vision of where you want to be with those security, reliability, and velocity benefits, and then we'll support you while go through the getting started steps. During the workshop, you'll also experience in action and see demos for:
- an opinionated repo structure to minimize decision fatigue
- disaster recovery using GitOps
- Helm charts example
- Multi-cluster example
- all with free and open source tools mostly in the CNCF (eg. Flux and Helm).
If you have questions before or after the workshop, talk to us at #weave-gitops http://bit.ly/WeaveGitOpsSlack (If you need to invite yourself to the Slack, visit https://slack.weave.works/)
The path to a serverless-native era with Kubernetessparkfabrik
In this talk we'll talk about how the Serverless paradigms are changing the way we develop applications and cloud infrastructure and how we can implement them in a
efficient and seamless way with Kubernetes.
We'll go through the latest Kubernetes Serverless technologies, talking about all the aspects
including pricing, scalability, observability and best practices.
DevOps Days Boston 2017: Real-world Kubernetes for DevOpsAmbassador Labs
DevOps Days Boston 2017
Microservices is an increasingly popular approach to building cloud-native applications. Dozens of new technologies that streamline adopting microservices development such as Docker, Kubernetes, and Envoy have been released over the past few years. But how do you actually use these technologies together to develop, deploy, and run microservices?
In this presentation, we’ll cover the nuances of deploying containerized applications on Kubernetes, including creating a Kubernetes manifest, debugging and logging, and how to build an automated continuous deployment pipeline. Then, we’ll do a brief tour of some of the advanced concepts related to microservices, including service mesh, canary deployments, resilience, and security.
Free GitOps Workshop + Intro to Kubernetes & GitOpsWeaveworks
Follow along in this free workshop and experience GitOps!
AGENDA:
Welcome - Tamao Nakahara, Head of DX (Weaveworks)
Introduction to Kubernetes & GitOps - Mark Emeis, Principal Engineer (Weaveworks)
Weave Gitops Overview - Tamao Nakahara
Free Gitops Workshop - David Harris, Product Manager (Weaveworks)
If you're new to Kubernetes and GitOps, we'll give you a brief introduction to both and how GitOps is the natural evolution of Kubernetes.
Weave GitOps Core is a continuous delivery product to run apps in any Kubernetes. It is free and open source, and you can get started today!
https://www.weave.works/product/gitops-core
If you’re stuck, also come talk to us at our Slack channel! #weave-gitops http://bit.ly/WeaveGitOpsSlack (If you need to invite yourself to the Slack, visit https://slack.weave.works/)
stackconf 2020 | The path to a Serverless-native era with Kubernetes by Paolo...NETWAYS
Serverless is one of the hottest design patterns in the cloud today, i’ll cover how the Serverless paradigms are changing the way we develop applications and the cloud infrastructures and how to implement Serveless-kind workloads with Kubernetes.
We’ll go through the latest Kubernetes-based serverless technologies, covering the most important aspects including pricing, scalability, observability and best practices
GitOps: Git come unica fonte di verità per applicazioni e infrastrutturasparkfabrik
GitOps è un nuovo metodo di CD che utilizza Git come unica fonte di verità per le applicazioni e per l'infrastruttura (declarative infrastructure / infrastructure as code), fornendo sia il controllo delle revisioni che il controllo delle modifiche. In questo talk vedremo i concetti alla base di CI/CD, ovvero Continuous Integration e Continuous Deployment (o anche Continuous Delivery), pratiche nello sviluppo software che permettono ai team di creare dei progetti collaborativi in modo rapido, efficiente e idealmente con meno errori. Infine vedremo come implementare un flusso di lavoro GitOps usando Github actions e ArgoCD.
GitOps è un nuovo metodo di CD che utilizza Git come unica fonte di verità per le applicazioni e per l'infrastruttura (declarative infrastructure/infrastructure as code), fornendo sia il controllo delle revisioni che il controllo delle modifiche. In questo talk vedremo come implementare workflow di CI/CD Gitops basati su Kubernetes, dalla teoria alla pratica passando in rassegna i principali strumenti oggi a disposizione come ArgoCD, Flux (aka Gitops engine) e JenkinsX
Demystifying Application Connectivity with Kubernetes in the Docker PlatformNicola Kabar
The addition of Kubernetes support to Docker Enterprise Platform presents deployments with interesting new abstractions for application connectivity. Users and Operators are often challenged with rationalizing how pod networking (with CNI plugins like Calico or Flannel), Services (via kube-proxy) and Ingress work in concert to enable application connectivity within and outside a cluster. Similarly, given the dynamic and transient nature of containerized microservice workloads, how to leverage scalable and declarative approaches like network policies to express segmentation and security primitives. This session provides an illustrative walkthrough of these core concepts by going through common deployment architectures providing design, operations, and scale considerations based on experience from numerous production deployments. The session will also showcase how to complement application and operations workflows with policy-driven business, compliance and security controls typically required in enterprise production deployments.
Demystifying container connectivity with kubernetes in dockerDocker, Inc.
The addition of Kubernetes support to Docker Enterprise Platform presents deployments with interesting new abstractions for application connectivity. Users and Operators are often challenged with rationalizing how pod networking (with CNI plugins like Calico or Flannel), Services (via kube-proxy) and Ingress work in concert to enable application connectivity within and outside a cluster. Similarly, given the dynamic and transient nature of containerized microservice workloads, how to leverage scalable and declarative approaches like network policies to express segmentation and security primitives.
This session provides an illustrative walkthrough of these core concepts by going through common deployment architectures providing design, operations, and scale considerations based on experience from numerous production deployments. The session will also showcase how to complement application and operations workflows with policy-driven business, compliance and security controls typically required in enterprise production deployments.
Functioning incessantly of Data Science Platform with Kubeflow - Albert Lewan...GetInData
Did you like it? Check out our blog to stay up to date: https://getindata.com/blog
The talk is focused on administration, development and monitoring platform with Apache Spark, Apache Flink and Kubeflow in which the monitoring stack is based on Prometheus stack.
Author: Albert Lewandowski
Linkedin: https://www.linkedin.com/in/albert-lewandowski/
___
Getindata is a company founded in 2014 by ex-Spotify data engineers. From day one our focus has been on Big Data projects. We bring together a group of best and most experienced experts in Poland, working with cloud and open-source Big Data technologies to help companies build scalable data architectures and implement advanced analytics over large data sets.
Our experts have vast production experience in implementing Big Data projects for Polish as well as foreign companies including i.a. Spotify, Play, Truecaller, Kcell, Acast, Allegro, ING, Agora, Synerise, StepStone, iZettle and many others from the pharmaceutical, media, finance and FMCG industries.
https://getindata.com
[20200720]cloud native develoment - Nelson LinHanLing Shen
There is no shortage now of development and CI/CD tools for cloud-native application development. But how do we put the cloud-native concept and think as the cloud-native way on the leftmost side of CI/CD pipeline.
During developing phrase, the tools provided with cloud code can help you expedite iteration of source codes, run and debug cloud native applications in an easy and fast way, making cloud-native development turn into real-time process, reduce the gap between deployment and development.
現在不乏用於雲原生應用程序開發的開發和 CI/CD工具。 但是,我們如何將雲原生概念放在的 CI/CD 流水線的最左側呢?
在開發階段,如何用 Cloud code 協助您加快原始碼的迭代速度,以簡便快捷的方式運行和調用雲原生應用程序,使雲原生開發變為即使過程,縮小開發與部署之間的差
GitOps Testing in Kubernetes with Flux and Testkube.pdfWeaveworks
GitOps is amazing... until you can't apply it! This has been the case mostly for testing where it continues to be more of a push than a pull in organizations' DevOps pipelines.
Join us in this talk to learn the benefits of improving your existing testing pipeline with Testkube, an open source project that brings tests inside your Kubernetes cluster, and FluxCD adding the GitOps sprinkles to testing!
Speaker: Abdallah Abedraba, Product Leader at Testkube
Abdallah works at Testkube, a Kubernetes native testing framework. In his prior experiences, he has tried everything from software engineering to product management, and now working as a Developer Advocate, on open source (a dream of his!) evangelizing all things Testing and Kubernetes. In his free time, he enjoys attending developer conferences and meetups, as well as spending time at the movies and actively listening to music.
Similar to Yannis Zarkadas. Enterprise data science workflows on kubeflow (20)
Honest Reviews of Tim Han LMA Course Program.pptxtimhan337
Personal development courses are widely available today, with each one promising life-changing outcomes. Tim Han’s Life Mastery Achievers (LMA) Course has drawn a lot of interest. In addition to offering my frank assessment of Success Insider’s LMA Course, this piece examines the course’s effects via a variety of Tim Han LMA course reviews and Success Insider comments.
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdfTechSoup
In this webinar you will learn how your organization can access TechSoup's wide variety of product discount and donation programs. From hardware to software, we'll give you a tour of the tools available to help your nonprofit with productivity, collaboration, financial management, donor tracking, security, and more.
2024.06.01 Introducing a competency framework for languag learning materials ...Sandy Millin
http://sandymillin.wordpress.com/iateflwebinar2024
Published classroom materials form the basis of syllabuses, drive teacher professional development, and have a potentially huge influence on learners, teachers and education systems. All teachers also create their own materials, whether a few sentences on a blackboard, a highly-structured fully-realised online course, or anything in between. Despite this, the knowledge and skills needed to create effective language learning materials are rarely part of teacher training, and are mostly learnt by trial and error.
Knowledge and skills frameworks, generally called competency frameworks, for ELT teachers, trainers and managers have existed for a few years now. However, until I created one for my MA dissertation, there wasn’t one drawing together what we need to know and do to be able to effectively produce language learning materials.
This webinar will introduce you to my framework, highlighting the key competencies I identified from my research. It will also show how anybody involved in language teaching (any language, not just English!), teacher training, managing schools or developing language learning materials can benefit from using the framework.
The French Revolution, which began in 1789, was a period of radical social and political upheaval in France. It marked the decline of absolute monarchies, the rise of secular and democratic republics, and the eventual rise of Napoleon Bonaparte. This revolutionary period is crucial in understanding the transition from feudalism to modernity in Europe.
For more information, visit-www.vavaclasses.com
Instructions for Submissions thorugh G- Classroom.pptxJheel Barad
This presentation provides a briefing on how to upload submissions and documents in Google Classroom. It was prepared as part of an orientation for new Sainik School in-service teacher trainees. As a training officer, my goal is to ensure that you are comfortable and proficient with this essential tool for managing assignments and fostering student engagement.
Operation “Blue Star” is the only event in the history of Independent India where the state went into war with its own people. Even after about 40 years it is not clear if it was culmination of states anger over people of the region, a political game of power or start of dictatorial chapter in the democratic setup.
The people of Punjab felt alienated from main stream due to denial of their just demands during a long democratic struggle since independence. As it happen all over the word, it led to militant struggle with great loss of lives of military, police and civilian personnel. Killing of Indira Gandhi and massacre of innocent Sikhs in Delhi and other India cities was also associated with this movement.
Biological screening of herbal drugs: Introduction and Need for
Phyto-Pharmacological Screening, New Strategies for evaluating
Natural Products, In vitro evaluation techniques for Antioxidants, Antimicrobial and Anticancer drugs. In vivo evaluation techniques
for Anti-inflammatory, Antiulcer, Anticancer, Wound healing, Antidiabetic, Hepatoprotective, Cardio protective, Diuretics and
Antifertility, Toxicity studies as per OECD guidelines
Palestine last event orientationfvgnh .pptxRaedMohamed3
An EFL lesson about the current events in Palestine. It is intended to be for intermediate students who wish to increase their listening skills through a short lesson in power point.
Yannis Zarkadas. Enterprise data science workflows on kubeflow
1. Enterprise Data Science Workflows on Kubeflow
Use GitOps to deploy and manage your Kubeflow cluster.
Perform an end-to-end data science workflow on Kubeflow.
Stefano Fioravanzo
Yannis Zarkadas
Arrikto
2. Simplify. Accelerate. Collaborate. arrik.to/odsc20
GitOps and Multi-Tenancy Combined for an
Enterprise Data Science Experience on Kubeflow
Stefano Fioravanzo Yannis Zarkadas
Software Engineer Software Engineer
2
3. Simplify. Accelerate. Collaborate. arrik.to/odsc20
● How to deploy and manage Kubeflow in a GitOps manner
● How to make sure you run Kubeflow in a secure way
● How to optimize and build production-ready models faster
Why is this important?
✓ Simplify deployment and management of Kubeflow
✓ Accelerate time to production
✓ Collaborate in a secure and isolated manner
What You’ll Learn In This Session
3
4. Simplify. Accelerate. Collaborate. arrik.to/odsc20
What is Kubeflow
The Kubeflow project is dedicated to making deployments of
machine learning (ML) workflows on Kubernetes: simple,
portable and scalable.
4
5. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Perception: ML Products are mostly about ML
Credit: Hidden Technical Debt of Machine Learning Systems, D. Sculley, et al.
Configuration
Data Collection
Data
Verification
Feature
Extraction
Process
Management Tools
Analysis Tools
Machine
Resource
Management
Serving
Infrastructure
Monitoring
ML Code
5
6. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Reality: ML Requires DevOps; lots of it
Configuration
Data Collection
Data
Verification
Feature Extraction Process Management
Tools
Analysis Tools
Machine
Resource
Management
Serving
Infrastructure
Monitoring
ML
Code
Credit: Hidden Technical Debt of Machine Learning Systems, D. Sculley, et al.
6
7. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Kubeflow components
7
Jupyter Notebooks
Workflow Building
Pipelines
Tools
Serving
Metadata
Data Management
Kale
Fairing
TFX
Airflow, +
KF Pipelines
HP Tuning
Tensorboard
KFServing
Seldon Core
TFServing, + Training Operators
Pytorch
XGBoost, +
Tensorflow
Prometheus
Versioning ReproducibilitySecure
Sharing
8. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Platforms /
clouds
GCP AWS IBM CloudAzure OpenShift
Istio
ML tools
PyTorch scikit-learn
Jupyter
TensorFlow
PyTorch
Serving
TensorFlow
Serving
XGBoost
Kubernetes
Argo
Prometheus
Spartakus
Seldon Core
Kubeflow
applications
and
scaffolding
Chainer MPI MXNet
On prem
Jupyter notebook
web app and
controller
Hyperparameter
tuning (Katib)
Kale
Pipelines
Metadata
Training operators:
MPI, MXNet, PyTorch,
TFJob, XGBoost
Kubeflow UI
KFServing
8
9. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Platforms /
clouds
Kubeflow
applications
and
scaffolding
ML tools
PyTorch scikit-learn
Jupyter
TensorFlow XGBoost
Chainer MPI MXNet
GCP AWS IBM CloudAzure OpenShift
Istio
PyTorch
Serving
TensorFlow
Serving
Kubernetes
Argo
Prometheus
Spartakus
Seldon Core
On prem
Jupyter notebook
web app and
controller
Hyperparameter
tuning (Katib)
Kale
Pipelines
Metadata
Kubeflow UI
KFServing
Training operators:
MPI, MXNet, PyTorch,
TFJob, XGBoost
9
10. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Platforms /
clouds
ML tools
PyTorch scikit-learn
Jupyter
TensorFlow XGBoost
Kubeflow
applications
and
scaffolding
Chainer MPI MXNet
GCP AWS IBM CloudAzure OpenShift
Istio
PyTorch
Serving
TensorFlow
Serving
Kubernetes
Argo
Prometheus
Spartakus
Seldon Core
On prem
Jupyter notebook
web app and
controller
Hyperparameter
tuning (Katib)
Kale
Pipelines
Metadata
Kubeflow UI
KFServing
Training operators:
MPI, MXNet, PyTorch,
TFJob, XGBoost
10
11. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Platforms /
clouds
ML tools
PyTorch scikit-learn
Jupyter
TensorFlow XGBoost
Kubeflow
applications
and
scaffolding
Chainer MPI MXNet
GCP AWS IBM CloudAzure OpenShift
Istio
PyTorch
Serving
TensorFlow
Serving
Kubernetes
Argo
Prometheus
Spartakus
Seldon Core
Jupyter notebook
web app and
controller
Hyperparameter
tuning (Katib)
Kale
Pipelines
Metadata
Kubeflow UI
KFServing
On prem
Training operators:
MPI, MXNet, PyTorch,
TFJob, XGBoost
11
12. Simplify. Accelerate. Collaborate. arrik.to/odsc20
ML workflow
Identify
problem and
collect and
analyse data
Choose an ML
algorithm and
code your
model
Experiment
with data and
model training
Tune the model
hyperparamet
ers
Jupyter
Notebook
Katib
TensorFlow
scikit-learn
PyTorch
XGBoost
Jupyter
Notebook
Kale
Pipelines
KFServing
PyTorch
TFServing
Seldon Core
NVIDIA
TensorRT
Serve the
model for
online/batch
prediction
12
13. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Testimonials
● Dyson: “Kubeflow is to data science what a lab notebook is to biomedical
scientists — a way to expedite ideas from the lab to the ‘bedside’ 3x faster, while
ensuring experimental reproducibility.”
● US Bank: “The Kubeflow 1.0 release is a significant milestone as it positions
Kubeflow to be a viable ML Enterprise platform. Kubeflow 1.0 delivers material
productivity enhancements for ML researchers.”
● One Technologies: “With Kubeflow at the heart of our ML platform, our small
company has been able to stack models in production to improve CR, find new
customers, and present the right product to the right customer at the right time.”
13
14. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Testimonials
● GroupBy: “Kubeflow is helping GroupBy in standardizing ML workflows and
simplifying very complicated deployments!”
● Volvo Cars: “Kubeflow provides a seamless interface to a great set of tools
that together manages the complexity of ML workflows and encourages best
practices. The Data Science and Machine Learning teams at Volvo Cars are
able to iterate and deliver reproducible, production grade services with ease.”
14
21. Simplify. Accelerate. Collaborate. arrik.to/odsc20
K8s
etcd
K8s
etcd
Reproducibility
commit 856df4gdf56g4561d1fg564df5g61v6854df
Author: yanniszark <yanniszark@arrikto.com>
Date: Tuesday, Sep 8 11:24:12 2020 +0200
Upgrade MySQL to new version.
K8s
etcd
apply
● Whole configuration state in git, versioned by commits
● Careful! Mutable state still outside of git (e.g., volumes, S3)
○ Need versioning solution for end-to-end reproducibility
○ Arrikto Rok produces data commits for your volumes (e.g., MySQL)
22. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Rollbacks
commit 856df4gdf56g4561d1fg564df5g61v6854df
Author: yanniszark <yanniszark@arrikto.com>
Date: Tuesday, Sep 8 11:24:12 2020 +0200
Upgrade MySQL to new version.
commit er1f1ef8f1e1rf5641sdfs564d1fsd1f5sd61fgwd
Author: yanniszark <yanniszark@arrikto.com>
Date: Tuesday, Sep 4 15:24:12 2020 +0200
Increase MySQL read-replicas to 3 for higher
availability.
git log
K8s
etcd
apply
apply
Unhealthy
26. Simplify. Accelerate. Collaborate. arrik.to/odsc20
GitOps Workflow
Deployer
GitOps repo
commit
kubectl
apply
Desired State (YAML)
kind: Pod
metadata:
name: mysql
spec:
image: mysql:7.6
27. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Deployer
GitOps repo
(downstream)
commit
kubectl
apply
GitOps Workflow
● What about 3rd-party applications?
● Usually, infrastructure configuration is provided by the vendor
● For example, Kubeflow maintains a “manifests” monorepo with all deployment
configurations
manifests repo
(upstream)
Kubeflow
Developer
commit
periodic
rebase
28. Simplify. Accelerate. Collaborate. arrik.to/odsc20
GitOps - Managing Configuration
● How do you manage configuration?
○ Use 3rd-party provided configs
○ Customer changes
○ Update periodically
● Several tools:
○ helm
○ kustomize
○ ...
● Kubeflow uses kustomize
● We (Arrikto) use kustomize for our deployments
kind: Deployment
metadata:
name: redis
namespace: deploy
spec:
template:
spec:
image: gcr.io/redis:6
replicas: 3
29. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Managing Configuration - Helm
● Helm is the most popular tool that uses templating
● Exposes knobs to consumers via values file
● Templating is hard to read
values.yaml Chart
Customer Repo
(downstream)
Vendor Repo
(upstream)
37. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Managing Configuration - kustomize
Vendor Repo
(upstream)
Customer Repo
(downstream)
d1
v1
v2
v3
v1
v2
v3
● Update with git rebase
● Separate file == no conflicts
38. Simplify. Accelerate. Collaborate. arrik.to/odsc20
└── redis
├── base
└── overlays
├── deploy
Managing Configuration - kustomize
● Powerful customization capabilities
● Rebase from upstream to get new updates
● Customizations in separate folders, no conflicts on rebase
Consumer
customizations
Upstream repo
GitOps repo
39. Simplify. Accelerate. Collaborate. arrik.to/odsc20
● Simplify Kubeflow stack installation, configuration, and management
○ Deploy and manage software in a declarative way
○ Complete visibility of system configuration
● Accelerate the upgrade process by continuously deploying changes to the
cluster
○ Track changes and revert if something goes wrong
● Collaborate better and faster, share knowledge with the whole team
○ Keep using your favorite familiar tools and workflow
Why GitOps in your Kubeflow Deployment
39
40. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Demo
1. Kubernetes Cluster (EKS) on Amazon Web Services
2. Deploy Rok
3. Deploy Kubeflow
4. Update installation from upstream
41. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Security in Kubeflow
“We observed that this attack effected
on tens of Kubernetes clusters.”
43. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Authentication using OIDC Protocol
● Open & Standardized OAuth Flow
● Objective: Get the User’s Identity (username, groups)
● Popular and Secure
45. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Authorization
● Authorization with Role Based Access Control (RBAC)
● Commit RBAC resources in git for reproducibility
Endpoints
RBAC
Resources Verbs
GET /apis/kubeflow.org/v1/notebooks/{name} Notebooks GET
GET /apis/kubeflow.org/v1/notebooks Notebooks LIST
POST /apis/kubeflow.org/v1/notebooks Notebooks CREATE
DELETE /apis/kubeflow.org/v1/notebooks/{name} Notebooks DELETE
GET /apis/kubeflow.org/v1/experiments/{name} Experiments GET
Can USER do ACTION on RESOURCE in NAMESPACE?
46. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Handling Credentials
● Credentials are kept in Secrets
● Injected into Pods at runtime with PodDefaults
● Applications expect to find secrets in files or environment variables
47. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Auth Guidelines for Kubeflow
● Guidelines for secure applications in Kubeflow
https://github.com/kubeflow/community/blob/3357efef4947297026111df17e468d9204fa2061/guidelines/auth.md
48. Simplify. Accelerate. Collaborate. arrik.to/odsc20
CI/CD for ML
How can data scientists continually improve
and validate models?
● Develop models and pipelines in Jupyter
● Convert notebook to pipeline using Kale
● Run pipeline using Kubeflow Pipelines
● Explore and debug pipeline using Rok
Develop
(Jupyter)
Explore Pipeline
(Rok)
Create Pipeline
(Kale)
Run Pipeline
(KF Pipelines)
N2P CUJ
48
49. Simplify. Accelerate. Collaborate. arrik.to/odsc20
This workshop will focus on two essential
aspects:
• Low barrier to entry: deploy a Jupyter
Notebook to Kubeflow Pipelines in the
Cloud using a fully GUI-based approach
• Reproducibility: automatic data
versioning to enable reproducibility and
better collaboration between data
scientists
Data Science with Kubeflow
Building
a
Model
Logging
Data
Ingestion
Data
Analysis
Data
Transform
-ation
Data
Validation
Data
Splitting
Trainer
Model
Validation
Training
At Scale
Roll-out Serving Monitoring
Kubeflow Pipelines exists because Data Science and ML are inherently pipeline processes
49
50. Simplify. Accelerate. Collaborate. arrik.to/odsc20
This workshop will focus on two essential
aspects:
• Low barrier to entry: deploy a Jupyter
Notebook to Kubeflow Pipelines in the
Cloud using a fully GUI-based approach
• Reproducibility: automatic data
versioning to enable reproducibility and
better collaboration between data
scientists
Data Science with Kubeflow
Building
a
Model
Logging
Data
Ingestion
Data
Analysis
Data
Transform
-ation
Data
Validation
Data
Splitting
Trainer
Model
Validation
Training
At Scale
Roll-out Serving Monitoring
Kubeflow Pipelines exists because Data Science and ML are inherently pipeline processes
50
51. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Benefits of running a Notebook as a Pipeline
● The steps of the workflow are clearly defined
● Parallelization & isolation
○ Hyperparameter tuning
● Data versioning
● Different infrastructure requirements
○ Different hardware (GPU/CPU)
51
52. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Before
Amend your ML code?
Write your ML code
Create Docker images
Write DSL KFP code
Compile DSL KFP
Upload pipeline to KFP
Run the Pipeline
Workflow
52
53. Simplify. Accelerate. Collaborate. arrik.to/odsc20
After
Amend your ML code?
Write your ML code
Tag your Notebook cells
Run the Pipeline at the click of a button
Just edit your Notebook!
Before
Amend your ML code?
Write your ML code
Create Docker images
Write DSL KFP code
Compile DSL KFP
Upload pipeline to KFP
Run the Pipeline
Workflow
53
54. Simplify. Accelerate. Collaborate. arrik.to/odsc20
After
Amend your ML code?
Write your ML code
Tag your Notebook cells
Run the Pipeline at the click of a button
Just edit your Notebook!
Before
Amend your ML code?
Write your ML code
Create Docker images
Write DSL KFP code
Compile DSL KFP
Upload pipeline to KFP
Run the Pipeline
Workflow
A Data Scientist can now
reduce the time taken to write
ML code and run a pipeline by
70%.
That means you can now run
3x as many experiments as
you did before.
What that really means is that
you can deliver work faster to
the business and drive more
revenue
54
55. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Hyperparameter optimization
The two ways of life
● Change the parameters manually
● Use Katib
55
56. Simplify. Accelerate. Collaborate. arrik.to/odsc20
What is Katib
Katib is a Kubernetes-based system for Hyperparameter Tuning and
Neural Architecture Search. It supports a number of ML frameworks,
including TensorFlow, Apache MXNet, PyTorch, XGBoost, and others.
56
57. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Hyperparameter optimization
Combining the N2P CUJ with Katib
● Configure parameters, search algorithm, and objectives
using a GUI
● Start HP tuning with the click of a button
● Reproducibility of every pipeline and every step
● Run Katib Trials as Pipelines
● Complete visibility of every different Katib Trial
● Caching for faster computation
57
59. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Agenda
Convert notebook to a
Kubeflow pipeline
Explore Kubeflow
components
Explore the ML code of the dog
breed identification example
Explore the accuracy of
the various models
Optimize a model with
hyperparameter tuning
Explore the results
of HP tuning
21 3
54 6
Go to arrik.to/demowfhp to find the
Codelab with the step-by-step
instructions for this tutorial
59
60. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Agenda
Convert notebook to a
Kubeflow pipeline
Explore Kubeflow
components
Explore the ML code of the dog
breed identification example
Explore the accuracy of
the various models
Optimize a model with
hyperparameter tuning
Explore the results
of HP tuning
21 3
54 6
60
61. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Agenda
Explore Kubeflow
components
Explore the ML code of the dog
breed identification example
Explore the accuracy of
the various models
Optimize a model with
hyperparameter tuning
Explore the results
of HP tuning
21 3
54 6
Convert notebook to a
Kubeflow pipeline
61
62. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Agenda
Convert notebook to a
Kubeflow pipeline
Explore Kubeflow
components
Explore the ML code of the dog
breed identification example
Explore the accuracy of
the various models
Optimize a model with
hyperparameter tuning
Explore the results
of HP tuning
21 3
54 6
62
63. Simplify. Accelerate. Collaborate. arrik.to/odsc20
KALE – Kubeflow Automated Pipelines Engine
● Python package + JupyterLab extension
● Convert a Jupyter Notebook to a KFP workflow
● No need for Kubeflow SDK
Annotated
Jupyter Notebook
Kale
Conversion Engine
63
67. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Arrikto Rok
Data Versioning, Packaging, and Sharing
Across teams and cloud boundaries for complete Reproducibility, Provenance, and Portability
ProductionExperimentation Training
Any Storage Any Storage Any Storage
Data-aware
PVCs
Data-aware
PVCs
Data-aware
PVCs
Arrikto Arrikto Arrikto
CSI CSI CSI
67
68. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Data Lake
Step 1 Step 2 Step 3
1. Download data from
Lake
2. Store it locally
3. Do initial analysis
4. Upload data to Lake
5. Download data from
Lake
6. Store it locally
7. Transform data
8. Upload to Lake
9. Download data from
Lake
10. Store it locally
11. Train model
12. Upload
Model Building without Data Management
71
69. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Step 1 Step 2 Step 3
1. Clone disk from
snapshot
2. Do initial analysis
3. Snapshot
4. Clone disk of Step 1
5. Transform data
7. Clone disk of Step 2
8. Train model
Rok
6. Snapshot 9. Snapshot
Object Store
Model Building with Local Data Management (Rok)
72
70. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Step 1 Step 2 Step 3
Arrikto
Object Store
Step 1 Step 2 Step 3
Arrikto
Object Store
Step 4 Step 5 Step 6
Arrikto
Object Store
Location 2
Pipeline 2: Start after Step 3 of Pipeline 1
Pipeline 3: Reproduce Pipeline 1
Location 1
Pipeline 1
Sync State & Data
73
71. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Validation Preprocessing Training
Data
Cloned
Data
Evaluation DeploymentTraining
Fail
Validated
Data
Preprocessed
Data
Trained
Model
Evaluated
Model
Deployed
Model
Arrikto Rok
74
72. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Agenda
Convert notebook to a
Kubeflow pipeline
Explore Kubeflow
components
Explore the ML code of the dog
breed identification example
Explore the accuracy of
the various models
Optimize a model with
hyperparameter tuning
Explore the results
of HP tuning
21 3
54 6
75
73. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Agenda
Convert notebook to a
Kubeflow pipeline
Explore Kubeflow
components
Explore the ML code of the dog
breed identification example
Explore the accuracy of
the various models
Optimize a model with
hyperparameter tuning
Explore the results
of HP tuning
21 3
54 6
76
74. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Agenda
Convert notebook to a
Kubeflow pipeline
Explore Kubeflow
components
Explore the ML code of the dog
breed identification example
Explore the accuracy of
the various models
Optimize a model with
hyperparameter tuning
Explore the results
of HP tuning
21 3
54 6
77
75. Simplify. Accelerate. Collaborate. arrik.to/odsc20
What have we achieved in this tutorial?
● Streamline your ML workflows using intuitive UIs
● Exploit the caching feature to give a boost to your pipeline runs
● Run a pipeline-based hyperparameter tuning workflow starting from your
Jupyter Notebook
● Use Kale as a workflow tool to orchestrate Katib and Kubeflow Pipelines
experiments
● Simplify the deployment and management of Kubeflow using GitOps
● Accelerate the time to production
● Collaborate faster and more easily in a secure and isolated manner
Summary
78
76. Simplify. Accelerate. Collaborate. arrik.to/odsc20 79
Just a small sample of
community contributions
● Jupyter manager UI
● Pipelines volume support
● MiniKF
● Auth with Istio + Dex
● On-premise installation
● Linux Kernel
77. Simplify. Accelerate. Collaborate. arrik.to/odsc20 80
Community
Kubeflow is open
● Open community
● Open design
● Open source
● Open to ideas
Get involved
● github.com/kubeflow
● kubeflow.slack.com
● @kubeflow
● kubeflow-discuss@googlegroups.com
● Community call on Tuesdays
78. Simplify. Accelerate. Collaborate. arrik.to/odsc20
Thank You!
More Info
arrik.to/odsc20
Email Address:
stefano@arrikto.com
yanniszark@arrikto.com
company/arrikto
Arrikto Arrikto
Arrikto