feat: proxy mode support multiple cluster (#677)

* feat: proxy mode support multiple cluster

* feat: ut

* feat: update readme

* feat: ut

* refactor: rename

* refactor: update service
This commit is contained in:
naison
2025-07-27 21:22:08 +08:00
committed by GitHub
parent 38584da9d3
commit 05905bb8ba
41 changed files with 3632 additions and 2708 deletions

View File

@@ -240,14 +240,12 @@ reviews ClusterIP 172.21.8.24 <none> 9080/TCP
```shell
➜ ~ kubevpn status
ID Mode Cluster Kubeconfig Namespace Status
0 full ccijorbccotmqodvr189g /Users/naison/.kube/config default Connected
CURRENT CONNECTION ID CLUSTER KUBECONFIG NAMESPACE STATUS NETIF
* 03dc50feb8c3 ccijorbccotmqodvr189g /Users/naison/.kube/config default connected utun4
```
此时还可以使用 `lite` 模式链接到其它集群
```shell
➜ ~ kubevpn connect -n default --kubeconfig ~/.kube/dev_config --lite
➜ ~ kubevpn connect -n default --kubeconfig ~/.kube/dev_config
Starting connect
Got network CIDR from cache
Use exist traffic manager
@@ -264,9 +262,9 @@ Configured DNS service
```shell
➜ ~ kubevpn status
ID Mode Cluster Kubeconfig Namespace Status
0 full ccijorbccotmqodvr189g /Users/naison/.kube/config default Connected
1 lite ccidd77aam2dtnc3qnddg /Users/naison/.kube/dev_config default Connected
CURRENT CONNECTION ID CLUSTER KUBECONFIG NAMESPACE STATUS NETIF
03dc50feb8c3 ccijorbccotmqodvr189g /Users/naison/.kube/config default connected utun4
* 86bfdef0ed05 ccidd77aam2dtnc3qnddg /Users/naison/.kube/dev_config default connected utun5
➜ ~
```
@@ -290,6 +288,18 @@ Rollout successfully for deployment/productpage
➜ ~
```
查看一下状态
```shell
➜ ~ kubevpn status
CURRENT CONNECTION ID CLUSTER KUBECONFIG NAMESPACE STATUS NETIF
* 03dc50feb8c3 ccijorbccotmqodvr189g /Users/naison/.kube/config default connected utun4
CONNECTION ID NAMESPACE NAME HEADERS PORTS CURRENT PC
03dc50feb8c3 default deployments.apps/productpage * 9080->9080 true
➜ ~
```
此时在本地使用 `go` 启动一个服务,用于承接流量。
```go
@@ -337,6 +347,18 @@ Rollout successfully for deployment/productpage
➜ ~
```
查询状态
```shell
➜ ~ kubevpn status
CURRENT CONNECTION ID CLUSTER KUBECONFIG NAMESPACE STATUS NETIF
* 03dc50feb8c3 ccijorbccotmqodvr189g /Users/naison/.kube/config default connected utun4
CONNECTION ID NAMESPACE NAME HEADERS PORTS CURRENT PC
03dc50feb8c3 default deployments.apps/productpage foo=bar 9080->9080 true
➜ ~
```
不带 header 直接访问集群资源,可以看到返回的是集群中的服务内容。
```shell