--- title: Kubernetes Getting Started tags: Kubernetes, Talk --- # Kubernetes Getting Started [TOC] --- ## Suggestions **Trail Map**: - :arrow_down: Learn how to use Kubernetes - Tutorials: https://kubernetes.io/docs/tutorials/ - Interactive Learning(Online): https://www.katacoda.com/courses/kubernetes - :arrow_down: Ecology、Cloud Native - Landscape: https://landscape.cncf.io/ - :arrow_down: Architecture、Components、Principle - Kubernetes The Hard Way: https://github.com/kelseyhightower/kubernetes-the-hard-way - Client-go, Operator, Source code - :arrow_down: Best Practice, Deep into Kubernetes, Deep into Cloud-native **Detail Guide**: - **https://kubernetes.io/docs/home/** - https://github.com/feiskyer/kubernetes-handbook - https://github.com/rootsongjc/kubernetes-handbook **Environment & Deploy**: - Learning Environment: https://github.com/kubernetes-sigs/kind - Production Environment: https://kubernetes.io/docs/setup/production-environment/ --- ## Kubernetes Components & Architecture :::info **Declarative API**、**Asynchronous**、**Control Loop** ::: ### Components ![](https://i.imgur.com/B1myMkX.png) ![](https://i.imgur.com/b9m2p3I.png) ![](https://i.imgur.com/u0vKWml.png) ![](https://i.imgur.com/J9jhtUh.png) ### Extend Kubernetes - Resources: - CRI & OCI - CNI - CSI - Capabilities: - Operator (CRD+Controller) - Scheduling framework - Dynamic Admission Control (MutatingAdmissionWebhook & ValidatingAdmissionWebhook ) **Service**: - ~~userspace~~ - ~~iptables~~ - ipvs ![User & Kernel Space](https://i.imgur.com/eGs8klQ.png) **CNI**: - Flannel VXLAN ![Flannel-VXLAN](https://i.imgur.com/URChiOD.png) - ~~Flannel UDP~~ ![Flannel-UDP](https://i.imgur.com/MZBM2n8.png) - **Cilium**: https://github.com/cilium/cilium - **Calico**: https://github.com/projectcalico/calico **Client-Go**: ![client-go](https://i.imgur.com/eaDOCev.png) **Authentication**: ![client-authentication](https://i.imgur.com/2CQlgd6.png) ![server-authentication](https://i.imgur.com/jGGBqTH.png) ![OIDC](https://i.imgur.com/mPnLuCH.png) **Lifecycle**: ![](https://i.imgur.com/DCHiXKS.png) --- ## Trends in cloud-native > *source:* https://www.alibabacloud.com/blog/five-trends-in-cloud-native_596444 - Kubernetes Will Follow the Android Model - Operator-Based Applications and Capabilities - Further Sinking of Application Middleware Capabilities to the Infrastructure - Next-Generation DevOps Models and Systems - Separation of Concerns - Widespread Adoption of Serverless - Application Layer Technology Based on IaD Will Go Mainstream - End-User Experience Layers Built on Top of IaD - DevSecOps - Serverless and Cloud-Native Deployment of Underlying Infrastructure --- ## Conclusion :sheep: > - Kubernetes is very easy! Kubernetes is hard! :muscle: > - Deliberate Practice :muscle: ---