kubernetes(K8S)学习笔记 一、K8S简介
前言
因为公司使用的是k8s集群,日常工作中会接触到部署等工作。对于一些底层理论了解很匮乏,所以抽时间进行系统学习
学习来源:B站,k8s教程由浅入深-尚硅谷
一、k8s概述
1. 为什么叫k8s?
k8s全称:kubernetes,除了首字母‘k’和结尾字母‘s’外,中间共有8个字母,故简称“k8s”。
2. k8s是什么?
k8s是2014年谷歌开源的容器集群管理系统。
容器的优点:
1、带环境安装,部署更简洁方便
2、集群部署的,方便升级回滚,利于应用扩展
关于容器,较k8s更早了解到的容器是docker,docker是单机的。
二、k8s特性
1.自动装箱
让部署过程不需要过多的手动干预,自动部署应用容器
2.自我修复
如有节点1、节点2两个节点,其中一个节点挂掉,可以启动另一个节点
k8s当让其未通过监控检查时,会关闭容器知道容器正常运行时,才会对外提供服务
3.水平扩展
副本数可以随着并发请求的情况,进行增减
4.服务发现
k8s能够统一入口,实现服务发现,负载均衡
5.滚动更新
6.版本回退
热部署
7.密码配置管理
自动实现存储系统挂载
8.存储编排
支持定时任务
9.批处理
三、k8s集群架构组件
Master(主控节点)
- API server:集群统一入口,提供restful请求方式,交给etcd存储。
- Scheduler:节点调度,选择合适的node节点进行应用部署。
- Controller-manager:处理集群中常规后台任务,一个资源对应一个控制器。
- etcd:用于保存集群中的数据存储系统。
Node(工作节点)
- kubelet:master派到node节点,用于管理容器。
- kube-proxy:实现网络代理,实现负载均衡等操作。
- docker:容器化操作,运行容器,容器引擎。
四、k8s概念
Service——>Controller——>Pod
Service
Controller
- 确保预期pod副本数量
- 无状态应用部署
- 有状态应用部署
- 确保所有node运行同一pod
- 一次性任务、定时任务
Pod
- pod是k8s的最小部署单元
- pod是一组容器的集合
- 共享网络
- 生命周期是短暂的
笔记在不断学习补充中,刚开始学习,还望多多包涵,欢迎大佬们提出珍贵指导~
|