設置Linux虛擬內存
注意:在做項目時,電腦內存不夠用,怎么辦?
這里給大家提供了一種解決方案,用磁盤換內存,具體如下:
-
虛擬內存swap介紹
如果你的服務器的總是報告內存不足,并且時常因為內存不足而引發服務被強制kill的話,在不增加物理內存的情況下,教你一個小技巧,啟用swap交換區作為虛擬內存是一個不錯的選擇。 ?swap是Linux中的虛擬內存,用于擴充物理內存不足而用來存儲臨時數據存在的。它類似于Windows中的虛擬內存。
-
hadoop01配置
free -h: 是查看內存使用情況的
根據自己實際情況設置交換內存,以下以給hadoop01添加5G交換內存為例
# 1、創建一個swap文件,文件越大耗時越長,注意確保磁盤有足夠的可用空間。 [root@hadoop01 ~]# dd if=/dev/zero of=/home/swap bs=1024 count=5120000 ? # 2、將文件格式轉換為swap格式的 [root@hadoop01 ~]# mkswap /home/swap ? # 3、文件分區掛載swap分區 [root@hadoop01 ~]# swapon /home/swap ? # 4、防止重啟后swap分區變成0 [root@hadoop01 ~]# echo '/home/swap swap swap default 0 0' >> /etc/fstab ? # 5、虛擬內存使用閾值 [root@hadoop01 ~]# sysctl -w vm.swappiness=0 [root@hadoop01 ~]# echo "vm.swappiness=0" >> /etc/sysctl.conf # 查看結果 [root@hadoop01 ~]# free -h ... Swap: ? ? ? ? ?6.9G ? ? ? ? 0B ? ? ? ?6.9G
-
hadoop02配置
根據自己實際情況設置交換內存,以下以給hadoop02添加3G交換內存為例
# 1、創建一個swap文件,文件越大耗時越長,注意確保磁盤有足夠的可用空間。 [root@hadoop02 ~]# dd if=/dev/zero of=/home/swap bs=1024 count=3072000 ? # 2、將文件格式轉換為swap格式的 [root@hadoop02 ~]# mkswap /home/swap ? # 3、文件分區掛載swap分區 [root@hadoop02 ~]# swapon /home/swap ? # 4、防止重啟后swap分區變成0 [root@hadoop02 ~]# echo '/home/swap swap swap default 0 0' >> /etc/fstab ? ? # 5、虛擬內存使用閾值 [root@hadoop02 ~]# sysctl -w vm.swappiness=0 [root@hadoop02 ~]# echo "vm.swappiness=0" >> /etc/sysctl.conf # 查看結果 [root@hadoop02 ~]# free -h ... Swap: ? ? ? ? ?4.9G ? ? ? 264K ? ? ? ?4.9G