我在 nodejs 中创建了我的项目的图像。
我写了 protoc -I=proto --go_out=. proto/*.proto
yaml :
Development
并创建一个 apiVersion: apps/v1
kind: Deployment
metadata:
name: user-depl
labels:
app: user-depl
spec:
replicas: 3
selector:
matchLabels:
app: user-pod
departemant: user
template:
metadata:
labels:
app: user-pod
departemant: user
spec:
containers:
- name : user-pod
image: kia9372/store-user
ports:
- containerPort: 4000
:
Services
当我运行这个命令 apiVersion: v1
kind: Service
metadata:
name: user-service
labels:
app: user-service
spec:
selector:
app: user-pod
ports:
- name: user
protocol: TCP
port: 4000
targetPort: 4000
时,它会告诉我:
用户服务 ClusterIP 10.109.72.253 4000/TCP 36m
当我通过邮递员向该服务发送请求时,它没有显示任何内容。
kubectl get services
它告诉我这个错误:
<块引用>错误:连接 ETIMEDOUT 10.109.72.253:4000
有什么问题吗?我该如何解决这个问题???
答案 0 :(得分:3)
ClusterIP
是服务的默认值。ClusterIP
在 cluster-internal IP
上公开服务。
选择此值会使服务只能从集群内访问
这是关于如何使用 NoodePort/ClusterIP
访问它的示例代码
https://github.com/nirgeier/KubernetesLabs/tree/master/Labs/05-Services
图片来源:https://medium.com/avmconsulting-blog/service-types-in-kubernetes-24a1587677d6