SAI #15: What's in Kubernetes for MLOps?
What's in Kubernetes for MLOps, Placing Data roles of 2023 on Data Value Chain.
👋 This is Aurimas. I write the weekly SAI Newsletter where my goal is to present complicated Data related concepts in a simple and easy to digest way. The goal is to help You UpSkill in Data Engineering, MLOps, Machine Learning and Data Science areas.
This week in the Newsletter I cover:
What's in Kubernetes for MLOps?
Placing Data roles of 2023 on Data Value Chain.
Why you should learn Data Engineering and Machine Learning Pipelines.
What's in Kubernetes for MLOps?
What is Kubernetes and why should you learn it as MLOps/ML/Data Engineer?
This is the first post in the future series on Kubernetes, today we look into the system from a bird's eye view.
So, what is Kubernetes (K8s)?
1: It is a container orchestrator that performs the scheduling, running and healing of your containerised applications in a horizontally scalable and self-healing way.
Kubernetes architecture consists of two main logical groups:
2: Control plane - this is where K8s system processes that are responsible for scheduling workloads defined by you and keeping the system healthy live.
3: Worker nodes - this is where containers are scheduled and run.
How does Kubernetes help you?
4: You can have thousands of Nodes (usually you only need tens of them) in your K8s cluster, each of them can host multiple containers. Nodes can be added or removed from the cluster as needed. This enables unrivaled horizontal scalability.
5: Kubernetes provides an easy to use and understand declarative interface to deploy applications. Your application deployment definition can be described in yaml, submitted to the cluster and the system will take care that the desired state of the application is always up to date.
6: Users are empowered to create and own their application architecture in boundaries pre-defined by Cluster Administrators.
✅ In most cases you can deploy multiple types of ML Applications into a single cluster, you don’t need to care about which server to deploy to - K8s will take care of it.
✅ You can request different amounts of dedicated machine resources per application.
✅ If your application goes down - K8s will make sure that a desired number of replicas is always alive.
✅ You can roll out new versions of the running application using multiple strategies - K8s will safely do it for you.
✅ You can expose your ML Services for other Product Apps to use with few intuitive resource definitions.
✅ …
❗️Having said this, while it is a bliss to use, usually the operation of Kubernetes clusters is what is feared. It is a complex system.
❗️Master Plane is an overhead, you need it even if you want to deploy a single small application.
Placing Data roles of 2023 on Data Value Chain.
Keep reading with a 7-day free trial
Subscribe to