1 前置知识
- Linnux 操作系统
- Docker
2 概念
一个开源的,用于管理云平台中对各主机上的容器化应用。K8s的目标是让部署容器化的应用简单并且高效,k8s提供了应用部署,规划,更新,维护的一种机制。
K8s是Google在2014年开源的一个容器编排引擎,支持自动化部署、大规模可伸缩、应用容器化管理。再生产环境中部署一个应用程序时,通常要部署应用的多个实例以便对应用请求进行负载均衡。
特性
- 自动装箱
- 自我修复(自愈能力)
- 水平拓展
- 服务发现
- 滚动更新
- 版本回退
- 密钥和配置管理
- 存储编排
- 批处理
3 集群架构组件
Master Node:主控节点
- API server:集群统一入口,以一种restful方式,交给etcd存储
- scheduler:节点调度,选择node节点应用部署
- controller-manager:处理集群中常规后台任务,一个资源对应一个控制器
- etcd:存储系统,用于保存集群相关的数据
Workder Node:工作节点
- kubelet:master派到node节点代表,管理本机容器
- kube-proxy:提供网络代理,负载均衡操作
4 核心概念
Pod
- 最小部署单元
- 一组容器的集合
- 共享网络
- 生命周期是短暂的