连接k8s内网vpn教程

由于项目向zookeeper等注册中心注册的ip是k8s虚拟内网ip,比如10.244.x.x,开发主机识别不了这个ip地址, 连接不到通过注册中心注册的服务,所以采用vpn的方式将特定ip地址的解析映射进k8s内网。

注意:要使用k8s域名地址,需要先连上这个vpn。

访问k8s集群里面的zookeeper:

已连接vpn的情况下,使用长域名,比如:

  • zookeeper.tfp-test.svc.cluster.local
  • redis.tfp-test.svc.cluster.local
  • zookeeper.tfp-dev.svc.cluster.local
  • redis.tfp-dev.svc.cluster.local

中间的变动tfp-testtfp-dev是k8s的命名空间的信息,zookeeper是命名空间内部相互访问的域名。

openvpn

  1. 搭建openvpn服务器,此服务器可访问k8s pod ip
  2. openvpn windows 客户端下载,里面的openvpn-install-2.4.8-I602-WinXXX.exe

key文件:

|-------------------|--------------|-----------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 集群 | ip | key文件 | 验证地址 |
| k8s.fingard.cn | 10.60.44.219 | saas-k8s.ovpn | http://kuboard.kube-system.svc.cluster.local |
| luna.fingard.cn | 10.60.44.251 | luna-k8s.ovpn | http://kuboard.kube-system.svc.cluster.local |
| avatar.fingard.cn | 10.60.44.214 | avatar-k8s.ovpn | http://eolinker.ingress-out.svc.cluster.local:8400/eolinker_os/index.html |

使用说明

  1. 下载客户端、key文件,
  2. 一路下一步安装好客户端,
  3. 启动后,右键任务栏托盘区小图标,导入配置,选中那个key文件,
  4. 右键连接。

faq

使用不了其他网络

使用openvpn,访问不了百度之类的网站。

解决: 客户端配置注释掉这样的一行

# block-outside-dns

k8s内部域名不能访问

dns的问题。openvpn一般会自动设置新开启网卡的dns,但有时候会失败。这时可以手动设置解决。

找到kube-system命名空间下coredns 的servcice kube-dns的ip地址。把openvpn的网卡dns改下。

同时连两个openvpn

已管理员身份执行以下文件:

C:\Program Files\TAP-Windows\bin\addtap.bat

效果是添加一块虚拟网卡。 执行之后就可以同时连两个openvpn,多个应该同理。

相关推荐
月上柳青32 分钟前
docker gitlab arm64 版本安装部署
docker·容器·gitlab
Charlie__ZS1 小时前
微服务-配置管理
微服务·云原生·架构
基哥的奋斗历程3 小时前
Docker 常用命令
运维·docker·容器
A ?Charis3 小时前
ExternalName Service 针对的是k8s集群外部有api服务的场景?
kubernetes
Dusk_橙子3 小时前
在K8S中,pending状态一般由什么原因导致的?
云原生·容器·kubernetes
HEX9CF4 小时前
【Docker】快速部署 Nacos 注册中心
运维·docker·容器
喝醉酒的小白6 小时前
几种K8s运维管理平台对比说明
运维·容器·kubernetes
明 庭7 小时前
通过 Docker 部署 pSQL 服务器的教程
服务器·docker·容器
Linux运维老纪18 小时前
DNS缓存详解(DNS Cache Detailed Explanation)
计算机网络·缓存·云原生·容器·kubernetes·云计算·运维开发
JunLan~1 天前
Docker 部署 GLPI(IT 资产管理软件系统)
运维·docker·容器