kubecon24/content/day4/03_operator.md

59 lines
1.5 KiB
Markdown
Raw Normal View History

2024-03-22 14:23:38 +00:00
---
title: What's New in Operator Framework?
weight: 3
2024-03-25 12:45:10 +00:00
tags:
- platform
- operator
- scaling
2024-03-22 14:23:38 +00:00
---
2024-03-26 14:19:51 +00:00
By the nice operator framework guys at IBM and Red Hat.
2024-03-22 14:23:38 +00:00
I'll skip the baseline introduction of what an operator is.
## Operator DSK
> Build the operator
2024-03-26 14:19:51 +00:00
* Kubebuilder with v4 Plugins -> Supports the latest Kubernetes
* Java Operator SDK is not a part of Operator SDK, and they released 5.0.0
2024-03-22 14:23:38 +00:00
* Now with server side apply in the background
* Better status updates and finalizer handling
2024-03-26 14:19:51 +00:00
* Dependent resource handling (alongside optional dependent resources)
2024-03-22 14:23:38 +00:00
2024-03-26 14:19:51 +00:00
## Operator Lifecycle Manager
2024-03-22 14:23:38 +00:00
> Manage the operator -> A operator for installing operators
### OLM v1 APIs
* New API Set -> The old CRDs were overwhelming
* More GitOps friendly with per-tenant support
2024-03-26 14:19:51 +00:00
* Prescribes update paths (maybe upgrade)
* Support for operator bundles as k8s manifests/helm chart
2024-03-22 14:23:38 +00:00
### OLM v1 Components
* Cluster Extension (User-Facing API)
* Defines the app you want to install
2024-03-26 14:19:51 +00:00
* Resolves requirements through CatalogD/depply
* CatalogD (Catalog Server/Operator)
* Depply (Dependency/Constraint solver)
2024-03-22 14:23:38 +00:00
* Applier (Rukoak/kapp compatible)
```mermaid
flowchart TD
uapi(User facing api)-->|Can I find this operator|catalaogd
catalogd-->|Check if all dependencies are checked|depply
depply-->|Please install|kapp
```
```mermaid
flowchart LR
oa(operator author)-->ba(Bundle and att to catalog)
ba-->catalogd(Catalogd Handle unpackling)
user-->ufa(User facing api)
ufa-->|Resolve package|catalogd
ufa-->|Create app on cluster|appcr(App CR / kapps)
```