当前位置:首页 > 每日看点 > 正文内容

K8s 使用 Traefik 作为 Ingress 转发流量,是到 Service 还是直接到Pod?

卡卷网9个月前 (03-23)每日看点149

纯技术贴劝退提醒~



早些时间迁移了服务器集群到k3s之后,

发现代码拿不到客户端的请求IP了。

能看到的一直都是一个局域网的node-ip~


K8s 使用 Traefik 作为 Ingress 转发流量,是到 Service 还是直接到Pod?  第1张


查了一圈确认应该是默认的flannel 网络组件不转发read-ip。


K8s 使用 Traefik 作为 Ingress 转发流量,是到 Service 还是直接到Pod?  第2张



一般建议是改成 “Calico”来支持read-ip。

于是,折腾起来了。



禁用flannel

sudo vi /etc/systemd/system/k3s.service


ExecStart=/usr/local/bin/k3s server --flannel-backend=none --disable-network-policy


在对应的ExecStart 添加

“--flannel-backend=none --disable-network-policy”禁用flannel.

接着重启k3s.

sudo systemctl daemon-reload sudo systemctl restart k3s


安装Calico

kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml



然后大概率会遇到Image 拉不下来的错误~

所以嘛,自己手动换一下镜像再重新apply。

ccr.ccs.tencentyun.com/liguobao/k3s:kube-controllers-v3.25.0 ccr.ccs.tencentyun.com/liguobao/k3s:calico-cni-v3.25.0 ccr.ccs.tencentyun.com/liguobao/k3s:calico-node-v3.25.0


能看到 calico-kube-controllers 和 calico-node正常启动,

说明calico没什么问题了。

➜ ~ kc get pod -n kube-system NAME READY STATUS RESTARTS AGE calico-kube-controllers-585cb5b467-h5rss 1/1 Running 0 34m calico-node-fwgg4 1/1 Running 3 (33m ago) 37m coredns-56f6fc8fd7-ccfvb 1/1 Running 84 (9d ago) 73d helm-install-traefik-crd-rtksk 0/1 Completed 0 73d helm-install-traefik-rvxlr 0/1 Completed 0 15m local-path-provisioner-5cf85fd84d-q7zxm 1/1 Running 1 (9d ago) 73d metrics-server-5985cbc9d7-6pp9l 1/1 Running 99 (9d ago) 73d svclb-traefik-cd237bcc-wtm9f 2/2 Running 0 19m traefik-57b79cf995-dvdv9 1/1 Running 0 15m





配置traefik

kubectl edit svc traefik -n kube-system


修改 externalTrafficPolicy: Local


修改 /var/lib/rancher/k3s/server/manifests/traefik.yaml

支持read-ip转发

entryPoints: web: address: ":80" forwardedHeaders: trustedIPs: - "10.0.0.0/8" - "0.0.0.0/0" websecure: address: ":443" forwardedHeaders: trustedIPs: - "10.0.0.0/8" - "0.0.0.0/0"

然后重启traefik pod应用新的配置规则。

理论上完事了。


K8s 使用 Traefik 作为 Ingress 转发流量,是到 Service 还是直接到Pod?  第3张

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/03/11969.html

分享给朋友:

相关文章

怎么用游戏搬砖挣钱呢?

怎么用游戏搬砖挣钱呢?

今天,我把我多年操作的经验分享出来,以供各位老板们学习借鉴,胆小的老板就离开吧,心里承受能力太弱了,会刷新你的认知的。有些新人在计算收益的时候,会以机器数来计算,其实是有误区的,比如,一台机器一个月搞400元,平均每天搞13元钱,搞上100...

PHP承载百万/天 访问量需要用到什么技术?

当年做一个百万PV的商城,也不过是两台2c4g的阿里云虚机罢了(其实一台就够,另外一台主要的逼着大家一定开发的时候一定要有负载均衡和横向扩容的意识)。当时框架还是Thinkphp3.2,框架提高运行效率的开关全打开,标准的lnmp模式,单机...

鸿蒙系统到底是不是安卓系统?

你好,是的。接下来我给不懂技术的人简单的说一下哄蒙系统的来龙去脉。首先你要知道什么是开源。‌‌开源(Open Source)全称为开放源代码‌,意味着任何人都可以获取和使用软件的源代码,并在遵守版权协议的前提下进行修改和再发布。‌12开源软...

抖音有3,4万粉丝能挣多少钱?

抖音有3,4万粉丝能挣多少钱?

如果在抖音有100万粉丝,一个月能赚多少钱你知道吗?直接说答案:抖音有100万粉丝,可能1分钱也赚不到...那视频有100万点赞,能赚多少钱?可能也是1分钱都赚不到...新手需要通过抖音变现抖音运营速报站:做为新手玩抖音要注意什么?怎样才能...

测试用例是怎么写的?

测试用例是怎么写的?

测试用例对于测试人员而言,虽说是最最基础的技能,但却非常重要。测试用例是支撑我们在测试道路上进一步学习其他测试技能的基本功。那测试用例如何撰写,完整来说应该包含两部分内容:内容1: 测试用例撰写(按照八大要素);内容2: 测试用例(测试点)...

为什么现在 AI 已经没啥热度了?

从改名叫大模型那一刻,懂行的就已经放弃了,剩下资本和无知网友还有点后劲所谓大模型,本质就是一个更大、更快数据库的传声筒。更大更快本身确实很厉害,但依然只是传声筒,和AI根本不沾边数据库之外仍然一无所知,甚至数据库之内的输出逻辑还要依赖大量人...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。