Redis问题修复

Redis出现如下问题

MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled. Please check Redis logs for details about the error.

Redis日志报如下错误:

16149:M 05 Apr 09:26:19.054 * 1 changes in 3600 seconds. Saving...
16149:M 05 Apr 09:26:19.054 # Can't save in background: fork: Cannot allocate memory
16149:M 05 Apr 09:26:25.085 * 1 changes in 3600 seconds. Saving...
16149:M 05 Apr 09:26:25.085 # Can't save in background: fork: Cannot allocate memory
16149:M 05 Apr 09:26:31.018 * 1 changes in 3600 seconds. Saving...
16149:M 05 Apr 09:26:31.018 # Can't save in background: fork: Cannot allocate memory

参考这篇文章:

http://blog.csdn.net/zqz_zqz/article/details/53384854

这个问题在于swap太小,当时查看swap只有200MB。解决方式是从lv_root中减掉10GB,然后增加到lv_swap中去。

问题分析,grep -i commit /proc/meminfo中看到Committed_AS>CommitLimit,而

CommitLimit = 物理内存 * overcommit_ratio(/proc/sys/vm/overcmmit_ratio,默认50,即50%) + swap大小

所以这就意味着是swap空间不够,因此方案是增加swap。

问题结果过程中重要命令如下:

[root@hadoop1 ~]# lvs
  LV           VG       Attr       LSize   Pool Origin Data%  Move Log Cpy%Sync Convert
  lv_root      VolGroup -wi-ao----  99.31g                                             
  lv_swap      VolGroup -wi-ao---- 204.00m                                             
  apphome_lv   appvg    -wi-ao----  50.00g                                             
  filevault_lv appvg    -wi-ao----  40.00g                                             
[root@hadoop1 ~]# 
[root@hadoop1 ~]# lvresize -L-10G VolGroup/lv_root
  WARNING: Reducing active and open logical volume to 89.31 GiB
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce lv_root? [y/n]: y
  Reducing logical volume lv_root to 89.31 GiB
  Logical volume lv_root successfully resized
[root@hadoop1 ~]# lvs
  LV           VG       Attr       LSize   Pool Origin Data%  Move Log Cpy%Sync Convert
  lv_root      VolGroup -wi-ao----  89.31g                                             
  lv_swap      VolGroup -wi-ao---- 204.00m                                             
  apphome_lv   appvg    -wi-ao----  50.00g                                             
  filevault_lv appvg    -wi-ao----  40.00g     


[root@hadoop1 ~]# lvresize -L+10G VolGroup/lv_swap
  Extending logical volume lv_swap to 10.20 GiB
  Logical volume lv_swap successfully resized
[root@hadoop1 ~]# 
[root@hadoop1 ~]# 
[root@hadoop1 ~]# lvs
  LV           VG       Attr       LSize  Pool Origin Data%  Move Log Cpy%Sync Convert
  lv_root      VolGroup -wi-ao---- 89.31g                                             
  lv_swap      VolGroup -wi-ao---- 10.20g                                             
  apphome_lv   appvg    -wi-ao---- 50.00g                                             
  filevault_lv appvg    -wi-ao---- 40.00g                                             
[root@hadoop1 ~]# 


[root@hadoop1 ~]# mkswap /dev/VolGroup/lv_swap
/dev/VolGroup/lv_swap: Device or resource busy
[root@hadoop1 ~]# 

[root@hadoop1 etc]# swapoff -v /dev/VolGroup/lv_swap
swapoff on /dev/VolGroup/lv_swap
[root@hadoop1 etc]# 

[root@hadoop1 etc]# mkswap /dev/VolGroup/lv_swap
mkswap: /dev/VolGroup/lv_swap: warning: don't erase bootbits sectors
        on whole disk. Use -f to force.
Setting up swapspace version 1, size = 10694652 KiB
no label, UUID=1f4d708f-fb1b-420c-9514-e05cb41c42cd
[root@hadoop1 etc]# 

[root@hadoop1 etc]# swapon /dev/VolGroup/lv_swap
[root@hadoop1 etc]# free
             total       used       free     shared    buffers     cached
Mem:       8061748    7206232     855516          0     130248    2434436
-/+ buffers/cache:    4641548    3420200
Swap:     10694648          0   10694648
[root@hadoop1 etc]# 
[root@hadoop1 etc]# free -g
             total       used       free     shared    buffers     cached
Mem:             7          7          0          0          0          2
-/+ buffers/cache:          4          3
Swap:           10          0         10
[root@hadoop1 etc]# free
             total       used       free     shared    buffers     cached
Mem:       8061748    7895092     166656          0     124056    3017144
-/+ buffers/cache:    4753892    3307856
Swap:     10694648          0   10694648

 

转载于:https://my.oschina.net/shawnplaying/blog/873231

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值