KT-Connect

原理:

定义:是一款基于k8s环境用于提高本地测试联调效率的小工具。

它的作用类似VPN,能够打通k8s集群跟本地的网络。

主要有以下四种模式: Connect:本地网络直接访问k8s集群网络 Exchange:转发集群流量到本地 Service Mesh支持:对于使用Istio的开发者,KT支持创建一个指向本地的Version版本 Preview:将本地服务注册为集群里的Service

Connect命令的作用是建立一个本地到集群的“单向VPN”,根据VPN原理,打通两个内网必须借助一个公共的中继节点,Ktconnect工具主要利用k8s中的 API Server充当中继节点。

连接两种模式:

socks模式

sshuttle模式

原理理解:本机所在的局域网和k8s集群内的局域网通过VPN连接(连接过程——通过config配置文件进行的认证,然后kt——connect工具在集群内建立一个Pod,我理解这个Pod相当于一个NAT地址转换),通过VPN之后本地主机可以获取到集群内的路由表(也就是K8S集群服务的内网网段),本地主机路由表添加了K8S集群私有网段的路由信息。

安装步骤:
  1. 已有k8s集群

  2. 本地电脑安装kubectl工具——不安装也可以

官网安装:在 Windows 上安装 kubectl | Kubernetes

(若是安装不了,可以下载安装包)

3.能够获取到1集群中的config文件

1、把集群中的文件下载或者复制到本地用户下(C:\Users\27709)
[root@master .kube]# pwd
/root/.kube
[root@master .kube]# ll
total 12
drwxr-x--- 4 root root 4096 Oct 17 21:46 cache
-rw------- 1 root root 5645 Oct 23 21:32 config
​
在本地新建一个.kube文件,然后复制进去
​
​
2、修改config文件中的IP地址(127.0.0.1:6443————(以管理员权限打开))
由于K8S集群的特殊性,必须要修改成主机名,而不能直接添加IP地址;
修改主机名的路径:C:\Windows\System32\drivers\etc\hosts    (以管理员权限打开)

4.安装KtConnect

把Ktconnect工具下载安装到本地——》解压文件——》设置该路径的环境变量

(我是解压到C:\Users\27709.kube),然后以管理员身份打开powershell,进入到相应目录下,

PS C:\Windows\system32> .\ktctl.exe connect

结果

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐