跳过导航链接 | |
退出打印视图 | |
Oracle Solaris 11.1 管理:设备和文件系统 Oracle Solaris 11.1 Information Library (简体中文) |
12. 配置和管理 Oracle Solaris Internet 存储名称服务 (Internet Storage Name Service, iSNS)
在 Oracle Solaris ZFS 根环境中添加或更改交换空间
要确定以下情况,应了解 Oracle Solaris 中交换机制的特性:
交换空间要求
交换空间与 TMPFS 文件系统之间的关系
如何从与交换空间有关的错误消息恢复
Oracle Solaris OS 软件和应用程序软件可以将一些磁盘空间用于临时存储而不是用于文件系统。磁盘的保留区称为交换空间。当系统没有足够的物理内存来处理当前进程时,将交换空间用作虚拟内存存储区域。在 ZFS 根文件系统中,为交换所保留的磁盘空间为 ZFS 卷。
虚拟内存系统将磁盘上文件的物理副本映射到内存中的虚拟地址。文件系统中的常规文件或交换空间可以备份包含这些映射的数据的物理内存页面。如果交换空间对内存进行了备份,则该内存称为匿名内存,因为没有为备份内存的磁盘空间指定标识。
Oracle Solaris OS 使用的虚拟交换空间概念是指,匿名内存页面和实际备份这些页面的物理存储(或磁盘备份交换空间)之间的层。系统的虚拟交换空间等于其所有物理(磁盘备份)交换空间与当前部分可用物理内存的和。
虚拟交换空间具有以下优点:
由于虚拟交换空间不必对应于物理(磁盘)存储,因此减少了对大量物理交换空间的需求。
称为 SWAPFS 的伪文件系统可为匿名内存页面提供地址。由于 SWAPFS 可以控制内存页面的分配,因此它在确定要对页面执行的操作方面具有更大的灵活性。例如,SWAPFS 可更改页面对磁盘备份交换存储的要求。
在 Oracle Solaris 环境中,TMPFS 文件系统由 /etc/vfstab 文件中的项自动激活。TMPFS 文件系统将文件及其关联信息存储在内存中(存储在 /tmp 目录中)而不磁盘上,从而加快了访问这些文件的速度。对于大量使用 /tmp 的应用程序(例如编译器和 DBMS 产品),此功能可显著增强这些应用程序的性能。
TMPFS 文件系统从系统的交换资源分配 /tmp 目录中的空间。此功能意味着,用尽 /tmp 目录中的空间时,也就用尽了交换空间。因此,如果应用程序大量使用 /tmp 目录,而且您未监视交换空间使用情况,则系统可能会用尽交换空间。
如果要使用 TMPFS,但交换资源有限,请采用以下措施:
使用尺寸选项 (-o size) 挂载 TMPFS 文件系统,以便控制 TMPFS 可以使用的交换资源量。
使用编译器的 TMPDIR 环境变量指向另一个较大的目录。
使用编译器的 TMPDIR 变量仅可以控制编译器是否使用 /tmp 目录。此变量对其他程序是否使用 /tmp 目录没有影响。
转储设备通常是为存储系统故障转储信息而保留的磁盘空间。安装系统时,会自动创建一个 ZFS 交换卷和转储卷。可以使用 dumpadm 命令更改系统的转储卷。有关更多信息,请参见《解决 Oracle Solaris 11.1 中的典型问题》中的第 1 章 "管理系统故障转储信息(任务)"。
在 ZFS 根环境中,交换和转储都可配置为独立的 ZFS 卷。此模型具有如下优点:
不必将磁盘分区以包括交换和转储区域。
交换和转储设备可受益于底层 ZFS I/O 流水线体系结构。
可在交换和转储设备上设置特征,例如压缩。
可重置交换和转储设备大小。例如:
# zfs set volsize=2G rpool/dump # zfs get volsize rpool/dump NAME PROPERTY VALUE SOURCE rpool/dump volsize 2G -
请记住,重新分配一个大转储设备的进程非常耗时。
在活动系统上,可以考虑添加第二个交换卷,以增加整体交换大小。
有关使用 ZFS 交换和转储设备的更多信息,请参见《Oracle Solaris 11.1 管理:ZFS 文件系统》中的"管理 ZFS 交换和转储设备"。
建议分配足够的交换空间,以便在动态重新配置期间支持出现故障的 CPU 或系统板。否则,CPU 或系统板故障可能会导致主机或域重新引导时内存不足。
如果此交换空间不可用,则一个或多个应用程序可能会因内存不足而无法启动。此问题将需要进行手动干预,以便添加附加交换空间或重新配置这些应用程序的内存使用情况。
如果已分配附加交换空间来处理重新引导时内存的潜在不足,则所有需要大量内存的应用程序可能会照常启动。这意味着,用户可以使用系统,但系统速度可能会因一些其他交换而变慢。
有关更多信息,请参见硬件动态重新配置指南。
查看以下几点以确定是否可在与网络连接的磁盘上配置交换空间,例如在 SAN 环境中:
诊断本地连接磁盘上的交换空间问题要比诊断与网络连接的磁盘上的交换空间问题更加简便。
SAN 上的交换空间的性能应与本地连接磁盘上配置的交换空间的性能相当。
分析性能数据之后,向具有性能问题的系统添加更多内存可解决 SAN 上交换空间的性能问题,较之于将交换空间移至本地连接磁盘,这样做更好。