
k8s
文章平均质量分 62
LeonNo11
Java,python,golang,AI
企业数字化转型,研发经理,团队管理,方案设计
持续学习输出。
展开
-
kind安装使用参考
https://juejin.cn/post/7323142671761604649https://www.lixueduan.com/posts/kubernetes/15-kind-kubernetes-in-docker/原创 2025-02-25 19:19:35 · 356 阅读 · 0 评论 -
k8s,service如何找到容器
不难想到,当你的宿主机上有大量Pod的时候,成百上千条iptables规则不断地被刷新,会大量占用该宿主机的CPU资源,甚至会让宿主机“卡”在这个过程中。所以说,一直以来,基于iptables的Service实现,都是制约Kubernetes项目承载更多量级的Pod的主要障碍。需要注意的是,只有处于Running状态,且readinessProbe检查通过的Pod,才会出现在Service的Endpoints列表里。Service是由kube-proxy组件,加上iptables来共同实现的。原创 2024-12-26 22:27:56 · 491 阅读 · 0 评论 -
计算机网络,二层和三层协议的理解
二层网络(Data Link Layer)和三层网络(Network Layer)是OSI(Open Systems Interconnection)模型中的两个层次,它们在网络通信中扮演着不同的角色。原创 2024-12-25 23:12:07 · 2896 阅读 · 0 评论 -
k8s网络,跨主机容器通信机制(没看懂)
我们在进行系统级编程的时候,有一个非常重要的优化原则,就是要减少用户态到内核态的切换次数,并且把核心的处理逻辑都放在内核态进行。就是发现目的的IP包在路由规则上(ip route)中定位到了一个Tunnel类型的设备。TUN设备的功能非常简单,即:在操作系统内核和用户应用程序之间传递IP包。宿主机与子网的关系,保存在etcd中。原创 2024-12-25 22:57:14 · 126 阅读 · 0 评论 -
docker ,联合文件系统,镜像的理解
所以,最上面这个可读写层的作用,就是专门用来存放你修改rootfs后产生的增量,无论是增、删、改,都发生在这里。比如,你要删除只读层里一个名叫foo的文件,那么这个删除操作实际上是在可读写层创建了一个名叫.wh.foo的文件。可以看到,它们的挂载方式都是只读的(ro+wh,即readonly+whiteout,至于什么是whiteout,我下面马上会讲到)。由于rootfs里打包的不只是应用,而是整个操作系统的文件和目录,也就意味着,应用以及它运行所需要的所有依赖,都被封装在了一起。原创 2024-12-18 22:29:21 · 483 阅读 · 0 评论 -
k8s,理解容器中namespace和cgroups的原理
众所周知,Linux下的/proc目录存储的是记录当前内核运行状态的一系列特殊文件,用户可以通过访问这些文件,查看系统以及当前正在运行的进程的信息,比如CPU使用情况、内存占用率等,这些文件也是top指令查看系统信息的主要数据来源。一旦“程序”被执行起来,它就从磁盘上的二进制文件,变成了计算机内存中的数据、寄存器里的值、堆栈中的指令、被打开的文件,以及各种设备的状态信息的一个集合。但是,你如果在容器里执行top指令,就会发现,它显示的信息居然是宿主机的CPU和内存数据,而不是当前容器的数据。原创 2024-12-17 21:23:26 · 499 阅读 · 0 评论 -
容器,网络基础
网桥是计算机网络的基本构建块之一,尽管它在现代网络设备(如交换机)中被广泛取代,但它的原理依然是二层网络通信的基础。在虚拟化和容器化环境中,网桥技术仍然被广泛应用,是网络学习的重要一环。通过理论学习和实践操作(如配置虚拟网桥),可以更好地掌握网桥的原理和应用。原创 2024-12-16 21:30:20 · 1103 阅读 · 0 评论 -
k8s,诞生历史
Apache Mesos 是一个开源的分布式系统内核(Cluster Manager),用于高效管理集群资源,支持分布式应用程序和容器的运行。它于 2010 年首次由 UC Berkeley AMPLab 推出,后来捐献给了 Apache 基金会,并成为其顶级项目。Mesos 的目标是为数据中心或计算集群提供一个抽象的资源管理和调度层,允许开发者和运维人员以更简单的方式运行各种应用程序框架(如 Apache Hadoop、Apache Spark、Kubernetes 等)以及容器化工作负载。原创 2024-12-16 17:38:32 · 736 阅读 · 0 评论 -
k8s术语,实体和实例
是两种不同的概念,用于描述资源和资源的实际状态。在 Kubernetes (K8s) 中,原创 2024-12-16 17:24:57 · 567 阅读 · 0 评论 -
k8s, deployment
kubectl rollout resume指令执行之前,在kubectl rollout pause指令之后的这段时间里,我们对Deployment进行的所有修改,最后只会触发一次“滚动更新”。Deployment正处于“暂停”状态,所以我们对Deployment的所有修改,都不会触发新的“滚动更新”,也不会创建新的ReplicaSet。Deployment的控制器,实际上控制的是ReplicaSet的数目,以及每个ReplicaSet的属性。“用一种对象管理另一种对象”的“艺术”。,而不是Pod对象。原创 2024-12-10 22:54:34 · 648 阅读 · 0 评论 -
k8s,dameonset
Docker容器里应用的日志,默认会保存在宿主机的/var/lib/docker/containers/{{.容器ID}}/{{.容器ID}}-json.log文件里。原创 2024-12-05 22:32:19 · 591 阅读 · 0 评论 -
K8S,StatefulSet
Deployment实际上并不足以覆盖所有的应用编排问题?分布式应用,它的多个实例之间,往往有依赖关系,比如:主从关系、主备关系。还有就是数据存储类应用,它的多个实例,往往都会在本地磁盘上保存一份数据。而这些实例一旦被杀掉,即便重建出来,实例与数据之间的对应关系也已经丢失,从而导致应用失败。所以,这种实例之间有不对等关系,以及实例对外部数据有依赖关系的应用,就被称为Kubernetes项目为Pod分配的唯一的“可解析身份”(Resolvable Identity)原创 2024-12-05 21:09:38 · 486 阅读 · 0 评论 -
服务路由和服务发现区别是什么?
通过掌握这些核心概念和区别,你可以快速理解服务路由和服务发现的基本原理和应用场景。原创 2024-12-05 20:42:01 · 627 阅读 · 0 评论 -
k8s,helm,模板语法
Helm 使用一种名为 charts 的包格式,一个 chart 是描述一组相关的 Kubernetes 资源的文件集合。单个 chart 既可以用于部署简单的应用,也可以是复杂的应用。,渲染其余的 chart 模板,并将其安装到 Kubernetes 中。当 Helm 安装一个新的 chart 的时候,它将。values.yaml而不是Values.yaml。Charts 是创建在。原创 2024-12-03 22:20:59 · 430 阅读 · 0 评论 -
k8s,进一步理解Pod
比如,配置这个“机器”的网卡(即:Pod的网络定义),配置这个“机器”的磁盘(即:Pod的存储定义),配置这个“机器”的防火墙(即:Pod的安全定义)。更不用说,这台“机器”运行在哪个服务器之上(即:Pod的调度)如果你还是不太理解它们俩的作用的话,可以直接认为tty就是Linux给用户提供的一个常驻小程序,用于接收用户的标准输入,返回操作系统的标准输出。Volume,叫作Projected Volume,你可以把它翻译为“投射数据卷”,这些特殊Volume的作用,是为容器提供预先定义好的数据。原创 2024-12-03 21:13:54 · 626 阅读 · 0 评论 -
k8s api对象,CRD
使用k8s的规范来定义,需要编写代码。Kubernetes提供的代码生成工具,为上面定义的Network资源类型自动生成clientset、informer和lister。其中,clientset就是操作Network对象所需要使用的客户端,而informer和lister这两个包的主要功能代码生成工具名叫k8s.io/code-generator。原创 2024-12-02 22:24:45 · 437 阅读 · 0 评论 -
k8s,声明式API对象理解
掌握这些核心概念和操作,将为你在 Kubernetes 中管理复杂的应用和服务打下坚实的基础。原创 2024-12-02 15:16:26 · 901 阅读 · 0 评论 -
k8s,为什么需要pod
原创 2024-12-01 23:20:47 · 130 阅读 · 0 评论