关于 k8s 的 pod 疑惑 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
linxiaoziruo
V2EX    程序员

关于 k8s 的 pod 疑惑

  •  
  •   linxiaoziruo 2019-09-26 17:25:56 +08:00 2859 次点击
    这是一个创建于 2260 天前的主题,其中的信息可能已经有所发展或是发生改变。

    一个 pod 里包含一个或者多个容器。一个容器里面又能运行多个进程。 一个 pod 是一个进程,一个容器又是一个进程,这难道是进程里面跑进程,进程里面包含进程?这从操作系统层面说不通啊。

    16 条回复    2019-09-27 10:17:50 +08:00
    xifan8866
        1
    xifan8866  
       2019-09-26 18:22:32 +08:00 via iPhone
    操作系统难道不是一个进程嘛
    Bromine0x23
        2
    Bromine0x23  
       2019-09-26 18:28:10 +08:00
    简单来说,Pod 不对应进程
    linxiaoziruo
        3
    linxiaoziruo  
    OP
       2019-09-26 18:44:51 +08:00
    如果都是进程,为啥操作系统看不到容器里跑的进程。打开命令行看不到相关的进程信息
    xfriday
        4
    xfriday  
       2019-09-26 18:48:59 +08:00
    @linxiaoziruo 宿主主机可以看到容器内的进程,容器内跑个空 loop,然后宿主主机 top 一下就看到了,容器技术做的是资源隔离
    Rand01ph
        5
    Rand01ph  
       2019-09-26 19:09:48 +08:00
    最好是一个容器对应一个进程,一个 Pod 应该抽象成一个应用。
    choury
        6
    choury  
       2019-09-26 19:16:26 +08:00
    谁说一个 pod 对应一个进程的,瞎扯
    Nitroethane
        7
    Nitroethane  
       2019-09-26 19:26:17 +08:00 via Android   2
    容器是利用 Linux 内核的命名空间特性以及 cgroup 特性构建的,容器中的一个进程在宿主机中也表现为一个进程。pod 是 k8s 进行资源管理和调度的基本单位。一个 pod 中可以包含多个容器,同一个 pod 内的容器共用一个命名空间(网络命名空间和 pid 命名空间),一般是联系比较紧密的应用才会放到同一个 pod 里,官方文档里有举例子。一个容器里可以跑多个进程,但是从实践角度来说基本不会在一个容器里跑多个进程。
    其中提到的名词够你学一阵了
    1daydayde
        8
    1daydayde  
       2019-09-26 19:31:28 +08:00
    谁告诉你的,基本都错了
    reus
        9
    reus  
       2019-09-26 19:36:01 +08:00
    进程树了解一下
    ls2110609
        10
    ls2110609  
       2019-09-26 19:51:10 +08:00
    去看看 k8s 权威指南吧
    sweetweapen
        11
    sweetweapen  
       2019-09-26 19:51:54 +08:00
    # Nitroethane 正解
    LeeSeoung
        12
    LeeSeoung  
       2019-09-26 19:56:03 +08:00
    看下 7 楼 正解。。
    polythene
        13
    polythene  
       2019-09-26 20:17:19 +08:00
    可以把 Pod 理解成一个虚拟机 vm,一个虚拟机里面可以跑多个进程( container ),k8s 负责把这个虚拟机调度到某个实体机器上
    a852695
        14
    a852695  
       2019-09-26 20:23:46 +08:00
    pod 不是一个实体
    linxiaoziruo
        15
    linxiaoziruo  
    OP
       2019-09-27 09:59:51 +08:00
    我擦,早上到工位一看,这么多回复,全明白了。大佬们,小弟给跪了。
    Reficul
        16
    Reficul  
       2019-09-27 10:17:50 +08:00
    宿主机不一定看得到容器里的进程,取决于 CRI 是啥。gvisor 里一个容器里无论有多少进程在宿主上看起来就一个进程,和 kvm 一样。

    Pod 就是多个容器组成的一个整体,模拟的是一个机器。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1011 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 22:53 PVG 06:53 LAX 14:53 JFK 17:53
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86