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

Kubernetes Master节点能否部署Pod?能否跨节点配置Ingress集群?

Kubernetes Master节点部署Pod及Ingress配置问题解答

1. Kubernetes Master节点是否可以部署pod?

默认情况下,Kubernetes Master节点会被打上node-role.kubernetes.io/master:NoSchedule的污点,调度器会拒绝将普通业务Pod部署到这里——这是为了保护控制平面组件(kube-apiserver、kube-controller-manager、kube-scheduler等)的稳定性,避免业务Pod抢占资源导致集群管控异常。

但并非完全无法部署:

  • 测试环境或有特殊需求时,可移除Master节点的污点:
    kubectl taint nodes <master-node-name> node-role.kubernetes.io/master-
    
  • 或者给目标Pod添加容忍度,允许调度器将其部署到带该污点的节点:
    tolerations:
    - key: "node-role.kubernetes.io/master"
      operator: "Exists"
      effect: "NoSchedule"
    

不过生产环境强烈不建议这么做,会大幅提升集群故障风险。

2. 能否在Kubernetes Master节点与Worker节点上配置Kubernetes ingress集群及NGINX?

可以,但需结合场景权衡:

  • NGINX Ingress Controller本质是一组业务Pod,只要Master节点允许部署Pod(移除污点或配置容忍),就能将其调度到Master节点上。
  • 要搭建Ingress集群(多实例NGINX Ingress Controller),只需调整Deployment的副本数,调度器会自动将实例分布在允许调度的Master和Worker节点上。
  • 但生产环境不建议把Ingress Controller放在Master节点:Ingress是集群流量入口,需要高可用性和充足资源承载流量,Worker节点是专门承担业务负载的节点,更适合部署Ingress Controller;Master节点应专注控制平面,避免流量压力影响集群管控能力。

另外,无论部署在哪些节点,都要确保Ingress Controller的服务(通常为LoadBalancer或NodePort类型)能被外部流量访问,比如使用NodePort时需开放对应端口的防火墙规则。

内容的提问来源于stack exchange,提问作者Dev Anand Sadasivam

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.02 04:04:54