我使用label:appenv
创建了一个pod,使用appenv
选择器创建了一个类型为node port的服务。但是当我使用kubectl get ep service-name
时,它显示“没有端点”(意味着服务没有与该pod连接)。
这是我的pod.yaml
和service.yaml
pod.yaml
apiVersion: v1
kind: Pod
metadata:
name: pod1
labels:
app: appenv
spec:
containers:
- name: app
image: aathith/lbt:v1
ports:
- name: app-port
containerPort: 8082
restartPolicy: Never
service.yaml
apiVersion: v1
kind: Service
metadata:
name: app
spec:
selector:
app: appenv
type: NodePort
ports:
- name: http
port: 8082
targetPort: 8082
nodePort: 30082
protocol: TCP
kubectl get po --show-labels
的输出
kubectl get svc app
的输出
您的pod处于“已完成”状态 - 这就是问题所在。它不在“正在运行”状态。为什么?因为容器中的命令已完成0退出代码。在正常情况下,容器的运行命令不应该退出,除非它是Job或Cronjob。你明白我的意思吗?