zoukankan      html  css  js  c++  java
  • overlayfs mount shared =+ kata + OCI bundle rootfs

    # mkdir rootfs
    # docker export $(docker create busybox) | tar -C rootfs -xvf -
    # runc spec

    查不到mount信息

    root@ubuntu:~# mount | grep  'container/rootfs'
    root@ubuntu:~# 
    root@ubuntu:~# ps -elf | grep mycontainer
    4 S root     34589 13451  0  80   0 - 132473 futex_ 14:00 pts/0   00:00:00 docker-runc run mycontainer
    0 S root     34972 14029  0  80   0 -  1097 pipe_w 14:01 pts/1    00:00:00 grep --color=auto mycontainer
    root@ubuntu:~# lsof -p 34589
    COMMAND     PID USER   FD      TYPE DEVICE SIZE/OFF    NODE NAME
    docker-ru 34589 root  cwd       DIR   8,35     4096 3806963 /root/docker/container
    docker-ru 34589 root  rtd       DIR   8,35     4096       2 /
    docker-ru 34589 root  txt       REG   8,35  5505840 9314261 /usr/bin/docker-runc
    docker-ru 34589 root  mem       REG   8,35  1345176 7083151 /lib/aarch64-linux-gnu/libc-2.27.so
    docker-ru 34589 root  mem       REG   8,35    18544 7083154 /lib/aarch64-linux-gnu/libdl-2.27.so
    docker-ru 34589 root  mem       REG   8,35   280648 7078009 /lib/aarch64-linux-gnu/libseccomp.so.2.4.1
    docker-ru 34589 root  mem       REG   8,35   137848 7083165 /lib/aarch64-linux-gnu/libpthread-2.27.so
    docker-ru 34589 root  mem       REG   8,35    59864 7077901 /lib/aarch64-linux-gnu/libapparmor.so.1.4.2
    docker-ru 34589 root  mem       REG   8,35   125896 7083147 /lib/aarch64-linux-gnu/ld-2.27.so
    docker-ru 34589 root    0u      CHR  136,0      0t0       3 /dev/pts/0
    docker-ru 34589 root    1u      CHR  136,0      0t0       3 /dev/pts/0
    docker-ru 34589 root    2u      CHR  136,0      0t0       3 /dev/pts/0
    docker-ru 34589 root    3w      CHR    1,3      0t0       6 /dev/null
    docker-ru 34589 root    4u  a_inode   0,13        0    9285 [eventpoll]
    docker-ru 34589 root    5u      CHR    5,2      0t0      88 /dev/ptmx
    root@ubuntu:~# docker-runc state  mycontainer
    {
      "ociVersion": "1.0.0-rc2-dev",
      "id": "mycontainer",
      "pid": 34600,
      "status": "running",
      "bundle": "/root/docker/container",
      "rootfs": "/root/docker/container/rootfs",
      "created": "2020-10-17T06:00:32.147160143Z"
    }root@ubuntu:~# 
    • runtime规定了如下内容
      • state
        • ociVersion:创建容器时的OCI版本
        • id:容器唯一的ID
        • status:容器的runtime状态,可以为如下值
          • creating:容器正在被创建(lifecycle的第2步)
          • created:容器完成创建,但没有返回错误且没有执行用户程序(lifecycle的第2步之后)
          • running:容器正在执行用户程序且没有返回错误(lifecycle的第5步之后)
          • stoped:容器进程退出(lifecycle的第7步)
        • pid:host上看到的容器进程
        • bundle:host上容器bundle目录的绝对路径
        • annotation:容器相关的标注,可选

    由于runc实现了OCI runtime,使用runc state查看上述 state相关的信息

    root@ubuntu:~# docker-runc state  mycontainer
    {
      "ociVersion": "1.0.0-rc2-dev",
      "id": "mycontainer",
      "pid": 34600,
      "status": "running",
      "bundle": "/root/docker/container",
      "rootfs": "/root/docker/container/rootfs",
      "created": "2020-10-17T06:00:32.147160143Z"
    }root@ubuntu:~# 
    root@ubuntu:~/docker/container# ctr run --runtime io.containerd.runc.v1 -t --rm docker.io/library/busybox:latest hello sh
    / # 
    root@ubuntu:~# ctr  c ls | grep busybox
    hello        docker.io/library/busybox:latest    io.containerd.runc.v1    
    root@ubuntu:~# ctr ns ls
    NAME       LABELS 
    default           
    demo              
    k8s.gcr.io        
    k8s.io            
    moby              
    root@ubuntu:~# ctr -n default  c ls | grep busybox
    hello        docker.io/library/busybox:latest    io.containerd.runc.v1    
    root@ubuntu:~# 
    root@ubuntu:~# ps -elf | grep  hello 
    0 S root     42310 13451  0  80   0 - 308244 futex_ 14:26 pts/0   00:00:00 ctr run --runtime io.containerd.runc.v1 -t --rm docker.io/library/busybox:latest hello sh
    0 S root     42334     1  0  80   0 - 27806 futex_ 14:26 ?        00:00:00 /usr/bin/containerd-shim-runc-v1 -namespace default -id hello -address /run/containerd/containerd.sock
    0 S root     43783 14029  0  80   0 -  1097 pipe_w 14:31 pts/1    00:00:00 grep --color=auto hello
    root@ubuntu:~# 
    root@ubuntu:~# lsof -p 42310
    COMMAND   PID USER   FD      TYPE             DEVICE SIZE/OFF     NODE NAME
    ctr     42310 root  cwd       DIR               8,35     4096  3806963 /root/docker/container
    ctr     42310 root  rtd       DIR               8,35     4096        2 /
    ctr     42310 root  txt       REG               8,35 21756192  9309549 /usr/bin/ctr
    ctr     42310 root  mem       REG               8,35  1345176  7083151 /lib/aarch64-linux-gnu/libc-2.27.so
    ctr     42310 root  mem       REG               8,35   137848  7083165 /lib/aarch64-linux-gnu/libpthread-2.27.so
    ctr     42310 root  mem       REG               8,35   125896  7083147 /lib/aarch64-linux-gnu/ld-2.27.so
    ctr     42310 root    0u      CHR              136,0      0t0        3 /dev/pts/0
    ctr     42310 root    1u      CHR              136,0      0t0        3 /dev/pts/0
    ctr     42310 root    2u      CHR              136,0      0t0        3 /dev/pts/0
    ctr     42310 root    3u     unix 0xffff80af95828800      0t0 11504561 type=STREAM
    ctr     42310 root    4u  a_inode               0,13        0     9285 [eventpoll]
    ctr     42310 root    5u     FIFO               0,25      0t0      830 /run/containerd/fifo/485221562/hello-stdin
    ctr     42310 root    6u     FIFO               0,25      0t0     1251 /run/containerd/fifo/485221562/hello-stdout
    ctr     42310 root    7w     FIFO               0,25      0t0      830 /run/containerd/fifo/485221562/hello-stdin
    ctr     42310 root    8r     FIFO               0,25      0t0     1251 /run/containerd/fifo/485221562/hello-stdout
    root@ubuntu:~# lsof -p 42334
    COMMAND     PID USER   FD      TYPE             DEVICE SIZE/OFF     NODE NAME
    container 42334 root  cwd       DIR               0,25      240     1275 /run/containerd/io.containerd.runtime.v2.task/default/hello
    container 42334 root  rtd       DIR               8,35     4096        2 /
    container 42334 root  txt       REG               8,35  8335160  9309547 /usr/bin/containerd-shim-runc-v1
    container 42334 root    0r      CHR                1,3      0t0        6 /dev/null
    container 42334 root    1w      CHR                1,3      0t0        6 /dev/null
    container 42334 root    2w      CHR                1,3      0t0        6 /dev/null
    container 42334 root    4u     unix 0xffff809f9cb8a000      0t0 11627923 type=STREAM
    container 42334 root    5u  a_inode               0,13        0     9285 [eventpoll]
    container 42334 root    6u  a_inode               0,13        0     9285 [eventpoll]
    container 42334 root    7u  a_inode               0,13        0     9285 [eventpoll]
    container 42334 root    8u     FIFO               0,25      0t0     1279 /run/containerd/io.containerd.runtime.v2.task/default/hello/log
    container 42334 root    9w     FIFO               0,25      0t0     1279 /run/containerd/io.containerd.runtime.v2.task/default/hello/log
    container 42334 root   10u     unix 0xffff809ed0552c00      0t0 11638948 @/containerd-shim/a159efe0307130e2366f05bca00c1cb2cb9e40375e35d351e4efe9f2c468c427.sock@ type=STREAM
    container 42334 root   11u     unix 0xffff809cdf1bc800      0t0 11627926 @/containerd-shim/a159efe0307130e2366f05bca00c1cb2cb9e40375e35d351e4efe9f2c468c427.sock@ type=STREAM
    container 42334 root   13u     FIFO               0,25      0t0      830 /run/containerd/fifo/485221562/hello-stdin
    container 42334 root   14w     FIFO               0,25      0t0      830 /run/containerd/fifo/485221562/hello-stdin
    container 42334 root   15u      CHR                5,2      0t0        2 /dev/pts/ptmx
    container 42334 root   16u     FIFO               0,25      0t0      830 /run/containerd/fifo/485221562/hello-stdin
    container 42334 root   17u     FIFO               0,25      0t0     1251 /run/containerd/fifo/485221562/hello-stdout
    container 42334 root   18w     FIFO               0,25      0t0     1251 /run/containerd/fifo/485221562/hello-stdout
    container 42334 root   19u     FIFO               0,25      0t0     1251 /run/containerd/fifo/485221562/hello-stdout
    container 42334 root   20r     FIFO               0,25      0t0     1251 /run/containerd/fifo/485221562/hello-stdout
    container 42334 root   21r     FIFO               0,25      0t0      830 /run/containerd/fifo/485221562/hello-stdin
    container 42334 root   22u  a_inode               0,13        0     9285 [eventfd]
    root@ubuntu:~# 
    root@ubuntu:~# ctr -n k8s.io c ls | grep busy
    6a91f780eda7a3b382bc79acec45e8905c2ee63243ba74300145a217e617bf10    docker.io/library/busybox:latest                                           io.containerd.kata.v2    
    root@ubuntu:~# mount | grep overlay |grep 6a91f780eda7a3b382bc79acec45e8905c2ee63243ba74300145a217e617bf10
    overlay on /run/containerd/io.containerd.runtime.v2.task/k8s.io/6a91f780eda7a3b382bc79acec45e8905c2ee63243ba74300145a217e617bf10/rootfs type overlay (rw,relatime,lowerdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/361/fs,upperdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/362/fs,workdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/362/work,xino=off)
    overlay on /run/kata-containers/shared/sandboxes/64abb3931350d2762e805122d39ecbcee47e59a40331d1e09a5823dd0d11fa27/mounts/6a91f780eda7a3b382bc79acec45e8905c2ee63243ba74300145a217e617bf10/rootfs type overlay (rw,relatime,lowerdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/361/fs,upperdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/362/fs,workdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/362/work,xino=off)
    overlay on /run/kata-containers/shared/sandboxes/64abb3931350d2762e805122d39ecbcee47e59a40331d1e09a5823dd0d11fa27/shared/6a91f780eda7a3b382bc79acec45e8905c2ee63243ba74300145a217e617bf10/rootfs type overlay (rw,relatime,lowerdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/361/fs,upperdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/362/fs,workdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/362/work,xino=off)
    root@ubuntu:~# kata-runtime list | grep 64abb3931350d2762e805122d39ecbcee47e59a40331d1e09a5823dd0d11fa27
    64abb3931350d2762e805122d39ecbcee47e59a40331d1e09a5823dd0d11fa27   -1          running     /run/containerd/io.containerd.runtime.v2.task/k8s.io/64abb3931350d2762e805122d39ecbcee47e59a40331d1e09a5823dd0d11fa27   2020-10-17T02:13:37.762824405Z   #0
    root@ubuntu:~# kata-runtime list 
    ID                                                                 PID         STATUS      BUNDLE                                                                                                                  CREATED                          OWNER
    64abb3931350d2762e805122d39ecbcee47e59a40331d1e09a5823dd0d11fa27   -1          running     /run/containerd/io.containerd.runtime.v2.task/k8s.io/64abb3931350d2762e805122d39ecbcee47e59a40331d1e09a5823dd0d11fa27   2020-10-17T02:13:37.762824405Z   #0
    6a91f780eda7a3b382bc79acec45e8905c2ee63243ba74300145a217e617bf10   -1          running     /run/containerd/io.containerd.runtime.v2.task/k8s.io/6a91f780eda7a3b382bc79acec45e8905c2ee63243ba74300145a217e617bf10   2020-10-17T02:14:04.602169815Z   #0
    96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146   -1          running     /run/containerd/io.containerd.runtime.v2.task/k8s.io/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146   2020-10-16T09:17:50.17411532Z    #0
    d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9   -1          running     /run/containerd/io.containerd.runtime.v2.task/k8s.io/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9   2020-10-16T09:18:08.084499379Z   #0
    root@ubuntu:~# 
    root@ubuntu:/home/ubuntu/containerddemo# find  /run/kata-containers/shared/sandboxes/  -name nginx 
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/mounts/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/usr/sbin/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/mounts/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/usr/lib/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/mounts/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/usr/share/doc/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/mounts/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/usr/share/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/mounts/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/etc/logrotate.d/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/mounts/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/etc/default/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/mounts/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/etc/init.d/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/mounts/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/etc/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/mounts/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/var/cache/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/mounts/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/var/log/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/shared/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/usr/sbin/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/shared/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/usr/lib/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/shared/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/usr/share/doc/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/shared/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/usr/share/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/shared/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/etc/logrotate.d/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/shared/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/etc/default/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/shared/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/etc/init.d/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/shared/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/etc/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/shared/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/var/cache/nginx
    /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/shared/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs/var/log/nginx
    root@ubuntu:/home/ubuntu/containerddemo#
    root@ubuntu:/home/ubuntu/containerddemo# mount | grep overlay | grep 96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146
    overlay on /run/containerd/io.containerd.runtime.v2.task/k8s.io/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/rootfs type overlay (rw,relatime,lowerdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/87/fs,upperdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/348/fs,workdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/348/work,xino=off)
    overlay on /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/mounts/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/rootfs type overlay (rw,relatime,lowerdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/87/fs,upperdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/348/fs,workdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/348/work,xino=off)
    overlay on /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/shared/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/rootfs type overlay (rw,relatime,lowerdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/87/fs,upperdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/348/fs,workdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/348/work,xino=off)
    overlay on /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/mounts/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs type overlay (rw,relatime,lowerdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/353/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/352/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/351/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/350/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/349/fs,upperdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/354/fs,workdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/354/work,xino=off)
    overlay on /run/kata-containers/shared/sandboxes/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/shared/d811e8590aecb55091918cefc11cef16665250c878a0646fb04039f7f67d1cd9/rootfs type overlay (rw,relatime,lowerdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/353/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/352/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/351/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/350/fs:/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/349/fs,upperdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/354/fs,workdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/354/work,xino=off)
    root@ubuntu:/home/ubuntu/containerddemo# 
    root@ubuntu:/home/ubuntu/containerddemo# cd /run/containerd/io.containerd.runtime.v2.task/k8s.io/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/rootfs
    root@ubuntu:/run/containerd/io.containerd.runtime.v2.task/k8s.io/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/rootfs# find ./ -name nginx
    root@ubuntu:/run/containerd/io.containerd.runtime.v2.task/k8s.io/96a36a40169dd6add5bdf3367a4313bec828a598fb001a45bac7d01bec1f0146/rootfs# 

    docker  overlay2

    root@ubuntu:/home/ubuntu# ps -elf | grep qemu | grep 4f38d6f4dd9f4f8ac68e56a6d919fefc4c9482858c404b6f63f41fd644dcde92
    7 S root      1620  1559  1  80   0 - 755962 sys_po 09:53 ?       00:00:01 /usr/share/kata-containers/binary/qemu-system-aarch64 -name sandbox-4f38d6f4dd9f4f8ac68e56a6d919fefc4c9482858c404b6f63f41fd644dcde92 -uuid 0ac9369f-b23d-4a4b-a434-aa7d77d77343 -machine virt,usb=off,accel=kvm,gic-version=host -cpu host,pmu=off -qmp unix:/run/vc/vm/4f38d6f4dd9f4f8ac68e56a6d919fefc4c9482858c404b6f63f41fd644dcde92/qmp.sock,server,nowait -m 2048M,slots=10,maxmem=257176M -device pcie-pci-bridge,bus=pcie.0,id=pcie-bridge-0,addr=2,romfile= -device virtio-serial-pci,disable-modern=false,id=serial0,romfile= -device virtconsole,chardev=charconsole0,id=console0 -chardev socket,id=charconsole0,path=/run/vc/vm/4f38d6f4dd9f4f8ac68e56a6d919fefc4c9482858c404b6f63f41fd644dcde92/console.sock,server,nowait -device virtio-blk-pci,disable-modern=false,drive=image-5dd09490599834cb,scsi=off,config-wce=off,romfile=,share-rw=on -drive id=image-5dd09490599834cb,file=/usr/share/kata-containers/binary/kata-containers.img,aio=threads,format=raw,if=none,readonly -device virtio-scsi-pci,id=scsi0,disable-modern=false,romfile= -object rng-random,id=rng0,filename=/dev/urandom -device virtio-rng-pci,rng=rng0,romfile= -device virtserialport,chardev=charch0,id=channel0,name=agent.channel.0 -chardev socket,id=charch0,path=/run/vc/vm/4f38d6f4dd9f4f8ac68e56a6d919fefc4c9482858c404b6f63f41fd644dcde92/kata.sock,server,nowait -device virtio-9p-pci,disable-modern=false,fsdev=extra-9p-kataShared,mount_tag=kataShared,romfile= -fsdev local,id=extra-9p-kataShared,path=/run/kata-containers/shared/sandboxes/4f38d6f4dd9f4f8ac68e56a6d919fefc4c9482858c404b6f63f41fd644dcde92/shared,security_model=none -netdev tap,id=network-0,vhost=on,vhostfds=3,fds=4 -device driver=virtio-net-pci,netdev=network-0,mac=02:42:ac:11:00:02,disable-modern=false,mq=on,vectors=4,romfile= -rtc base=utc,driftfix=slew,clock=host -global kvm-pit.lost_tick_policy=discard -vga none -no-user-config -nodefaults -nographic --no-reboot -daemonize -kernel /usr/share/kata-containers/binary/vmlinuz-5.4.34-88 -append console=hvc0 console=hvc1 iommu.passthrough=0 root=/dev/vda1 rootflags=data=ordered,errors=remount-ro ro rootfstype=ext4 debug systemd.show_status=true systemd.log_level=debug panic=1 nr_cpus=64 agent.use_vsock=false systemd.unit=kata-containers.target systemd.mask=systemd-networkd.service systemd.mask=systemd-networkd.socket scsi_mod.scan=none agent.log=debug agent.debug_console -pidfile /run/vc/vm/4f38d6f4dd9f4f8ac68e56a6d919fefc4c9482858c404b6f63f41fd644dcde92/pid -D /run/vc/vm/4f38d6f4dd9f4f8ac68e56a6d919fefc4c9482858c404b6f63f41fd644dcde92/qemu.log -smp 1,cores=1,threads=1,sockets=64,maxcpus=64
    root@ubuntu:/home/ubuntu# mount | grep overlay | grep 4f38d6f4dd9f4f8ac68e56a6d919fefc4c9482858c404b6f63f41fd644dcde92
    overlay on /run/kata-containers/shared/sandboxes/4f38d6f4dd9f4f8ac68e56a6d919fefc4c9482858c404b6f63f41fd644dcde92/mounts/4f38d6f4dd9f4f8ac68e56a6d919fefc4c9482858c404b6f63f41fd644dcde92/rootfs type overlay (rw,relatime,lowerdir=/var/lib/docker/overlay2/l/NBZRP6DEJWSRWZENXGSWMBVXNJ:/var/lib/docker/overlay2/l/7YK2UOEWIEZ7ADIHF3XEXJNGVJ:/var/lib/docker/overlay2/l/NFDWMDPDYJ7R44SB7C3EJY3RPO:/var/lib/docker/overlay2/l/J5E7PT7ZX67W4Q2VMC4R2CGNNP,upperdir=/var/lib/docker/overlay2/3b09015cb6eb5549a5b0fc1236bc733445d7dc4b517f0a1e9f1b47c7cbe4e9b0/diff,workdir=/var/lib/docker/overlay2/3b09015cb6eb5549a5b0fc1236bc733445d7dc4b517f0a1e9f1b47c7cbe4e9b0/work,xino=off)
    overlay on /run/kata-containers/shared/sandboxes/4f38d6f4dd9f4f8ac68e56a6d919fefc4c9482858c404b6f63f41fd644dcde92/shared/4f38d6f4dd9f4f8ac68e56a6d919fefc4c9482858c404b6f63f41fd644dcde92/rootfs type overlay (rw,relatime,lowerdir=/var/lib/docker/overlay2/l/NBZRP6DEJWSRWZENXGSWMBVXNJ:/var/lib/docker/overlay2/l/7YK2UOEWIEZ7ADIHF3XEXJNGVJ:/var/lib/docker/overlay2/l/NFDWMDPDYJ7R44SB7C3EJY3RPO:/var/lib/docker/overlay2/l/J5E7PT7ZX67W4Q2VMC4R2CGNNP,upperdir=/var/lib/docker/overlay2/3b09015cb6eb5549a5b0fc1236bc733445d7dc4b517f0a1e9f1b47c7cbe4e9b0/diff,workdir=/var/lib/docker/overlay2/3b09015cb6eb5549a5b0fc1236bc733445d7dc4b517f0a1e9f1b47c7cbe4e9b0/work,xino=off)
    root@ubuntu:/home/ubuntu# ls /var/lib/docker/overlay2/l/NBZRP6DEJWSRWZENXGSWMBVXNJ
    dev  etc
    root@ubuntu:/home/ubuntu# ls /var/lib/docker/overlay2/l/7YK2UOEWIEZ7ADIHF3XEXJNGVJ
    run
    root@ubuntu:/home/ubuntu#  ls /var/lib/docker/overlay2/l/NFDWMDPDYJ7R44SB7C3EJY3RPO
    etc  usr  var
    root@ubuntu:/home/ubuntu# ls /var/lib/docker/overlay2/l/J5E7PT7ZX67W4Q2VMC4R2CGNNP
    bin  boot  dev  etc  home  lib  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
    root@ubuntu:/home/ubuntu# ls /var/lib/docker/overlay2/3b09015cb6eb5549a5b0fc1236bc733445d7dc4b517f0a1e9f1b47c7cbe4e9b0
    diff  link  lower  merged  work
    root@ubuntu:/home/ubuntu# ls /var/lib/docker/overlay2/3b09015cb6eb5549a5b0fc1236bc733445d7dc4b517f0a1e9f1b47c7cbe4e9b0/diff/
    root@ubuntu:/home/ubuntu# ls /var/lib/docker/overlay2/3b09015cb6eb5549a5b0fc1236bc733445d7dc4b517f0a1e9f1b47c7cbe4e9b0/work
    work
    root@ubuntu:/home/ubuntu# 

     在容器内创建一个文件

     docker run --rm -it --runtime kata-runtime ubuntu 再创建一个容器

    root@ubuntu:/home/ubuntu# mount  | grep c1d7b1292cf086ffea4df996c718ad454b15c8c0e31293b17ba2e59397817e28
    tmpfs on /run/kata-containers/shared/sandboxes/c1d7b1292cf086ffea4df996c718ad454b15c8c0e31293b17ba2e59397817e28/shared type tmpfs (ro,relatime,size=26334908k,mode=755)
    overlay on /run/kata-containers/shared/sandboxes/c1d7b1292cf086ffea4df996c718ad454b15c8c0e31293b17ba2e59397817e28/mounts/c1d7b1292cf086ffea4df996c718ad454b15c8c0e31293b17ba2e59397817e28/rootfs type overlay (rw,relatime,lowerdir=/var/lib/docker/overlay2/l/ZKFJRXVQIBUAMRAOZB4OWQ6CVC:/var/lib/docker/overlay2/l/7YK2UOEWIEZ7ADIHF3XEXJNGVJ:/var/lib/docker/overlay2/l/NFDWMDPDYJ7R44SB7C3EJY3RPO:/var/lib/docker/overlay2/l/J5E7PT7ZX67W4Q2VMC4R2CGNNP,upperdir=/var/lib/docker/overlay2/6c51b552b6e1f54442b84b5a2a1e0a3458b32b18f7702ae3d80c31059d720ae4/diff,workdir=/var/lib/docker/overlay2/6c51b552b6e1f54442b84b5a2a1e0a3458b32b18f7702ae3d80c31059d720ae4/work,xino=off)
    overlay on /run/kata-containers/shared/sandboxes/c1d7b1292cf086ffea4df996c718ad454b15c8c0e31293b17ba2e59397817e28/shared/c1d7b1292cf086ffea4df996c718ad454b15c8c0e31293b17ba2e59397817e28/rootfs type overlay (rw,relatime,lowerdir=/var/lib/docker/overlay2/l/ZKFJRXVQIBUAMRAOZB4OWQ6CVC:/var/lib/docker/overlay2/l/7YK2UOEWIEZ7ADIHF3XEXJNGVJ:/var/lib/docker/overlay2/l/NFDWMDPDYJ7R44SB7C3EJY3RPO:/var/lib/docker/overlay2/l/J5E7PT7ZX67W4Q2VMC4R2CGNNP,upperdir=/var/lib/docker/overlay2/6c51b552b6e1f54442b84b5a2a1e0a3458b32b18f7702ae3d80c31059d720ae4/diff,workdir=/var/lib/docker/overlay2/6c51b552b6e1f54442b84b5a2a1e0a3458b32b18f7702ae3d80c31059d720ae4/work,xino=off)
    /dev/sdc3 on /run/kata-containers/shared/sandboxes/c1d7b1292cf086ffea4df996c718ad454b15c8c0e31293b17ba2e59397817e28/mounts/c1d7b1292cf086ffea4df996c718ad454b15c8c0e31293b17ba2e59397817e28-d4904454f19eb5a9-resolv.conf type ext4 (rw,relatime,errors=remount-ro,stripe=64)
    /dev/sdc3 on /run/kata-containers/shared/sandboxes/c1d7b1292cf086ffea4df996c718ad454b15c8c0e31293b17ba2e59397817e28/shared/c1d7b1292cf086ffea4df996c718ad454b15c8c0e31293b17ba2e59397817e28-d4904454f19eb5a9-resolv.conf type ext4 (rw,relatime,errors=remount-ro,stripe=64)
    /dev/sdc3 on /run/kata-containers/shared/sandboxes/c1d7b1292cf086ffea4df996c718ad454b15c8c0e31293b17ba2e59397817e28/mounts/c1d7b1292cf086ffea4df996c718ad454b15c8c0e31293b17ba2e59397817e28-0214a654c0ee667d-hostname type ext4 (rw,relatime,errors=remount-ro,stripe=64)
    /dev/sdc3 on /run/kata-containers/shared/sandboxes/c1d7b1292cf086ffea4df996c718ad454b15c8c0e31293b17ba2e59397817e28/shared/c1d7b1292cf086ffea4df996c718ad454b15c8c0e31293b17ba2e59397817e28-0214a654c0ee667d-hostname type ext4 (rw,relatime,errors=remount-ro,stripe=64)
    /dev/sdc3 on /run/kata-containers/shared/sandboxes/c1d7b1292cf086ffea4df996c718ad454b15c8c0e31293b17ba2e59397817e28/mounts/c1d7b1292cf086ffea4df996c718ad454b15c8c0e31293b17ba2e59397817e28-4fbe7e6e9e125687-hosts type ext4 (rw,relatime,errors=remount-ro,stripe=64)
    /dev/sdc3 on /run/kata-containers/shared/sandboxes/c1d7b1292cf086ffea4df996c718ad454b15c8c0e31293b17ba2e59397817e28/shared/c1d7b1292cf086ffea4df996c718ad454b15c8c0e31293b17ba2e59397817e28-4fbe7e6e9e125687-hosts type ext4 (rw,relatime,errors=remount-ro,stripe=64)
    root@ubuntu:/home/ubuntu# ls /var/lib/docker/overlay2/6c51b552b6e1f54442b84b5a2a1e0a3458b32b18f7702ae3d80c31059d720ae4/diff
    root@ubuntu:/home/ubuntu# ls /var/lib/docker/overlay2/6c51b552b6e1f54442b84b5a2a1e0a3458b32b18f7702ae3d80c31059d720ae4/merged/ -li
    total 60
    6946820 lrwxrwxrwx 1 root root    7 Sep 25 09:23 bin -> usr/bin
    6946821 drwxr-xr-x 2 root root 4096 Apr 15  2020 boot
    8389141 drwxr-xr-x 1 root root 4096 Oct 29 10:12 dev
    8389144 drwxr-xr-x 1 root root 4096 Oct 29 10:12 etc
    6946988 drwxr-xr-x 2 root root 4096 Apr 15  2020 home
    6946989 lrwxrwxrwx 1 root root    7 Sep 25 09:23 lib -> usr/lib
    6946990 drwxr-xr-x 2 root root 4096 Sep 25 09:23 media
    6946991 drwxr-xr-x 2 root root 4096 Sep 25 09:23 mnt
    6946992 drwxr-xr-x 2 root root 4096 Sep 25 09:23 opt
    6946993 drwxr-xr-x 2 root root 4096 Apr 15  2020 proc
    6946994 drwx------ 2 root root 4096 Sep 25 09:46 root
    6950091 drwxr-xr-x 1 root root 4096 Sep 26 06:48 run
    6947001 lrwxrwxrwx 1 root root    8 Sep 25 09:23 sbin -> usr/sbin
    6947002 drwxr-xr-x 2 root root 4096 Sep 25 09:23 srv
    6947003 drwxr-xr-x 2 root root 4096 Apr 15  2020 sys
    6947004 drwxrwxrwt 2 root root 4096 Sep 25 09:47 tmp
    6950076 drwxr-xr-x 1 root root 4096 Sep 25 09:23 usr
    6950080 drwxr-xr-x 1 root root 4096 Sep 25 09:46 var
    root@ubuntu:/home/ubuntu# 

    ls /var/lib/docker/overlay2/6c51b552b6e1f54442b84b5a2a1e0a3458b32b18f7702ae3d80c31059d720ae4/merged/ -li
    和ls /var/lib/docker/overlay2/3b09015cb6eb5549a5b0fc1236bc733445d7dc4b517f0a1e9f1b47c7cbe4e9b0/merged/ -i -l
    的inode一样

    ubuntu1

    root@ubuntu:/home/ubuntu# ls /var/lib/docker/overlay2/3b09015cb6eb5549a5b0fc1236bc733445d7dc4b517f0a1e9f1b47c7cbe4e9b0/ -i -l
    total 20
    8389125 drwxr-xr-x 3 root root 4096 Oct 29 09:53 diff
    8389126 -rw-r--r-- 1 root root   26 Oct 29 09:53 link
    8389129 -rw-r--r-- 1 root root  115 Oct 29 09:53 lower
    8389125 drwxr-xr-x 1 root root 4096 Oct 29 09:53 merged
    8389127 drwx------ 3 root root 4096 Oct 29 09:53 work
    root@ubuntu:/home/ubuntu# 

    lower

    root@ubuntu:/home/ubuntu# cat  /var/lib/docker/overlay2/3b09015cb6eb5549a5b0fc1236bc733445d7dc4b517f0a1e9f1b47c7cbe4e9b0/lower 
    l/NBZRP6DEJWSRWZENXGSWMBVXNJ:l/7YK2UOEWIEZ7ADIHF3XEXJNGVJ:l/NFDWMDPDYJ7R44SB7C3EJY3RPO:l/J5E7PT7ZX67W4Q2VMC4R2CGNNProot@ubuntu:/home/ubuntu# 
    root@ubuntu:/home/ubuntu# 
    root@ubuntu:/home/ubuntu# ls  /var/lib/docker/overlay2/3b09015cb6eb5549a5b0fc1236bc733445d7dc4b517f0a1e9f1b47c7cbe4e9b0/lower -li
    8389129 -rw-r--r-- 1 root root 115 Oct 29 09:53 /var/lib/docker/overlay2/3b09015cb6eb5549a5b0fc1236bc733445d7dc4b517f0a1e9f1b47c7cbe4e9b0/lower
    root@ubuntu:/home/ubuntu# 

    ubuntu2

    root@ubuntu:/home/ubuntu# ls /var/lib/docker/overlay2/3b09015cb6eb5549a5b0fc1236bc733445d7dc4b517f0a1e9f1b47c7cbe4e9b0/ -i -l
    total 20
    8389125 drwxr-xr-x 3 root root 4096 Oct 29 09:53 diff
    8389126 -rw-r--r-- 1 root root   26 Oct 29 09:53 link
    8389129 -rw-r--r-- 1 root root  115 Oct 29 09:53 lower
    8389125 drwxr-xr-x 1 root root 4096 Oct 29 09:53 merged
    8389127 drwx------ 3 root root 4096 Oct 29 09:53 work
    root@ubuntu:/home/ubuntu# 

    lower

    root@ubuntu:/home/ubuntu# ls /var/lib/docker/overlay2/6c51b552b6e1f54442b84b5a2a1e0a3458b32b18f7702ae3d80c31059d720ae4/lower -li
    8389155 -rw-r--r-- 1 root root 115 Oct 29 10:12 /var/lib/docker/overlay2/6c51b552b6e1f54442b84b5a2a1e0a3458b32b18f7702ae3d80c31059d720ae4/lower
    root@ubuntu:/home/ubuntu# cat  /var/lib/docker/overlay2/6c51b552b6e1f54442b84b5a2a1e0a3458b32b18f7702ae3d80c31059d720ae4/lower 
    l/ZKFJRXVQIBUAMRAOZB4OWQ6CVC:l/7YK2UOEWIEZ7ADIHF3XEXJNGVJ:l/NFDWMDPDYJ7R44SB7C3EJY3RPO:l/J5E7PT7ZX67W4Q2VMC4R2CGNNProot@ubuntu:/home/ubuntu# 

     work层是一个中间层

    https://juejin.im/post/6844903574137208839

  • 相关阅读:
    叶树:任总喊你回家吃饭 (zz)
    一个小员工如何让一家大银行一夕倒闭(附几则)
    精妙SQL语句收集
    降温了 降温了
    東京タワー初めてphoto
    圣诞气氛photo
    初冬071110photo
    超级郁闷的一天
    eveningplan
    KOF怀念ING
  • 原文地址:https://www.cnblogs.com/dream397/p/13830523.html
Copyright © 2011-2022 走看看