kibana内存溢出报错

1、ES-7.10.2 kibana-7.10.2

一:kibana页面打不开,查找kibana日志nohup.out文件

复制代码
<--- Last few GCs --->

[25584:0x26d39b0] 3158920676 ms: Mark-sweep 776.7 (869.2) -> 776.7 (835.2) MB, 65.3 / 0.0 ms  (average mu = 0.978, current mu = 0.000) last resort GC in old space requested
[25584:0x26d39b0] 3158920740 ms: Mark-sweep 776.7 (835.2) -> 776.7 (834.7) MB, 64.1 / 0.0 ms  (average mu = 0.956, current mu = 0.001) last resort GC in old space requested


<--- JS stacktrace --->

==== JS stack trace =========================================

    0: ExitFrame [pc: 0x3735a98dbf1d]
Security context: 0x317c31b1e6c1 <JSObject>
    1: deserialize [0x3aaad83b27b9] [/usr/local/kibana-7.10.2-linux-x86_64/node_modules/@elastic/elasticsearch/lib/Serializer.js:~38] [pc=0x3735ac86c93e](this=0x17e002515bf1 <Serializer map = 0x294750df2d51>,json=0x2c34c0621899 <Very long string[325951899]>)
    2: /* anonymous */ [0x2d63bbc7b2a1] [/usr/local/kibana-7.10.2-linux-x86_64/node_modules/@elastic/...

FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory
 1: 0x8fb090 node::Abort() [./bin/../node/bin/node]
 2: 0x8fb0dc  [./bin/../node/bin/node]
 3: 0xb0336e v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [./bin/../node/bin/node]
 4: 0xb035a4 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [./bin/../node/bin/node]
 5: 0xef7602  [./bin/../node/bin/node]
 6: 0xf06e1f v8::internal::Heap::AllocateRawWithRetryOrFail(int, v8::internal::AllocationSpace, v8::internal::AllocationAlignment) [./bin/../node/bin/node]
 7: 0xed69cb v8::internal::Factory::NewRawTwoByteString(int, v8::internal::PretenureFlag) [./bin/../node/bin/node]
 8: 0x1020253 v8::internal::String::SlowFlatten(v8::internal::Handle<v8::internal::ConsString>, v8::internal::PretenureFlag) [./bin/../node/bin/node]
 9: 0x11c4d5e v8::internal::Runtime_StringCharCodeAt(int, v8::internal::Object**, v8::internal::Isolate*) [./bin/../node/bin/node]
10: 0x3735a98dbf1d

二、报错原因:

发现是前端 js 报的内存oom异常,通过网上资料发现node.js的默认内存大小为1.4G

Node中通过JavaScript使用内存时只能使用部分内存(64位系统下约为1.4G,32位系统下约为0.7G),这就是我们编译项目时为什么会出现内存泄漏了,因为前端项目如果非常的庞大,webpack编译时就会占用很多的资源,如果超过了V8对Node默认的内存限制大小就会出现node内存溢出的报错

CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory

三、解决方案:

修改 --max-old-space-size 参数来调整内存大小的限制

1、进入kibana安装目录,编辑./bin/kibana

复制代码
vim ./bin/kibana
NODE_OPTIONS="--max-old-space-size=4096"

编辑后如下:

注意:NODE_OPTIONS后面不能有空格

然后重新启动,观察日志

相关推荐
2301_794333912 小时前
实验室服务器配置|通过Docker实现Linux系统多用户隔离与安全防控
linux·服务器·docker·实验室
荣光波比3 小时前
Nginx 实战系列(一)—— Web 核心概念、HTTP/HTTPS协议 与 Nginx 安装
linux·运维·服务器·nginx·云计算
绿箭柠檬茶5 小时前
Ubuntu 使用 Samba 共享文件夹
linux·运维·ubuntu
工藤新一¹6 小时前
Linux —— 虚拟进程地址空间
linux·运维·服务器·c/c++·虚拟进程地址空间
Aspiresky6 小时前
浅析Linux内核scatter-gather list实现
linux·dma·scatter/gather
奔跑吧 android7 小时前
【linux kernel 常用数据结构和设计模式】【数据结构 3】【模拟input子系统input_dev和input_handler之间的多对多关系】
linux·数据结构·input·kernel·input_dev·input_handler·input_handle
再难也得平7 小时前
Linux初级篇
linux·运维·服务器
小猫挖掘机(绝版)8 小时前
通过tailscale实现一台电脑上vscode通过ssh连接另一台电脑上的VMware Linux 虚拟机
linux·windows·vscode·ubuntu·ssh
ajassi20009 小时前
开源 C++ QT Widget 开发(十三)IPC通讯--本地套接字 (Local Socket)
linux·c++·qt·开源
方先森有点懒9 小时前
CentOS 7.2 虚机 ssh 登录报错在重启后无法进入系统
linux·运维·centos·ssh