#kubernetes-cluster #kubernetes #wireguard #vpn #kubectl #developer-tools

app k8s-insider

一种无需配置即可访问您的 Kubernetes 集群网络的零配置方式

3 个不稳定版本

0.4.1 2023 年 8 月 23 日
0.4.0 2023 年 8 月 21 日
0.3.4 2023 年 8 月 17 日

#1773 in 命令行工具

每月 23 下载

GPL-3.0 或更高版本

235KB
6K SLoC

k8s-insider

一种无需配置即可访问您的 Kubernetes 集群网络的零配置方式

概述

最初是一个失控的权宜之计,k8s-insider 是访问您的开发 Kubernetes 集群网络资源的全套服务。

该应用程序通过在集群中部署操作员并应用具有网络和隧道定义的 CRD 来工作,这些 CRD 然后由操作员 pod 进行协调。在网络和隧道应用于集群并协调后,CLI 应用程序读取其状态,并在用户的机器上生成和/或应用 WireGuard 配置。

NetworkTunnel CRD 是有命名空间的,并且可以轻松地进行 RBAC。流量通过单独的 router pod 转发,并且可以使用网络策略进行整形。

功能

  • 每个集群多个网络
  • 动态 IP 分配
  • 自动检测 Flannel(通过 Helm/CLI 安装)的服务和 pod CIDR
    • Cilium(通过 Helm/CLI 安装)
    • Pod 和服务的 DNS 解析
  • 计划中的功能

NAT-free 路由

  • IPv6 支持
  • 要求

GNU/Linux

  • kubectl 配置了上下文
    • wireguard-tools 用于创建本地隧道
    • systemd-resolved 用于 DNS 修补功能
    • Windows
  • WireGuard for Windows 用于创建本地隧道
    • wireguard-tools 用于创建本地隧道
    • 安装

cargo(GNU/Linux 和 Windows)

快速入门

cargo install --locked k8s-insider

当前限制

k8s-insider install
k8s-insider create network
k8s-insider connect

某些自动检测功能可能在单二进制 Kubernetes 发行版(k3s、k0s 等)上无法正常工作。请随时创建问题或提交 PR。

许可声明

版权 (C) 2023 Marcin Jędrasik

本程序是自由软件:您可以按照自由软件基金会发布的 GNU 通用公共许可证的条款重新分发和/或修改它,许可证版本为 3 或(根据您的选择)任何更高版本。

本程序是根据希望它将是有用的目的进行分发的,但没有任何保证;甚至没有对适销性或适用于特定目的的隐含保证。有关详细信息,请参阅 GNU 通用公共许可证。

您应该已收到与该程序一起提供的 GNU 通用公共许可证副本。如果没有,请参阅 https://www.gnu.org/licenses/

51

依赖关系

~85MB
~1.5M SLoC