我已经使用 在 macOS 机器上创建了一个 K8S 集群kind
。我在该集群上运行了一个,运行echo-service
时我可以在本地主机上访问它。kubectl port-forward svc/echo-service 7893:7893
我原本希望能够访问 K8S 集群 IP ( http://10.104.60.162:7893/
) 上的服务,但那行不通。我是不是漏掉了什么?
答案1
关联默认种类配置中,集群配置为仅在本地主机上可访问。要允许通过服务器的所有 IP 地址进行网络访问,您必须配置端口列表0.0.0.0,这意味着您的集群将可以通过以下方式访问:本地主机 & 10.104.60.162。
创建一个 yaml 配置文件,如下所示
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
networking:
apiServerAddress: 0.0.0.0
apiServerPort: 7893
将配置保存到后kind-custom-config.yaml
,您可以创建集群:
kind create cluster --config kind-custom-config.yaml
通过结账kubectl cluster-info
即可出发
$ kubectl cluster-info
Kubernetes master is running at https://0.0.0.0:7893
KubeDNS is running at https://0.0.0.0:7893/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy
答案2
请尝试运行curl localhost:7893
。另请查看docker for Mac 问题