写点什么

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:22895

评论

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

TiDB-4.0.0-rc-性能测试

TiDB 社区干货传送门

TiDB升级、TiFlash测试及对比ClickHouse

TiDB 社区干货传送门

TiDB 在小米的落地及云原生探索

TiDB 社区干货传送门

Flink 最佳实践之使用 Canal 同步 MySQL 数据至 TiDB

TiDB 社区干货传送门

TIDB--不容易发现的 lightning tidb-backend 模式导入优化

TiDB 社区干货传送门

迁移 性能调优 TiDB 底层架构 管理与运维 性能测评

HTAP 会成为数据库的未来吗?

TiDB 社区干货传送门

TiUP升级TiFlash重启失败解决方案

TiDB 社区干货传送门

伴鱼数据库之MongoDB数据在线迁移到TiDB

TiDB 社区干货传送门

insert引发的TiDB hang死血案(案情一)

TiDB 社区干货传送门

故障排查/诊断

【理财实践】 开科唯识-互联网理财为什么会选TiDB

TiDB 社区干货传送门

猜一猜 TiDB 4.0 GA 第一个上线用户花落谁家?有惊喜!

TiDB 社区干货传送门

TiDB 与 Flink 联合发布实时数仓最佳实践白皮书

TiDB 社区干货传送门

一栈式 X 规模化 X 多元化:PingCAP 马晓宇谈 TiDB HTAP 演进之路

TiDB 社区干货传送门

TiKV源码略读-Config

TiDB 社区干货传送门

TiDB如何修改alter-primary-key参数

TiDB 社区干货传送门

内容主数据 TiDB 集群写入热点优化实践

TiDB 社区干货传送门

TiDB 在金融场景里面那些不得不说的事

TiDB 社区干货传送门

TiDB v5.1 体验: 我用 TiDB 训练了一个机器学习模型

TiDB 社区干货传送门

TiDB 升级到5.1.1 的性能表现

TiDB 社区干货传送门

Tikv节点磁盘耗尽恢复经验

TiDB 社区干货传送门

TiDB in Action 开源电子书

TiDB 社区干货传送门

如何分析和解决 TiDB 4.0 的写热点问题

TiDB 社区干货传送门

TiDB 在实时分析应用场景下的探索

TiDB 社区干货传送门

记一次使用TiUP半自动升级TiDB集群经验

TiDB 社区干货传送门

版本升级

隐藏esc坑之jbd2进程io占用奇高 系统长期io占用100%

TiDB 社区干货传送门

故障排查/诊断

解决方案之:DM relay 处理单元报错

TiDB 社区干货传送门

体验升级至4.0

TiDB 社区干货传送门

使用DM迁移MySQL数据到TIDB小测试

TiDB 社区干货传送门

【优质技术文章推荐】TiDB for PostgreSQL—牛刀小试

TiDB 社区干货传送门

实践案例

TiDB SQL 优化案例几则

TiDB 社区干货传送门

TIDB调优小结

TiDB 社区干货传送门

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