随笔分类 -  k8s

摘要:intro k8s的service类型主要分为这几种: ClusterIP。 通过一个集群内部IP暴露服务。 NodePort。 在每个Node的IP地址的静态端口侦听(Exposes the Service on each Node's IP at a static port (the NodeP 阅读全文

posted @ 2025-10-13 20:53 tsecer 阅读(18) 评论(0) 推荐(0)

摘要:intro 从内核的代码可以看到,namespace是在进程创建的时候创建,没有进程引用namespace的时候销毁。反过来说:namespace的创建要依赖进程的创建,不创建进程就没办法创建namespace。 那么这个触发创建namespace的进程从哪里来?特别是POD这种k8s引入的容器的容 阅读全文

posted @ 2025-06-21 19:49 tsecer 阅读(15) 评论(0) 推荐(0)

摘要:intro 接触过docker的人都都会听说过,docker的是建立在namespace、cgroup、unionfs三个基础功能之上的。 namespace是linux内核中支持容器化的一个重要组成部分,也就是说:创建容器的时候必定会调用系统调用(syscall)来创建新的namespace。 因 阅读全文

posted @ 2025-05-28 21:30 tsecer 阅读(31) 评论(0) 推荐(0)

摘要:intro 在k8s中,kubectl exec提供了登录特定容器的可观测方法。以前一直有一个印象:kubectl是通过RESTful API HTTP连接来实现,而kubectl的tty操作必然需要长连接。 这个功能是如此的重要以至于会让人忍不住思考:它是如何实现的? k8s官方网站的Contai 阅读全文

posted @ 2025-04-23 21:11 tsecer 阅读(49) 评论(0) 推荐(0)

摘要:intro 在之前的测试中,如果严格限制了所有SNAT的源修改为特定IP+PORT,将所有发往本机137.0.01:8080的tcp都SNAT到127.0.0.1:40000端口。 tsecer@harry: sudo iptables -t nat -A POSTROUTING -p tcp -d 阅读全文

posted @ 2025-03-08 18:09 tsecer 阅读(76) 评论(0) 推荐(0)

摘要:intro k8s网络重度依赖了linux的iptables。在iptables提供的功能中,网络地址转换(NAT—Net Address Translation)又是一个重要的功能:当POD中的container需要访问集群外的网络时,就可能需要进行源地址转换(SNAT/MASQUERADE)。 阅读全文

posted @ 2025-02-19 21:11 tsecer 阅读(78) 评论(0) 推荐(0)

摘要:intro 由于k8s中的部署是声明式的:为了满足部署的需求,pod可以动态的销毁/创建/迁移等。这种飘忽不定的生命期就导致了具体提供服务的pod的IP地址(cluster ip)随之经常变化。 为了解决这个问题,k8s使用的是和DNS类似的思路,通过内部DNS服务来解决这个问题:尽管提供服务器的p 阅读全文

posted @ 2025-01-03 20:53 tsecer 阅读(228) 评论(0) 推荐(0)

导航