Kubernetes:分享一个可以展示资源视图的 K8s开源 Web/桌面 客户端工具 Octant

news2024/11/15 8:30:05

写在前面


  • 博文内容主要为 Octant 介绍以及 桌面/Web 端的安装教程
  • 涉及 Linux/Windows 的安装。
  • 理解不足小伙伴帮忙指正

其实当你什么都经历了,会发现,人生无论你怎么精心策划都抵不过一场命运的安排。


Octant 不是仪表板,Octant 是一个带有仪表板视图的平台, 需要说明的时,这个项目有近 10 个月没有维护,不过对于 k8s 工具来讲,我认为它是不次于 Lens 的项目,并且它开源,Lens 要收费了,如果考虑费用问题,我认为这是一个不错的选择。 Octant 可以展示 当前资源的 依赖视图,这对于可以直观的看到 API 资源的依赖关系是很有帮助的。

Octant 提供了一种理解复杂 Kubernetes 环境的新方法。它可以部署为 Web ,通过浏览器客户端访问,也可以以桌面的方法来安装,你需要的仅仅是一个做了授权的 kubeconfig 文件.

对于类似的 k8s 工具,在生产中, Octant 结合 Rancher 可以满足大部分需求。 如果你的访问权限受限,只有一个终端,推荐使用 kubebox 或者 k8s .

特征:

  • 资源查看器 : 以图形方式可视化 Kubernetes 集群中对象之间的关系。各个对象的状态用颜色表示以显示工作负载性能。
  • 摘要视图 : 从通常使用多个 kubectl 命令找到的输出中聚合的单个页面中的合并状态和配置信息。
  • 端口转发: 使用用于调试应用程序的单个按钮将本地端口转发到正在运行的 pod,甚至跨命名空间端口转发多个 pod。
  • 日志流: 查看 Pod 和容器活动的日志流,以便在不打开多个终端的情况下进行故障排除或监控。
  • 标签过滤器: 使用标签过滤组织工作负载,以检查命名空间中包含大量对象的集群。
  • 集群导航:在不同集群的命名空间或上下文之间轻松更改。还支持多个 kubeconfig 文件。
  • 插件系统: 高度可扩展的插件系统,供用户通过 gRPC 提供额外的功能。插件作者可以在现有视图之上添加组件。

桌面端安装

window安装

PS C:\Users\山河已无恙\Downloads> curl -o Octant.Setup.0.25.1.exe  https://github.com/vmware-tanzu/octant/releases/download/v0.25.1/Octant.Setup.0.25.1.exe

下载好之后安装,之后桌面上会有一个图标

点击启动它,第一次打开会提示输入 kubeconfig 文件。

┌──[root@vms81.liruilongs.github.io]-[/var/run]
└─$cat ~/.kube/config

然后点击加载,就可以查看集群信息

哈,可能我机器 CPU 不行,感觉桌面端很耗资源。

web 端安装

window安装

PS C:\Users\山河已无恙> choco install octant --confirm --force
Chocolatey v1.1.0
Installing the following packages:
octant
By installing, you accept licenses for the packages.
octant v0.25.1 already installed. Forcing reinstall of version '0.25.1'.
 Please use upgrade if you meant to upgrade to a new version.

octant v0.25.1 (forced) [Approved]
octant package files install completed. Performing other installation steps.
Using system proxy server '127.0.0.1:49739'.
Downloading octant 64 bit
  from 'https://github.com/vmware-tanzu/octant/releases/download/v0.25.1/octant_0.25.1_Windows-64bit.zip'
Using system proxy server '127.0.0.1:49739'.
Progress: 100% - Completed download of C:\Users\山河已无恙\AppData\Local\Temp\chocolatey\octant\0.25.1\octant_0.25.1_Windows-64bit.zip (54.37 MB).
Download of octant_0.25.1_Windows-64bit.zip (54.37 MB) completed.
Hashes match.
Extracting C:\Users\山河已无恙\AppData\Local\Temp\chocolatey\octant\0.25.1\octant_0.25.1_Windows-64bit.zip to C:\ProgramData\chocolatey\lib\octant\tools...
C:\ProgramData\chocolatey\lib\octant\tools
 ShimGen has successfully created a shim for octant.exe
 The install of octant was successful.
  Software installed to 'C:\ProgramData\chocolatey\lib\octant\tools'

Chocolatey installed 1/1 packages.
 See the log for details (C:\ProgramData\chocolatey\logs\chocolatey.log).

Enjoy using Chocolatey? Explore more amazing features to take your
experience to the next level at
 https://chocolatey.org/compare
PS C:\Users\山河已无恙>

启动运行

PS C:\ProgramData\chocolatey\lib\octant\tools\octant_0.25.1_Windows-64bit> .\octant.exe
2023-01-14T06:12:55.534-0500    INFO    dash/dash.go:637        cannot find kube config: C:\Users\山河
已无恙\.kube\config
2023-01-14T06:12:55.534-0500    INFO    dash/dash.go:134        no valid kube config found, initializing loading API
2023-01-14T06:12:55.536-0500    INFO    dash/dash.go:154        waiting for kube config ...
2023-01-14T06:12:55.577-0500    INFO    dash/dash.go:546        Dashboard is available at http://127.0.0.1:7777

输入 kubeconfig 文件信息

可以更换主题,查看集群信息。

Linux 下安装

下载安装包

curl -o octant_0.25.1_Linux-64bit.tar.gz  https://github.com/vmware-tanzu/octant/releases/download/v0.25.1/octant_0.25.1_Linux-64bit.tar.gz

解压查看版本信息。

┌──[root@vms81.liruilongs.github.io]-[~/ansible/octant]
└─$tar -zxvf octant_0.25.1_Linux-64bit.tar.gz
octant_0.25.1_Linux-64bit/README.md
octant_0.25.1_Linux-64bit/octant
┌──[root@vms81.liruilongs.github.io]-[~/ansible/octant]
└─$octant_0.25.1_Linux-64bit/octant version
Version:  0.25.1
Git commit:  f16cbb951905f1f8549469dfc116ca16cf679d46
Built:  2022-02-24T23:02:15Z

查看帮助文档了解启动信息

┌──[root@vms81.liruilongs.github.io]-[~/ansible/octant]
└─$octant_0.25.1_Linux-64bit/octant --help
octant is a dashboard for high bandwidth cluster analysis operations

Usage:
  octant [flags]
  octant [command]

Available Commands:
  completion  generate the autocompletion script for the specified shell
  help        Help about any command
  version     Show version

Flags:
      --context string                 initial context
      --disable-cluster-overview       disable cluster overview
      --enable-feature-applications    enable applications feature
      --kubeconfig string              absolute path to kubeConfig file
  -n, --namespace string               initial namespace
      --namespace-list strings         a list of namespaces to use on start
      --plugin-path string             plugin path
  -v, --verbose                        turn on debug logging
      --client-max-recv-msg-size int   client max receiver message size (default 16777216)
      --accepted-hosts string          accepted hosts list [DEV]
      --client-qps float32             maximum QPS for client [DEV] (default 200)
      --client-burst int               maximum burst for client throttle [DEV] (default 400)
      --disable-open-browser           disable automatic launching of the browser [DEV]
      --disable-origin-check           disable cross origin resource check
  -c, --enable-opencensus              enable open census [DEV]
      --klog-verbosity int             klog verbosity level [DEV]
      --listener-addr string           listener address for the octant frontend [DEV]
      --local-content string           local content path [DEV]
      --proxy-frontend string          url to send frontend request to [DEV]
      --ui-url string                  dashboard url [DEV]
      --browser-path string            the browser path to open the browser on
      --memstats string                log memory usage to this file
      --meminterval string             interval to poll memory usage (requires --memstats), valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". (default "100ms")
  -h, --help                           help for octant

Use "octant [command] --help" for more information about a command.

这里在启动的时候需要注意一下,如果终端没有浏览器,需要指定 --disable-open-browser,同时如果是 其他机器通过IP访问,需要添加监听的任意IP对端口的访问 --listener-addr 0.0.0.0:7777, 默认情况下, Octant 会在启动时候自动打开默认浏览器,并且只监听本地对 指定端口的访问。

┌──[root@vms81.liruilongs.github.io]-[~/ansible/octant/octant_0.25.1_Linux-64bit]
└─$./octant --kubeconfig ~/.kube/config --disable-open-browser --disable-origin-check --listener-addr 0.0.0.0:7777
2023-01-14T20:05:20.673+0800    INFO    dash/watcher.go:117     watching config file    {"component": "config-watcher", "config": "/root/.kube/config"}
.............
2023-01-14T20:05:20.677+0800    INFO    module/manager.go:87    registering action      {"component": "module-manager", "actionPath": "action.octant.dev/deleteObject", "module-name": "configuration"}
2023-01-14T20:05:20.677+0800    WARN    plugin/manager.go:405   Unable to add /root/.config/octant/plugins to the plugin watcher. Error: no such file or directory

github.com/vmware-tanzu/octant/pkg/plugin.(*Manager).watchPluginFiles
        /__w/octant/octant/pkg/plugin/manager.go:405
2023-01-14T20:05:20.691+0800    INFO    dash/dash.go:546        Dashboard is available at http://[::]:7777

其他机器测试。可以直接进入当前 pod 的内部环境

查看日志信息

查看资源依赖关系

不对不说,octant 很消耗资源,尤其是对CPU,所以不太建议部署到集群相关的节点。

关于 octant 和小伙伴分享到这里,安装很简单,赶快去尝试吧。

博文参考


https://octant.dev/

https://github.com/vmware-tanzu/octant

https://reference.octant.dev/?path=/story/docs-intro–page

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/176728.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据结构 最短路径课设(源码+实验报告+视频讲解)(不要钱、用了自取)

XIAN TECHNOLOGICAL UNIVERSITY 课程设计报告 实验课程名称 算法与数据结构 专 业: 班 级: 姓 名: 学 号: 实验学时: 指导…

Linux Debian11安装QT6开发环境

从Qt5.14开始,官方不提供离线安装包,只提供源码包和在线安装器。但是清华为我们提供了快速的在线安装方式。 一.下载清华提供的在线安装器 在线安装器下载链接 二、给在线安装器文件赋予执行权限 三、配置镜像地址运行安装器 清华源: ./…

7.Java判断和循环+面试相关力扣算法题详解

提示: 文章目录前言一、顺序结构二、分支语句(1)if语句(2)switch语句*default的位置和省略:*case穿透*switch新特性*switch和if的第三种格式各自的使用场景三、循环结构1.分类2.for循环3.while循环4.for和while的对比:5.for和while循环的区别:6.练习:四、面试时的两…

【安卓】zoo for zotero WebDAV 自动论文同步笔记

前言 前言是我写这篇博客的动机,可以跳过直接从“准备”开始看 之前使用mendeley管理文献,它不仅可以同步文件,还跨平台(win、安卓等)。但是后面,mendeley停止了移动平台的支持,导致我不能用我…

JQUERY案例

电梯导航 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthdevice-width, i…

一、pyhon准备工作篇(黑马程序猿-python学习记录)

黑马程序猿的python学习视频&#xff1a;https://www.bilibili.com/video/BV1qW4y1a7fU/ 目录 1. python官网 2. 检查是否安装完毕 3. pycharm官网 5. phcharm更换主题 6. 新建第一个python文件 7. pycharm字体大小设置 ​​​​​​​8. 设置快捷键 设置字体大小 ​​​​​​…

AJAX 简介

AJAX 是一种在无需重新加载整个网页的情况下&#xff0c;能够更新部分网页的技术。 AJAX 是什么&#xff1f; AJAX Asynchronous JavaScript and XML. AJAX 是一种用于创建快速动态网页的技术。 AJAX 通过在后台与服务器进行少量数据交换&#xff0c;使网页实现异步更新。这…

第三章 关系数据库标准语言SQL

第三章 关系数据库标准语言SQL 目录第三章 关系数据库标准语言SQL3.1 SQL概述3.1.1 产生与发展3.1.2 SQL的特点3.1.3 SQL的基本概念3.2 数据库实例3.3 数据定义3.3.1 模式的定义和删除3.2.2基本表的定义、删除和修改1.常见数据类型2.定义基本表3.修改基本表4.删除基本表5.模式和…

2. 返回传播计算方法|神经网络整体架构|神经元个数对结果的影响|正则化与激活函数|神经网络过拟合解决方法

文章目录返回传播计算方法神经网络整体架构&#xff08;暂时留存&#xff0c;等后面补&#xff09;神经元个数对结果的影响正则化与激活函数神经网络过拟合解决方法返回传播计算方法 实际上计算L&#xff08;损失值&#xff09;的时候并不是只是拿一组w来进行计算&#xff0c;…

用过MyBatis-Plus,我再也不想用mybatis了——MyBatis-Plus快速入门加常见注解总结,一文快速掌握MyBatis-Plus

相比与mybatis只做增强&#xff0c;不做修改 MyBatis-Plus学习笔记一&#xff0c;是什么二&#xff0c;入门案例1.建库建表2.创建spring Boot工程3.配置相关包及类4.测试三&#xff0c;基本的curd1.BaseMapper2.通用Service四.常用注解1.TableName2.TableId3TableField4.TableL…

【python】面向对象编程

文章目录一、函数大全1.1 匿名函数 lambda1.2 过滤函数 filter1.3 format1.4 try和except1.5 位置参数和关键字参数二、类与对象2.1创建对象2.2 封装的实现方式2.3 继承2.4方法重写2.5 object 类2.5.1 __str()__2.5.2 dict()2.5.3 len()2.5.4 add()2.5.5 new()init()2.6 多态的…

初识C语言(下)

写在前面 好了,现在我们开始C语言的第二个部分.今天我们需要看下面几个知识点,都是非常简单的,我们主要认识一下. 数组 我们知道一个一个属性可以用一个类型去表示,那么我想问的是如果是一个属性的多个呢?也就是多个一样的东西,此时我们就要使用数组来进行表示,所谓的数组就…

22. 输入和输出

1. 输出格式美化 (1) 如果你希望输出的形式更加多样&#xff0c;可以使用 str.format() 函数来格式化输出值。 (2) 如果你希望将输出的值转成字符串&#xff0c;可以使用 repr() 或 str() 函数来实现。   str()&#xff1a; 函数返回一个用户易读的表达形式。   repr()&am…

产品原型设计方法

产品原型设计方法1. 色彩选择与按钮设计1.1色彩选择1.2 按钮设计2. 使用原型设计中的基础元素2.1 使用文字元素2.2 使用图标元素3. 设计导航菜单栏和卡片式布局3.1设计导航菜单栏4.3 设计卡片式布局4. 使用UI框架4.1 使用UI框架的好处4.2 常用的UI框架1. 色彩选择与按钮设计 1…

K8s:通过 kubectl 插件 Kubepug 实现集群升级检查(废弃API资源检查)

写在前面 分享一个小工具&#xff0c;可用于 版本升级的 废弃 API 对象检查博文内容涉及&#xff1a; kubepug 离线安装&#xff0c;配置 kubectl 插件kubepug 两种方式离线使用 Demo 理解不足小伙伴帮忙指正 昔我往矣&#xff0c;杨柳依依。今我来思&#xff0c;雨雪霏霏。 —…

【HBase入门】1. HBase基础

简介 Hadoop 从 1970 年开始&#xff0c;大多数的公司数据存储和维护使用的是关系型数据库大数据技术出现后&#xff0c;很多拥有海量数据的公司开始选择像Hadoop的方式来存储海量数据Hadoop使用分布式文件系统HDFS来存储海量数据&#xff0c;并使用 MapReduce 来处理。Hadoo…

【Ajax】同源策略、跨域和JSONP

一、同源策略什么是同源如果两个页面的协议&#xff0c;域名和端口都相同&#xff0c;则两个页面具有相同的源。例如&#xff0c;下表给出了相对于 http://www.test.com/index.html 页面的同源检测&#xff08;如果没有写端口号&#xff0c;默认是80&#xff09;&#xff1a;UR…

开篇点睛——Elasticsearch

在互联网当中我们的查询的信息主要包括文章、视频、图片、网站信息等各式各样的复杂海量信息。怎么才能快速、准确的检索到我们想要的信息呢? 传统意义上根据数据的格式&#xff0c;我们会将数据分为三个大类 结构化数据非结构化数据半结构化数据 接下来我们详细的了解一下这…

Day07 - 面向对象

1. 面向对象概述 面向对象是一种对现实世界理解和抽象的方法&#xff0c;是计算机编程技术发展到一定阶段后的产物。 面向对象是相对于面向过程来讲的&#xff0c; 面向对象方法 &#xff0c;把相关的数据和方法组织为一个整体来看待&#xff0c;从更高的层次来进行系统建模&a…

开发人员必备的 15 个备忘单

随着网络编程技术的快速发展&#xff0c;我们必须学习很多新东西。有些语言和框架非常复杂&#xff0c;您可能记不住所有的语法或方法。备忘单是易于访问的笔记。当有人在过去目睹任何有帮助或有价值的事情时&#xff0c;包括我自己&#xff0c;我们都会做笔记。但是&#xff0…