Kubernetes本地使用kind,无法访问服务。

4

我将遵循一个非常简单的教程,在其中使用Kubernetes生成具有HTTP端点的简单Pod和服务来公开该应用程序。

设置非常简单:

app-pod.yml

apiVersion: v1
kind: Pod
metadata:
  name: hello-pod
  labels:
    app: web
spec:
  containers:
    - name: web-ctr
      image: nigelpoulton/getting-started-k8s:1.0
      ports:
        - containerPort: 8080

还有NodePort服务:

apiVersion: v1
kind: Service
metadata:
  name: ps-nodeport
spec:
  type: NodePort
  ports:
  - port: 80
    targetPort: 8080
    nodePort: 31111
    protocol: TCP
  selector:
    app: web

服务和Pod似乎是正常的:

enter image description here

但我无法访问正在运行的应用程序:

localhost:31111

显示“无法访问此网站”的消息。

我刚开始接触这个,所以任何帮助将不胜感激。

2个回答

4

3
是的,这正是我在寻找的。谢谢。我创建了这个要点,以便其他人可以快速开始,而不必绕过所有复杂的 BS -> https://gist.github.com/mmaia/ff49117b110702a314aabd5b294cc951 - groo
1
很好,很高兴它能够正常工作! - Rafał Leszko

0
从本地访问该服务(如你正在尝试的那样)的最简单方法是使用:
kubectl port-forward

例如,以下命令将适用于您的情况 - 它将从本地主机转发流量到 ps-nodeport 服务。
kubectl port-forward service/ps-nodeport 31111: 31111

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接