You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

创建Service导致Kubernetes报错求助:CentOS7下v1.9集群异常

排查Kubernetes v1.9在CentOS7上创建Service失败的问题

兄弟,我之前在K8s v1.9版本也踩过Service的坑,既然RC能正常创建,说明集群基础调度和Pod运行机制没问题,咱们一步步揪出问题根源:

1. 先抓准具体错误信息

别光看“创建失败”,先拿实锤日志:

# 查看Service的详细状态和事件
kubectl describe svc <你的Service名称>
# 过滤集群中所有和Service相关的事件
kubectl get events | grep -i service

重点看Events字段里的报错,比如是不是标签不匹配、端口冲突,或者网络组件异常?

2. 核对Service YAML配置的核心细节

最常见的坑就是标签选择器和RC/Pod的标签不匹配:
比如你的RC Pod模板里标签是app: my-demo,但Service的selector写成了app: demo-app,直接导致Service找不到后端Pod,状态会显示Endpoints: <none>。

给你贴个正确的配置对照:
RC的Pod模板片段:

spec:
  template:
    metadata:
      labels:
        app: my-web  # 这个标签是关键,必须和Service的selector完全一致
    spec:
      containers:
      - name: nginx
        image: nginx:1.12
        ports:
        - containerPort: 80

对应的Service配置:

apiVersion: v1
kind: Service
metadata:
  name: my-web-svc
spec:
  selector:
    app: my-web  # 这里必须和Pod标签完全匹配
  ports:
  - protocol: TCP
    port: 80        # Service对外暴露的端口
    targetPort: 80  # Pod内容器实际监听的端口,别写错

3. 检查集群网络插件状态

K8s v1.9必须依赖第三方网络插件(比如Flannel、Calico)实现Pod通信和Service转发,要是插件挂了,Service肯定罢工:

# 检查网络插件Pod状态(以Flannel为例)
kubectl get pods -n kube-system | grep flannel
# 看日志找插件异常原因
kubectl logs <flannel-pod-name> -n kube-system

另外CentOS7的防火墙/SELinux也可能搞破坏,先临时关闭试试(生产环境后续要配规则,别直接裸奔):

systemctl stop firewalld
setenforce 0

4. 确认kube-proxy组件正常运行

kube-proxy是Service转发的核心,它挂了Service就成了空架子:

# 检查kube-proxy Pod状态
kubectl get pods -n kube-system | grep kube-proxy
# 异常的话看日志
kubectl logs <kube-proxy-pod-name> -n kube-system

如果是iptables模式的kube-proxy,还可以检查节点上的规则是否生成:

iptables-save | grep <你的Service名称>

没找到相关规则的话,说明kube-proxy没同步Service配置。

5. 排查DNS组件状态

如果是ClusterIP类型的Service,Pod访问它需要DNS解析,kube-dns挂了也会导致Service“看起来失败”:

kubectl get pods -n kube-system | grep kube-dns

要是状态异常,先解决DNS的问题。

把上面命令得到的具体信息贴出来,我再帮你精准定位问题!

内容的提问来源于stack exchange,提问作者macroxmu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 04:19:46