kubernets 集群和本地环境联调环境打通工具kt-connect
Posted sandshell
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kubernets 集群和本地环境联调环境打通工具kt-connect相关的知识,希望对你有一定的参考价值。
官方github:https://github.com/alibaba/kt-connect
本地linux安装
# 切换到root用户 sudo su mkdir /root/tools
cd /root/tools/
pip install sshuttle curl -OL https://rdc-incubators.oss-cn-beijing.aliyuncs.com/stable/ktctl_linux_amd64.tar.gz tar -xzvf ktctl_linux_amd64.tar.gz mv ktctl_linux_amd64 /usr/local/bin/ktctl ktctl -h
[root@k8s-registry-91 ~]# ktctl -v
Kubernetes Develope Tools version 0.0.4
这种安装的可能不是最新版,也可以离线下载.下载地址:
https://github.com/alibaba/kt-connect/releases/
在Kubernetes中部署联调服务
kubectl run tomcat --image=tomcat:7 --expose --port=8080 会自动创建deployments和service
Connect 从本地访问Kubernetes资源
本地执行
root用户执行
# ktctl --kubeconfig /home/luanpeng/.kube/config --debug connect
如果提示已经运行,则可以在k8s中把deployment删除,在客户端把/home/luanpeng/.ktctl/
文件夹删除.
访问PodIP:
运行成功后可以查看是否成功启动sshuttle
ps -ef |grep sshuttle
如果sshuttle两个进程没有启动,则说明启动失败
/usr/bin/python3 /usr/local/bin/sshuttle --dns --to-ns 10.42.0.58 -e ssh -oStrictHostKeyChecking=no -oUserKnownHostsFile=/dev/null -i /root/.kt_id_rsa -r /usr/bin/python3 /usr/local/bin/sshuttle --method auto --firewall
在这种场景下,开发者只要直接使用ktctl connect打通本地到集群的网络即可,就可以直接在本地通过PodIP/ClusterIP/DNS地址访问集群中的服务。
以上是关于kubernets 集群和本地环境联调环境打通工具kt-connect的主要内容,如果未能解决你的问题,请参考以下文章