Telepresence工具安装及使用
Telepresence工具安装及使用
Telepresence简介
云原生基于k8s的开发意味着适应新的开发流程及新的开发环境。开发环境迁移到k8s之后,开发机无法直接连接到k8s集群内部与其他应用进行联调。Telepresence是一个集群双向代理工具,可以实现本地开发机到k8s内部的代理,同时也可以拦截k8s内部的流量到本地开发机。
Telepresence安装
Telepresence工具依赖kubectl,需先在本地开发机安装kubectl
Windows下kubectl的安装
- 下载kubectl二进制文件到本地
curl -LO https://dl.k8s.io/release/v1.19.0/bin/windows/amd64/kubectl.exe
2. 下载集群配置文件及证书到本地开发机
Telepresence安装
- 下载zip压缩包
curl -fL https://app.getambassador.io/download/tel2/windows/amd64/latest/telepresence.zip -o telepresence.zip
2. 下载zip文件解压并清除zip包
Expand-Archive -Path telepresence.zip
Remove-Item 'telepresence.zip'
cd telepresence
3. 安装Telepresence
Set-ExecutionPolicy Bypass -Scope Process
.\install-telepresence.ps1
4. 清除解压路径包
cd ..
Remove-Item telepresence
5. 将下载的kubectl放置到C:\telepresence目录下
6. 验证kubectl
kubectl --kubeconfig=C:\Users\PC-039201\.kube\kubeconfig cluster-info
上述配置文件路径,依据本地开发机实际存放路径
7. 验证Telepresence
telepresence
Telepresence使用
本地开发机连接集群内部
- 连接集群
telepresence connect --kubeconfig=C:\Users\PC-039201\.kube\kubeconfig
- 查看连接状态
telepresence status
- 访问集群内部的服务
访问集群内部的服务方式:servicename.namespace:port
拦截集群内部的流量到本地
- 查看可以拦截的服务
telepresence list -n ccs-dev
- 拦截指定的服务到本地
telepresence intercept ui --port 10000 -n ccs-dev
上述命令ui为ccs-dev名称空间的服务名,port为代理到的本机的端口
参考文档
Windows环境下安装kubectl工具:
https://kubernetes.io/zh/docs/tasks/tools/install-kubectl-windows/
Telepresence安装:
https://www.telepresence.io/docs/latest/install/
代理本地开机发到集群:
https://www.telepresence.io/docs/latest/howtos/outbound/
拦截集群内流量到本地开发机:
https://www.telepresence.io/docs/latest/howtos/intercepts