我已经清楚地了解了 docker 选项的用法--net=container:NAME_or_ID
,我还阅读了kubernetes的源代码,了解如何配置容器使用网络InfraContainer
,所以我认为唯一在容器中工作的过程gcr.io/google_containers/pause:0.8.0
所做的只是“暂停”,它永远不会做任何复杂的工作,如“接收”、“发送”或“路由”。
但我不确定,因为我找不到Dockerfile
of gcr.io/google_containers/pause:0.8.0
,所以我需要清楚的人告诉我真相,谢谢!
在 Kubernetes 中,每个 pod 都有一个 IP,并且在 pod 内存在一个所谓的基础设施容器,它是 Kubelet 实例化的第一个容器,它获取 pod 的 IP 并设置网络命名空间。然后,Pod 中的所有其他容器都会加入基础容器的网络和 IPC 命名空间。基础设施容器启用了网桥模式,并且 Pod 中的所有其他容器通过容器模式共享其命名空间。在基础设施容器中运行的初始进程实际上不执行任何操作,因为其唯一目的是充当命名空间的主目录。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)