简而言之,您可以将文件从kubectl 正在使用的microk8s 实例(kubeconfig) 复制到Windows 机器,以便连接到您的microk8s 实例。
由于您已经在 Windows 机器和配置了 microk8s 的 Ubuntu 之间建立了完全连接,因此您需要:
- 在 Windows 机器上安装
kubectl
- 复制并修改 Windows 计算机上的
kubeconfig 文件
- 测试连接
安装kubectl
您可以通过以下链接参考有关该问题的官方文档:
复制并修改 Windows 机器上的 kubeconfig 文件
重要!
经过一番研究,我找到了更简单的方法。
您需要在您的 microk8s 主机上运行 microk8s.config 命令。它将为您提供连接到您的实例所需的配置,您无需编辑任何字段。您只需在 Windows 机器上将其与 kubectl 一起使用。
我在下面部分给出了如何检查配置文件所在位置的选项之一
这将取决于您使用的工具,但其主要思想是登录到您的 Ubuntu 机器,检查 kubeconfig 的位置,将其复制到 Windows 机器并编辑它以指向 IP 地址你的microk8s 实例(不是127.0.0.1)。
如果您可以将SSH 转换为VM,您可以运行以下命令来检查配置文件的位置(我认为这更像是一种变通解决方案):
microk8s kubectl get pods -v=6
I0506 09:10:14.285917 104183 loader.go:379] Config loaded from file: /var/snap/microk8s/2143/credentials/client.config
I0506 09:10:14.294968 104183 round_trippers.go:445] GET https://127.0.0.1:16443/api/v1/namespaces/default/pods?limit=500 200 OK in 5 milliseconds
No resources found in default namespace.
正如您在此示例中所见,文件位于(在您的设置中可能有所不同):
/var/snap/microk8s/2143/credentials/client.config
您需要通过scp 或其他方式将此文件复制到您的Windows 机器上。
复制后,您需要编辑此文件以更改负责指定kubectl 应连接到何处的字段:
- 之前:
server: https://127.0.0.1:16443
- 之后:
server: https://ubuntuk8s:16443
测试连接
检查您是否可以从 Windows 机器连接到 microk8s 实例的方法之一如下:
PS C:\Users\XYZ\Desktop> kubectl --kubeconfig=client.config get nodes -o wide
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
ubuntu Ready <none> 101m v1.20.6-34+e4abae43f6acde 192.168.0.116 <none> Ubuntu 20.04.2 LTS 5.4.0-65-generic containerd://1.3.7
地点:
-
--kubeconfig=client.config 指定您下载的文件
其他资源: