测验:容器 vs 虚拟机
容器和虚拟机最根本的区别是什么?
- 图像尺寸
- 客户内核是否存在
- 网络法
- 存储库驱动程序
来自互不信任的多个客户的代码必须在一台主机上运行。什么是正确的选择?
- 与 VM 或 microVM(例如 Kata/Firecracker)进行硬件划分
- 在容器上强制执行 seccomp 配置文件
- 对容器严格执行网络策略
- 将容器根文件系统设置为只读
Kata容器有什么特点?
- 保留 OCI/CRI 接口不变,并在内部运行轻量级虚拟机。
- 它是更快地启动容器的运行时。
- 将虚拟机转换为容器镜像
- 为每个容器编译一个新的内核
sysctl -w被阻塞在容器中的根本原因是什么?
- 安全策略无特殊原因阻止的内容
- 因为镜像中没有sysctl二进制文件
- 这是因为cgroup设置了资源限制。
- 由于内核与主机共享,因此更改会影响整个主机。
为什么像 Firecracker 这样的 microVM 会这么快出现?
-
这是因为我们将设备型号大幅减少到只有几个 virtios,并缩短了启动路径。
-
这是因为客户内核已提前加载到内存中。
-
这是因为它仅限于使用 KVM 而不是 TCG。
-
由于没有来宾内核和虚拟机管理程序开销,因此每个实例的内存成本较低。
-
因为多个容器共享网络堆栈
-
这是因为CPU调度是单独应用于容器的。