优秀开源云原生工具推荐——系列3
yuyutoo 2025-04-26 22:25 5 浏览 0 评论
云原生技术在效率上的巨大优势,使其日益成为IT发展的主流趋势。根据Gartner的预测,到2025年,云原生平台将成为95%以上的新数字化计划的基础。
围绕云原生中的各个方面,都有着非常出色的开源工具,涵盖容器调度、可观察性、持久性存储、容器运行时和其他领域。我们需要的就是发现优秀的工具,并在工作中合理地运用,让云原生之旅更加便捷高效。
本文继续为大家推荐云原生各方面的优秀开源工具。
包管理工具
Helm
说到包管理工具,当然肯定就要推荐 Helm 了。
Helm 是 kubernetes 生态系统中的一个软件包管理工具,类似 ubuntu 的 apt, centos 的 yum 或 python 的 pip 一样,专门负责管理 kubernetes 应用资源;使用 Helm 可以对 kubernetes 应用进行统一打包、分发、安装、升级以及回退等操作。
该项目目前拥有 30,000 多个 GitHub 星,每月从全球获得超过 200 万次下载。 2020 年 4 月,Helm 在 CNCF 中毕业,加入 Fluentd、containerd 等行列
当前 helm 基本是使用kubernetes时的首先项,如果需要对 kubernetes 进行包管理,那么选择 helm 肯定可以满足需求。
网站:https://helm.sh/
项目:
https://github.com/helm/helm
Build Tools
Buildpack
首先要提到的就是Buildpack.
Buildpack于 2011 年由 Heroku 首次构想。从那时起,它们已被 Cloud Foundry 和其他 PaaS 采用,例如 Google App Engine、Gitlab、Knative、Deis、Dokku 和 Drie
Cloud Native Buildpacks 项目由 Pivotal 和 Heroku 于 2018 年 1 月发起,并于 2018 年 10 月加入云原生计算基金会。该项目旨在通过定义明确且包含学习的平台到 buildpack 合约来统一 Buildpack生态系统 在 Pivotal 和 Heroku 维护生产机构建包多年。
Cloud Native Buildpacks(CNB) 可以看成是基于云原生的 Buildpacks 技术,它支持现代语言生态系统,对开发者屏蔽了应用构建、部署的细节,如选用哪种操作系统、编写适应镜像操作系统的处理脚本、优化镜像大小等等,并且会产出 OCI 容器镜像,可以运行在任何兼容 OCI 镜像标准的集群中。CNB 还拥抱了很多更加云原生的特性,例如跨镜像仓库的 blob 挂载和镜像层级 rebasing。
网站:https://buildpacks.io/
项目:
https://github.com/buildpacks/pack
Jib
除了buildpack以外,还有一些开源工具值得关注,首先就是Jib.
Jib是google开源的Java容器化工具 Jib 为您的 Java 应用程序构建优化的 Docker 和 OCI 映像,无需 Docker 守护程序 - 也无需深入掌握 Docker 最佳实践。 它可用作 Maven 和 Gradle 的插件以及 Java 库。
Jib的定位非常清晰,不像buildpack 那样支持全面,但是针对Java的项目有着非常多的优化。在项目进行快速迭代时,Jib只讲发生变更的层(而不是整个应用程序)推送到注册表来节省宝贵的构建时间。Jib支持根据Maven和Gradle的构建元数据进行声明式的容器镜像构建,因此,只要输入保持不变,就可以通过配置重复创建相同的镜像。
项目:
https://github.com/GoogleContainerTools/jib
另一个Google开源的专门针对GO语言的开源工具Ko,同样也可以了解一下。
项目:
https://github.com/ko-build/ko
云原生网络
Cilium
首先要推荐到的是Cilium.
Cilium 是具有基于 eBPF 的数据平面的网络、可观察性和安全解决方案。 它提供了一个简单的平面第 3 层网络,能够以本机路由或覆盖模式跨越多个集群。 它支持 L7 协议,并且可以使用与网络寻址分离的基于身份的安全模型在 L3-L7 上实施网络策略。
Cilium 为 Pod 之间和外部服务之间的流量实现分布式负载平衡,并且能够完全替代 kube-proxy,在 eBPF 中使用高效的哈希表,几乎可以无限扩展。 它还支持集成入口和出口网关、带宽管理和服务网格等高级功能,并提供深度网络和安全可见性和监控。
BPF是Linux内核中一种高度灵活和高效的虚拟机类构造,允许以安全的方式在各个挂钩点执行字节码。 它用于许多Linux内核子系统,最突出的是网络,跟踪和安全性(例如沙盒)。如果还不了解,可以先了解一下。https://ebpf.io/
网站:https://cilium.io/
项目:
https://github.com/cilium/cilium
Antrea
另一个值得关注的项目是Antrea
Antrea 是一个 Kubernetes 原生项目,它实现了容器网络接口 (CNI) 和 Kubernetes NetworkPolicy,从而为 Pod 工作负载提供网络连接和安全性。 Antrea 将可编程网络的优势从 Open vSwitch (OVS) 扩展到 Kubernetes。目前项目是CNCF的sandbox项目,还是比较早期的阶段。
网站:https://antrea.io/
项目:
https://github.com/antrea-io/antrea
消息通信
说道消息通信,我们首先来推荐一下规范。
CloudEvents
CloudEvents 是一种以通用方式描述事件数据的规范。 CloudEvents 旨在显着简化跨服务、平台等的事件声明和交付!
CloudEvents 是一项新的尝试,并且仍在积极开发中。 然而,它的工作组收到了惊人的行业兴趣,从主要的云提供商到流行的 SaaS 公司。 该规范现在属于云原生计算基金会
Other CNCF streaming and messaging projects include NATS, Pravega, Strimzi and Tremor.
网站:https://cloudevents.io/
项目:
https://github.com/cloudevents
说完了规范,我们来推荐一个消息通信系统:NATS
NATS
NATS是一个开源的、轻量级的、高性能的分布式消息通信系统,实现了高可伸缩性和优雅的发布/订阅模型。NATS适合云基础设施的消息通信系统、IoT设备消息通信和微服务架构。
NATS凭借其轻量、高性能的特性, 正在全球大量的公司使用,涵盖的用例包括微服务、边缘计算、移动、物联网,并可用于增强或替代传统消息传递。
网站:https://nats.io/
项目:
https://github.com/nats-io
安全和合规性
HummerRisk
在安全和合规性方面,开源项目推荐HummerRisk。HummerRisk 是一款开源的云原生安全平台,以非侵入的方式解决云原生的安全和治理问题。核心能力包括混合云的安全治理和K8S容器云安全检测。
首先可以快速实现跨云的持续合规性检测,因为是国内开源,对国内的云支持度非常好。另外就是可以对云原生资源进行安全检测,比如镜像、容器、K8s以及源代码等。同时项目保持了高度的灵活性,针对规则和检测都可以快速的实现自定义,以及产品扩充。
网站:
https://www.hummercloud.com/
项目地址:
https://github.com/HummerRisk/HummerRisk
云原生展望
到 2023 年,大多数应用程序将是云原生的。 云原生世界将持续发展,开源是支持我们的微服务、容器化和 DevOps 新时代的基础。尽管从技术上讲,您可以使用这些开源项目通过开发和运营自行托管,但组织很可能会采用开源、闭源和SaaS产品的组合来完成工作。 无论如何,很高兴知道可以免费使用什么。
工具会持续变化,时刻跟上上技术趋势才能保持领先。
下一篇我们会继续讨论混沌工程、密码管理、边缘计算方面的开源工具等。
相关推荐
- ETCD 故障恢复(etc常见故障)
-
概述Kubernetes集群外部ETCD节点故障,导致kube-apiserver无法启动。...
- 在Ubuntu 16.04 LTS服务器上安装FreeRADIUS和Daloradius的方法
-
FreeRADIUS为AAARadiusLinux下开源解决方案,DaloRadius为图形化web管理工具。...
- 如何排查服务器被黑客入侵的迹象(黑客 抓取服务器数据)
-
---排查服务器是否被黑客入侵需要系统性地检查多个关键点,以下是一份详细的排查指南,包含具体命令、工具和应对策略:---###**一、快速初步检查**####1.**检查异常登录记录**...
- 使用 Fail Ban 日志分析 SSH 攻击行为
-
通过分析`fail2ban`日志可以识别和应对SSH暴力破解等攻击行为。以下是详细的操作流程和关键分析方法:---###**一、Fail2ban日志位置**Fail2ban的日志路径因系统配置...
- 《5 个实用技巧,提升你的服务器安全性,避免被黑客盯上!》
-
服务器的安全性至关重要,特别是在如今网络攻击频繁的情况下。如果你的服务器存在漏洞,黑客可能会利用这些漏洞进行攻击,甚至窃取数据。今天我们就来聊聊5个实用技巧,帮助你提升服务器的安全性,让你的系统更...
- 聊聊Spring AI Alibaba的YuQueDocumentReader
-
序本文主要研究一下SpringAIAlibaba的YuQueDocumentReaderYuQueDocumentReader...
- Mac Docker环境,利用Canal实现MySQL同步ES
-
Canal的使用使用docker环境安装mysql、canal、elasticsearch,基于binlog利用canal实现mysql的数据同步到elasticsearch中,并在springboo...
- RustDesk:开源远程控制工具的技术架构与全场景部署实战
-
一、开源远程控制领域的革新者1.1行业痛点与解决方案...
- 长安汽车一代CS75Plus2020款安装高德地图7.5
-
不用破解原车机,一代CS75Plus2020款,安装车机版高德地图7.5,有红绿灯读秒!废话不多讲,安装步骤如下:一、在拨号状态输入:在电话拨号界面,输入:*#518200#*(进入安卓设置界面,...
- Zookeeper使用详解之常见操作篇(zookeeper ui)
-
一、Zookeeper的数据结构对于ZooKeeper而言,其存储结构类似于文件系统,也是一个树形目录服务,并通过Key-Value键值对的形式进行数据存储。其中,Key由斜线间隔的路径元素构成。对...
- zk源码—4.会话的实现原理一(会话层的基本功能是什么)
-
大纲1.创建会话...
- Zookeeper 可观测性最佳实践(zookeeper能够确保)
-
Zookeeper介绍ZooKeeper是一个开源的分布式协调服务,用于管理和协调分布式系统中的节点。它提供了一种高效、可靠的方式来解决分布式系统中的常见问题,如数据同步、配置管理、命名服务和集群...
- 服务器密码错误被锁定怎么解决(服务器密码错几次锁)
-
#服务器密码错误被锁定解决方案当服务器因多次密码错误导致账户被锁定时,可以按照以下步骤进行排查和解决:##一、确认锁定状态###1.检查账户锁定状态(Linux)```bash#查看账户锁定...
- zk基础—4.zk实现分布式功能(分布式zk的使用)
-
大纲1.zk实现数据发布订阅...
- 《死神魂魄觉醒》卡死问题终极解决方案:从原理到实战的深度解析
-
在《死神魂魄觉醒》的斩魄刀交锋中,游戏卡死犹如突现的虚圈屏障,阻断玩家与尸魂界的连接。本文将从技术架构、解决方案、预防策略三个维度,深度剖析卡死问题的成因与应对之策,助力玩家突破次元壁障,畅享灵魂共鸣...
你 发表评论:
欢迎- 一周热门
-
-
前端面试:iframe 的优缺点? iframe有那些缺点
-
带斜线的表头制作好了,如何填充内容?这几种方法你更喜欢哪个?
-
漫学笔记之PHP.ini常用的配置信息
-
推荐7个模板代码和其他游戏源码下载的网址
-
其实模版网站在开发工作中很重要,推荐几个参考站给大家
-
[干货] JAVA - JVM - 2 内存两分 [干货]+java+-+jvm+-+2+内存两分吗
-
正在学习使用python搭建自动化测试框架?这个系统包你可能会用到
-
织梦(Dedecms)建站教程 织梦建站详细步骤
-
【开源分享】2024PHP在线客服系统源码(搭建教程+终身使用)
-
2024PHP在线客服系统源码+完全开源 带详细搭建教程
-
- 最近发表
-
- ETCD 故障恢复(etc常见故障)
- 在Ubuntu 16.04 LTS服务器上安装FreeRADIUS和Daloradius的方法
- 如何排查服务器被黑客入侵的迹象(黑客 抓取服务器数据)
- 使用 Fail Ban 日志分析 SSH 攻击行为
- 《5 个实用技巧,提升你的服务器安全性,避免被黑客盯上!》
- 聊聊Spring AI Alibaba的YuQueDocumentReader
- Mac Docker环境,利用Canal实现MySQL同步ES
- RustDesk:开源远程控制工具的技术架构与全场景部署实战
- 长安汽车一代CS75Plus2020款安装高德地图7.5
- Zookeeper使用详解之常见操作篇(zookeeper ui)
- 标签列表
-
- mybatis plus (70)
- scheduledtask (71)
- css滚动条 (60)
- java学生成绩管理系统 (59)
- 结构体数组 (69)
- databasemetadata (64)
- javastatic (68)
- jsp实用教程 (53)
- fontawesome (57)
- widget开发 (57)
- vb net教程 (62)
- hibernate 教程 (63)
- case语句 (57)
- svn连接 (74)
- directoryindex (69)
- session timeout (58)
- textbox换行 (67)
- extension_dir (64)
- linearlayout (58)
- vba高级教程 (75)
- iframe用法 (58)
- sqlparameter (59)
- trim函数 (59)
- flex布局 (63)
- contextloaderlistener (56)