0
点赞
收藏
分享

微信扫一扫

docker-compose 运行kafka内存饱满

西风白羽 2022-04-26 阅读 84
kafka
Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00000000c0000000, 1073741824, 0) failed; error='Cannot allocate memory' (errno=12)
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (mmap) failed to map 1073741824 bytes for committing reserved memory.
# An error report file with more information is saved as:
# /usr/local/src/kafka_2.10-0.10.0.1/bin/hs_err_pid5584.log

当时在potainer中运行kafka怎么都不能启动,后来查看日志是内存爆满,需要在docker-compose文件中加入类似的设置,内存设置大点就行了。

 environment:
  KAFKA_HEAP_OPTS : "-Xmx256M -Xms128M" 

解决了这个问题,还会出现一个问题。

kafka                        | Memory: 4k page, physical 512000k(510008k free), swap 0k(0k free)

当kafka启动的时候如果出现swap为0k的情况,需要修改交换内存,以下内容参考
解决方法:*

先执行下面命令 查看内存是不是还有 最主要的是 看有没有交换空间 swap 如果没有交换空间 或者交换空间比较小 要先安装交换空间 或者增大空间

free -m

1.创建一个大小为500M的swapfile文件:

dd if=/dev/zero of=swapfile bs=1024 count=500000

2.将swapfile设置为swap空间(把这个文件变成swap文件)

mkswap swapfile

3.启用交换空间(启用这个swap文件)

swapon swapfile 

至此增加交换空间的操作结束了。可以使用free命令查看swap空间大小是否发生变化;
之后再重新部署kafka,就成功了

举报

相关推荐

0 条评论