Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1299774
  • 博文数量: 554
  • 博客积分: 10425
  • 博客等级: 上将
  • 技术积分: 7555
  • 用 户 组: 普通用户
  • 注册时间: 2006-11-09 09:49
文章分类

全部博文(554)

文章存档

2012年(1)

2011年(1)

2009年(8)

2008年(544)

分类:

2008-04-09 18:58:54


zonecfg 模式
第17 章• 非全局区域配置(概述) 211
 对于select 子命令,end 或cancel 子命令用于完成资源修改。
然后范围恢复为全局。
某些子命令(例如add、remove 和set)在每个范围中都有不同的语义。
zonecfg 交互模式
交互模式支持以下子命令。有关与子命令一起使用的语义和选项的详细信息,请参见选项
的zonecfg(1M) 手册页。对于可能会导致破坏性操作或作业丢失的子命令,系统要求用户
在继续之前进行确认。您可以使用-F(强制)选项,跳过此项确认操作。
help 列显一般帮助,或者显示有关给定资源的帮助。
zonecfg:my-zone:inherit-pkg-dir> help
create 开始为指定的新区域配置内存中的配置,以实现以下用途之一:
 将Sun 缺省设置应用于新的配置。此方法为缺省方法。
 与-t template 选项一起使用时,用于创建与指定模板相同的配置。区域名称
从模板名称更改为新区域名称。
 与-F 选项一起使用时,用于覆写现有配置。
 与-b 选项一起使用时,用于创建其中未设置任何内容的空配置。
export 采用可以在命令文件中使用的格式,在标准输出或指定输出文件中列显配置。
add 在全局范围中,将指定的资源类型添加到配置。
在资源范围中,添加具有给定名称和给定值的属性。
有关更多信息,请参见第225 页中的“如何配置区域”和zonecfg(1M) 手册页。
set 将给定属性名称设置为给定属性值。请注意,某些属性(例如zonepath)为全
局属性,而其他属性则为资源特定的属性。因此,此命令适用于全局范围和资源
范围。
select 仅适用于全局范围。选择与给定属性名称-属性值对的修改条件相匹配的给定类
型资源。将范围更改为此资源类型。您必须为要唯一标识的资源指定足够数量的
属性名称-值对。
remove 在全局范围中,删除指定的资源类型。您必须为要唯一标识的资源类型指定足够
数量的属性名称-值对。
在资源范围中,从当前资源中删除指定的属性名称-属性值。
end 仅适用于资源范围。结束资源指定。
然后,zonecfg 命令将检验是否完全指定当前资源。
zonecfg 模式
212 系统管理指南:Solaris Containers-资源管理和Solaris Zones • 2006 年7 月
 如果资源完全指定,则可以将其添加到内存中的配置,并且范围将恢复为全
局。
 如果未完全指定,则系统将显示一条描述需要执行何种操作的错误消息。
cancel 仅适用于资源范围。结束资源指定并将范围重置为全局。系统不会保留任何未完
全指定的资源。
delete 销毁指定的配置。从内存和稳定存储器中删除配置。您必须将-F(强制)选项
与delete 一起使用。
注意– 此操作为即时操作。不需要提交,并且无法恢复已删除的区域。
info 显示有关当前配置或全局资源属性zonepath、autoboot 和pool 的信息。如果指
定了资源类型,则仅显示有关此类型资源的信息。在资源范围中,此子命令仅应
用于要添加或修改的资源。
verify 检验当前配置是否正确。确保所有资源都指定了所有必需的属性。
commit 将当前配置从内存提交到稳定存储器。在提交内存中的配置之前,可以使用
revert 子命令删除更改。必须提交配置以供zoneadm 使用。完成zonecfg 会话
时,便会自动尝试此操作。由于仅可提交正确的配置,因此,提交操作将自动进
行检验。
revert 将配置恢复到上次提交时的状态。
exit 退出zonecfg 会话。您可以将-F(强制)选项与exit 一起使用。
如果需要,会自动尝试commit。请注意,也可以使用EOF 字符退出会话。
zonecfg 命令文件模式
在命令文件模式中,输入来自文件。可以使用第212 页中的“zonecfg 交互模式”中所述的
export 子命令生成此文件。可以在标准输出中列显配置,也可以使用-f 选项指定输出文
件。
区域配置数据
区域配置数据由两种实体类型组成:资源和属性。每个资源都有一种类型,并且每个资源
还可以有一个包含一个或多个属性的集合。属性具有名称和值。属性集取决于资源类型。
资源和属性类型
资源和属性类型描述如下:
区域配置数据
第17 章• 非全局区域配置(概述) 213
区域名称区域名称用于标识配置实用程序的区域。以下规则适用于区域名称:
 每个区域必须具有唯一的名称。
 区域名称区分大小写。
 区域名称必须以字母数字字符开头。
名称可以包含字母数字字符、下划线(_)、连字符(-) 和句点(.)。
 名称不能超过64 个字符。
 名称global 和所有以SUNW 开头的名称均保留,不能使用。
zonepath zonepath 属性是区域根目录的路径。每个区域都具有一个与全局区域
根目录相对的根目录路径。安装时,需要全局区域目录以提供限定的
可见性。它必须由root 拥有,并且模式为700。
非全局区域的根路径低一个级别。区域的根目录与全局区域中的根目
录(/) 具有相同的拥有权和权限。区域目录必须由root 拥有,并且模
式为755。这些目录是使用正确的权限自动创建的,并且不需要区域管
理员进行检验。此分层结构可防止全局区域中的非特权用户遍历非全
局区域的文件系统。
路径说明
/home/export/my-zone zonecfg zonepath
/home/export/my-zone/root 区域的根目录
/home/export/my-zone/dev 为区域创建的设备目录
有关此问题的进一步讨论,请参见第299 页中的“遍历文件系统”。
注– 有关此发行版的ZFS 限制,请参见第342 页中的“Solaris 10 6/06:
不要在ZFS 上放置非全局区域的根文件系统”。
autoboot 如果此属性设置为true,则引导全局区域时会自动引导区域。请注
意,如果禁用区域服务svc:/system/zones:default,则无论如何设置
此属性,区域都不会自动引导。您可以使用svcadm(1M) 手册页中所述
的svcadm 命令来启用区域服务:
global# svcadm enable zones
pool 此属性用于将区域与系统上的资源池关联。多个区域可以共享一个池
的资源。
fs 当区域从已安装状态转换为就绪状态时,每个区域都可以拥有已挂载
的各种文件系统。文件系统资源指定文件系统挂载点的路径。有关在
区域中使用文件系统的更多信息,请参见第295 页中的“文件系统和
非全局区域”。
区域配置数据
214 系统管理指南:Solaris Containers-资源管理和Solaris Zones • 2006 年7 月
dataset 通过添加ZFS 文件系统数据集资源,可以将存储管理委派给非全局区
域。区域管理员可以在此数据集中创建和销毁文件系统,并可修改此
数据集的属性。区域管理员无法影响尚未添加到区域的数据集,也无
法超过对指定给区域的数据集设置的任何顶层配额。请参见《Solaris
ZFS Administration Guide》中的第8 章,“ZFS Advanced Topics”和第295
页中的“文件系统和非全局区域”。
有关数据集问题的信息,另请参见第28 章。
inherit-pkg-dir 不应在完全根区域中配置此资源。
在稀疏根区域中,inherit-pkg-dir 资源用于表示包含非全局区域与全
局区域共享的软件包的目录。
非全局区域以只读模式继承传送到inherit-pkg-dir 目录的软件包内
容。区域的打包数据库将更新,以反映软件包。使用zoneadm 安装区
域之后,便不能修改或删除这些资源。
注– 配置中包含四种缺省inherit-pkg-dir 资源。这些目录资源表示哪
些目录应从全局区域中继承关联的软件包。资源通过只读回送文件系
统挂载来实现。
 /lib
 /platform
 /sbin
 /usr
net 网络接口资源是虚拟接口名称。当区域从已安装状态转换为就绪状态
时,每个区域都可以具有应检测的网络接口。
device 设备资源是与设备匹配的说明符。当区域从已安装状态转换为就绪状
态时,每个区域都具有应配置的设备。
rctl rctl 资源用于区域范围的资源控制。当区域从已安装状态转换为就绪
状态时,应启用这些控制。在此发行版中,执行的区域范围的资源控
制为zone.cpu-shares 和zone.max-lwps。
attr 此通用属性可用于用户注释或其他子系统。attr 的name 属性必须以字
母数字字符开头。name 属性可以包含字母数字字符、连字符(-) 和句点
(.)。以zone. 开头的属性名称将保留,以供系统使用。
资源类型属性
有些资源类型的属性也要进行配置。以下属性与所示的资源类型关联。
fs dir、special、raw、type、options
区域配置数据
第17 章• 非全局区域配置(概述) 215
以下示例的几行代码指定全局区域中的/dev/dsk/c0t0d0s2 将作为要配
置的区域中的/mnt 进行挂载。raw 属性指定一个在尝试挂载文件系统
之前运行fsck 命令的可选设备。所使用的文件系统类型为UFS。添加
了选项nodevices 和logging。
zonecfg:my-zone> add fs
zonecfg:my-zone:fs> set dir=/mnt
zonecfg:my-zone:fs> set special=/dev/dsk/c0t0d0s2
zonecfg:my-zone:fs> set raw=/dev/rdsk/c0t0d0s2
zonecfg:my-zone:fs> set type=ufs
zonecfg:my-zone:fs> add options [nodevices,logging]
zonecfg:my-zone:fs> end
有关更多信息,请参见第295 页中的“-o nosuid 选项”、第297 页中
的“安全限制和文件系统行为”、fsck(1M) 手册页和mount(1M) 手册
页。另请注意,有关专用于特定文件系统的挂载选项的信息可以在1M
手册页部分中找到。这些手册页的名称格式为mount_filesystem。
dataset name
以下示例的几行代码指定dataset sales 在非全局区域中可见并进行挂
载,并且不再在全局区域中可见。
zonecfg:my-zone> add dataset
zonecfg:my-zone> set name=tank/sales
zonecfg:my-zone> end
inherit-pkg-dir dir
以下示例的几行代码指定/opt/sfw 从全局区域中进行回送挂载。
zonecfg:my-zone> add inherit-pkg-dir
zonecfg:my-zone:inherit-pkg-dir> set dir=/opt/sfw
zonecfg:my-zone:inherit-pkg-dir> end
net address、physical
在以下示例中,将IP 地址192.168.0.1 添加到区域。hme0 卡用于物理
接口。
区域配置数据
216 系统管理指南:Solaris Containers-资源管理和Solaris Zones • 2006 年7 月
zonecfg:my-zone> add net
zonecfg:my-zone:net> set physical=hme0
zonecfg:my-zone:net> set address=192.168.0.1
zonecfg:my-zone:net> end
注– 要确定所使用的物理接口,请在系统上键入ifconfig -a。每一个
输出行(回送驱动程序行除外)都以系统上安装的卡的名称开头。说
明中包含LOOPBACK 的行不适用于卡。
device match
在以下示例中,/dev/pts 设备包括在区域中。
zonecfg:my-zone> add device
zonecfg:my-zone:device> set match=/dev/pts*
zonecfg:my-zone:device> end
rctl name、value
在此发行版中,有两种区域范围的资源控制:zone.cpu-shares 和
zone.max-lwps。
zone.cpu-shares 资源控制对区域的公平共享调度程序(fair share
scheduler, FSS) CPU 份额数设置限制。CPU 份额首先分配给区域,然后
在区域内的项目之间进一步分配,如project.cpu-shares 项中所述。
有关更多信息,请参见第332 页中的“在安装了区域的Solaris 系统上
使用公平共享调度程序”。
zone.max-lwps 资源控制通过防止某个区域中的过多LWP 影响其他区
域,来增强资源的隔离。可以使用project.max-lwps 项在区域内的各
个项目之间进一步分配区域的所有LWP。
请注意,区域中的区域范围资源控制项与project 数据库中的资源控
制项使用不同的方式进行配置。在区域配置中,rctl 资源类型由三个
名称/值对组成。名称分别为priv、limit 和action。每个名称都有一
个简单值。
zonecfg:my-zone> add rctl
zonecfg:my-zone:rctl> set name=zone.cpu-shares
zonecfg:my-zone:rctl> add value (priv=privileged,limit=10,action=none)
区域配置数据
第17 章• 非全局区域配置(概述) 217
zonecfg:my-zone:rctl> end
zonecfg:my-zone> add rctl
zonecfg:my-zone:rctl> set name=zone.max-lwps
zonecfg:my-zone:rctl> add value (priv=privileged,limit=100,action=deny)
zonecfg:my-zone:rctl> end
有关资源控制和属性的一般信息,请参见第6 章和第304 页中的“在
非全局区域中使用的资源控制”。
attr name、type、value
在以下示例中,添加了有关区域的注释。
zonecfg:my-zone> add attr
zonecfg:my-zone:attr> set name=comment
zonecfg:my-zone:attr> set type=string
zonecfg:my-zone:attr> set value="Production zone"
zonecfg:my-zone:attr> end
可以使用export 子命令在标准输出中列显区域配置。通过可以在命令文件中使用的格式保
存配置。
Tecla 命令行编辑库
配置中提供了Tecla 命令行编辑库,可与zonecfg 命令一起使用。此库为命令行历史记录和
编辑支持提供了一种机制。
Tecla 命令行编辑库在以下手册页中进行介绍:
 enhance(1)
 libtecla(3LIB)
 ef_expand_file(3TECLA)
 gl_get_line(3TECLA)
 gl_io_mode(3TECLA)
 pca_lookup_file(3TECLA)
 tecla(5)
Tecla 命令行编辑库
218 系统管理指南:Solaris Containers-资源管理和Solaris Zones • 2006 年7 月
规划和配置非全局区域(任务)
本章介绍在系统上配置区域之前需要执行的操作,同时还介绍了如何在系统上配置区域、
修改区域配置以及删除区域配置。
有关区域配置过程的介绍,请参见第17 章。
规划和配置非全局区域(任务图)
在将系统设置为使用区域之前,您必须首先收集信息,并决定如何配置区域。以下任务图
概括了如何规划和配置区域。
任务说明参考
规划区域策略。 评估在系统上运行的应用程
序,并确定需要在区域中运
行的应用程序。
 评估磁盘空间的可用性,以
便可以保存区域内特有的文
件。
 如果您也使用资源管理功
能,请确定如何使资源管理
范围能够覆盖整个区域。
请参阅历史使用情况。另请参见
第220 页中的“磁盘空间需求”
和第137 页中的“区域中使用的
资源池”。
确定区域名称。基于命名约定决定区域的名称。请参见第213 页中的“区域配置
数据”和第222 页中的“区域主
机名”。
获取或配置区域的IP 地址。根据配置的不同,您必须为需要
网络访问的每个非全局区域获取
至少一个IP 地址。
请参见第222 页中的“确定区域
主机名并获取网络地址”
和《System Administration
Guide: IP Services》。
18 第1 8 章
219
任务说明参考
确定要在区域内挂载的文件系
统。
查看您的应用程序要求。有关更多信息,请参见第210 页
中的“在区域中挂载的文件系
统”。
确定需要在区域中检测的网络接
口。
查看您的应用程序要求。有关更多信息,请参见第301 页
中的“网络接口”。
确定每个区域中应该配置的设
备。
查看您的应用程序要求。有关应用程序的信息,请参阅相
关文档。
确定区域路径。每个区域都有一个指向其根目录
(相对于全局区域的根目录)的
路径。
请参见第213 页中的“区域配置
数据”。
配置区域。使用zonecfg 可以创建区域的配
置。
请参见第225 页中的“配置、检
验并提交区域”。
检验并提交已配置的区域。确定指定的资源和属性是否在虚
拟系统上有效。
请参见第225 页中的“配置、检
验并提交区域”。
评估当前的系统设置
可以在任何运行Solaris 10 发行版的计算机上使用区域。以下主要的计算机注意事项与区域
的使用相关联。
 每个区域内运行的应用程序的性能要求。
 保存每个区域内特有文件的磁盘空间的可用性。
磁盘空间需求
不限制每个区域可占用的磁盘空间量。全局管理员负责限制空间。全局管理员必须确保本
地存储足以保存非全局区域的根文件系统。即使小型单处理器系统也可支持同时运行多个
区域。
全局区域中安装的软件包的性质影响所创建的非全局区域的空间需求。软件包的数量和空
间需求为相关因素。
稀疏根区域
拥有inherit-pkg-dir 资源的非全局区域称为稀疏根区域。
稀疏根区域模型通过以下方法优化对象共享:
 只有安装在全局区域中的部分软件包会直接安装在非全局区域中。
 标识为inherit-pkg-dir 资源的只读回送文件系统用于获取对其他文件的访问权。
评估当前的系统设置
220 系统管理指南:Solaris Containers-资源管理和Solaris Zones • 2006 年7 月
在该模型中,所有的软件包都安装在非全局区域中。将完整安装不向只读回送挂载文件系
统提供内容的软件包。无需安装提供给只读回送挂载文件系统的内容,因为这些内容可以
从全局区域中继承(并可见)。
 一般情况下,当全局区域安装了所有标准的Solaris 软件包时,每个区域大约需要100
MB的可用磁盘空间。
 缺省情况下,全局区域中安装的所有附加软件包也将填充非全局区域。所需磁盘空间可
能会相应增加,具体取决于驻留在inherit-pkg-dir 资源空间的附加软件包是否提供文
件。
建议每个区域再增加40MB的RAM,如果计算机有足够的交换空间则不作此要求。
完全根区域
完全根区域模型提供最大配置能力。所有需要的和任何选定的可选Solaris 软件包都安装到
此区域的专用文件系统中。该模型的优势之一是全局管理员可以自定义其区域文件系统布
局。例如,可以执行此操作来添加任意非绑定的软件包或第三方软件包。
该模型的磁盘需求由当前安装在全局区域中的软件包使用的磁盘空间决定。
注– 如果您创建包含以下inherit-pkg-dir 目录的稀疏根目录,则必须在安装区域前从非全
局区域的配置中删除这些目录,以拥有一个完全根目录:
 /lib
 /platform
 /sbin
 /usr
请参见第225 页中的“如何配置区域”。
限制区域大小
可以使用以下选项限制区域大小:
 您可以将区域放置在挂载了lofi 的分区上。此操作会将区域占用的空间量限制为lofi
使用的文件所占用的空间量。有关更多信息,请参见lofiadm(1M) 和lofi(7D) 手册页。
 您可以使用软分区将磁盘分片或将逻辑卷分为多个分区。您可以将这些分区用作区域根
目录,从而限制每个区域的磁盘占用量。软分区限制为8192 个分区。有关更多信息,请
参见《Solaris Volume Manager Administration Guide》中的第12 章,“Soft Partitions
(Overview)”。
 您可以将磁盘的标准分区用作区域根目录,从而限制每个区域的磁盘占用量。
 
 

以上文章转自于 : http://developers.sun.com.cn/
阅读(477) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~