k8s培训讲义
1.kubernetes基础
kubernetes简介
kubernetes架构
kubernetes集群组成
基本概念与术语
2.pod基础与进阶
pod定义与操作
pod生命周期
pod初始化
容器生命周期hook
3.kubernetes常用对象操作
Label与Selector
Replication Controller
Relica Sets(RS)
Deployment
Service
ConfigMap
deployment
应用弹性收缩
对接了heapster,和HPA联动后
$kubectl autoscale deployment nginx-deployment --min=10 --max=15 --cpu-percent=80
1.heapster是什么?
Kubernetes监控Heapster介绍
Heapster是容器集群监控和性能分析工具,天然的支持Kubernetes和CoreOS。
Kubernetes有个出名的监控agent—cAdvisor。在每个kubernetes Node上都会运行cAdvisor,它会收集本机以及容器的监控数据(cpu,memory,filesystem,network,uptime)。
在较新的版本中,K8S已经将cAdvisor功能集成到kubelet组件中。每个Node节点可以直接进行web访问。
- cAdvisor web界面访问: http://< Node-IP >:4194
- cAdvisor也提供Restful API: https://github.com/google/cadvisor/blob/master/docs/api.md
Heapster是一个收集者,将每个Node上的cAdvisor的数据进行汇总,然后导到第三方工具(如InfluxDB)。
框架图:
Heapster首先从K8S Master获取集群中所有Node的信息,然后通过这些Node上的kubelet获取有用数据,而kubelet本身的数据则是从cAdvisor得到。所有获取到的数据都被推到Heapster配置的后端存储中,并还支持数据的可视化。现在后端存储 + 可视化的方法,如InfluxDB + grafana。
2.HPA是什么?
DaemonSet
守护进程是什么?
守护进程(daemon)是一类在后台运行的特殊进程,用于执行特定的系统任务。
- 很多守护进程在系统引导的时候启动,并且一直运行直到系统关闭。
- 另一些只在需要的时候才启动,完成任务后就自动结束。
4.kubernets服务质量
QoS分类
资源需求与限制
资源回收策略
使用建议
4.1 QoS分类
QoS(Quality of Service) 即服务质量,QoS 是一种控制机制,它提供了针对不同用户或者不同数据流采用相应不同的优先级,或者是根据应用程序的要求,保证数据流的性能达到一定的水准。kubernetes 中有三种 Qos,分别为:
1、Guaranteed:pod 的 requests 与 limits 设定的值相等;
2、Burstable:pod requests 小于 limits 的值且不为 0;
3、BestEffort:pod 的 requests 与 limits 均为 0;
拓展:cgroup
kubernetes kubelet组件中cgroup的层层"戒备"
5.kubernetes调度
普通调度策略
高级调度策略
自定义调度策略
调度失败定位分析
6.kubernetes包管理工具Helm
Helm模板
Helm Hook
Helm依赖处理
实践中注意事项
7.kubernetes网络
kubernetes网络模型
kubernetes网络实现
CNI、CNM
常用开源网络组件
8.kubernetes运维
kubernetes监控
常见问题定位
kubernetes常规运维
9.kubernetes安全
认证与鉴权
安全上下文
Network Policy
10.kubernetes存储,此处是重点
普通存储
持久化存储
11.三大核心组件原理
API Server原理
Controller Manager原理
Scheduler原理
创建Pod时序图
kubernetes调度
拓展:
kubernetes专栏