Compare commits
2 Commits
3810d3214b
...
909c0789ad
Author | SHA1 | Date | |
---|---|---|---|
909c0789ad | |||
45d0b92d11 |
11
content/day-2/01_keynote.md
Normal file
11
content/day-2/01_keynote.md
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
---
|
||||||
|
title: Keynote
|
||||||
|
weight: 1
|
||||||
|
tags:
|
||||||
|
- keynote
|
||||||
|
- rejekts
|
||||||
|
---
|
||||||
|
|
||||||
|
<!-- {{% button href="https://youtu.be/rkteV6Mzjfs" style="warning" icon="video" %}}Watch talk on YouTube{{% /button %}} -->
|
||||||
|
|
||||||
|
Short opening keynote thanking volunteers and attendees.
|
47
content/day-2/02_clusterapi.md
Normal file
47
content/day-2/02_clusterapi.md
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
---
|
||||||
|
title: The Cluster API Migration Retrospective: Live migrating hundreds of clusters to Cluster API
|
||||||
|
weight: <2
|
||||||
|
tags:
|
||||||
|
- rejekts
|
||||||
|
- cluster
|
||||||
|
- operatr
|
||||||
|
---
|
||||||
|
|
||||||
|
<!-- {{% button href="https://youtu.be/rkteV6Mzjfs" style="warning" icon="video" %}}Watch talk on YouTube{{% /button %}} -->
|
||||||
|
|
||||||
|
The talk started with a base introduction of ClusterAPI and the operations at gigantswarm.
|
||||||
|
|
||||||
|
TODO: Diagram
|
||||||
|
|
||||||
|
Product naming for the next noted:
|
||||||
|
- `vintage`: Legacy system
|
||||||
|
- `CAPI`: The new shit
|
||||||
|
|
||||||
|
## Goal
|
||||||
|
|
||||||
|
Deployemnt targets: AWS, Azure, vSphere
|
||||||
|
Live migrations needed für AWS (other providers were not that much in use -> migrate manually)
|
||||||
|
|
||||||
|
## Migration
|
||||||
|
|
||||||
|
- They set up a new management cluster for CAPI to
|
||||||
|
- Tooling Options:
|
||||||
|
- CLI: Enough for a couple of hundred clusters
|
||||||
|
- Operator: The way to go for thousands of clusters
|
||||||
|
- Blue/Green:
|
||||||
|
|
||||||
|
TODO: Sequence diagram
|
||||||
|
|
||||||
|
## Whow it went
|
||||||
|
|
||||||
|
- New bugs discovered with every couple of customers
|
||||||
|
- Some cloud regions just love to fuck things up (looking at you aws china)
|
||||||
|
- Using upstream sometimes prevents you from implementing random hacks but this is good
|
||||||
|
- The Mixed vintage+CAPI team split into a new CAPI-team and a new vintage-team -> Setting priorities was way too hard in the mixed team
|
||||||
|
- Implementing new providers (GCP, Openstack, etc) is way simpler nowadays
|
||||||
|
- There is a timepline from custom tooling over product to commodity
|
||||||
|
|
||||||
|
## Q&A
|
||||||
|
|
||||||
|
- Were there any fears from the customers regarding the migration?
|
||||||
|
- There are some but long term relations to customers help
|
15
content/day-2/03_opensourcekeynote.md
Normal file
15
content/day-2/03_opensourcekeynote.md
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
---
|
||||||
|
title: Title
|
||||||
|
weight: 3
|
||||||
|
tags:
|
||||||
|
- rejekts
|
||||||
|
---
|
||||||
|
|
||||||
|
<!-- {{% button href="https://youtu.be/rkteV6Mzjfs" style="warning" icon="video" %}}Watch talk on YouTube{{% /button %}} -->
|
||||||
|
|
||||||
|
A short keynote from micrososft about their contributions to open source and used tools:
|
||||||
|
- infra (kubernates, istio, hyperlight)
|
||||||
|
- dev tools (helm, headlamp, radius)
|
||||||
|
- sec (OPA, Ratify, Copa)
|
||||||
|
|
||||||
|
They also highlighted their community involvement and the value of open source for every company.
|
86
content/day-2/04_multicluster-crd.md
Normal file
86
content/day-2/04_multicluster-crd.md
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
---
|
||||||
|
title: CRD Data Architecture for Multi-Cluster Kubernetes
|
||||||
|
weight: 4
|
||||||
|
tags:
|
||||||
|
- rejekts
|
||||||
|
---
|
||||||
|
|
||||||
|
<!-- {{% button href="https://youtu.be/rkteV6Mzjfs" style="warning" icon="video" %}}Watch talk on YouTube{{% /button %}} -->
|
||||||
|
|
||||||
|
## Background
|
||||||
|
|
||||||
|
CRDs:
|
||||||
|
- Platform: Apacke Spark, Argo, Jupyter Notebooks, ...
|
||||||
|
- Tier: Parts of a platform that include access policies, ressource usages and network controls -> e.g. beta or prod
|
||||||
|
- ClusterSet: Shards within a tier (aka availability zone)
|
||||||
|
- Cluster: Part of a Clusterset that can be destroyed/recreated
|
||||||
|
- ComputeNamespace = Namespace + ServiceAccount + LimitRange + ResourceQuota + RBAC
|
||||||
|
- Part of a clusterset, all clusters which are part of the set have the same ComputeNamespace
|
||||||
|
|
||||||
|
## Goals & Challenges
|
||||||
|
|
||||||
|
Scale: 9000 Software Engineers
|
||||||
|
|
||||||
|
Challenges:
|
||||||
|
- Scaling
|
||||||
|
- Decomposition
|
||||||
|
|
||||||
|
Goal: Manage software platforms on kubernetes via kubernetes utilizing opterators
|
||||||
|
|
||||||
|
## KEPs by the SIG-MultiCluster
|
||||||
|
|
||||||
|
### Cluster Profiles
|
||||||
|
|
||||||
|
- Name
|
||||||
|
- Manager
|
||||||
|
- Status
|
||||||
|
- K8S Version
|
||||||
|
- Conditions (Helath)
|
||||||
|
- Cluster Access, options
|
||||||
|
- Work API (another proposal)
|
||||||
|
- Push via OIDC
|
||||||
|
- Push with Secret
|
||||||
|
- Zertificate Auth
|
||||||
|
|
||||||
|
### ClusterSet
|
||||||
|
|
||||||
|
- Within a ClusterSet namespace sameness applies -> All namespaces are the same in all clusters of a set
|
||||||
|
- Mutation = Delete and recreate cluster
|
||||||
|
|
||||||
|
### Clusternames
|
||||||
|
|
||||||
|
- Unique Name
|
||||||
|
- Valid RFC 1123 DNS label
|
||||||
|
|
||||||
|
### Cluster Inventory
|
||||||
|
|
||||||
|
- All ClusterProfiles should reside in a dedicated hub clusters
|
||||||
|
|
||||||
|
TODO: Diagram
|
||||||
|
|
||||||
|
## HA
|
||||||
|
|
||||||
|
- They use Kine (by k3s) to shim etcd to postgres
|
||||||
|
|
||||||
|
## Referential Integrity
|
||||||
|
|
||||||
|
- The CRDs all refer to each other (e.g. Tier --> Platform)
|
||||||
|
- Solution: CEL Expressions combined with webhooks and operators for business logic validation
|
||||||
|
|
||||||
|
## Resource Creation
|
||||||
|
|
||||||
|
- They have a simple api that is just a kubeapi wrapper
|
||||||
|
|
||||||
|
TODO: Diagram
|
||||||
|
|
||||||
|
## Q&A
|
||||||
|
|
||||||
|
- Why does everyone build their own multicluster stuff instead of utilizing open soruce
|
||||||
|
- Threir solution predates SIG-Multicluster
|
||||||
|
- They are using some open source solutions like karmada
|
||||||
|
- Could you explain ClusterProvile<->ClusterInventory again: He did, see livestream
|
||||||
|
- Where does your postgres run (does it run on the same kubernetes it shims)?
|
||||||
|
- There are no cross-dependencies
|
||||||
|
- The managment-clusters are lightweight
|
||||||
|
- Are you running a real kubernetes cluster for the hub?
|
||||||
|
- Nope we just use the apiserver
|
@ -12,4 +12,5 @@ But this is the first day of Cloud Native Rejekts and the first time of me atten
|
|||||||
|
|
||||||
## Talk recommendations
|
## Talk recommendations
|
||||||
|
|
||||||
* TODO:
|
- The Cluster API Migration Retrospective: Live migrating hundreds of clusters to Cluster API
|
||||||
|
- CRD Data Architecture for Multi-Cluster Kubernetes
|
Loading…
x
Reference in New Issue
Block a user