linux openvz虚拟化的centos系统如何进行给vps小鸡添加swap虚拟内存的方法
linux openvz虚拟化的centos系统如何进行给vps小鸡添加swap虚拟内存的方法交换内存现在可以在具有RHEL6系列稳定内核的openvz容器中使用。这是openvz容器的一个很好的转折点。从042stab035.1开始的最新内核现在支持容器内的交换。它是用于Openvz容器的完全不同的内存管理模型,这种新的交换模型称为Vswap。现在,您只需要注意以下两个参数即可配置内存physpages和swappages。这些是主要参数。现在所有其他人成为次要人
physpages:此参数限制了容器内的进程可用的物理内存(RAM)。障碍将被忽略,并且限制设置了限制。
swappages:此参数限制可用于容器内部进程的交换空间量。障碍将被忽略,并且限制设置了限制。
如何在Openvz Vps上设置SWAP?
您可以使用vzctl命令界面来设置vps的交换。
例如,我需要将容器1000的交换设置为2048 MB,请参见下文,
vzctl set 1000 --swappages 0:2048M --save
请参阅下面的交换结果,
#vzctl exec 1000 free -m
total used free shared buffers cached
Mem: 4096 1814 2281 0 0 1814
-/+ buffers/cache: 0 4096
Swap: 2048 2 2045
当达到physpages限制时,属于该容器的内存页将被推出到所谓的虚拟交换(vswap)。正常交换和vswap之间的区别在于,使用vswap时,通常不会发生实际的磁盘I / O。而是人为地放慢了容器的速度,以模拟实际交换的效果。
方式二
配置主要VSwap参数
OpenVZ利用VSwap方案来管理容器中与内存相关的参数。与独立Linux计算机上使用的许多其他内存管理方案一样,该方案基于两个主要参数:
RAM 确定容器的进程可以使用的RAM的总大小。
swap 确定一旦超出RAM,容器可用于交换内存的交换总大小。
内存管理方案的工作方式如下:
您为容器设置了一定数量的RAM和交换空间,供容器中运行的进程使用。
当容器超出为其设置的RAM限制时,交换过程开始。容器的交换过程与独立计算机上的交换过程略有不同。容器交换文件是虚拟的,并且在可能的情况下位于节点RAM中。换句话说,当容器的换出开始并且节点具有足够的RAM来保留交换文件时,交换文件将存储在节点RAM中,而不是存储在硬盘驱动器上。
一旦容器超过其交换限制,系统就会为此容器调用OOM Killer。
OOM Killer选择在受影响的容器中运行的一个或多个进程,并强行杀死它们。
默认情况下,任何新创建的容器都会开始使用新的内存管理方案。要找出为容器设置的RAM和交换空间量,可以检查容器配置文件中PHYSPAGES和SWAPPAGES参数的值,例如:
# grep PHYSPAGES /etc/vz/conf/26bc47f6-353f-444b-bc35-b634a88dbbcc.conf
PHYSPAGES="65536:65536"
# grep SWAPPAGES /etc/vz/conf/26bc47f6-353f-444b-bc35-b634a88dbbcc.conf
SWAPPAGES="65536"
在此示例中,PHYSPAGES容器的参数值MyCT设置为65536。该PHYSPAGES参数以4 KB页显示RAM的量,因此为容器设置的RAM总量MyCT等于256 MB。该SWAPPAGES参数的值也设置为256 MB。
要配置容器的RAM和交换空间量MyCT,请使用命令的--memsize和--swappages选项prlctl set。例如,您可以执行以下命令来将容器中的RAM和SWAP数量分别设置MyCT为1 GB和512 MB:
# prlctl set MyCT --memsize 1G --swappages 512M
参考:https://docs.openvz.org/openvz_users_guide.webhelp/_configuring_main_vswap_parameters.html
https://syslint.com/blog/tutorial/enable-swap-in-openvz-vps/
{:3040:}{:3028:}
页:
[1]