20180502_talk_2
20180502_talk_2
- K8s SIG: Cluster Lifecycle
- Intro
- Cluster API
- KubeADM
- Takes away
- Recent accomplishements
- One more thing: Kops
K8s SIG: Cluster Lifecycle
Mission
Change k8s to make it easier to Create and Operate
Intro
What do we Do:
1. Control Plane Installation Management
+ Building kubeadm
+ Maintaining the doc
2.Control plane Config Management
+ Building a CP API
+ Componenent config Best practices
NEW:
-
Simplifying Infra Mgmt
+ Machine API + Cluster API -
Add Management
+ WIP -
ETCD Management
+ WIP
Cluster API
Alpha state
+ API specs have been written
API objects:
* Cluster: General cluster level config (Ex: Network)
* Machine: Host (VM or Physical), not yet a Node
* MachineSet / MachineDeployment
Declarative way to create, configure and manage a cluster
-> Generic config interface for any tool (Kops, Aws, GKE, Terraform, …)
KubeADM
| Layer3 | Addons: Paas services (Monitoring, Logging, LBs / Ingress, ....)
| | + ClusterAPI on top of k8s api server to manage the cluster |
| Layer2 | Kubeadm: bootstrap a cluster (Machines are now qualified nodes) |
| Layer1 | Infra -> Machines |
Takes away
Kuebadm
* Set of tasks as Best-practice cluster bootstrap
* Focus on user experience
* Linited scope: Building block
+ Deals with LocalFS + k8s API
+ Agnostic to kubectl
+ NOT favoring any CNI
* Composable: divided into Phases
+ you can use only 1 step of kubeadm if you don’t want it to spawn a whole CP by its own
Recent accomplishements
- Kubeadm 1.10 (Sync with k8s releases)
- Advanced AUDITING
- etcd 3.2
- etcd TLS encryption
- CoreDNS beta support
- Alpha ClusterAPI
- Integrated with Kops 1.9 and Kubespray
One more thing: Kops
Opinonated way to build on AWS + GCE
* kops create cluster CLUSTERNAME --options
* kops Update cluster CLUSTERNAME --options
Kops roadmap
* Extract components for ClusterAPI and MachineAPI
* Extract addons-manager
* ETCD manager