如何连接另一台机器上docker桌面的k8s集群?

Mik*_*ike 7 kubernetes docker-desktop

我有一台 MacBook ( 192.168.1.101) 和一台 macmini ( 192.168.1.104),使用相同的 wifi。

我在 macmini 上通过 docker-desktop 启动了一个 k8s 集群,并想通过kubectlmacbook 访问它。

这是我~/.kube/config在 macmini 上的样子:

apiVersion: v1
clusters:
- cluster:
    certificate-authority-data: ******
    server: https://kubernetes.docker.internal:6443
  name: docker-desktop
contexts:
- context:
    cluster: docker-desktop
    user: docker-desktop
  name: docker-desktop
- context:
    cluster: docker-desktop
    user: docker-desktop
  name: docker-for-desktop
current-context: docker-desktop
kind: Config
preferences: {}
users:
- name: docker-desktop
  user:
    client-certificate-data: ******
    client-key-data: ******
Run Code Online (Sandbox Code Playgroud)

如何~/.kube/config在 MacBook 上书写?目前我遵循官方文档并收到以下错误。

$ kubectl config view
apiVersion: v1
clusters:
- cluster:
    certificate-authority-data: DATA+OMITTED
    server: http://192.168.1.104:6443
  name: macmini-cluster
contexts:
- context:
    cluster: macmini-cluster
    user: macmini-user
  name: macmini-context
current-context: macmini-context
kind: Config
preferences: {}
users:
- name: macmini-user
  user:
    client-certificate-data: REDACTED
    client-key-data: REDACTED
$ kubectl get pods
The connection to the server 192.168.1.104 was refused - did you specify the right host or port?
Run Code Online (Sandbox Code Playgroud)

更新

我将端口添加6443serverofcluster并尝试添加到telnetmacmini 的端口6443,但得到:

$ telnet 192.168.1.104 6443
Trying 192.168.1.104...
telnet: connect to address 192.168.1.104: Connection refused
telnet: Unable to connect to remote host
Run Code Online (Sandbox Code Playgroud)

当我检查 macmini 时:

$ netstat -na|grep 6443
tcp4       0      0  127.0.0.1.6443         *.*                    LISTEN
Run Code Online (Sandbox Code Playgroud)

似乎有一个未解决的相关问题

Pra*_*ati 0

在 macbook 中,端口号必须指定如下。这是K8S APIServer 的端口号。( 1 )

服务器: http: //192.168.1.104:6443