Windows kubectl终端日志聚合(wsl+ubuntu+cmder+kubetail)

Windows kubectl终端日志聚合

    • 一、kubectl终端日志聚合
    • 二、windows安装ubuntu子系统
      • 1. 启用wsl支持
      • 2. 安装所选的 Linux 分发版
    • 三、ubuntu安装kubetail
    • 四、配置cmder
    • 五、使用

一、kubectl终端日志聚合

k8s在实际部署时,一般都会采用多pod方式,这种情况下,查看容器实时日志就会变得麻烦许多。一般采用ELK日志采集方式,但是ELK日志是伪实时性的、不易关联日志上下文,有时不得不结合“小黑窗”,这个时候,可以尝试使用kubetail聚合kubectl客户端日志。可是kubetail本质是shell脚本,仅支持linux和mac,作为苦逼的windows用户只能另辟蹊径了。下面介绍一种方式,采用
wsl+ubuntu+cmder打造自己的linux终端。

二、windows安装ubuntu子系统

1. 启用wsl支持

网上教程一大堆,这里不赘述了!

2. 安装所选的 Linux 分发版

打开 Microsoft Store,并选择你偏好的 Linux 分发版。我的电脑打不开!!!
采用手动安装方式,下载地址如下:

https://docs.microsoft.com/en-au/windows/wsl/install-manual
wsl-ubuntu-1804

三、ubuntu安装kubetail

sudo curl -Lo /usr/local/bin/kubetail https://raw.githubusercontent.com/johanhaleby/kubetail/master/kubetail
sudo chmod +x /usr/local/bin/kubetail
cp -r /mnt/c/Users/ryou/.kube ~/

源站: https://github.com/johanhaleby/kubetail.git
国内镜像站: git clone https://gitee.com/ryou5416/kubetail.git

若你有多个kubeconfig连接配置文件,可以通过linux环境变量动态指定。

export KUBECONFIG=~/.kube/my.kubeconfig

命令太长,懒得改。。。写个脚本简化下
将以下脚本命名为.switchrc保持到用户目录
~

#!/bin/bash
# 为了避免来回复制宿主机的kubeconfig配置,可以直接写宿主机的目录 /mnt/c/Users/ryou/.kube  
kube_config_dir=~/.kube# 定义一个函数来显示所有的 export KUBECONFIG 子句   
show_all() { for file in "$kube_config_dir"/*; do         if [ -f "$file" ]; then   echo "export KUBECONFIG=$file"       fi         done
}   # 检查传入的参数          
if [ "$#" -eq 0 ]; thenecho "Usage: $0 default|config|*"show_all       return 0
fi  # 根据传入的参数执行相应的命令   
case $1 indefault|config)if [ -f "$kube_config_dir/config" ]; then   export KUBECONFIG=$kube_config_dir/configecho "Switched to default"return 0fiecho "Switched failed, $kube_config_dir/config is not exists!"return -1;;*)  if [ -f "$kube_config_dir/$1.kubeconfig" ]; thenexport KUBECONFIG=$kube_config_dir/$1.kubeconfigecho "Switched to $1"return 0fi echo "Switched failed, $kube_config_dir/$1.kubeconfig is not exists!"echo "Usage: $0 default|config|*"show_all  return -1;;
esac
  • 用法:

帮助信息

source ~/.switchrc

切换默认配置

source ~/.switchrc config

切换其它配置

source ~/.switchrc cluster1

四、配置cmder

新增cmder启动任务,程序命令为"C:\Windows\System32\wsl.exe";
打开命令终端窗口时,选择{ubuntu}即可!

在这里插入图片描述

在这里插入图片描述

五、使用

kubetail -h

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MYSQL存储过程的创建

关于存储过程的题目 1、创建存储过程,查看user表中的所有数据 2、创建存储过程avg_order_quantity,返回所有订单的平均工资 3、创建存储过程show_max_bprice,用来查看bookS的单价最贵的价格 4、创建存储过程show_min_bprice,用来查看bookS的单价最低的价格,并将…

【java】【控制台】【javaSE】 初级java家教管理系统控制台命令行程序项目

更多项目点击👆👆👆完整项目成品专栏 【java】【控制台】【javaSE】 初级java家教管理系统控制台命令行程序项目 获取源码方式项目说明:功能点数据库涉及到: 项目文件包含:项目运行环境 :截图其…

【Nginx】源码安装

1.安装地址 Nginx官网:nginx: download 2.下载依赖 //一键安装上面四个依赖 yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel 3.上传解压编译安装 //解压压缩包tar -xvf nginx-1.26.1.tar.gz //进入nginx cd nginx-1.26.1/ //安装到指定位…

mysql解压版本安装5.7

1. 官网下载好解压版本 我这边5.7版本 https://dev.mysql.com/downloads/file/?id523570 mysql官网 创建 my.ini文件 内容如下 [client] #客户端设置,即客户端默认的连接参数# socket /data/mysqldata/3306/mysql.sock #用于本地连接的socket套接字 # 默…

昇思MindSpore学习笔记5--数据变换Transforms

摘要: 昇思MindSpore的数据变换,包括通用变换Common Transforms、图像变换Vision Transforms、标准化Normalize、文本变换Text Transforms、匿名函数变换Lambda Transforms。 一、数据变换Transforms概念 原始数据需预处理后才能送入神经网络进行训练…

OLMo:真正完全开源的大模型

最近,又有一家机构AI2(Allen Institute for AI)开源了一个LLM:OLMo,它的英文全称就叫Open Language Model。相比之前开源的大模型,OLMo的独特之处是完全开源,除了训练的模型,OLMo还开…

vmware安装debian11

安装vmware16 下载镜像 https://repo.huaweicloud.com/debian-cd/ https://repo.huaweicloud.com/debian-cd/11.7.0/amd64/iso-dvd/ 安装 安装完成之后重启,输入账号密码进入,安装ssh服务器即可使用

记一次elementui时间线的实现

实现效果 点击展开,每次累加五条数据进行展示 实现思路 起始本质上就是一个分页查询,只不过按新的形式展示,然后也不统计总数,每次只展示固定的5条数据点击加载更多,就展示下一页,页的页数进行1&#xff…

HarmonyOS SDK助力鸿蒙原生应用“易感知、易理解、易操作”

6月21-23日,华为开发者大会(HDC 2024)盛大开幕。6月23日上午,《HarmonyOS开放能力,使能应用原生易用体验》分论坛成功举办,大会邀请了多位华为技术专家深度解读如何通过根技术、开放能力、场景化控件等亮点…

什么是中断?---STM32篇

目录 一,中断的概念 二,中断的意义 三,中断的优先级 四,中断的嵌套 如果一个高优先级的中断发生,它会立即打断当前正在处理的中断(如果其优先级较低),并首先处理这个高优…

EXCEL快速填充空白内容

** EXCEL快速填充空白内容 ** 1.全选所有需要填充的内容,按住电脑的F5或者CTRLG点击定位 2.可以看到空白处被自动选定,之后按电脑和⬆,最后CTRLenter 可以看到空白处已经被填充。

vue uniapp MEQX JWT认证

1.下载依赖 npm install mqttimport * as mqtt from "mqtt/dist/mqtt.min" ​ 我是用的uniapp vue3 vite这里尝试了很多方式,都导入不进去后来我就采用的本地引入方式, 把mqtt.min.js下载到本地然后在index.html 中导入<script src"./MEQX/mqtt.js" typ…

对于CDA一级考试该咋准备??!

一、了解考试内容和结构 CDA一级考试主要涉及的内容包括&#xff1a;数据分析概述与职业操守、数据结构、数据库基础与数据模型、数据可视化分析与报表制作、Power BI应用、业务数据分析与报告编写等。 CDA Level Ⅰ 认证考试大纲:https://edu.cda.cn/group/4/thread/174335 …

第5章_Modbus通讯协议

文章目录 5.1 学习Modbus的快速方法5.1.1 寄存器速记5.1.2 协议速记 5.2 初识Modbus5.2.1 背景5.2.2 什么是Modbus&#xff1f;1. Modbus简介2. Modbus特点3. Modbus常用术语4. Modbus事务处理 5.3 Modbus软件与使用5.3.1 Modbus软件简介5.3.2 Modbus Poll&#xff08;主站设备…

Qt信号槽的坑

1、重载的信号&#xff08;以QSpinBox为例&#xff09; 像是点击按钮之类的信号槽很好连接&#xff0c;这是因为它的信号没有重载&#xff0c;如果像SpinBox那样有重载信号的话&#xff08;Qt5.12的见下图&#xff0c;不过Qt5.15LTS开始就不再重载而是换信号名了&#xff09;&…

Linux的fwrite函数

函数原型: 向文件fp中写入writeBuff里面的内容 int fwrite(void*buffer&#xff0c;intsize&#xff0c;intcount&#xff0c;FILE*fp) /* * description : 对已打开的流进行写入数据块 * param ‐ ptr &#xff1a;指向 数据块的指针 * param ‐ size &#xff1a;指定…

【SGX系列教程】(五)Intel-SGX 官方示例分析(SampleCode)——RemoteAttestation

文章目录 一.RemoteAttestation原理介绍1.1 远程认证原理1.2 远程认证步骤1.3 远程认证基本流程1.4 IAS通过以下步骤验证报告的签名1.5 关键术语1.6 总结二.源码分析2.1 README2.1.1 README给出的编译流程2.2 重点代码分析2.2.0 主要代码模块交互流程分析2.2.1 isv_app文件夹2.…

【MATLAB源码-第135期】基于matlab的变色龙群优化算法CSA)机器人栅格路径规划,输出做短路径图和适应度曲线。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 变色龙群优化算法&#xff08;Chameleon Swarm Algorithm&#xff0c;CSA&#xff09;是一种新颖的群体智能优化算法&#xff0c;受到自然界中变色龙捕食和社交行为的启发。变色龙以其独特的适应能力而著称&#xff0c;能够根…

SpringBoot 搭建sftp服务 实现远程上传和下载文件

maven依赖&#xff1a; <dependency><groupId>com.jcraft</groupId><artifactId>jsch</artifactId><version>0.1.55</version> </dependency>application.yml sftp:protocol: sftphost: port: 22username: rootpassword: sp…

使用API有效率地管理Dynadot域名,为文件夹中的域名进行域名停放

关于Dynadot Dynadot是通过ICANN认证的域名注册商&#xff0c;自2002年成立以来&#xff0c;服务于全球108个国家和地区的客户&#xff0c;为数以万计的客户提供简洁&#xff0c;优惠&#xff0c;安全的域名注册以及管理服务。 Dynadot平台操作教程索引&#xff08;包括域名邮…