V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
RatioPattern
V2EX  ›  Kubernetes

k8s 可否指定一个 node 作为 nginx ingress 节点?如何配置?

  •  
  •   RatioPattern · 2023-02-12 17:29:36 +08:00 · 1507 次点击
    这是一个创建于 642 天前的主题,其中的信息可能已经有所发展或是发生改变。

    目前家里有五六台服务器跑了 k8s ,但是家网没有公网 IP 想对外提供服务比较麻烦, 于是加了一台华为云服务器用 vpn 接入家里的 k8s 内网 作为一个节点, 但这台华为云服务器配置比较低,是希望只用他做 nginx ingress 节点转发公网流量,不要跑任何 pods 这样能否实现,如何配置?或者有更好的方式?

    9 条回复    2023-02-13 10:14:00 +08:00
    nulIptr
        1
    nulIptr  
       2023-02-12 17:47:47 +08:00
    搜下 taint/affinity ,都可以实现
    seers
        2
    seers  
       2023-02-12 18:29:11 +08:00 via Android
    给 node 打污点,然后 pod 给容忍就行
    xvan
        3
    xvan  
       2023-02-12 20:29:12 +08:00
    亲和性
    xqiang
        4
    xqiang  
       2023-02-12 23:27:04 +08:00
    1. 不跑任何其他 pods:taint
    2. 做 nginx ingress 节点: 容忍 taint 的同时,加 nodeSelector 或 affinity
    RatioPattern
        5
    RatioPattern  
    OP
       2023-02-13 01:15:02 +08:00
    @xqiang 第二点,公网华为云这个 k8s node 不跑业务 pods(k8s 自己的服务 Pods 不算)只当 nginx ingress 节点,也需要初始化 nginx ingress 服务 pods 的时候加 nodeSelector 选中公网华为云 node 吗?
    RatioPattern
        6
    RatioPattern  
    OP
       2023-02-13 05:10:57 +08:00
    补充下,是希望 nginx ingress 为全局生效,代理多个不同 namespace 的 svc 出去。。。
    littlezzll
        7
    littlezzll  
       2023-02-13 08:16:28 +08:00 via Android
    给指定节点打标签,比如 ingress=true ,nodeSelector 指定这个标签即可
    julyclyde
        8
    julyclyde  
       2023-02-13 09:00:16 +08:00
    我总觉得 nodeport 模式的 service 是一个设计错误
    并非所有 node 都对外服务,但是一个 service 需要在所有 node 上都占有端口,浪费资源,增加协调难度
    端口如果用完了咋办呢?每个集群只能有六万多个 service ?
    lizon
        9
    lizon  
       2023-02-13 10:14:00 +08:00   ❤️ 1
    除了上面提到的方式,还可以指定 pod 的 nodeName
    https://kubernetes.io/zh-cn/docs/concepts/scheduling-eviction/assign-pod-node/#nodename

    链接中整篇官方文档正好对应你的问题
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2834 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 06:42 · PVG 14:42 · LAX 22:42 · JFK 01:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.