游戏电视苹果数码历史美丽
投稿投诉
美丽时装
彩妆资讯
历史明星
乐活安卓
数码常识
驾车健康
苹果问答
网络发型
电视车载
室内电影
游戏科学
音乐整形

K8S问题排查

  问题背景
  K8S集群中修改calico的网络为vxlan模式后,发现部分service在节点上无法访问(实际上是延迟访问,延迟时间稳定在1min3s左右)。〔rootnode2〕timecurlshttp:10。96。91。255real1m3。136suser0m0。005ssys0m0。005s原因分析
  先确认问题范围,在环境上找多个service依次测试发现,如果调用service的节点和实际pod不在同一个节点上,则出现延迟,否则请求正常。也就是说跨节点的访问才有问题。而直接用service对应的podIP访问,也不存在问题,猜测问题可能出在service转pod的过程。
  再确认基本环境,OS、K8S、calico等基础环境没有发生任何变化,仅仅是把calico的网络模式从BGP改为了vxlan,但是这个改动改变了集群内service及pod的请求路径,也即所有的容器请求需要走节点上新增的calico。vxlan接口封装一下。网络模式修改前没有问题,修改后必现,之后切回BGP模式问题就消失了,说明问题可能跟新增的calico。vxlan接口有关系。
  先看下环境情况,并触发service请求:验证环境:node2(10。10。72。11)node1(10。10。72。10)验证方法:node2上curlservice:10。96。91。255node1上pod:166。166。166。168:8082〔rootnode2〕ipaddr10:vxlan。calico:BROADCAST,MULTICAST,UP,LOWERUPmtu1410qdiscnoqueuestateUNKNOWNgroupdefaultlinkether66:2d:bf:44:a6:8bbrdff:ff:ff:ff:ff:ffinet166。166。104。1032brd166。166。104。10scopeglobalvxlan。calicovalidlftforeverpreferredlftforever〔rootnode1〕ipaddr15:vxlan。calico:BROADCAST,MULTICAST,UP,LOWERUPmtu1410qdiscnoqueuestateUNKNOWNgroupdefaultlinkether66:f9:37:c3:7e:94brdff:ff:ff:ff:ff:ffinet166。166。166。17532brd166。166。166。175scopeglobalvxlan。calicovalidlftforeverpreferredlftforever〔rootnode2〕timecurlhttp:10。96。91。255
  在node1的主机网卡上抓包看看封装后的请求是否已到达:〔rootnode1〕tcpdumpnvvieth0host10。10。72。11andudptcpdump:listeningoneth0,linktypeEN10MB(Ethernet),capturesize262144bytes07:19:42。730996IP(tos0x0,ttl64,id6470,offset0,flags〔none〕,protoUDP(17),length110)10。10。72。11。nimvdrshell10。10。72。10。4789:〔badudpcksum0xffff0x3af0!〕VXLAN,flags〔I〕(0x08),vni4096IP(tos0x0,ttl64,id39190,offset0,flags〔DF〕,protoTCP(6),length60)166。166。104。10。35632166。166。166。168。uscli:Flags〔S〕,cksum0xe556(correct),seq3025623348,win29200,options〔mss1460,sackOK,TSval101892130ecr0,nop,wscale7〕,length007:19:43。733741IP(tos0x0,ttl64,id6804,offset0,flags〔none〕,protoUDP(17),length110)10。10。72。11。nimvdrshell10。10。72。10。4789:〔badudpcksum0xffff0x3af0!〕VXLAN,flags〔I〕(0x08),vni4096IP(tos0x0,ttl64,id39191,offset0,flags〔DF〕,protoTCP(6),length60)166。166。104。10。35632166。166。166。168。uscli:Flags〔S〕,cksum0xe16b(correct),seq3025623348,win29200,options〔mss1460,sackOK,TSval101893133ecr0,nop,wscale7〕,length007:19:45。736729IP(tos0x0,ttl64,id7403,offset0,flags〔none〕,protoUDP(17),length110)10。10。72。11。nimvdrshell10。10。72。10。4789:〔badudpcksum0xffff0x3af0!〕VXLAN,flags〔I〕(0x08),vni4096IP(tos0x0,ttl64,id39192,offset0,flags〔DF〕,protoTCP(6),length60)166。166。104。10。35632166。166。166。168。uscli:Flags〔S〕,cksum0xd998(correct),seq3025623348,win29200,options〔mss1460,sackOK,TSval101895136ecr0,nop,wscale7〕,length007:19:49。744801IP(tos0x0,ttl64,id9648,offset0,flags〔none〕,protoUDP(17),length110)10。10。72。11。nimvdrshell10。10。72。10。4789:〔badudpcksum0xffff0x3af0!〕VXLAN,flags〔I〕(0x08),vni4096IP(tos0x0,ttl64,id39193,offset0,flags〔DF〕,protoTCP(6),length60)166。166。104。10。35632166。166。166。168。uscli:Flags〔S〕,cksum0xc9f0(correct),seq3025623348,win29200,options〔mss1460,sackOK,TSval101899144ecr0,nop,wscale7〕,length007:19:57。768735IP(tos0x0,ttl64,id12853,offset0,flags〔none〕,protoUDP(17),length110)10。10。72。11。nimvdrshell10。10。72。10。4789:〔badudpcksum0xffff0x3af0!〕VXLAN,flags〔I〕(0x08),vni4096IP(tos0x0,ttl64,id39194,offset0,flags〔DF〕,protoTCP(6),length60)166。166。104。10。35632166。166。166。168。uscli:Flags〔S〕,cksum0xaa98(correct),seq3025623348,win29200,options〔mss1460,sackOK,TSval101907168ecr0,nop,wscale7〕,length007:20:05。087057IP(tos0x0,ttl64,id8479,offset0,flags〔none〕,protoUDP(17),length164)10。10。72。10。3456510。10。72。11。4789:〔nocksum〕VXLAN,flags〔I〕(0x08),vni4096IP(tos0x0,ttl63,id3425,offset0,flags〔DF〕,protoUDP(17),length114)166。166。166。168。57850166。166。104。6。domain:〔udpsumok〕10121AAAA?influxdbnginxservice。kubesystem。svc。kubesystem。svc。cluster。local。(86)07:20:05。087076IP(tos0x0,ttl64,id54475,offset0,flags〔none〕,protoUDP(17),length164)10。10。72。10。5184110。10。72。11。4789:〔nocksum〕VXLAN,flags〔I〕(0x08),vni4096IP(tos0x0,ttl63,id3424,offset0,flags〔DF〕,protoUDP(17),length114)166。166。166。168。57984166。166。104。6。domain:〔udpsumok〕20020A?influxdbnginxservice。kubesystem。svc。kubesystem。svc。cluster。local。(86)07:20:05。087671IP(tos0x0,ttl64,id13540,offset0,flags〔none〕,protoUDP(17),length257)10。10。72。11。6039510。10。72。10。4789:〔nocksum〕VXLAN,flags〔I〕(0x08),vni4096IP(tos0x0,ttl63,id19190,offset0,flags〔DF〕,protoUDP(17),length207)166。166。104。6。domain166。166。166。168。57850:〔udpsumok〕10121NXDomainq:AAAA?influxdbnginxservice。kubesystem。svc。kubesystem。svc。cluster。local。010ns:cluster。local。SOAns。dns。cluster。local。hostmaster。cluster。local。164763321872001800864005(179)07:20:05。087702IP(tos0x0,ttl64,id13541,offset0,flags〔none〕,protoUDP(17),length257)10。10。72。11。4857110。10。72。10。4789:〔nocksum〕VXLAN,flags〔I〕(0x08),vni4096IP(tos0x0,ttl63,id19191,offset0,flags〔DF〕,protoUDP(17),length207)166。166。104。6。domain166。166。166。168。57984:〔udpsumok〕20020NXDomainq:A?influxdbnginxservice。kubesystem。svc。kubesystem。svc。cluster。local。010ns:cluster。local。SOAns。dns。cluster。local。hostmaster。cluster。local。164763321872001800864005(179)07:20:05。088801IP(tos0x0,ttl64,id8480,offset0,flags〔none〕,protoUDP(17),length152)10。10。72。10。5578010。10。72。11。4789:〔nocksum〕VXLAN,flags〔I〕(0x08),vni4096IP(tos0x0,ttl63,id3427,offset0,flags〔DF〕,protoUDP(17),length102)166。166。166。168。56015166。166。104。6。domain:〔udpsumok〕19167AAAA?influxdbnginxservice。kubesystem。svc。svc。cluster。local。(74)07:20:05。089048IP(tos0x0,ttl64,id13542,offset0,flags〔none〕,protoUDP(17),length245)10。10。72。11。5015110。10。72。10。4789:〔nocksum〕VXLAN,flags〔I〕(0x08),vni4096IP(tos0x0,ttl63,id19192,offset0,flags〔DF〕,protoUDP(17),length195)166。166。104。6。domain166。166。166。168。56015:〔udpsumok〕19167NXDomainq:AAAA?influxdbnginxservice。kubesystem。svc。svc。cluster。local。010ns:cluster。local。SOAns。dns。cluster。local。hostmaster。cluster。local。164763321872001800864005(167)07:20:05。089212IP(tos0x0,ttl64,id8481,offset0,flags〔none〕,protoUDP(17),length148)10。10。72。10。5027210。10。72。11。4789:〔nocksum〕VXLAN,flags〔I〕(0x08),vni4096IP(tos0x0,ttl63,id3430,offset0,flags〔DF〕,protoUDP(17),length98)166。166。166。168。54926166。166。104。6。domain:〔udpsumok〕40948A?influxdbnginxservice。kubesystem。svc。cluster。local。(70)07:20:05。089403IP(tos0x0,ttl64,id13543,offset0,flags〔none〕,protoUDP(17),length241)10。10。72。11。5988210。10。72。10。4789:〔nocksum〕VXLAN,flags〔I〕(0x08),vni4096IP(tos0x0,ttl63,id19193,offset0,flags〔DF〕,protoUDP(17),length191)166。166。104。6。domain166。166。166。168。54926:〔udpsumok〕40948NXDomainq:A?influxdbnginxservice。kubesystem。svc。cluster。local。010ns:cluster。local。SOAns。dns。cluster。local。hostmaster。cluster。local。164763321872001800864005(163)07:20:05。089524IP(tos0x0,ttl64,id8482,offset0,flags〔none〕,protoUDP(17),length134)10。10。72。10。5896410。10。72。11。4789:〔nocksum〕VXLAN,flags〔I〕(0x08),vni4096IP(tos0x0,ttl63,id3431,offset0,flags〔DF〕,protoUDP(17),length84)166。166。166。168。50263166。166。104。6。domain:〔udpsumok〕18815A?influxdbnginxservice。kubesystem。svc。(56)07:20:05。089681IP(tos0x0,ttl64,id13544,offset0,flags〔none〕,protoUDP(17),length134)10。10。72。11。5187410。10。72。10。4789:〔nocksum〕VXLAN,flags〔I〕(0x08),vni4096IP(tos0x0,ttl63,id19194,offset0,flags〔DF〕,protoUDP(17),length84)166。166。104。6。domain166。166。166。168。50263:〔udpsumok〕18815ServFailq:A?influxdbnginxservice。kubesystem。svc。000(56)07:20:05。089706IP(tos0x0,ttl64,id8483,offset0,flags〔none〕,protoUDP(17),length134)10。10。72。10。5989110。10。72。11。4789:〔nocksum〕VXLAN,flags〔I〕(0x08),vni4096IP(tos0x0,ttl63,id3433,offset0,flags〔DF〕,protoUDP(17),length84)166。166。166。168。49202166。166。104。6。domain:〔udpsumok〕58612AAAA?influxdbnginxservice。kubesystem。svc。(56)07:20:05。089859IP(tos0x0,ttl64,id13545,offset0,flags〔none〕,protoUDP(17),length134)10。10。72。11。4414610。10。72。10。4789:〔nocksum〕VXLAN,flags〔I〕(0x08),vni4096IP(tos0x0,ttl63,id19195,offset0,flags〔DF〕,protoUDP(17),length84)166。166。104。6。domain166。166。166。168。49202:〔udpsumok〕58612ServFailq:AAAA?influxdbnginxservice。kubesystem。svc。000(56)
  从抓包结果看,出现一个可疑点:前几个报文中提示badudpcksum0xffff,请求通的最后几个报文提示的是nocksum。
  根据这个错误信息,搜索发现是个已知bug,相关的详细定位可以参考〔1〕〔3〕,这里就不细说了。大概原因如下所述:内核中存在一个和VXLAN处理有关的缺陷,该缺陷会导致ChecksumOffloading不能正确完成。这个缺陷仅仅在很边缘的场景下才会表现出来。
  在VXLAN的UDP头被NAT过的前提下,如果:
  VXLAN设备禁用(这是RFC的建议)了UDPChecksum
  VXLAN设备启用了TxChecksumOffloading
  就会导致生成错误的UDPChecksum。
  从资料〔1〕看,K8S的v1。18。5版本已经修复了这个问题,但我的问题是在v1。21。0上发现的,所以不确定只升级K8S是否可以解决该问题,或者升级后还需要额外配置什么?
  从资料〔3〕和〔4〕看,calico在v3。20。0版本做了修改:在kernelsv5。7时也禁用了calico。vxlan接口的Offloading功能。
  本地临时禁用并验证:〔rootnode2〕ethtooloffloadvxlan。calicorxofftxoffActualchanges:rxchecksumming:offtxchecksumming:offtxchecksumipgeneric:offtcpsegmentationoffload:offtxtcpsegmentation:off〔requestedon〕txtcpecnsegmentation:off〔requestedon〕txtcp6segmentation:off〔requestedon〕txtcpmangleidsegmentation:off〔requestedon〕udpfragmentationoffload:off〔requestedon〕〔rootnode2〕timecurlhttp:10。96。91。255real0m0。009suser0m0。002ssys0m0。007s
  请求恢复正常。解决方案临时解决:ethtooloffloadvxlan。calicorxofftxoff永久解决:升级calicov3。20。0或升级内核到5。6。13,5。4。41,4。19。123,4。14。181,单独升级K8Sv1。18。5版本待确认是否能解决参考资料https:blog。gmem。ccnodeport63sdelayduetokernelissuehttps:cloudnative。toblogkubernetes117vxlan63sdelayhttps:bowser1704。github。iopostsvxlanbughttps:github。comprojectcalicocalicoissues3145https:github。comprojectcalicofelixpull2811files

学员分享拿到阿里云ACP证书后,给0基础学习云计算的一些建议我拿到阿里云ACP证书已经2年多了,转行也有一年多,当初之所以选择做云计算相关的工作,纯粹是因为工资高,我身边有朋友做这个行业的,月入好几万都有,而我自己要很努力才能拿1万多,……日立冰箱怎么样?相对于松下,西门子,卡莎帝,相比较的话有什么日立日本产的冰箱绝对是极品。1:各路大神都在讨论松下,日立冰箱进口冰箱好,在鄙人看来,小日本的东西我看不出怎么好,比如压缩机,日立的压缩机都是泰国产的,大家看过日立泰国产……打造一个专属自己的影院极米NEWZ6X投影仪体验报告前言导读请问一面白墙怎么样能最大程度地发挥作用呢?这个问题我会回答!搭配一台极米NEWZ6X投影仪,给自己搭建一个家庭影院。怎么样,听起来很棒吧?那么我来给大家展示一下极……声音不好怎么配音?声音不好,往往是自己认为的。每个人的声音都是独一无二的,只要你充分了解自己声音的特点,然后再扬长补短,就可以配音。当然,配音是有技巧的,你如果喜欢,可以认真的学习,其实难……NBA球星斯蒂芬库里以55ETH价格购买以太坊无聊猿NFT库里更换了推特头像,头像是一只蓝色猿猴。为此,他花了18W美金。根据网站报道,库里用55个以太坊(虚拟货币),换算过来大约为18万美金买下了这个头像。这个卡通猿猴,……比小窗还好用?精准显示复活时间,ColorOS11闪回游戏聊随着人们需求的多样化,当下的智能手机也发展出丰富的人性化功能。正如当下热门的游戏场景,国内不少定制的系统专门做了一套游戏模式,对游戏内容之外可能的其他应用活动进行了优化,而最新……新能源汽车退换添保障啦!汽车三包新规明年实施国家市场监督管理总局日前发布了《家用汽车产品修理更换退货责任规定》(以下称新版汽车三包),新版汽车三包将于2022年1月1日起实施。与旧版汽车三包政策相比,新规在相关条款中增加……芯片制造需要翻过的两座大山为了遏制中国的高速发展,破坏中国制造2025规划,2018年7月6日2019年9月1日,美国单方面对华加征四轮关税,中美关系跌入到谷底。2019年全面发起对华科技战,以华为为伊……程序员电脑上装360安全卫士吗?360是个好东西啊,作为一名程序员必须诋毁他。矛盾吧?在以前,总觉得360可以杀毒,可以关闭进程,可以清理缓存,修复漏洞。总之,新电脑第一个软件就是他了。可自从当了程序员……我的集显很大,AMDR75700G测试报告本内容来源于什么值得买APP,观点仅代表作者本人作者:茶茶121对于PCDIY来说,2021年很难说是一个好年,在经历了上半年矿卡和矿盘的冲击之后。下半年的显卡价格虽然有……8分钟充满!小米200W快充明年量产,小米MIX5首发?手机续航能力有多重要?试想以下场景:早上起来准备上班,中途需要买早餐、坐地铁、打卡结果发现昨晚睡前忘了给手机充电,屏幕上显示的是:血压噌一下就上来了有没有?没错,在现在这……5G时代发布4G手机,任正非布的是什么局?华为被大多数人小看8月初,华为推出搭载麒麟5G芯片的4G手机,P50。5G时代推出4G手机确实很奇怪,可能有人会说,这是没办法的事,芯片被人家卡脖子了,只能推出4G手机,但事实真的是这样吗?……
iPhone13基本参数曝光,有了120Hz高刷,却取消了2定于9月19日发布的iPhone13系列,基本配置已经全部曝光,它包含四款机型:iPhone13mini、iPhone13、iPhone13Pro、iPhone13ProMax……2022年最热门的15项技术虚拟现实走向成熟德国《商报》网站1月7日发表题为《这些技术趋势将影响2022年》的报道。为了识别2022年最重要的技术趋势,德国《商报》记者走访了高校实验室、研究机构和企业,并与学界和业界的领……随笔别了,移动今年是我使用移动手机号的20年,但我终于忍不住要和它说再见了!主要原因之一是:今天收到一条短信,说我的话费余额还剩2。67元要尽快充值。我就奇怪了:11月3号和7号……数据库(mysql)关键知识Mysql是目前互联网使用最广的关系数据库,关系数据库的本质是将问题分解为多个分类然后通过关系来查询。一个经典的问题是用户借书,三张表,一个用户,一个书,一个借书的关系表。当需……相机RAW原图,大家使用最快捷的打开方式是什么?一、AdobePhotoshop2020如果是最快捷打开,那我首先推荐AdobePhotoshop最新版,软件打开后,把RAW直接拖入即可,内置的CameraRAW会自动……世界最大规模新能源分布式调相机群在青海建成投运新华社西宁1月23日电(记者骆晓飞、解统强)记者从国家电网青海省电力公司获悉,1月23日,青海省海南藏族自治州新能源基地21台新能源分布式调相机群的最后3台调相机试运行后转入商……小米手机与华为手机的区别在哪里?先说小米和华为最大的区别吧,毫无疑问,现在华为远远把小米甩开,小米前途暗淡,他们最大的区别就是硬件了,这个所谓的硬件不是配置和处理器跑分,而是华为的技术实力和质量管理远远超过小……iPhone用户最期待的iOS15新功能,屏下指纹识别居然是你们好,这里是Seek思科,为你寻找苹果最新资讯、苹果隐藏技巧、苹果良心APP以及苹果优质配件。如果你需要这些,不妨点个关注。尽管iOS15即将发布,但是从目前得到的比较……微信又悄悄更新了,这7个强大又良心的功能,可惜知道的人不多微信作为国内用户量最多的社交软件,总是喜欢悄悄地更新功能,不知道更新的这些功能你发现没?建议尽快知道,因为真的很有用。01、边写边译这个功能可以用于国际交流,主要是可以实……浅析腾讯千亿老板马化腾的资本世界小马哥1971年生于海南,典型的70后,学霸,性格温和,多才多艺,曾以739分优异成绩考入深圳大学计算机专业。毕业后进入传呼系统公司进行研发,当年风靡一时股霸卡作者之一,……网传麦德龙即将撤出中国市场,总部回应只是寻找新的合作伙伴在中国市场已经扎根23年的德国麦德龙超市,即将退出中国市场?近日,一则麦德龙正在招标出售在华业务的消息持续发酵,引起业内震动。尽管麦德龙中国上海总部回复本报,只是寻找新的合作伙……国通快递停工员工被放假近日,有消息曝出,国通快递已停工放假,并流传出一张停工放假通知。通知表示:我司由于2018年下半年以来,经营困难,公司严重亏损,目前已经处于停工状态,为此,我司为回复正常生产经……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网