50+ 顶级开源 Kubernetes 工具列表

admin 6年前
   <p>近日,Kubernetes 1.13 正式发布,这是 2018 年发布的第四次也是最后一次大版本,该版本继续关注 Kubernetes 稳定性和可扩展性,对存储和集群生命周期的主要功能实现高可用。Kubeadm 简化了集群管理、容器存储接口(CSI)并将 CoreDNS 作为默认 DNS。</p>    <p>最近两年,Kubernetes 给容器战场带来了巨大冲击,Docker Swarm 也未能成为其对手,类似 AWS 的主流云供应商纷纷提供 K8s 支持。本文总结了 50 多种 Kubernetes 集群部署、监控、安全及测试等相关工具,大部分为开源项目,非常适合技术人员入门。</p>    <h2>原生可视化与控制</h2>    <p>1、Kubernetes Dashboard</p>    <p>Kubernetes Dashboard 是 Kubernetes 集群基于 Web 的通用 UI,使用本地仪表板对 K8s 集群进行故障排除和监控要容易得多,但需要在计算机和 Kubernetes API 服务器之间创建安全代理通道才能访问。原生 Kubernetes Dashboard 依赖 Heapster 数据收集器,因此也需安装在系统中。</p>    <p>链接:</p>    <p><a href="/misc/goto?guid=5048130025865022570" rel="nofollow,noindex">https://github.com/kubernetes/dashboard#kubernetes-dashboard</a></p>    <p>成本: 免费</p>    <h2>测试</h2>    <p>2、Kube-monkey</p>    <p>Kube-monkey 遵循混沌工程原理,可随机删除 K8s pod 并检查服务是否具有故障恢复能力,并提高系统健康性。Kube-monkey 由 TOML 文件配置,可在其中指定要杀死的应用程序及恢复时间。</p>    <p>链接:  <a href="/misc/goto?guid=5048130025979173238" rel="nofollow,noindex">https://github.com/asobti/kube-monkey</a></p>    <p>成本: 免费</p>    <p>3、K8s-testsuite</p>    <p>K8s-testsuite 由两个 Helm 图组成,可用于网络带宽测试和单个 Kubernetes 集群负载测试。负载测试模拟带有 loadbots 的简单 Web 服务器,这些服务器作为基于 Vegeta 的 Kubernetes 微服务运行。网络测试在内部使用 iperf3 和 netperf-2.7.0 并运行三次,两组测试均会生成包含所有结果和指标的综合日志消息。</p>    <p>链接:  <a href="/misc/goto?guid=5048130026067066737" rel="nofollow,noindex">https://github.com/mrahbar/k8s-testsuite</a></p>    <p>成本: 免费</p>    <p>4、Test-infra</p>    <p>Test-infra 是 Kubernetes 测试和结果验证的工具集合,可显示历史记录、聚合故障及当前正在测试的内容。用户可通过创建测试作业增强 test-infra 套件。Test-infra 可使用 Kubetest 工具对不同提供商的完整 Kubernetes 生命周期模拟并进行端到端测试。</p>    <p>链接:  <a href="/misc/goto?guid=5048130027010464425" rel="nofollow,noindex">https://github.com/kubernetes/test-infra</a></p>    <p>成本: 免费</p>    <p>5、Sonobuoy</p>    <p>Sonobuoy 允许以可访问和非破坏方式运行一组测试了解当前 Kubernetes 集群状态。Sonobuoy 生成信息报告,其中包含有关集群性能的详细信息。Sonobuoy 支持 Kubernetes 1.8 及更高版本,Sonobuoy Scanner 是一个基于浏览器的工具,允许通过几次单击测试 Kubernetes 集群,但 CLI 版本有更多测试可用。</p>    <p>链接:  <a href="/misc/goto?guid=5048130027172741788" rel="nofollow,noindex">https://github.com/heptio/sonobuoy</a></p>    <p>成本: 免费</p>    <p>6、PowerfulSeal</p>    <p>PowerfulSeal 是一种类似 Kube-monkey 的工具,遵循混沌工程原理。PowerfulSeal 可杀死 pod 并从集群中删除或者添加 VM。与 Kube-monkey 相比,PowefulSeal 具有交互模式,允许手动中断特定集群组件。此外,PowefulSeal 除了 SSH 之外不需要外部依赖。</p>    <p>链接:  <a href="/misc/goto?guid=5048130027274176150" rel="nofollow,noindex">https://github.com/bloomberg/powerfulseal</a></p>    <p>成本: 免费</p>    <h2>集群部署工具</h2>    <p>7、Kubespray</p>    <p>Kubespray 为 Kubernetes 部署和配置提供一组 Ansible 角色。Kubespray 可使用 AWS,GCE,Azure,OpenStack 或裸机基础架构即服务(IaaS)平台。 Kubespray 是一个开源项目,具有开放的开发模型。对于已经了解 Ansible 的人来说,该工具是一个不错的选择,因为不需要使用其他工具进行配置和编排。</p>    <p>链接:  <a href="/misc/goto?guid=5048130027372054518" rel="nofollow,noindex">https://github.com/kubernetes-incubator/kubespray</a></p>    <p>成本: 免费</p>    <p>8、Minikube</p>    <p>Minikube 允许在本地安装和试用 Kubernetes,该工具是使用 Kubernetes 的良好起点,可在笔记本电脑的虚拟机(VM)中轻松启动单节点 Kubernetes 集群。Minikube 适用于 Windows、Linux 和 OSX。在短短 5 分钟内,用户就可以探索 Kubernetes 的特点,只需一个命令即可启动 Minikube 仪表板。</p>    <p>链接:  <a href="/misc/goto?guid=5048130027453379480" rel="nofollow,noindex">https://github.com/kubernetes/minikube</a></p>    <p>成本: 免费</p>    <p>9、Kubeadm</p>    <p>Kubeadm 是自 1.4 版以来的 Kubernetes 分发工具,该工具有助于在现有基础架构上引导最佳 Kubernetes 集群实践,但 Kubeadm 无法配置基础架构,其主要优点是能够在任何地方发布最小的可行 Kubernetes 集群。但是,附加组件和网络设置都不属于 Kubeadm 范围,因此需要手动或使用其他工具进行安装。</p>    <p>链接:  <a href="/misc/goto?guid=5048130027545059149" rel="nofollow,noindex">https://github.com/kubernetes/kubeadm</a></p>    <p>成本: 免费</p>    <p>10、Kops</p>    <p>Kops 可帮助用户从命令行创建、销毁、升级和维护生产级高可用 Kubernetes 集群。AWS 目前正式支持,GCE 处于测试支持状态,而 alpha vSphere 中的 VMware vSphere 以及其他平台均予以支持。Kops 可控制完整 Kubernetes 集群生命周期,从基础架构配置到集群删除。</p>    <p>链接:  <a href="/misc/goto?guid=4959012947780572169" rel="nofollow,noindex">https://github.com/kubernetes/kops</a></p>    <p>成本: 免费</p>    <p>11、Bootkube</p>    <p>CoreOS 提供自托管 Kubernetes 集群概念,自托管集群方法的中心是 Bootkube。Bootkube 可设置临时 Kubernetes 控制平面,该平面将一直运行,直到自托管控制平面能够处理请求。</p>    <p>链接:  <a href="/misc/goto?guid=5048130027665824647" rel="nofollow,noindex">https://github.com/kubernetes-incubator/bootkube</a></p>    <p>成本: 免费</p>    <p>12、Kubernetes on AWS (Kube-AWS)</p>    <p>Kube-AWS 是 CoreOS 提供的控制台工具,使用 AWS CloudFormation 部署功能齐全的 Kubernetes 集群。Kube-AWS 允许部署传统 Kubernetes 集群,并使用本机 AWS 功能(比如 ELB、S3 和 Auto Scaling 等)自动配置每个 K8s 服务。</p>    <p>链接:  <a href="/misc/goto?guid=5048130027752138286" rel="nofollow,noindex">https://github.com/kubernetes-incubator/kube-aws</a> ]"> <a href="/misc/goto?guid=5048130027849639073" rel="nofollow,noindex">https://github.com/kubernetes-incubator/kube-aws</a> ]</p>    <p>成本: 免费</p>    <p>13、SimpleKube</p>    <p>SimpleKube 是一个 bash 脚本,可在 Linux 服务器上部署单节点 Kubernetes 集群。虽然 Minikube 需要虚拟机管理程序(VirtualBox,KVM),但 SimpleKube 会将所有 K8s 二进制文件安装到服务器。Simplekube 在 Debian 8/9 和 Ubuntu 16.x / 17.x 上进行测试,这同样是入门 Kubernetes 的好工具。</p>    <p>链接:  <a href="/misc/goto?guid=5048130027935209201" rel="nofollow,noindex">https://github.com/valentin2105/Simplekube</a></p>    <p>成本: 免费</p>    <p>14、Juju</p>    <p>Juju 是 Canonical 提供的服务编排工具,可让用户远程操作云提供商解决方案。Juju 的工作抽象级别高于 Puppet、Ansible 和 Chef,并且管理服务而不是虚拟机。Canonical 努力在生产中提供称之为合适的“Kubernetes-core bundle”。Juju 可作为专用工具使用,具有控制台 UI 界面,也可作为 JaaS 服务。</p>    <p>链接:  <a href="/misc/goto?guid=4958965946607884804" rel="nofollow,noindex">https://jujucharms.com/</a></p>    <p>成本: 社区版免费,商业版每年 200 美元起</p>    <p>15、Conjure-up</p>    <p>Conjure-up 同样是 Canonical 的产品,允许使用简单命令部署 Kubernetes 在 Ubuntu 上的规范分布,支持 AWS、GCE、Azure、Joyent、OpenStack、VMware 和 localhost 部署。Juju、MAAS 和 LXD 是 Conjure-up 的基础。</p>    <p>链接:  <a href="/misc/goto?guid=5048130028063621646" rel="nofollow,noindex">https://conjure-up.io/</a></p>    <p>成本: 免费</p>    <h2>监测工具</h2>    <p>16、Kubebox</p>    <p>Kubebox 是 Kubernetes 集群的终端控制台,允许使用界面管理和监控集群实时状态。Kubebox 可显示 pod 资源使用情况,集群监视和容器日志等。此外,用户可轻松导航到所需的命名空间并执行到所需容器,以便快速排障或恢复。</p>    <p>链接:  <a href="/misc/goto?guid=5048130028172277827" rel="nofollow,noindex">https://github.com/astefanutti/kubebox</a></p>    <p>成本: 免费</p>    <p>17、Kubedash</p>    <p>Kubedash 为 Kubernetes 提供性能分析 UI,汇总不同来源的指标,并为管理员提供高级分析数据。Kubedash 使用 Heapster 作为数据源,默认情况下在所有 Kubernetes 集群中作为服务运行,为各个容器收集指标并分析。</p>    <p>链接:  <a href="/misc/goto?guid=5048130028303400021" rel="nofollow,noindex">https://github.com/kubernetes-retired/kubedash</a></p>    <p>成本: 免费</p>    <p>18、Kubernetes Operational View (Kube-ops-view)</p>    <p>Kube-ops-view 是一个用于多 K8s 集群的只读系统仪表板。使用 Kube-ops-view,用户可轻松在集群和监控节点之间导航,并监控 pod 健康状况。Kube-ops-view 可以动画 Kubernetes 进程,例如 pod 创建和终止,使用 Heapster 作为数据源。</p>    <p>链接:  <a href="/misc/goto?guid=5048130028445865869" rel="nofollow,noindex">https://github.com/hjacobs/kube-ops-view</a></p>    <p>成本: 免费</p>    <p>19、Kubetail</p>    <p>Kubetail 是一个小型 bash 脚本,允许将多个 pod 日志聚合到一个流中。最初的 Kubetail 没有过滤或突出显示功能,但 Github 上的额外 Kubetail 版本可使用多尾工具形成并执行日志着色。</p>    <p>链接: </p>    <p><a href="/misc/goto?guid=5048130028567646473" rel="nofollow,noindex">https://github.com/johanhaleby/kubetail</a> <a href="/misc/goto?guid=5048130028703050007" rel="nofollow,noindex">https://github.com/aks/kubetail</a></p>    <p>成本: 免费</p>    <p>20、Kubewatch</p>    <p>Kubewatch 可将 K8s 活动发布到 Slack 应用。Kubewatch 作为 Kubernetes 集群内的 pod 运行,并监视系统中发生的变化,可通过编辑配置文件来指定要接收的通知。</p>    <p>链接:  <a href="/misc/goto?guid=5048130028845917375" rel="nofollow,noindex">https://github.com/bitnami-labs/kubewatch</a></p>    <p>成本: 免费</p>    <p>21、Weave Scope</p>    <p>Weave Scope 是 Docker 和 Kubernetes 集群的故障排除和监视工具,可以自动生成应用程序和基础架构拓扑,轻松识别应用程序性能瓶颈,可以将 Weave Scope 部署为本地服务器或笔记本电脑上的独立应用程序,也可以选择 Weave Cloud 上的 Weave Scope 软件即服务(SaaS)解决方案。使用 Weave Scope,用户可根据名称、标签或资源消耗轻松对容器分组、过滤或搜索。</p>    <p>链接:  <a href="/misc/goto?guid=5048130028980631088" rel="nofollow,noindex">https://www.weave.works/oss/scope/</a></p>    <p>成本: 标准模式提供 30 天免费体验,企业版每节点每月 150 美元</p>    <p>22、Searchlight</p>    <p>AppsCode 提供的 Searchlight 是满足 Icinga 的 Kubernetes 编排工具。Searchlight 会定期对 Kubernetes 集群执行检查,并在出现问题时通过电子邮件、短信或其他方式提醒。Searchlight 包含专门为 Kubernetes 编写的默认检查套件。此外,可通过外部黑匣子增强 Prometheus 监控,并在内部系统完全失效的情况下作为备份。</p>    <p>链接:  <a href="/misc/goto?guid=5048130029122631878" rel="nofollow,noindex">https://github.com/appscode/searchlight</a></p>    <p>成本: 免费</p>    <p>23、Heapster</p>    <p>Heapster 为 Kubernetes 提供容器集群监控和性能分析。Heapster 本身支持 Kubernetes,可在所有 K8s 设置上作为 pod 运行,可将 Heapster 数据推送到可配置的后端进行存储和可视化。</p>    <p>链接:  <a href="/misc/goto?guid=5048130029261177535" rel="nofollow,noindex">https://github.com/kubernetes/heapster</a></p>    <p>成本: 免费</p>    <h2>安全</h2>    <p>24、Trireme</p>    <p>Trireme 适用于所有 Kubernetes 集群,允许管理来自不同集群的 pod 间流量,主要优点是不需要任何集中策略管理,能够轻松组织部署在 Kubernetes 中的资源交互,并且没有 SDN、VLAN 标签和子网的复杂性(Trireme 使用传统 L3- 网络)。</p>    <p>链接:  <a href="/misc/goto?guid=5048130029394481999" rel="nofollow,noindex">https://github.com/aporeto-inc/trireme-kubernetes</a></p>    <p>成本: 免费</p>    <p>25、Aquasec</p>    <p>Aquasec 为 Kubernetes 部署提供完整的生命周期安全性。Aqua Security 在每个容器实例上部署专用代理,该实例用作防火墙并阻止容器中的安全漏洞,此代理与中央 Aqua Security 控制台进行通信,该控制台强制执行已定义的安全限制。Aqua Security 还有助于为云和内部部署环境组织灵活的安全交付管道。Kube-Bench 是 AquaSec 发布的开源工具,根据 CIS Kubernetes Benchmark 中的测试列表检查 Kubernetes 环境。</p>    <p>链接:  <a href="/misc/goto?guid=5048130029530757957" rel="nofollow,noindex">https://www.aquasec.com/</a></p>    <p>成本: 每次扫描 0.29 美元</p>    <p>26、Twistlock</p>    <p>Twistlock 可用作云原生应用程序防火墙,并分析容器和服务之间的网络流量。Twistlock 能够分析标准容器行为并据此生成适当规则,管理员不必手动生成。Twistlock 还支持 2.2 版本的 Kubernetes CIS 基准测试。</p>    <p>链接:  <a href="/misc/goto?guid=5048130029753760118" rel="nofollow,noindex">https://www.twistlock.com/</a></p>    <p>成本: 每年每个许可 1700 美元起 (可免费试用)</p>    <p>27、Sysdig Falco</p>    <p>Sysdig Falco 是一种行为活动监视器,旨在检测应用程序异常。Falco 基于 Sysdig 项目,这是一个开源工具(现在是商业项目),通过跟踪内核系统调用来监控容器性能。Falco 允许使用一组规则持续监视和检测容器、应用程序、主机和网络活动。</p>    <p>链接:  <a href="/misc/goto?guid=5048130029892635599" rel="nofollow,noindex">https://sysdig.com/opensource/falco/</a></p>    <p>成本: 独立工具可免费使用 </p>    <p>基于云: 每月 20 美元 per month (免费试用)</p>    <p>Pro Cloud: 每月 30 美元</p>    <p>Pro Software: 定制价格</p>    <p>28、Sysdig Secure</p>    <p>Sysdig Secure 是 Sysdig Container Intelligence Platform 的一部分,具有无与伦比的容器可见性并与容器编排工具深度集成,开箱即用,包括 Kubernetes、Docker、AWS ECS 和 Apache Mesos。Sysdig Secure 可实施服务感知策略,阻止攻击并分析历史记录及监控集群性能。</p>    <p>链接:  <a href="/misc/goto?guid=5048130030027854364" rel="nofollow,noindex">https://sysdig.com/product/secure/</a></p>    <p>成本: 工具免费 </p>    <p>Pro Cloud: 定制价格</p>    <p>Pro Software: 定制价格</p>    <p>29、 <a href="/misc/goto?guid=5048130030258259107" rel="nofollow,noindex">Kubesec.io</a></p>    <p>Kubesec.io 可为 Kubernetes 资源评分并提供安全功能,Kubesec.io 根据安全性最佳实践验证资源配置。因此,用户将获得有关提高整体系统安全性的全面控制和建议。该网站包含大量与容器和 Kubernetes 安全相关的链接。</p>    <p>成本: 免费</p>    <h2>CLI 工具</h2>    <p>30、Cabin</p>    <p>Cabin 用作移动仪表板,可远程管理 Kubernetes 集群。 借助 Cabin,用户可快速管理应用程序,扩展部署并通过 Android 或 iOS 设备对整个 K8s 集群进行故障排除。Cabin 是 K8s 集群运营商的理想工具,因为允许在发生事故时执行快速补救措施。</p>    <p>链接:  <a href="/misc/goto?guid=5048130030403606682" rel="nofollow,noindex">https://github.com/bitnami-labs/cabin</a></p>    <p>成本: 免费</p>    <p>31、Kubectx/Kubens</p>    <p>Kubectx 是一个小型开源实用工具,可以增强 Kubectl 功能,轻松切换上下文并同时连接到几个 Kubernetes 集群。Kubens 允许在 Kubernetes 命名空间之间导航,这两个工具在 bash/zsh/fish shell 上都有自动完成功能。</p>    <p>链接:  <a href="/misc/goto?guid=5048130030540668827" rel="nofollow,noindex">https://github.com/ahmetb/kubectx</a></p>    <p>成本: 免费</p>    <p>32、 Kube-shell</p>    <p>使用 kubectl 时,Kube-shell 可提高工作效率,其可通过命令自动完成部分工作。此外,Kube-shell 将提供有关已执行命令的在线文档。Kube-shell 甚至可以在错误输入时搜索和更正命令,是提高 K8s 控制台性能和工作效率的绝佳工具。</p>    <p>链接:  <a href="/misc/goto?guid=5048130030689852497" rel="nofollow,noindex">https://github.com/cloudnativelabs/kube-shell</a></p>    <p>成本: 免费</p>    <p>33、Kail</p>    <p>Kail 是 Kubernetes tail 的缩写,适用于 Kubernetes 集群。Kail 可为所有匹配 pod 添加 Docker 日志。Kail 允许按服务、部署、标签和其他功能过滤 pod。如果 Pod 符合条件,则会在启动后自动添加(或删除)到日志中。</p>    <p>链接:  <a href="/misc/goto?guid=5048130030832317959" rel="nofollow,noindex">https://github.com/boz/kail</a></p>    <p>成本: 免费</p>    <h2>部署工具</h2>    <p>34、Telepresence</p>    <p>Telepresence 通过 Kubernetes 环境的代理数据本地调试集群到本地进程的可能性。Telepresence 能够为本地代码提供对 Kubernetes 服务和 AWS/GCP 资源的访问,因为它将部署到集群。通过 Telepresence,Kubernetes 可将本地代码视为集群中的普通 pod。</p>    <p>链接:  <a href="/misc/goto?guid=4959012948998627876" rel="nofollow,noindex">https://www.telepresence.io/</a></p>    <p>成本: 免费</p>    <p>35、Helm</p>    <p>Helm 可与 Char 一起运行,Char 是构成分布式应用程序的 Kubernetes 资源归档集,可通过创建 Helm 图表共享应用程序,Helm 允许构建并轻松管理 Kubernetes 配置。</p>    <p>链接:  <a href="/misc/goto?guid=4959012948682273958" rel="nofollow,noindex">https://github.com/kubernetes/helm</a></p>    <p>成本: 免费</p>    <p>36、Keel</p>    <p>Keel 允许自动执行 Kubernetes 部署更新,并可在专用命名空间中作为 Kubernetes 服务启动。通过这种方式,Keel 为环境带来了最小负载,并显著增加稳健性。Keel 通过标签、注释和图表帮助部署 Kubernetes 服务,只需为每个部署或 Helm 版本指定更新策略。一旦新的应用程序版本在存储库中可用,Keel 将自动更新环境。</p>    <p>链接:  <a href="/misc/goto?guid=5048130031109311326" rel="nofollow,noindex">https://keel.sh/</a></p>    <p>成本: 免费</p>    <p>37、Apollo</p>    <p>Apollo 是一个开源应用程序,为团队提供自助 UI,用于创建和部署 Kubernetes 服务。Apollo 允许管理员单击一下即可查看日志并将部署恢复到任何时间点。Apollo 具有灵活的部署权限模型,每个用户只能部署需要的内容。</p>    <p>链接:  <a href="/misc/goto?guid=5048130031259899207" rel="nofollow,noindex">https://github.com/logzio/apollo</a></p>    <p>成本: 免费</p>    <p>38、Draft</p>    <p>Draft 是 Azure 团队提供的工具,可简化应用程序开发和部署到任何 Kubernetes 集群。Draft 在代码部署和提交之间创建内部循环,显著加快了变更验证过程。使用 Draft,开发人员可以准备应用程序 Dockerfiles 和 Helm 图表,并使用两个命令将应用程序部署到远程或本地 Kubernetes 集群。</p>    <p>链接:  <a href="/misc/goto?guid=5048130031405664105" rel="nofollow,noindex">https://github.com/azure/draft</a></p>    <p>成本: 免费</p>    <p>39、Deis Workflow</p>    <p>Deis Workflow 可在 Kubernetes 集群上创建额外的抽象层,这些层允许开发人员在没有特定领域认知的情况下部署或更新 Kubernetes 应用程序。Workflow 基于 Kubernetes 概念构建,提供简单且易于使用的应用程序部署方式。作为一组 Kubernetes 微服务提供,运营商可轻松安装该平台,Workflow 也可在不停机的情况下部署新版本应用。</p>    <p>链接:  <a href="/misc/goto?guid=5048130031537918624" rel="nofollow,noindex">https://deis.com/workflow/</a></p>    <p>成本: 免费</p>    <p>40、Kel</p>    <p>Kel 有助于管理 Kubernetes 应用的整个生命周期。Kel 在 Kubernetes 上提供两个用 Python 和 Go 编写的附加层。级别 0 允许配置 Kubernetes 资源,级别 1 可帮助在 K8s 上部署应用程序。</p>    <p>链接:  <a href="/misc/goto?guid=5048130031683080165" rel="nofollow,noindex">http://www.kelproject.com/</a></p>    <p>成本: 免费</p>    <h2>CI/CD</h2>    <p>41、Cloud 66</p>    <p>Cloud 66 是一个完整的 DevOps 工具链,用于生产中容器化应用程序,通过专门的 Ops 工具自动化 DevOps 大部分繁重工作。该平台目前在 Kubernetes 上运行 4,000 个客户工作负载,并管理 2,500 行配置。通过提供端到端的基础架构管理,Cloud 66 使工程师能够在任何云或服务器上构建、交付、部署和管理应用程序。</p>    <p>链接:  <a href="/misc/goto?guid=5048130031813081311" rel="nofollow,noindex">www.cloud66.com</a></p>    <p>成本: 14 天免费使用</p>    <h2>无服务器相关工具</h2>    <p>42、 Kubeless</p>    <p>Kubeless 是一个 Kubernetes 本机无服务器框架,允许部署少量代码,而无需担心底层基础架构。Kubeless 提供自动扩展、API 路由、监控和故障排除等功能。Kubeless 完全依赖 K8s 原语,因此 Kubernetes 用户也可使用原生 K8s API 服务器和 API 网关。</p>    <p>链接:  <a href="/misc/goto?guid=5048130031952287540" rel="nofollow,noindex">https://github.com/kubeless/kubeless</a></p>    <p>成本: 免费</p>    <p>43、Fission</p>    <p>Fission 是 Kubernetes 的快速无服务器框架,可任何地方的 Kubernetes 集群上运行:笔记本电脑、公有云或私有数据中心。用户可使用 Python、NodeJS、Go、C#或 PHP 编写函数,并使用 Fission 将其部署到 K8s 集群。</p>    <p>链接:  <a href="/misc/goto?guid=5048130032088413971" rel="nofollow,noindex">https://fission.io/</a></p>    <p>成本: 免费</p>    <p>44、Funktion</p>    <p>很长一段时间,Kubernetes 只有一个功能即服务实现就是 Funktion。Funktion 是一个为 Kubernetes 设计的开源事件驱动 lambda 式编程模型。Funktion 与 fabric8 平台紧密结合。使用 Funktion,用户可创建从 200 多个事件源订阅的流来调用功能,包括大多数数据库、消息传递系统、社交媒体及其他中间件和协议。</p>    <p>链接:  <a href="/misc/goto?guid=5048130032268280185" rel="nofollow,noindex">https://github.com/funktionio/funktion</a></p>    <p>成本: 免费</p>    <p>45、IronFunction</p>    <p>IronFunctions 是一个开源无服务器平台或 FaaS 平台,可以在任何地方运行。IronFunction 是在 Golang 上编写的,并且支持任何语言函数。IronFunction 的主要优点是支持 AWS Lambda 格式,直接从 Lambda 导入函数并在任何地方运行。</p>    <p>链接:  <a href="/misc/goto?guid=5048130032407196694" rel="nofollow,noindex">https://github.com/iron-io/functions</a></p>    <p>成本: 免费</p>    <p>46、OpenWhisk</p>    <p>Apache OpenWhisk 是一个由 IBM 和 Adobe 驱动的强大开源 -FaaS 平台。OpenWhisk 可在本地内部部署或云上。Apache OpenWhisk 的设计意味着其充当异步且松散耦合的执行环境,可以针对外部触发器运行功能。OpenWhisk 在 Bluemix 上作为 SaaS 解决方案提供,或者在本地部署基于 Vagrant 的 VM。</p>    <p>链接:  <a href="/misc/goto?guid=5048130032540094217" rel="nofollow,noindex">https://console.bluemix.net/openwhisk/</a></p>    <p>成本: 免费</p>    <p>47、OpenFaaS</p>    <p>OpenFaaS 框架旨在管理 Docker Swarm 或 Kubernetes 上的无服务器功能,可收集和分析各种指标。用户可在函数内打包任何进程并使用,无需重复编码或其他任何操作。FaaS 具有 Prometheus 指标,这意味着可以根据需求自动调整功能。FaaS 本身支持基于 Web 的界面,可在其中试用功能。</p>    <p>链接:  <a href="/misc/goto?guid=5048130032677839584" rel="nofollow,noindex">https://github.com/openfaas/faas</a></p>    <p>成本: 免费</p>    <p>48、Nuclio</p>    <p>Nuclio 是一个无服务器项目,可作为独立库在内部部署设备上启动,也可在 VM 或 Docker 容器内启动。此外,Nuclio 支持开箱即用的 Kubernetes。Nuclio 提供实时数据处理,具有最大并行性和最小开销,可在页面上试用 Nuclio。</p>    <p>链接:  <a href="/misc/goto?guid=5048130032810681338" rel="nofollow,noindex">https://github.com/nuclio/nuclio</a></p>    <p>成本: 免费</p>    <p>49、Virtual-Kubelet</p>    <p>Virtual Kubelet 是一个开源 Kubernetes Kubelet 实现,伪装成一个 kubelet,用于将 Kubernetes 连接到其他 API。Virtual Kubelet 允许节点由其他服务(如 ACI、Hyper.sh 和 AWS 等)提供支持。此连接器具有可插入的体系结构,可直接使用 Kubernetes 原语,使其更容易构建。</p>    <p>链接: <a href="/misc/goto?guid=5048130032957126335" rel="nofollow,noindex">https://github.com/virtual-kubelet/virtual-kubelet</a></p>    <p>成本: 免费</p>    <p>50、Fnproject</p>    <p>Fnproject 是一个容器本机无服务器项目,几乎支持任何语言,可在任何地方运行。Fn 是在 Go 上编写的,因此具有性能和轻量级等优势。Fnproject 支持 AWS Lambda 格式,可以轻松导入 Lambda 函数并使用 Fnproject 启动。</p>    <p>链接:  <a href="/misc/goto?guid=5048130033090506584" rel="nofollow,noindex">http://fnproject.io/</a></p>    <p>成本: 免费</p>    <h2>本地服务发现</h2>    <p>51、CoreDNS</p>    <p>CoreDNS 是一组用 Go 编写的插件,用于执行 DNS,带有额外 Kubernetes 插件的 CoreDNS 可取代默认 Kube-DNS 服务,并实现为 Kubernetes 基于 DNS 服务定义的规范。CoreDNS 还可侦听通过 UDP/TCP、TLS 和 gRPC 传入的 DNS 请求。</p>    <p>链接:  <a href="/misc/goto?guid=5048130033232050402" rel="nofollow,noindex">https://coredns.io/</a></p>    <p> </p>    <p>来自: <a class="cut cut70" href="https://www.infoq.cn/article/RPA-wswoEyjuRZfTMcut?utm_source=tuicool&utm_medium=referral" style="display:inline-block;">https://www.infoq.cn/article/RPA-wswoEyjuRZfTMcut</a></p>