写点什么

10 大工具汇总,多维度简化 Kubernetes 部署

  • 2020-04-23
  • 本文字数:3076 字

    阅读完需:约 10 分钟

10大工具汇总,多维度简化Kubernetes部署

Kubernetes 已经成为大规模部署经过编辑的应用程序的标准方法(许多人会说这是标准方法)。但是,如果 Kubernetes 可以帮助我们控制无序和复杂的经编辑的部署,那么有什么方法可以帮助我们控制 Kubernetes 呢?毕竟,它也可能是复杂、混乱和难以管理的。


随着 Kubernetes 的成长和演变,它的一些过度行为很可能会从内部得到控制。但是有些人并没有等到 Kubernetes 变得更容易使用,而是对生产中 Kubernetes 的许多常见问题推出了自己的解决方案。


在这里,我们重点介绍 10 个以各种方式简化 Kubernetes 的项目,从简化命令行交互,到简化应用程序部署语法,再到与 AWS 集成,再到为多个集群提供一个窗口。

目 录

  • Bitnami Cabin:适用于 iOS 和 Android 的 Kubernetes 面板

  • Kedge:简明的 Kubernetes 部署定义

  • Koki Short:可管理的 Kubernetes 密钥清单

  • Kops:Kubernetes 集群的命令行操作

  • Kubebox:Kubernetes 的终端控制台

  • Kube-monkey:Kubernetes 的 Chaos Monkey

  • Kube-ps1:智能 Kubernetes 命令提示符

  • Kube-prompt:交互式 Kubernetes 客户端

  • Kube-shell:用于 Kubernetes CLI 的 shell

  • Kubespy:实时监控 Kubernetes 资源

Bitnami Cabin:适用于 iOS 和 Android 的 Kubernetes 面板

任何现代 web 应用程序或服务都应该具有某种移动界面。Cabin 为 Kubernetes 管理员提供了一个版本的 Kubernetes 面板,可以通过 iOS 或 Android 智能手机访问。整个 Kubernetes 面板中提供的许多功能都可以从 Cabin 启动,包括 Helm 图表,扩展部署,读取 pod 日志以及访问 Kubernetes 托管的基于 Web 的应用程序。

Kedge:简明的 Kubernetes 部署定义

关于 Kubernetes 最常见的抱怨是它的清单(或应用程序定义)是多么复杂和冗长。编写它们是一件痛苦的事情,维护它们也是一件痛苦的事情,所以人们求助于第三方工具来缓解也就不足为奇了。Kedge 提供了更简单、更简洁的语法。向 Kedge 提供了 Kubernetes 定义文件的简单版本,Kedge 将该简单定义扩展为完整的 Kubernetes 对应文件。与 Koki Short(见下文)不同,Kedge 的声明文件不使用模块化语法,它只是将应用程序定义简化为通用的快捷方式。

Koki Short:可管理的 Kubernetes 密钥清单

Koki Short 类似上述的 Kedge 是一个改进应用程序定义或清单在 Kubernetes 中工作方式的项目。像 Kedge 定义一样,Short 定义使用缩写的语法来描述 Kubernetes pod,它可以被翻译成完整的语法,然后再返回。与 Kedge 定义不同,Short 定义也是模块化的,这意味着一个 Short 声明中的细节可以在其他声明中重用,这样就可以简单地定义具有公共元素的许多 pod。

Kops:Kubernetes 集群的命令行操作

Kops 由 Kubernetes 团队开发,允许您从命令行管理 Kubernetes 集群。它支持在 AWS 和 GCE 上运行的集群,VMware vSphere 和其他环境也在开发中。除了自动设置和拆卸过程之外,Kops 还可以帮助实现其他类型的自动化。例如,它可以生成 Terraform 配置,从而允许使用 Terraform 重新部署集群。

Kubebox:Kubernetes 的终端控制台

Kubebox 是 Kubernetes 的高级终端控制台,它为 Kubernetes 及其 API 提供的不仅仅是一个美化的命令行。它提供内存和 CPU 利用率的交互式显示、pod 列表、运行日志和配置编辑器。最重要的是,它可以作为 Linux、Windows 和 MaciOS 的独立应用程序使用。


Kube-monkey:Kubernetes 的 Chaos Monkey

对一个系统进行压力测试的一种万无一失的方法是随机打碎东西。这就是 Netflix 的 Chaos Monkey 背后的理论,这是一种混沌工程工具,可以随机终止生产中运行的虚拟机和本地编辑,以“鼓励”开发人员构建更具弹性的系统。Kube-monkey 是对压力测试 Kubernetes 集群的相同基本思想的实现。它的工作方式是在你指定的集群中随机破坏 pod,并且可以在特定的时间窗内进行微调。

Kube-ps1:智能 Kubernetes 命令提示符

Kube-ps1 不是面向 Kubernetes 的第一代索尼 PlayStation 仿真器(尽管这很棒)。它是 Bash 的一个简单添加,在提示符中显示当前的 Kubernetes 上下文和名称空间。Kube-shell 包括这个功能以及许多其他功能,但是如果您只想要更智能的提示符,Kube-ps1 所需开销很小。

Kube-prompt:交互式 Kubernetes 客户端

Kubernetes CLI 的另一个最小但有用的修改是 Kube-prompt,它允许您与 Kubernetes 客户机输入相当于交互式命令会话的内容。Kube-prompt 使您不必输入 kubectl 作为每个命令的前缀,并为每个命令提供上下文信息自动完成。

Kube-shell: Kubernetes CLI 的 Shell

Kubernetes 命令行功能强大,但与任何命令行应用程序一样,选择它的选项可能非常繁琐。Kube-shell 将标准的 Kubernetes 命令行包装在一个集成的 shell 中,该 shell 提供常见命令的自动完成和自动建议,包括 Kubernetes 服务器提供的建议(例如服务名称)。它还提供了更健壮的命令历史记录函数、vi 风格的编辑模式,以及用户、名称空间、集群和其他特定于安装的详细信息的运行上下文信息。

Kubespy:实时监控 Kubernetes 资源

Pulumi 的 Kubespy 是一个诊断工具,它允许您实时跟踪 Kubernetes 资源的变化,为您提供一种动态的文本视图面板。例如,您可以在启动 pod 时查看 pod 状态的更改:将 pod 定义写入 Etcd,计划在节点上运行 pod,在创建 pod 的节点上运行 Kubelet,最后将 pod 标记为 running。Kubespy 可以作为独立的二进制文件运行,也可以作为 Kubectl 的插件运行。

AWS 的 Kubernetes 入口控制器

Kubernetes 通过名为 Ingress 的服务向集群提供外部负载平衡和网络服务。Amazon Web Services 提供负载平衡功能,但不会自动将这些服务与 Kubernetes 的功能进行耦合。AWS 的 Kubernetes 入口控制器弥补了这一差距。入口控制器自动管理集群中每个入口对象的 AWS 资源,为新的入口资源创建负载平衡器,为已删除的资源删除负载平衡器,并利用 AWS 云形成来确保集群的一致状态。它还自动管理集群中使用的其他元素,如 SSL 证书和 EC2 自动伸缩群。


kube - os -view:用于多个 Kubernetes 集群的面板

Kubernetes 有一个用于通用监视的有用面板,但是 Kubernetes 社区正在尝试使用其他方法向 Kubernetes 管理员提供有用的数据。Kube-os-view 就是这样一个实验:它提供了多个 Kubernetes 集群的概览视图,以图形化的方式呈现,因此您可以一眼看到集群中 pod 的 CPU 和内存使用情况以及状态。注意,它不允许您调用任何命令,这完全是为了可视化。但是它提供的可视化效果是惊人的和有效的,这是可与操作中心的壁监视器完美结合。

Skaffold: Kubernetes 的迭代开发

Skaffold 是谷歌为 Kubernetes 开发的工具之一,是一种为 Kubernetes 应用程序执行连续部署的方法。当您对源代码进行更改时,Skaffold 会自动检测它们,触发构建和部署流程,并在出现错误时警告您。Skaffold 完全在客户端运行。它可以在现有的 CI/CD 渠道中使用,并与一些外部构建工具集成,主要是谷歌自己的 Bazel。

Stern 和 Kubetail: Kubernetes 的日志跟踪

Stern 允许您从 Kubernetes 中的 pod 和本地编辑中生成颜色编码的输出(根据 tail 命令)。这是一种将多个资源的所有输出管道传输到一个可以一眼读取的流中的快速方法。同时,您有一种一目了然的方法(颜色编码)来区分流。


Kubetail 类似地将来自多个 pod 的日志聚合到单个流中,并对不同 pod 和本地编辑进行颜色编码。但是 Kubetail 是一个 Bash 脚本,因此它只需要一个 shell。

Teresa:Kubernetes 的简单 PaaS

Teresa 是一个应用程序部署系统,在 Kubernetes 上作为简单的 PaaS 运行。组织成团队的用户可以部署和管理属于他们的应用程序。这使那些受给定应用程序信任的人更容易使用它,而不必直接处理 Kubernetes。


2020-04-23 17:22852

评论

发布
暂无评论
发现更多内容

深度学习快速上手——基于 MegEngine 的 LeNet 快速训练与部署

MegEngineBot

深度学习 开源 MegEngine

Perfkit - 性能分析与测量工具集

王玉川

Linux 性能优化 Dockerfile ebpf perf

web前端线下培训学习靠谱吗?

小谷哥

架构实战营4.4 如何设计存储架构随堂练习

西山薄凉

「架构实战营」

通用池化框架commons-pool2功能拓展

FunTester

C++ 引用:他是坤坤也是鸡哥

子夜的星

c++ 引用 语法 引用参数函数

WEB前端编程培训靠谱吗?

小谷哥

运维训练营第十二课作业

好吃不贵

一文揭晓,我是如何在Linux中查找自如

蔡农曰

Linux 程序员 运维 后端

设计消息队列存储消息数据的 MySQL 表格

小虎

#架构训练营

性能优化 - 伪共享

王玉川

c++ 缓存 性能 cpu

性能优化 - 访问局部性

王玉川

c++ 性能 cpu 访问局部性

可观测性之网站性能调优的实际案例-小白都看的懂

Yestodorrow

前端 可观测性 网站性能

C++ const与指针

王玉川

c++ 指针 常量 const

聚焦低碳发电,践行“双碳”之路

脑极体

华为 智能光伏

C++ Lambda表达式

王玉川

c++ Lambda

软件测试/测试开发 | 如何使用代理配置快速定位接口测试脚本问题?

测试人

软件测试 自动化测试 接口测试 测试开发

细胞分裂问题的原创解法

王玉川

原创 算法 递归 LeetCode 动态规划

程序员培训班哪家教的比较好

小谷哥

数据可视化图表系列解析——瀑布图

Data 探险实验室

数据分析 数据可视化 图表 可视化数据

从人工分析到智能分析,流量分析如何快速上手?

智维数据

智能运维 应用交付 可视化数据 流量分析系统

大数据培训课程靠谱吗?

小谷哥

Java编程培训中心怎么样呢

小谷哥

NodeJS 实战系列:如何设计 try catch

光毅

JavaScript node.js

CBM业务模型是什么和为什么?

涛哥 数字产品和业务架构

企业架构

架构实战营4.2 存储复制架构随堂练习

西山薄凉

「架构实战营」

软件测试/测试开发 | 接口自动化测试如何进行认证?

测试人

软件测试 自动化测试 接口测试 测试开发

技术升级落地需要天时、地利、人和

石云升

极客时间 1月月更 技术领导力实战笔记

架构实战营4.3 存储分片分区架构随堂练习

西山薄凉

「架构实战营」

Source Map 原理

道道里

前端 webpack sourcemap

Verilog HDL门级建模

timerring

FPGA

10大工具汇总,多维度简化Kubernetes部署_文化 & 方法_Rancher_InfoQ精选文章