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,可以看出命名空间主要起到一个资源隔离的作用。

相关推荐
Yunzenn14 小时前
强化学习1-Liu2026_GFlowRL_精读笔记
人工智能·笔记·深度学习·机器学习·transformer·集成学习·vllm
天天爱吃肉821814 小时前
# 商用车多体动力学整车仿真学习笔记(开篇总览)
人工智能·笔记·python·功能测试·学习·汽车
云烟成雨TD14 小时前
Kubernetes 系列【20】服务:EndpointSlice 端点分片
云原生·容器·kubernetes
一起努力啊~15 小时前
DataWhale组队学习笔记--llm-algo-leetcode(三)
笔记·学习·llm
云空15 小时前
《Three.js 可操控3D魔方(键盘转动+打乱+复原)》
javascript·学习·游戏·3d·three.js
kdxiaojie15 小时前
Linux 驱动研究 —— V4L2 (3)
linux·运维·笔记·学习
Amazing_Cacao16 小时前
CFCA精品可可饮品中级参数推演:突破液态表达的混沌,实现萃取微观结构的绝对物理可控
笔记
十月的皮皮16 小时前
C语言学习笔记20260717-预处理机制
c语言·笔记·学习
Zzj_tju16 小时前
Alignment Science 与可控生成:偏好学习、宪法式训练和可验证对齐
人工智能·学习·语言模型
eddietao17 小时前
MySQL+SQLServer数据库-笔记
数据库·笔记·mysql