502 BAD GATEWAY-k8s的cgroup限制了apache的可用内存
1.release的组件逻辑图

2.表象:按F12,总是报502 BAD GATEWAY
3.nginx日志
[error] #: * upstream prematurely closed connection while reading response header from upstream, client: 83.234.185.35, server: tqy.hangzhouali.net.cn
4.又nginx日志假设是后端apache的问题,由于以前服务是正常的,所以假设nginx配置也没问题,apache的规则也没问题
5.去看apache日志
Resource temporarily unavailable: AH03104: apr_thread_create: unable to create worker thread
httpd apache centos Cannot allocate memory: AH00481: fork: Unable to fork new process
看样子apache不能fork新的线程
6.去k8s的主机看系统日志
[ +0.000001] kmem: usage 111176kB, limit 9007199254740988kB, failcnt
[ +0.000001] Memory cgroup stats for /kubepods/burstable/podbab37dc4-09ed-11ea-a19e-82943d98d7a4: cache:0KB rss:0KB rss_huge:0KB mapped_file:0KB swap:0KB inactive_anon:0KB active_anon:0KB inactive_file:0KB active
[ +0.000024] Memory cgroup stats for /kubepods/burstable/podbab37dc4-09ed-11ea-a19e-82943d98d7a4/b229faca56cfc16d36fcd6bc7d12ac01508830c3ecc01f1ba1e01d15d6db5946: cache:0KB rss:296KB rss_huge:0KB mapped_file:0KB
[ +0.000009] Memory cgroup stats for /kubepods/burstable/podbab37dc4-09ed-11ea-a19e-82943d98d7a4/d9a5f7981ad793e525179a2b7ed1858a29e3a8e1852fbb6f02ac130774db56f8: cache:328264KB rss:75332KB rss_huge:4096KB mapped
[ +0.000007] [ pid ] uid tgid total_vm rss nr_ptes swapents oom_score_adj name
[ +0.000061] [ ] - pause
[ +0.000002] [ ] httpd
[ +0.000002] [ ] rotatelogs
[ +0.000002] [ ] rotatelogs
[ +0.000007] [] rotatelogs [ +0.000001] Memory cgroup out of memory: Kill process 3433 (httpd) score 1618 or sacrifice child
[ +0.001943] Killed process (httpd) total-vm:1603408kB, anon-rss:6256kB, file-rss:980kB, shmem-rss:12kB
[ +1.721253] cbr0: port (vethbeabb887) entered disabled state
[ +0.003202] device vethbeabb887 left promiscuous mode
7.得出结论:apache的容器的内存溢出,被cgroup限制了,应该是在腾讯云哪里设置内存的地方设置错了

一看,原来才给了512M.改为2048M后问题不再出现
502 BAD GATEWAY-k8s的cgroup限制了apache的可用内存的更多相关文章
- ngnix 502 bad gateway 的解决办法之空间满了
网站一直运行都很正常,但某天登录后台却出现502 bad gateway,上网搜索都是一大堆解决办法,没可操作性.网站难道出现安全问题?这个应该很少概率.最后排查发现空间满了. 使用命令:df -hl ...
- 记一次nginx部署yii2项目时502 bad gateway错误的排查
周六闲来无事,就试着安装和部署下yii2,安装过程没什么问题,但部署到nginx上时遇到了502 bad gatewary问题,折腾了半天才搞定.这个问题是我以前在部署yii2时没有遇到过的,因此记在 ...
- 502 Bad Gateway深究
早上收到502报警,设置的报警规则是502错误两分钟超过500就报警. 排障流程: 日志分析系统报障-->查看日志系统日志-->nginx错误日志-->php错误日志-->ph ...
- 解决 504 Gateway Time-out和502 Bad Gateway(nginx)
504 Gateway Time-out 问题所在: 所请求的网关没有请求到,简单来说就是没有请求到可以执行的PHP-CGI. 一般看来, 这种情况可能是由于nginx默认的fastcgi进程响应的缓 ...
- Nginx 502 bad gateway问题的解决方法
Nginx 502 Bad Gateway的含义是请求的PHP-CGI已经执行,但是由于某种原因(一般是读取资源的问题)没有执行完毕而导致PHP-CGI进程终止,一般来说Nginx 502 Bad G ...
- Nginx + php-fpm 执行 PHP 脚本超时 报错 502 Bad Gateway + 504 Gateway Time-out 的解决办法
上周写好的发送邮件的计划任务只发送了一部分,检查计划任务日志,发现 502 Bad Gateway 的错误(已经在脚本中设置了 set_time_limit(0)). 后来在网上查找资料,可以通过以下 ...
- Nginx 502 Bad Gateway 错误的原因及解决方法
http://my.oschina.net/zhouyuan/blog/118708 刚才在调试程序的时候,居然服务器502错误,昨天晚上也发生了,好像我没有做非常规的操作. 然后网上寻找了下答案, ...
- 502 bad gateway 错误
在安装好使用过程中出现502问题,一般是因为默认php-cgi进程是5个,可能因为phpcgi进程不够用而造成502,需要修改/usr/local/php/etc/php-fpm.conf 将其中的m ...
- CentOS 7 + nginx + uwsgi + web2py (502 bad gateway nginx)
Web2py开发包中自带的setup-web2py-nginx-uwsgi-centos64.sh脚本, 只能运行在CentOS 6.4中使用, 如果直接在CentOS 7 中使用该脚本布署后, 访问 ...
随机推荐
- 搭建自己的博客(二十二):通过ajax提交评论信息,并增加公式编辑功能
编辑功能使用到了ckeditor的MathJax组件.ajax提交评论可以不用刷新浏览器. 1.变化的部分
- 记一次netty的Hadoop和elasticsearch冲突jar包
在一个项目中同时使用hbase和elasticsearch出现netty的jar包冲突的问题 事件: 在同一maven项目中使用hbase的同时又用了es 程序运行后出错 java.lang.NoSu ...
- spark map函数中使用println无法输出
问题 // 每个点为hardData中的一个Array val hardData = spark.read.textFile(args(0)).rdd .map(_.split(" &quo ...
- vue学习一
自己根据网上的教程新建了一个vue_tes项目.想自己在里面修改,添加各种内容.新建了几个vue页面,一直想把他们关联起来展示.非常心急,没有仔细去看文档,而且网上的教程都是单页面的.很好理解.自己创 ...
- Choosing a fast unique identifier (UUID) for Lucene——有时间再看下
Most search applications using Apache Lucene assign a unique id, or primary key, to each indexed doc ...
- qt 关于Qt中MVC的介绍与使用
Qt包含一组使用模型/视图结构的类,可以用来管理数据并呈现给用户.这种体系结构引入的分离使开发人员更灵活地定制项目,并且提供了一个标准模型的接口,以允许广泛范围的数据源被使用到到现有的视图中. 模型 ...
- hibernate的各种查询
Hibernate Query Language(HQL)Criteria QueryNative SQL下面对其分别进行解释select子句:有时并不需要取得对象的所有属性,这时可以使用select ...
- 遇到多个构造器参数时要考虑用构建器 builder 模式 JavaBean 线程安全
effective java p9 JavaBeans模式阻止了把类做成不可变的可能,这需要程序员付出额外的努力来确保它的线程安全.
- linux内核是如何支持深度睡眠(deep sleep)方式的?
1. 硬件架构 arm64 2. 内核版本 4.19 3. 分析相关函数 setup_arch() -> psci_dt_init() -> psci_0_2_init() -> g ...
- JavaScript的深拷贝
javaScript的拷贝有浅拷贝和深拷贝.拷贝我们一般拷贝对象,获取对象的内容(字段.函数)都给复制一遍 浅拷贝:一般只是简单的赋值 //浅拷贝 var obj1={name:"cat&q ...