docker部署redis報錯內(nèi)存分配過度解決辦法
之間部署redis集群的時候報錯
2023 10:20:29.131 # WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can also cause failures without low memory condition, see https://github.com/jemalloc/jemalloc/issues/1328. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
百度一查內(nèi)存分配過度很容易造成和宿主機發(fā)生內(nèi)存混亂
解決辦法
這個錯誤消息是Redis提示您需要啟用內(nèi)存過度分配(memory overcommit)以確保在低內(nèi)存條件下,后臺保存(background save)或復制(replication)操作能夠正常進行。未啟用內(nèi)存過度分配可能導致這些操作在低內(nèi)存情況下失敗,甚至在沒有低內(nèi)存情況下也可能導致失敗。此外,它還提到了一個關于jemalloc的問題。
要解決這個問題,您需要執(zhí)行以下步驟:
1.編輯sysctl.conf文件:使用文本編輯器(例如vi或nano)打開/etc/sysctl.conf文件,然后添加以下行:
vm.overcommit_memory = 1
這會啟用內(nèi)存過度分配。
2.保存文件:保存對sysctl.conf文件的更改。
3.應用更改:要使更改生效,您可以運行以下命令:
sysctl vm.overcommit_memory=1
這會立即激活內(nèi)存過度分配,而無需重新啟動系統(tǒng)。
4.檢查值:您可以運行以下命令驗證更改是否已生效:
cat /proc/sys/vm/overcommit_memory
如果它返回1,則表示內(nèi)存過度分配已成功啟用。
5.重新啟動Redis容器:最好重新啟動Redis,以確保它以更新的配置重新啟動:
總結
到此這篇關于docker部署redis報錯內(nèi)存分配過度解決的文章就介紹到這了,更多相關docker部署redis報錯內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
利用nexus作為私庫進行代理docker,進行上傳和下載鏡像操作
這篇文章主要介紹了利用nexus作為私庫進行代理docker,進行上傳和下載鏡像操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-11-11Idea+docker通過dockerFile往華為云發(fā)布項目實踐
本文介紹了使用IntelliJ IDEA和Docker將Spring Boot項目部署到華為云上,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2025-01-01