k8s 支持桥接不 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
idblife
7.51D
V2EX    Kubernetes

k8s 支持桥接不

  •  
  •   idblife 2020-06-30 14:04:19 +08:00 4134 次点击
    这是一个创建于 1978 天前的主题,其中的信息可能已经有所发展或是发生改变。

    想给每个 pod 分配一个正常的 ip

    第 1 条附言    2020-06-30 18:50:03 +08:00
    英特尔的 multus-cni 应该能解决,
    给 docker 容器再加一张使用 macvlan 的网卡
    29 条回复    2020-07-01 13:41:19 +08:00
    julyclyde
        1
    julyclyde  
       2020-06-30 14:07:06 +08:00
    也可以啊
    pmispig
        2
    pmispig  
       2020-06-30 14:23:55 +08:00
    支持,但是坑比较多。。插件没有比较权威的
    idblife
        3
    idblife  
    OP
       2020-06-30 14:41:14 +08:00
    @pmispig
    我们是自己搞了一套分布式服务化框架,java 工程直接获取网卡 ip 去 zookeeper 注册,获取到的 pod ip 从集群外无法连接,郁闷
    idblife
        4
    idblife  
    OP
       2020-06-30 14:41:26 +08:00
    @julyclyde
    请问有啥关键词,多谢
    julyclyde
        5
    julyclyde  
       2020-06-30 15:05:05 +08:00
    也可以啊
    @idblife 不需要啥关键词啊。网络这部分是容器系统的,不是 k8s 的
    vakara
        6
    vakara  
       2020-06-30 15:06:18 +08:00 via Android
    可以去看看 macvlan, 就可以和主机一样对外提供访问了。
    idblife
        7
    idblife  
    OP
       2020-06-30 15:06:40 +08:00
    @vakara
    多谢,我去看看 macvlan
    Illusionary
        8
    Illusionary  
       2020-06-30 15:11:25 +08:00
    @idblife 你这个需求太简单了,在公司路由加几条规则就可以做到办公网络直通 k8s pod 段 ip,我们公司就是这么弄的,开发环境的 k8s 集群搭在公司机房,办公网络的电脑可以直接访问 k8s 内部的 172.30.x.x 的 pod 网段
    rrfeng
        9
    rrfeng  
       2020-06-30 15:18:12 +08:00
    支持。
    pmispig
        10
    pmispig  
       2020-06-30 15:55:50 +08:00
    @Illusionary 应该要有一个 nat 网关吧?
    NoobPhper
        11
    NoobPhper  
       2020-06-30 17:10:37 +08:00
    HostNetwork: true
    yitiaoxiaoxi
        12
    yitiaoxiaoxi  
       2020-06-30 17:18:23 +08:00
    这样会不会有问题,pod 的 ip 会变化
    monkeyWie
        13
    monkeyWie  
       2020-06-30 17:45:05 +08:00
    为啥不用 NodePort service 暴露出去
    pepesii
        14
    pepesii  
       2020-06-30 17:54:00 +08:00
    可以用 hostport 不呢
    optional
        15
    optional  
       2020-06-30 18:16:26 +08:00 via iPhone
    nat 过去是最简单的
    joesonw
        16
    joesonw  
       2020-06-30 18:32:27 +08:00
    如果是开发环境的话, 可以试试 metallb, 支持从 DHCP 拿 IP 作为 Service IP
    idblife
        17
    idblife  
    OP
       2020-06-30 18:50:41 +08:00
    @Illusionary
    不是路由加几条规则就能搞定的吧
    idblife
        18
    idblife  
    OP
       2020-06-30 18:50:59 +08:00
    @joesonw
    多谢,我查查看
    idblife
        19
    idblife  
    OP
       2020-06-30 18:51:57 +08:00
    @monkeyWie
    需要应用主动去向 zookeeper 注册,应用是 ifconfig 取的本机网卡上的 ip
    idblife
        20
    idblife  
    OP
       2020-06-30 18:53:59 +08:00
    @NoobPhper
    需要相同端口的两个应用程序不能在同一节点上运行。当群集上运行的应用程序数量增加时,这可能会导致端口冲突。由于这些原因,主机网络不是使您的应用程序可以从群集外部访问的好方法。
    awhane
        21
    awhane  
       2020-06-30 19:18:34 +08:00
    你这个常规需求,只需 pod 和集群外网络互通即可。然后注意下容器实例停止清理注册中心心跳数据就行。
    idblife
        22
    idblife  
    OP
       2020-06-30 19:44:32 +08:00
    @awhane
    是的,互通好弄,问题是工程是如何获取到本容器的 ip,这个 ip 需要从集群外访问到
    awhane
        23
    awhane  
       2020-06-30 21:54:45 +08:00
    @idblife 拿容器 ip 你具体有什么困难呢?我看 java 拿本地 ip 的实现就是通过 /etc/hosts hostname 拿解析的 IP(容器 IP),拿到了然后注册到服务治理,外部访问即可。
    cheng6563
        24
    cheng6563  
       2020-06-30 22:06:51 +08:00 via Android
    我司是 network:host 了
    defunct9
        25
    defunct9  
       2020-07-01 06:13:58 +08:00 via iPhone
    网络是个很复杂的问题。
    建议直接 lxc,桥接。我们就是这么干的
    idblife
        26
    idblife  
    OP
       2020-07-01 10:54:02 +08:00
    idblife
        27
    idblife  
    OP
       2020-07-01 10:54:33 +08:00
    @awhane
    默认的容器 ip 从集群外部是无法访问到的啊
    awhane
        28
    awhane  
       2020-07-01 11:13:00 +08:00
    @idblife 如果你说的容器 ip 不是 127.0.0.1 地址。看你注册中心是包含了 k8s 实例和非 k8s 实例,要想互相访问就需要打通了,开源社区 underlay Calico Bgp 和外部交换机学习路由,或者外部静态路由分发到 k8s 某个节点都行。
    idblife
        29
    idblife  
    OP
       2020-07-01 13:41:19 +08:00
    @awhane
    准备通过 multus-cni 添加 macvlan,给 docker 容器里再加一块单独网卡用作跨集群通信
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2493 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 04:36 PVG 12:36 LAX 20:36 JFK 23:36
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86