写点什么

优秀开源云原生工具推荐——系列 3

作者:HummerCloud
  • 2022-10-26
    北京
  • 本文字数:2751 字

    阅读完需:约 9 分钟

优秀开源云原生工具推荐——系列3

云原生技术在效率上的巨大优势,使其日益成为 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 产品的组合来完成工作。 无论如何,很高兴知道可以免费使用什么。

工具会持续变化,时刻跟上上技术趋势才能保持领先。

下一篇我们会继续讨论混沌工程、密码管理、边缘计算方面的开源工具等。

发布于: 刚刚阅读数: 3
用户头像

HummerCloud

关注

还未添加个人签名 2022-09-07 加入

还未添加个人简介

评论

发布
暂无评论
优秀开源云原生工具推荐——系列3_开源_HummerCloud_InfoQ写作社区