使用KT Connect(探索版)

这是一篇整理笔记,我很久前就开始使用这个技术了,但是一直没有整理。最近同事需要用,所以我简单整理一下,笔记中需要用到的资料我暂时去整理下载地址了,等以后有时间了,我在详细补充一下这份资料。

准备二进制文件及K8S配置文件,并配置配置环境变量

如图,准备必要的二进制文件:

2021-07-09-10-43-46

然后配置环境变量,配置后,需要确保在命令行执行ktctl有输出(很基本的常识)。整个过程需要注意一点:不要修改者两个二进制文件的位置,如果你的系统里已经有了kubectl则可以删除kubectl这个二进制文件。因为ktctl中是直接调用kubectl,如果kubectl不在环境变量中,则无法启动。

下一步是在你的home目录下建一个.kube目录,将kubernetes的config文件放在里面,这个大家都知道,是kubectl用来链接集群的配置文件,包含了用户名、密码,或者token之类的信息。

启动二进制文件

下一步是在终端(终端需要管理员权限,因为需要修改host文件)运行如下如下指令:


ktctl --namespace=dev connect --method=socks5 --dump2hosts

这条指令有两层含义:

  1. 去dump一下host文件,
  2. 使用的是socks代理(windows只支持socks代理)

下载Proxifier,并进行配置

如图,我只做了如下简单配置,便可以使用了(我把KT Connection运行在了我Linux服务器上,建议运行在自己本地):

2021-07-09-16-01-36

2021-07-09-16-02-57

我没有采用官网上建议的JVM Inject方案,因为这个方案在Windows上成功率非常的低。

使用过程中遇到的各种离奇的问题

  1. 使用CMD无法dump下host文件(CMD已经在管理员身份下运行),我目前定位了一例是因为host文件设置成只读的了