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

解决k8sMysqlCluster无故重启问题

  前言
  使用bitpoke的mysqloperator作为k8s的mysql服务,使用的版本v0。4。0,
  github地址:https:github。combitpokemysqloperator介绍
  MysqlClusteroperator主要支持如下功能数据自动备份还原主从模式支持Prometheus数据监控问题产生
  建立的mysql服务每隔一段时间就重启,事件的报错信息如下Readinessprobefailed:ERROR2003(HY000):CantconnecttoMySQLserveron127。0。0。1(111)binsh:line0:test:eq:unaryoperatorexpectedLivenessprobefailed:Gethttp:172。31。210。72:9125metrics:dialtcp172。31。210。72:9125:connect:connectionrefused定位问题
  为什么心跳不通过?
  貌似心跳机制不通过,查看pod信息
  pod探针设置
  心跳默认20秒不通过,就重启,看源码也没有心跳配置项,坑啊,不过这只是表象,到底是什么导致心跳不通过?
  mysqlCluster启动时,会启动4个容器metricesexporter,mysql,ptheartbeat,sidecar。看这4个容器的cpu,内存使用情况,发现mysql内存超过,如下:
  mysql内存使用情况
  看最后状态,OOMKilled,而且当前内存使用率3。9G接近limit4G的设置。找到产生的问题原因了,是因为内存超了,被容器杀掉,导致心跳不通过报错重启
  为什么内存使用这么高?
  思考mysql使用内存高,可能跟mysql自身缓存有关系,查内存相关参数showvariableswherevariablenamein(innodbbufferpoolsize,innodblogbuffersize,innodbadditionalmempoolsize,keybuffersize,querycachesize);
  mysql配置信息
  看到innodbbufferpoolsize设置得值特别大,这个参数设置只有主要缓存innodb表的索引,数据,插入数据时的缓冲,但默认是8M。
  为什么innodbbufferpoolsize设置变得这么大?
  翻翻mysqlCluster源码,跟innodbbufferpoolsize有关代码
  default。go没有设置innodbbufferpoolsize,通过cluster。Spec。PodSpec。Resources。Requests。Memory配置项计算一个setinnodbbufferpoolsizeifnotsetinnodbBufferPoolSize:128mbMySQLdefaultvalueifmem:cluster。Spec。PodSpec。Resources。Requests。Memory();mem!nil!mem。IsZero(){varcErrerrorifinnodbBufferPoolSize,cErrcomputeInnodbBufferPoolSize(mem);cErrnil{setConfigIfNotSet(cluster。Spec。MysqlConf,innodbbufferpoolsize,humanizeSize(innodbBufferPoolSize))}}计算大小funccomputeInnodbBufferPoolSize(memresource。Quantity)(int64,error){availableMem:mem。Copy()percentRAM:0。75ifmem。Value()512mb{dontsetinnodbbufferpoolsizeleaveittomysqldefault(128M)return0,fmt。Errorf(memorytoosmalltocomputeinnodbbufferpoolsize:s,mem)}elseifmem。Value()1gb{RAM1gbbuffersizesettoRAM0。5availableMem。Sub(resource。MustParse(256Mi))percentRAM0。5}elseifmem。Value()4gb{RAM4gbbuffersizesettoRAM0。75availableMem。Sub(resource。MustParse(256Mi))percentRAM0。75}elseifmem。Value()4gb{RAM4gbbuffersizesettoRAM0。8availableMem。Sub(resource。MustParse(512Mi))percentRAM0。8}returnint64(float64(availableMem。Value())percentRAM),nil}
  源码解析:没有设置innodbbufferpoolsize,则通过cluster。Spec。PodSpec。Resources。Requests。Memory大小的参数乘以系数,这里是0。75,所以是3G。
  问题就在这里,为了保证资源独占,mysql设置时是requestlimit,因为自动计算导致innodbbufferpoolsize过大,最终导致oom,需要手动设置innodbbufferpoolsize,就手动设置2G吧mysqlConf:innodbbufferpoolsize:2147483648
  设置innodbbufferpoolsize不生效?
  设置后,pod不重启?参数没有生效设置。设另一个512M就生效了。尝试加入引号,作为字符串处理,配置开始生效。难道跟类型有关系?继续看相关源码
  default。goinnodbBufferPoolSize:128mbMySQLdefaultvalueifmem:cluster。Spec。PodSpec。Resources。Requests。Memory();mem!nil!mem。IsZero(){varcErrerrorifinnodbBufferPoolSize,cErrcomputeInnodbBufferPoolSize(mem);cErrnil{setConfigIfNotSet(cluster。Spec。MysqlConf,innodbbufferpoolsize,humanizeSize(innodbBufferPoolSize))}}
  看这个类型定义cluster。Spec。MysqlConf
  MysqlClusterSpectypeMysqlConfmap〔string〕intstr。IntOrString
  intstrtypeIntOrStringstruct{TypeTypeprotobuf:varint,1,opt,nametype,casttypeTypeIntValint32protobuf:varint,2,opt,nameintValStrValstringprotobuf:bytes,3,opt,namestrVal}
  如果设置成数字,则整数是int32位
  看int32位的长度
  int32thesetofallsigned32bitintegers(2147483648to2147483647)
  214748364721474836482g所以应该是配置报错,但没有抛出来而已
  至此内存使用过大的问题,解决了,内存使用也降下来了结论mysqlCluster自动设置了innodbbufferpoolsize导致内存过高,超过Limit限制,被容器kill,反复重启,事件日志就是心跳连不上了,导致重启。k8s上有状态的服务。优点:操作快捷方便,普通开发人员都可以操作。缺点:刚起步,很多方面不够完善,包括文档。碰见问题,需要下源码查具体问题。

大西北,终于来了一趟甘青大环线,满足你对旅行的所有向往!西北是一片神奇的地方广阔的天空下笔直的公路一直通到天边没有尽头无际的荒漠上沙山沟壑间仿佛时空静止的落寞一句风吹草低见牛羊似乎概括传统印象中的……睡姿不对,睡了更累!教你如何改善有害睡姿睡姿不对,睡了更累。这话并不夸张,不少小伙伴就是因为睡姿不当而半夜醒来。当然,还有人因为睡姿太开放而掉下床。今天,小编就来跟大家分享不同睡姿的对身体健康的利与弊。如果某一……东亚杯赛程确定中国男女足首战都在7月20日北京时间5月18日,东亚足联公布了2022年东亚杯的赛程和比赛地。中国男足和女足均将于7月20日迎来首场比赛,分别对阵韩国队和中国台北队。本届东亚杯整个备战可以说是一波三……知名男星获赔100万元12月26日,中国法学会案例法学研究会和广东省高级人民法院发布第五批粤港澳大湾区跨境纠纷典型案例,其中一案例为香港居民郭富城诉广州合美公司肖像权纠纷案。记者获悉,在此案件……都美竹澄清被中国传媒大学退学事宜,晒出通知网友才发现是专科都美竹和吴亦凡的事宜经过了一段时间的发酵,最后以都美竹大获全胜告终,吴亦凡因此开启了铁窗生活,而都美竹则以胜利者的姿态笑对生活。周扬青扳倒了吴亦凡之后因此出圈做了网红还参……NBA高于预期的天花板BonesHyland才是让金块赛季进随着选秀结束进入夏季联盟和热身赛,也有球迷们开始慢慢发现Bones不仅仅只能得分,因为在场上帮助队友组织出好机会的内容,同样有在他的比赛中出现,且挡拆时也有发挥不错的视野。Bo……焕光森林的探险之旅!快带上一家老小,来一场沉浸式光影奇妙夜吧想在林间蜿蜒小径和梦幻光影之间,开启一场长达1。5公里的森林探索逐光之旅吗?4月15日,落地于上海最大的都市森林公园奉贤九棵树中央生态林地内的焕光森林东方曦望再次开启。这……年轮与心境文三千天气慢慢转冷,很像老天爷变了一场魔术,下一场雨,叶子变黄了,再下一场雨,叶子变红了,再下一场雨,叶子变灰了。阳光缩在高大法桐慢慢稀薄的枯叶后面瑟瑟发抖,整个天空就像……如何终结内心的恐惧?我们认为,活着是真的,死亡也是真的。如果,我们证悟到,死亡不是真的,我们很多人肯定会觉得荒唐。如果我们愿意证悟,我们会发现,死亡一直就活在我们的生命里。如果我……夏日游乐场第四期攻略第四期夏日游乐场最新攻略来了,第三期骰子太少没有完成,然后把筛子堆给这期用,上期一共凑了780个骰子,下面我把我了解的情况跟大家分享一下!第一关第二关很容易,大概用了11……搜狐时尚盛典进取之夜群星闪耀,Angelababy张雨绮蒋勤12月22日,2021搜狐时尚盛典进取之夜于北京盛大启幕,活动现场星光璀璨,众星云集。每年年末,搜狐时尚盛典都会盘点本年度国内时尚界的成绩与收获,同时向怀揣进取之心的时尚……北京首钢主场大胜山东高速3月19日,北京五棵松体育中心,20222023中国男子篮球职业联赛(CBA)常规赛第37轮,北京首钢队主场迎战山东高速队的比赛中,北京首钢队外援利夫(左二)突破防守。本……
湖北十堰正在打造第二家5A景区,风景不逊色于武当山,就在郧西导读:湖北十堰正在打造第二家5A景区,风景不逊色于武当山,就在郧西县带你日行三千里,吃货相见泯恩仇,RR带你看世界,大家好,我就是那个靠脸吃饭的小R。说起我们国家的……美欧银行危机之下,新兴市场资产重新成为华尔街香饽饽?在今年强劲的开局之后,随着大幅反弹导致估值不再那么具有吸引力,加之印度阿达尼集团(AdaniGroup)和巴西AmericanasSA等企业风波,投资者对新兴市场的兴趣减弱。……陈键锋主演新包青天之冰魄乐视全网独播,看完狂飙看包拯电视剧《狂飙》迎来了大结局,这部剧可以用现象级来形容,具体表现为:众多演员翻红、豆瓣评分上升,引发全民追剧热潮之外,还带火了很多热梗。高启强卖鱼,刘华强卖瓜,《狂飙》的热……70岁之后,想要往后不受苦,一定要提前做好两件事前言:人一旦过了70岁,后面的生活就没有保证,谁都不知道哪一天会出现什么问题,虽然现在生活还没有问题,但是我们的身体各方面都吃不消。因此,在70岁之前一定要准备好各种事情……高端360水冷新选择!九州风神LS720水冷测试【前言】近些年,一体式水冷散热器成为很多DIY玩家的首选散热类型。不过也有部分人非常在意随时可能出现的漏液情况以及过多线缆造成的凌乱。作为老牌散热品牌的九州风神,所推出的……一身冷汗!中国奥运冠军组合状态堪忧,世界前四争夺已提前掉队?北京时间8月23日下午,2022年世界羽毛球锦标赛在日本东京继续进行。继男单、女单和女双之后,国羽混双也迎来了首秀。东京奥运会冠军王懿律和黄东萍与陈堂杰、白燕薇狭路相逢。最终,……詹姆斯还是你狠!NBA75年都没人做到的记录,就这样被你做到詹姆斯还是你狠!NBA75年都没人做到的记录,就这样被你做到了在圣诞大战不敌篮网之后,湖人苦吞5连败,目前战绩来到16胜18负,排名西部第七。事实上,以本赛季至今的表现来……小孩子有这种行为,暗示着智商高,看一下你们家娃中了几条宝宝云小编相信父母都希望自己的孩子聪明伶俐,那聪明的小孩,会有什么行为?一起来了解下吧!喜欢笑爱笑的孩子一般都会非常聪明。而与生俱来较为聪明的小孩,对外界一些刺激性……春天里的伞裙,时髦优雅又年轻说到伞裙,你能想到的经典造型,一定是《罗马假日》里,奥黛丽赫本那一袭美艳动人而又清纯可爱的look:翻领衬衫高腰伞裙。经典的,永远是最美的,最富有力量的。是的,伞裙是五六……剑与魔法与学园任务继承秘宝解决异变《剑与魔法与学园任务》作为时隔十余年的新作,其游戏类型发生了很大的变化从最初的迷宫RPG到半即时战略RPG。虽然仍有一些系列流传下来的设定,但仍可视为全新作品。就像DRP……1500年前的陶弘景这篇气功论已将气功养生讲透了古籍守护人陶弘景之前,道家神秘主义色彩比较严重。从养生角度而言,陶弘景算是开创了所谓科学养生的先河。《养性延命录》六篇中,多从日常生活出发来讲养生。就连服气这么专业的领域……咻咻教你如何上班摸鱼大家新年好!(虽然过去了哈哈哈)今天我是来推荐游戏的!你是否还在为上班的琐事烦恼不堪?是否还在为不能看手机刷视频忧伤?我来教你一招解决,打开网站搜索http:www。xiuxi……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网