K8s学习笔记(一)——

一、k8s是什么

一个分布式原来是主要用来管理容器 的呀(专业点叫"容器编排 "),什么是管理?其实就是增删改查等等,简单来理解,k8s就是实现容器增删改查的呗 。是开源的,在Linux系统下。就跟创建的springboot微服务多了以后,就需要一个东西来管理众多的微服务,spring cloud应运而生。同理,docker建立的容器多了以后, k8s就应运而生了。或者这样类比:线程多了就需要线程池来管理了呗------没有什么是抽象一层不能解决的!

Linux里一切皆文件,java里一切皆对象,k8s里一切皆资源。

二、 K8s用来做什么

  • 服务注册与发现
  • 弹性扩缩容:根据流量自己掌控pod的个数。
  • 负载均衡:和nginx一样,把请求按照一定的规则分配给几台机器
  • 回滚:一个应用的V2.3.1版本上线后突然出问题了,回滚到V2.3.0版本
  • 存储编排:给容器在本机分配存储空间
  • 自我修复:检测到挂了的,给你重开

三、k8s架构

目前是不是脑子里还没有关于k8s的图(就像下图里CPU的组成结构图一样)。有什么样的工作原理就对应着什么样的架构,所以工作原理和架构其实是一回事,那么来看一下k8s的工作原理/架构吧。

先要理解k8s的一些专有名词------就像你要融入某个圈子,就要了解一些行业黑话一样。

主要是这几个专有名词:集群、命名空间namespace、节点Node、Pod、容器、工作负载。

首先这里面最大的是集群。然后集群、node、pod、容器四者之间是有包含关系的,可以画图去理解,比较直观。

但是Node跟命名空间的关系有点类似于物理内存和逻辑内存的关系。集群是物理层面的,命名空间是逻辑层面的。可以这样类比,一个集群里我们有多台电脑,不同的用户登录上去的权限是不一样的。每台电脑就是Node,不同的用户就是不同的命名空间。比如有开发namespace、预发版namespace、生产环境namespace,可以看出命名空间主要起到一个资源隔离的作用。

相关推荐
创业之路&下一个五年7 小时前
高系分二十:微服务系统分析与设计
学习·微服务·总结
GoldenaArcher8 小时前
Postman 学习笔记 II:测试、断言与变量管理
笔记·学习·postman
Suckerbin8 小时前
Clover: 1靶场渗透
笔记·安全·web安全·网络安全
小志开发9 小时前
SQL从入门到起飞:完整数据库操作练习
数据库·sql·学习·oracle·sqlserver·navicat
知识分享小能手9 小时前
React学习教程,从入门到精通,React Router 语法知识点及使用方法详解(28)
前端·javascript·学习·react.js·前端框架·vue·react
潲爺10 小时前
Java IDEA学习之路:第二周课程笔记归纳
java·笔记·学习
明明真系叻10 小时前
量子计算学习笔记(1)
笔记·学习·量子计算
码农阿日11 小时前
【日常学习-理解Langchain】从问题出发,我理解了LangChain为什么必须这么设计
服务器·学习·langchain
shuououo11 小时前
PyTorch 神经网络构建与训练笔记
pytorch·笔记·神经网络
库奇噜啦呼11 小时前
【iOS】AFNetworking学习
学习·ios·cocoa