gpt4 book ai didi

kubernetes - 无法使用NodePort访问本地kubernetes集群中的服务

转载 作者:行者123 更新时间:2023-12-03 16:41:48 24 4
gpt4 key购买 nike

我有以下 list

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: my-redis
spec:
selector:
matchLabels:
app: my-redis
replicas: 1
template:
metadata:
labels:
app: my-redis
spec:
containers:
- name: my-redis
image: redis
ports:
- name: redisport1
containerPort: 6379
hostPort: 6379

---
apiVersion: v1
kind: Service
metadata:
name: redis-service
labels:
app: my-redis
spec:
type: NodePort
selector:
name: my-redis
ports:
- name: redisport1
port: 6379
targetPort: 6379
nodePort: 30036
protocol: TCP

这是一个重现我的问题的示例。我的目的是创建一个简单的集群,其中包含一个带有redis容器的pod,并且应该将其公开给我的本地主机。尽管如此,获取服务仍为我提供以下输出:
redis-service   NodePort    10.107.233.66   <none>        6379:30036/TCP   10s

如果我用LoadBalancer交换NodePort,我会得到一个外部IP,但是端口仍然不起作用。

您能帮我确定为什么我无法将6379端口映射到我的本地主机吗?

谢谢,

最佳答案

对于任何对此问题感兴趣的人,我都发现了问题。修复Ijaz之后,我还需要更改选择器以匹配 pods 中的标签,这是我的错字!

pod具有“app = my-redis”标签,但服务选择器具有“name = my-redis”。匹配它们可以解决访问问题。

关于kubernetes - 无法使用NodePort访问本地kubernetes集群中的服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53105262/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com