Docker、containerd、安全沙箱、社区Kata Containers运行对比
大家看了解决有意义、有帮助记得点赞加关注!!!
containerd、安全沙箱和Docker三种运行对比。
本文通过对比三种运行时的实现和使用限制、部署结构,帮助您根据需求场景了解并选择合适的容器运行。
一、容器运行时实现和使用限制对比
| 特性 | containerd运行时 | 安全沙箱运行时 | Docker运行时(已停止维护) |
| 集群类型 |
|
| 所有集群类型 |
| 集群版本 | 1.31及以下版本 | 1.31及以下版本 | 1.22及以下版本 说明 建议您升级Docker运行时为containerd运行时。详细信息,请参见将节点容器运行时从Docker迁移到containerd。 |
| 节点型号 |
| 仅适用于弹性裸金属服务器实例规格 | ECS |
| 节点OS | 容器服务 Kubernetes 版提供的ContainerOS、Alibaba Cloud Linux 3、Ubuntu、Windows等操作系统的公共镜像。详细信息请参见操作系统。 | Alibaba Cloud Linux定制版 |
|
| 容器引擎 | containerd | containerd | Docker |
| 监控 | 支持 | 支持 | 支持 |
| 容器日志文件采集 | 支持 | 手动支持(Sidecar) | 支持 |
| 容器标准输出采集 | 支持 | 支持 | 支持 |
| RuntimeClass | 不支持 | 支持(runV) | 不支持 |
| Pod调度 | 无需配置 | 配置如下:
| 无需配置 |
| HostNetwork | 支持 | 不支持 | 支持 |
| 节点数据盘 | 可选 | 必选(不小于200 GiB) | 可选 |
| 网络插件 |
|
|
|
| kube-proxy代理模式 |
|
|
|
| 存储插件 | CSI Plugin(ACK Edge集群除外) | CSI Plugin | CSI Plugin |
| 容器RootFS | OverlayFS | 配置磁盘Quota的OverlayFS | OverlayFS |
说明
-
不支持同一节点同时部署Docker和安全沙箱两种运行时。
-
集群内可以通过创建不同节点池来实现Docker运行时节点和安全沙箱运行时节点混合部署。
-
关于Sidecar配置,请参见通过Sidecar-CRD方式采集容器文本日志。
二、运行时部署结构对比
| 运行时 | 部署结构 |
| Docker | |
| containerd | |
| 安全沙箱v2 | |
三、Docker和containerd两种容器引擎常用命令对比
Docker运行时和安全沙箱运行时的容器引擎分别是Docker和containerd,各自具有独特的命令行工具来管理镜像和容器。两种容器引擎常用命令对比如下。
| 命令 | containerd | Docker | |
| crictl(推荐) | ctr | docker | |
| 查看容器列表 |
|
|
|
| 查看容器详情 |
|
|
|
| 查看容器日志 |
| N/A |
|
| 容器内执行命令 |
| N/A |
|
| 挂载容器 |
| N/A |
|
| 显示容器资源使用情况 |
| N/A |
|
| 创建容器 |
|
|
|
| 启动容器 |
|
|
|
| 停止容器 |
| N/A |
|
| 删除容器 |
|
|
|
| 查看镜像列表 |
|
|
|
| 查看镜像详情 |
| N/A |
|
| 拉取镜像 |
|
|
|
| 推送镜像 | N/A |
|
|
| 删除镜像 |
|
|
|
| 查看Pod列表 |
| N/A | N/A |
| 查看Pod详情 |
| N/A | N/A |
| 启动Pod |
| N/A | N/A |
| 停止Pod |
| N/A | N/A |
四、ACK安全沙箱和社区Kata Containers对比
ACK安全沙箱相比社区Kata Containers,在性能上面具有较大优势,如下表所示。
| 性能 | 性能分类 | ACK安全沙箱v2 | 社区Kata Containers |
| 沙箱启动速度 | 约150ms | 约500ms | |
| 沙箱额外开销 | 低 | 高 | |
| 容器RootFS | virtio-fs,性能:☆☆☆☆ | 9pfs,性能:☆ | |
| 容器存储卷 | HostPath/EmptyDir | virtio-fs,性能:☆☆☆☆ | |
| 云盘块存储 | virtio-fs,性能:☆☆☆☆ | ||
| NAS文件存储 |
| ||
| OSS对象存储 | virtio-fs,性能:☆☆☆☆ | ||
| 网络插件 |
| Flannel | |
| 监控告警 |
| 缺失安全沙箱Pod的磁盘和网络监控指标。 | |
| 稳定性 | ☆☆☆☆☆ | ☆☆ | |
相关文章:
Docker、containerd、安全沙箱、社区Kata Containers运行对比
大家看了解决有意义、有帮助记得点赞加关注!!! containerd、安全沙箱和Docker三种运行对比。 本文通过对比三种运行时的实现和使用限制、部署结构,帮助您根据需求场景了解并选择合适的容器运行。 一、容器运行时实现和使用限制…...
使用npm包的工程如何引入mapboxgl-enhance/maplibre-gl-enhance扩展包
作者:刘大 前言 在使用iClient for MapboxGL/MapLibreGL项目开发中,往往会对接非EPSG:3857坐标系的地图,由于默认不支持,因此需引入mapboxgl-enhance/maplibre-gl-enhance扩展包。 在使用Vue等其他框架,通过npm包下载…...
【NIFI】实现ORACLE->ORACLE数据同步
【NIFI】实现ORACLE->ORACLE数据同步 需求 使用nifi实现 oracle->oracle 不同数据库之间的数据同步, 如果想实现 oracle->oracle技术有很多,例如使用oracle golden gate或者是kettle等,或者是使用oralce的dblink技术也能实现。当让…...
单例模式的写法
单例模式(Singleton Pattern)是一种设计模式,确保一个类只有一个实例,并提供一个全局访问点。常用于管理共享资源(如数据库连接、配置文件、线程池等)。在实际编码中,有多种实现单例模式的方法&…...
Selenium实践总结
1.使用显示等待而不是隐式等待 隐式等待可能会导致不可预测的测试行为,尤其是在动态 Web 应用程序中。显式等待,它允许您 等待特定条件发生后再继续测试,这种方法提供了更多的控制和可靠性。 WebDriverWait wait new WebDriverWait(drive…...
Python数据可视化小项目
英雄联盟S14世界赛选手数据可视化 由于本学期有一门数据可视化课程,课程结课作业要求完成一个数据可视化的小Demo,于是便有了这个小项目,课程老师要求比较简单,只要求熟练运用可视化工具展示数据,并不要求数据来源&am…...
Python毕业设计选题:基于python的白酒数据推荐系统_django+hive
开发语言:Python框架:djangoPython版本:python3.7.7数据库:mysql 5.7数据库工具:Navicat11开发软件:PyCharm 系统展示 管理员登录 管理员功能界面 用户管理 白酒管理 系统管理 看板展示 系统首页 白酒详情…...
SQL-leetcode-180. 连续出现的数字
180. 连续出现的数字 表:Logs -------------------- | Column Name | Type | -------------------- | id | int | | num | varchar | -------------------- 在 SQL 中,id 是该表的主键。 id 是一个自增列。 找出所有至少连续出现三次的数字。 返回的…...
Unity中如何修改Sprite的渲染网格
首先打开SpriteEditor 选择Custom OutLine,点击Genrate 则在图片边缘会出现边缘线,调整白色小方块可以调整边缘 调整后,Sprite就会按照调整后的网格渲染了。 如何在UI中使用? 只要在UI的Image组件中选择Use Sprite Mesh 即可 结果࿱…...
跟着 8.6k Star 的开源数据库,搞 RAG!
过去 9 年里,HelloGitHub 月刊累计收录了 3000 多个开源项目。然而,随着项目数量的增加,不少用户反馈:“搜索功能不好用,找不到想要的项目!” 这让我意识到,仅仅收录项目是不够的,还…...
每日一题 345. 反转字符串中的元音字母
345. 反转字符串中的元音字母 简单 class Solution { public:string reverseVowels(string s) {int l 0;int r s.size() - 1;unordered_set<char> st {a,A,E,e,i,I,O,o,U,u};while(l < r){while(l<r && !st.count(s[l]) ){l;}while(l<r &&…...
Stream API 的设计融合了多个经典设计模式
Stream API 的设计融合了多个经典设计模式: 1. 策略模式(Strategy Pattern) 策略模式定义了一个算法的家族,将每个算法封装起来,并使它们可以互换。Stream API 中的每个操作(如 filter(), map()ÿ…...
jmeter混合场景测试,设置多业务并发比例(吞吐量控制器)
jmeter混合场景测试,设置多业务并发比例(吞吐量控制器) 测试目的 为了验证需求提出的性能要求,结合实际可能的高压力场景,较全面的检测系统的性能表现。 测试方法 根据需求调研的业务模型和交易占比,设置不…...
直流有刷电机多环控制(PID闭环死区和积分分离)
直流有刷电机多环控制 提高部分-第8讲 直流有刷电机多环控制实现(1)_哔哩哔哩_bilibili PID模型 外环的输出作为内环的输入,外环是最主要控制的效果,主要控制电机的位置。改变位置可以改变速度,改变速度是受电流控制。 实验环境 【 !】功能简介: 按下KEY1使能电机,按下…...
vue-axios+springboot实现文件流下载
前端vue代码: <template><div class"app-container documentation-container"><div><el-button type"primary" click"downloadFile(test.xlsx)">下载test.xlsx</el-button></div></div> …...
selenium执行js
JS知识 获取元素 document.getElement 移除属性:removeAttribute("xx") 窗口移动:window.scrollTo(0, document.body.scrollHeight)方法 drivier.execute_script(js)场景: 日期选择框,不能输入,只能设置…...
每日算法Day11【左叶子之和、找树左下角的值、路径总和】
404.左叶子之和 算法链接: 404. 左叶子之和 - 力扣(LeetCode) 类型: 二叉树 难度: 简单 思路:要判断一个节点是否为左叶子节点,只能通过其父节点进行判断。 题解: /*** Definition for a binary tree node.* public class Tr…...
分享一下使用 AI 开发个人工具的迭代过程
分享一下使用 AI 开发个人工具的迭代过程:1. 找 gpt/claude 要一个 super shady coder 的人设 prompt;2. 简单介绍项目背景和基础需求给 gemini,生成最初的细化需求;3. 根据细化需求再次分析,完善边界条件,…...
大型语言模型(LLMs)演化树 Large Language Models
大型语言模型(LLMs)演化树 Large Language Models flyfish 下面的图来自论文地址 Transformer 模型(如 BERT 和 GPT-3)已经给自然语言处理(NLP)领域带来了革命性的变化。这得益于它们具备并行化能力&…...
部分背包问题
本节学习解决部分背包问题,部分背包代表物品可以按照一定比例被分割,而后放入背包内.这是十分经典的用贪心算法解决的问题. 问题描述: 给定一些物品,用matrix表示各个物品的属性,第一项表示物品的质量,第二项表示物品的总价值.现有一背包最大承重为M,试求如何让背包中所装物品…...
MongoDB学习和应用(高效的非关系型数据库)
一丶 MongoDB简介 对于社交类软件的功能,我们需要对它的功能特点进行分析: 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具: mysql:关系型数据库&am…...
8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂
蛋白质结合剂(如抗体、抑制肽)在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上,高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术,但这类方法普遍面临资源消耗巨大、研发周期冗长…...
Golang dig框架与GraphQL的完美结合
将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用,可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器,能够帮助开发者更好地管理复杂的依赖关系,而 GraphQL 则是一种用于 API 的查询语言,能够提…...
python如何将word的doc另存为docx
将 DOCX 文件另存为 DOCX 格式(Python 实现) 在 Python 中,你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是,.doc 是旧的 Word 格式,而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...
什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南
文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果
目录 一、SQL注入 二、字符型SQL注入 三、字符型注入与数字型注入 四、源码分析 五、渗透实战 1、渗透准备 2、SQL注入探测 (1)输入单引号 (2)万能注入语句 3、获取回显列orderby 4、获取数据库名database 5、获取表名…...
【WebSocket】SpringBoot项目中使用WebSocket
1. 导入坐标 如果springboot父工程没有加入websocket的起步依赖,添加它的坐标的时候需要带上版本号。 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId> </dep…...
