# Kubernetes 技能图谱
## Container basics (容器技术基础)
* Kernel
* Cgroups
* Userspace runtime
* Image
* Registry
## Kubernetes architecture (Kubernetes 架构)
### Worker
#### Kubelet
- Runtime (容器运行时)
* CRI (Container Runtime Interface)
* Runtime shims (容器运行时插件)
+ Cri-containerd (containerd)
+ Dockershim (Docker)
+ Cri-o (runC)
+ Rktlet (rkt)
+ Frakti (runV)
- Networking
* CNI (Container Network Interface)
* Network plugins (网络插件)
+ Flannel
+ Calico
+ OVS
+ SR-IOV
+ macvlan/ipvlan
+ Opencontrail
+ Weave
- Storage
* CSI (Container Storage Interface)
* Volume plugins (存储插件)
+ NFS
+ Cinder
+ GlusterFS
+ Ceph
+ Local path
- Kube-proxy
* Iptables 转发链与随机模式
* ipvs 负载均衡
### Master
- API server
* Watch & Informer (Watch 和通知框架)
* Admission Plugin(权限控制插件)
* RBAC plugin (基于角色的访问控制插件)
- Controller manager
* Reconcile (控制循环与状态协调机制)
- Scheduler
* Custom scheduler (自定义调度器)
* Custom algrhrim (自定义调度算法)
- Etcd
* Etcd operator
## Kubernetes workloads (Kubernetes 作业管理)
- ReplicaSet (容器副本)
- Deployment (常规作业发布)
* Rolling update (自动的滚动更新)
* Pause/resume (可控的更新流程)
* Canary deploy (金丝雀发布)
* Rollback (版本回滚)
- DaemonSet (Daemon 作业)
- StatefulSet (有状态任务)
- Job (一次性任务)
- CronJob (定时任务)
## Kubernetes applications management (Kubernetes 应用配置)
- Service (服务发现)
* Publish service(对外暴露 Service)
* Nginx/HAproxy service(自定义 Service)
* External Load Balancer
- ConfigMap (应用配置管理)
- Ingress (7层服务发现)
- Secret (加密信息管理)
- Headless Service(DNS 服务发现)
- External Load Balancer
## Kubernetes operations (Kubernetes 安装与运维)
- Installation
* Kubeadm
* Minikube (本地部署工具)
* Kops (云端部署工具)
- Maintenances
* GC (垃圾清理)
+ Container GC
+ Image GC
- Upgrades
- Troubleshooting
* etcd admin
+ Key-value CRUD(键值对操作)
+ Metrics monitoring (Metrics 监控)
+ Cluster design(集群规划)
+ Disaster Recovery (灾难恢复,backup 和 restore)
* Iptables rules
## Kubernetes extensions/add-ons (Kubernetes 扩展和插件)
- Custom Resources Definition (自定义 Kubernetes API 对象)
* Customized controller (自定义 API 对象控制器)
* Workqueue (自定义 API 对象任务队列)
- Kube-dns
* SkyDNS
- Fluentd (日志收集)
* Fluent-bit
- Heapster (容器集群监控)
- Istio(微服务路由和负载均衡)
- Federation (集群联邦)
- Helm (kubernetes application package)
## Kubernetes CI/CD
- Spinnaker