从无服务器到本地开发,Github 上有数以千计的开源工具可供使用。Kubernetes 是当今最流行的技术之一。 因此,GitHub 上有大量开源库和工具也不足为奇。本文根据流行度、Star 数量等综合指标,推荐五款开源工具以供不同阶段的开发人员选择。
Minikube
Minikube 在 Github 上的 Star 数量为 12355,Fork 数为 1845。Minikube 是一种可以轻松改善本地集群体验的工具,可以在本地轻松运行 Kubernetes。Minikube 经常被用来作为对初学者的建议,因为它允许用户在笔记本电脑的 VM 内运行单节点 Kubernetes 集群,开发人员可尝试 Kubernetes 体验而无需设置所有内容,这非常适合刚刚涉足 Kubernetes 的人员。
新用户可以运行 Kubernetes 集群并使用精选示例,而无需具备大量配置知识。Minikube 通过仅使用 kubectl 和减少数量的 Kubernetes 函数来达到这一目的。Minikube 适用于 macOS、Linux、Windows 和其他操作系统,内有简单命令设置,具有最小依赖性和资源开销。
项目地址:https://github.com/kubernetes/minikube
Tilt
Tilt 项目在 Github 上的 Star 数量为 1667,该项目旨在让本地 Kubernetes 开发没有压力,主要是为微服务开发提供无压力体验。使用 Tilt 开发微服务允许开发人员在自己的 IDE 中编辑并保存到文件系统,开发人员可在为团队完美配置的环境中处理微服务。
此工具可以将不同的服务问题收集到一个 UI 中,为微服务进行争用。通过在容器中运行所有内容,Tilt 巧妙避免了依赖性问题。复杂项目经过优化,占用空间极小,上传速度更快。
项目地址:https://github.com/windmilleng/tilt
Rook
Rook 是 Kubernetes 的云原生存储协调器,在 Github 上的 Star 数为 4277,目前仍在与 Cloud Native Computing Foundation(云原生基金会)合作,该项目为本地集成云环境提供存储解决方案支持。
基本上,Rook 采用普通的存储软件并自行管理。 通过使用 Kubernetes 底层工具,Rook 使存储服务可以自动进行部署、引导、配置、供应、扩展、升级和迁移。目前,Rook 拥有数量有限的受支持存储供应商,但这一列表也在日益增长!
项目地址:https://github.com/rook/rook
Rancher
Rancher 项目可让开发者在同一界面管理数百个集群,Rancher 提供了一个容器管理平台,旨在生产中部署大量容器。此外,Rancher 还可以让开发人员在任何平台运行 Kubernetes。
Rancher 主要还是一种管理工具,为集群带来额外的统一控制。Rancher 集中管理规模较大的集群,甚至可以让全局管理员在需要时从一个位置控制集群访问。该平台具有详细的监控和警报功能,可以发送日志,甚至可以直接与 Helm 集成,具备管道引擎可以自动部署和升级工作负载。
项目地址:https://rancher.com/what-is-rancher/overview/
Fission
无服务器同样是一个很火但相对较新的话题,Fission 在 Github 上的 Star 数为 3977。Fission 可以让开发人员在 Kubernetes 实现中享受无服务器功能。Fission 为 Kubernetes 提供无服务器框架,专注于高性能和提高生产力,启动速度可提高约 100ms。
通过将 Kubernetes 作为基础,Fission 也可为微服务带来无服务器功能。此外,这意味着可以将常规 Kubernetes 操作(如监视或日志聚合)引入到 Fission 部署中。
任何语言都可以扩展,Fission 只对代码进行操作。虽然 Fission 的核心是用 Go 语言编写的,但 Kubernetes 和 Docker 可在正常操作下被抽象出来。此外,Fission 还集成了许多其他语言,比如 Python,Node.js,PHP 等。
项目地址:https://github.com/fission/fission
如果你有更好的推荐,欢迎在评论区留言。
评论