乐趣区

关于运维:K8S-实用工具之三-图形化-UI-Lens

开篇

📜 引言

  • 磨刀不误砍柴工
  • 工欲善其事必先利其器
  • 第一篇:《K8S 实用工具之一 – 如何合并多个 kubeconfig?》
  • 第二篇:《K8S 实用工具之二 – 终端 UI K9S》

像我这种,kubectl 用的不是十分溜,常常会碰到以下状况:

  • 遗记命令,先敲 --help,再敲命令,效率低
  • 遗记加 -n 指定 namespace
  • 太长的命令常常记错或敲错,比方 kubectl exec -it...
  • 无奈疾速将日志、yaml 复制进去
  • 对于 CRD 类资源,记不住 CRD type,查不到相干信息
  • 无奈把握集群的衰弱及监控状态
  • Windows 机器命令行不好用
  • ……

如果你的工作机(前置机、跳板机、操作机、堡垒机…)是 Windows 桌面环境。那么我强烈推荐你应用这个 K8S 实用工具:图形化 UI Lens

📸 Lens 简介

Kubernetes IDE(集成开发环境),可用于:

  • 开发
  • 调试
  • DevOps
  • 运维
  • 监控

Lens 是你惟一须要的 IDE,它能够用来管制你的 Kubernetes 集群。它建设在开源和收费的根底上。

一个为那些每天应用 Kubernetes 工作的人设计的 IDE,丑陋且弱小。

💪 Lens 劣势

  • 💡 移除复杂性:不须要学习 kubectl 命令就能够摸索和导航 Kubernetes 集群。对于刚起步的开发者来说是十分棒的。
  • 👁️ 实时可察看性:实时查看实时统计、事件、日志流。没有转圈圈的加载,刷新或期待屏幕更新。
  • 🔨 定位和调试:在仪表板上查看谬误和正告,而后单击查看详细信息。再次单击以查看日志或获取命令行。
  • 💻️ 在你的个人电脑上运行:MacOS, Windows 和 Linux 上的独立应用程序。1 分钟装置。不须要在集群中装置任何货色。
  • 💚 开源收费:Lens 基于开源平台,领有沉闷的社区,并失去 Kubernetes 和云原生生态系统先锋的反对。
  • 可和任何 Kubernetes 一起工作:应用 EKS, AKS, GKE, Minikube, Rancher, k0s, k3s, OpenShift…?他们所有都能够失常运行。只需为您想要应用的集群导入 kubeconfigs。

集体应用体验

无障碍应用

Lens 有一个 对立的目录(Catalog)。将所有集群、服务、工作负载、工具、自动化和相干资源集中在一起,以便轻松拜访。

而且在 Catalog 上,能够很不便进行 浏览和组织。应用搜寻、过滤、分类和标签来拜访你须要工作的资源比以往任何时候都更容易。

效率高

Lens 的特色是右边有一列,叫做:Hotbar。就是主导航,容许用户在桌面应用程序中构建适宜本人的「工作流」和「自动化」。用户能够通过调配不同的标签、色彩和图标来自定义 Hotbar 中的我的项目,以不便回顾。比方这样:

它还有相似 VSCode 的 命令面板。命令面板容许用户执行特定的键盘快捷键,从而使最常见的工作变得更容易。在应用 Lens 时进步可拜访性和效率。Windows 的快捷键是:Ctrl + Shift + p。如下图:

监控整合

Lens 内置的可视化。Lens 与 Prometheus 集成,能够通过总容量、理论应用、申请和限度可视化和查看资源应用指标(包含 CPU、内存、网络和磁盘)的趋势。为每个 k8s 资源主动生成具体的可视化。如下图:

所有 K8S 资源触手可达

智能终端 性能。Lens 智能终端自带 kubectl 和 helm,主动同步 kubectl 的版本,以匹配以后抉择的 K8S 集群 API 版本。Lens 会主动调配 kubeconfig 上下文来匹配以后抉择的 K8s 集群。

K8S 资源模板

自带全量 K8S 资源模板,而且是有丰盛信息的模板,间接在模板上照猫画虎就可实现各类资源的创立,妈妈再也不必放心我遗记 K8S Resources 的 Spec 了!

疾速部署

Helm Chart。Lens 自带 Helm Chart 治理,容许发现和疾速部署数以千计的公开可用的 Helm Chart 和治理您本人的存储库。摸索已装置的 Helm Chart,只需一次点击即可订正和降级。

如下图:

插件!

反对插件。轻松地从社区和云本地生态系统供应商增加 Lens 扩大或构建本人的。Lens Extensions 用于增加自定义性能和服务,以减速与 Kubernetes 和其余云原生技术集成的所有技术的开发流程。

这里举荐几个实用的插件:

lens-certificate-info

查看证书信息。查看含有证书信息的 Secret,成果如下:

lens-debug-tools

配合 K8S 1.16 的新性能,能够在想要调试的 Pod 里插入带有丰盛工具集的 Sidecar(为了谋求 Size,个别镜像都是十分精简,导致常用命令缺失,调试艰难),不便调试。

还能够配置调试用的镜像,还贴心的给了 3 个举荐:

Name Description Link
busybox Default value https://hub.docker.com/_/busybox
markeijsermans/debug https://hub.docker.com/r/markeijsermans/debug
praqma/network-multitool https://hub.docker.com/r/praqma/network-multitool

装置实现后 Pod 页面会多一个按钮:

有 2 种模式:

一种是「Run as debug pod」,就是在同一台 Node 上启动一个新 pod,能够用来剖析调试与 Node 无关的问题。主动执行的命令如下:

kubectl run loki-promtail-5d5h8-debug -n loki-stack -it --image=busybox --restart=Never  --attach  --overrides='{\"spec\": { \"nodeName\": \"izuf656om146vu1n6pd6lpz\"} }' --labels=createdBy=lens-debug-extension --rm

另一种是「Run as emepheral container」,须要启用 K8S 1.16 的新性能能力应用。间接是在要调试的 Pod 里启动一个 Debug Sidecar,就能够剖析调试与 Node、Pod 无关的问题。主动执行的命令如下:

kubectl debug -i -t -n loki-stack loki-promtail-5d5h8 --image=busybox --target promtail --attach

@nevalla/kube-resource-map

资源拓扑图。这个真的是心头好。来看看 Monitoring 的拓扑图:

从 Helm,到 StatefulSet,到 Pod,到 SVC,再到 ConfigMap、Secret,一应俱全。

✍ 总结

Lens 是一个Kubernetes IDE,在桌面环境下应用它,来开发、调试、DevOps、运维和监控。

它有很多弱小的性能,其中:Catalog、Hotbar、命令面板、监控、智能终端、资源模板、Helm Chart 治理和插件 这些性能肯定要试一试,体验飞升!

一起应用吧~ 🤓🤓🤓

三人行, 必有我师; 常识共享, 天下为公. 本文由东风微鸣技术博客 EWhisper.cn 编写.

退出移动版